From a77f21b17e00aeeed06dbecd9c1c829671ee820b Mon Sep 17 00:00:00 2001 From: Matthias Mair Date: Sun, 7 Aug 2022 23:50:36 +0200 Subject: [PATCH 01/60] update trnaslation function name to new default (#3497) --- CONTRIBUTING.md | 2 +- InvenTree/plugin/builtin/integration/core_notifications.py | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index c736418892..e9b01c6517 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -147,7 +147,7 @@ Any user-facing strings *must* be passed through the translation engine. For strings exposed via Python code, use the following format: ```python -from django.utils.translation import ugettext_lazy as _ +from django.utils.translation import gettext_lazy as _ user_facing_string = _('This string will be exposed to the translation engine!') ``` diff --git a/InvenTree/plugin/builtin/integration/core_notifications.py b/InvenTree/plugin/builtin/integration/core_notifications.py index 6c0cee5f02..d21dc8c46f 100644 --- a/InvenTree/plugin/builtin/integration/core_notifications.py +++ b/InvenTree/plugin/builtin/integration/core_notifications.py @@ -1,7 +1,7 @@ """Core set of Notifications as a Plugin.""" from django.template.loader import render_to_string -from django.utils.translation import ugettext_lazy as _ +from django.utils.translation import gettext_lazy as _ from allauth.account.models import EmailAddress From 6c55874dd1154204823e4d20392397e4808d753a Mon Sep 17 00:00:00 2001 From: Matthias Mair Date: Sun, 7 Aug 2022 23:55:55 +0200 Subject: [PATCH 02/60] [FR] Add plugin keys, state and version to version info (#3496) * [FR] Add plugin keys, state and version to version info Fixes #3477 * Add info to general API endpoint --- InvenTree/InvenTree/api.py | 2 ++ .../part/templatetags/inventree_extras.py | 20 +++++++++++++++++++ InvenTree/templates/version.html | 1 + 3 files changed, 23 insertions(+) diff --git a/InvenTree/InvenTree/api.py b/InvenTree/InvenTree/api.py index ff2a489c5f..8aa15be33c 100644 --- a/InvenTree/InvenTree/api.py +++ b/InvenTree/InvenTree/api.py @@ -12,6 +12,7 @@ from rest_framework.serializers import ValidationError from InvenTree.mixins import ListCreateAPI from InvenTree.permissions import RolePermission +from part.templatetags.inventree_extras import plugins_info from .status import is_worker_running from .version import (inventreeApiVersion, inventreeInstanceName, @@ -36,6 +37,7 @@ class InfoView(AjaxView): 'apiVersion': inventreeApiVersion(), 'worker_running': is_worker_running(), 'plugins_enabled': settings.PLUGINS_ENABLED, + 'active_plugins': plugins_info(), } return JsonResponse(data) diff --git a/InvenTree/part/templatetags/inventree_extras.py b/InvenTree/part/templatetags/inventree_extras.py index 92f760e1d4..4516f17e5e 100644 --- a/InvenTree/part/templatetags/inventree_extras.py +++ b/InvenTree/part/templatetags/inventree_extras.py @@ -17,6 +17,7 @@ import InvenTree.helpers from common.models import ColorTheme, InvenTreeSetting, InvenTreeUserSetting from common.settings import currency_code_default from InvenTree import settings, version +from plugin import registry from plugin.models import NotificationUserSetting, PluginSetting register = template.Library() @@ -149,6 +150,25 @@ def plugins_enabled(*args, **kwargs): return djangosettings.PLUGINS_ENABLED +@register.simple_tag() +def plugins_info(*args, **kwargs): + """Return information about activated plugins.""" + # Check if plugins are even enabled + if not djangosettings.PLUGINS_ENABLED: + return False + + # Fetch plugins + plug_list = [plg for plg in registry.plugins.values() if plg.plugin_config().active] + # Format list + return [ + { + 'name': plg.name, + 'slug': plg.slug, + 'version': plg.version + } for plg in plug_list + ] + + @register.simple_tag() def inventree_db_engine(*args, **kwargs): """Return the InvenTree database backend e.g. 'postgresql'.""" diff --git a/InvenTree/templates/version.html b/InvenTree/templates/version.html index 52368679ae..5c0fa0142b 100644 --- a/InvenTree/templates/version.html +++ b/InvenTree/templates/version.html @@ -6,3 +6,4 @@ Django Version: {% django_version %} Database: {% inventree_db_engine %} Debug-Mode: {% inventree_in_debug_mode %} Deployed using Docker: {% inventree_docker_mode %} +Active plugins: {% plugins_info %} From 964d674884ab2f9ae8da1f03de77db3eefd03fc0 Mon Sep 17 00:00:00 2001 From: Matthias Mair Date: Mon, 8 Aug 2022 03:12:52 +0200 Subject: [PATCH 03/60] Update issue templates to GH forms (#3495) * move bug report to form * add more options * move FRs to templates * add tag information --- .github/ISSUE_TEMPLATE/bug_report.md | 47 ---------------- .github/ISSUE_TEMPLATE/bug_report.yaml | 62 +++++++++++++++++++++ .github/ISSUE_TEMPLATE/feature_request.md | 26 --------- .github/ISSUE_TEMPLATE/feature_request.yaml | 53 ++++++++++++++++++ CONTRIBUTING.md | 3 + 5 files changed, 118 insertions(+), 73 deletions(-) delete mode 100644 .github/ISSUE_TEMPLATE/bug_report.md create mode 100644 .github/ISSUE_TEMPLATE/bug_report.yaml delete mode 100644 .github/ISSUE_TEMPLATE/feature_request.md create mode 100644 .github/ISSUE_TEMPLATE/feature_request.yaml diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md deleted file mode 100644 index 55585c7670..0000000000 --- a/.github/ISSUE_TEMPLATE/bug_report.md +++ /dev/null @@ -1,47 +0,0 @@ ---- -name: Bug -about: Create a bug report to help us improve InvenTree! -title: "[BUG] Enter bug description" -labels: bug, question -assignees: '' - ---- - - - - -**Describe the bug** - - -**Steps to Reproduce** - -Steps to reproduce the behavior: - - -**Expected behavior** - - - - -**Deployment Method** -- [ ] Docker -- [ ] Bare Metal - -**Version Information** - diff --git a/.github/ISSUE_TEMPLATE/bug_report.yaml b/.github/ISSUE_TEMPLATE/bug_report.yaml new file mode 100644 index 0000000000..2c1bad0593 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/bug_report.yaml @@ -0,0 +1,62 @@ +name: "Bug" +description: "Create a bug report to help us improve InvenTree!" +labels: ["bug", "question", "triage:not-checked"] +body: + - type: checkboxes + id: no-duplicate-issues + attributes: + label: "Please verify that this bug has NOT been raised before." + description: "Search in the issues sections by clicking [HERE](https://github.com/inventree/inventree/issues?q=)" + options: + - label: "I checked and didn't find similar issue" + required: true + - type: textarea + id: description + validations: + required: true + attributes: + label: "Describe the bug*" + description: "A clear and concise description of what the bug is." + - type: textarea + id: steps-to-reproduce + validations: + required: true + attributes: + label: "Steps to Reproduce" + description: "Steps to reproduce the behavior, please make it detailed" + placeholder: | + 1. Go to '...' + 2. Click on '....' + 3. Scroll down to '....' + 4. See error + - type: textarea + id: expected-behavior + validations: + required: true + attributes: + label: "Expected behavior" + description: "A clear and concise description of what you expected to happen." + placeholder: "..." + - type: checkboxes + id: deployment + attributes: + label: "Deployment Method" + options: + - label: "Docker" + - label: "Bare metal" + - type: textarea + id: version-info + validations: + required: true + attributes: + label: "Version Information" + description: "The version info block." + placeholder: "You can get this by going to the `About InvenTree` section in the upper right corner and clicking on to the `copy version information`" + - type: textarea + id: logs + attributes: + label: "Relevant log output" + description: Please copy and paste any relevant log output. This will be automatically formatted into code, so no need for backticks. + render: shell + validations: + required: false diff --git a/.github/ISSUE_TEMPLATE/feature_request.md b/.github/ISSUE_TEMPLATE/feature_request.md deleted file mode 100644 index ca9ff88a58..0000000000 --- a/.github/ISSUE_TEMPLATE/feature_request.md +++ /dev/null @@ -1,26 +0,0 @@ ---- -name: Feature request -about: Suggest an idea for this project -title: "[FR]" -labels: enhancement -assignees: '' - ---- - -**Is your feature request the result of a bug?** -Please link it here. - -**Problem** -A clear and concise description of what the problem is. e.g. I'm always frustrated when [...] - -**Suggested solution** -A clear and concise description of what you want to happen. - -**Describe alternatives you've considered** -A clear and concise description of any alternative solutions or features you've considered. - -**Examples of other systems** -Show how other software handles your FR if you have examples. - -**Do you want to develop this?** -If so please describe briefly how you would like to implement it (so we can give advice) and if you have experience in the needed technology (you do not need to be a pro - this is just as a information for us). diff --git a/.github/ISSUE_TEMPLATE/feature_request.yaml b/.github/ISSUE_TEMPLATE/feature_request.yaml new file mode 100644 index 0000000000..72fd4938a6 --- /dev/null +++ b/.github/ISSUE_TEMPLATE/feature_request.yaml @@ -0,0 +1,53 @@ +name: Feature Request +description: Suggest an idea for this project +title: "[FR] title" +labels: ["enhancement", "triage:not-checked"] +body: + - type: checkboxes + id: no-duplicate-issues + attributes: + label: "Please verify that this feature request has NOT been suggested before." + description: "Search in the issues sections by clicking [HERE](https://github.com/inventree/inventree/issues?q=)" + options: + - label: "I checked and didn't find similar feature request" + required: true + - type: textarea + id: problem + validations: + required: true + attributes: + label: "Problem statement" + description: "A clear and concise description of what the solved problem or feature request is." + placeholder: "I am always struggeling with ..." + - type: textarea + id: solution + validations: + required: true + attributes: + label: "Suggested solution" + description: "A clear and concise description of what you want to happen." + placeholder: "In my use-case, ..." + - type: textarea + id: alternatives + validations: + required: true + attributes: + label: "Describe alternatives you've considered" + description: "A clear and concise description of any alternative solutions or features you've considered." + placeholder: "This could also be done by doing ..." + - type: textarea + id: examples + validations: + required: false + attributes: + label: "Examples of other systems" + description: "Show how other software handles your FR if you have examples." + placeholder: "I software xxx this is done in the following way..." + - type: checkboxes + id: self-develop + attributes: + label: "Do you want to develop this?" + description: "you do not need to be a pro - this is just as a information for us" + options: + - label: "I want to develop this." + required: false diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index e9b01c6517..bbcdfd703d 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -167,6 +167,9 @@ HTML and javascript files are passed through the django templating engine. Trans The tags describe issues and PRs in multiple areas: | Area | Name | Description | |---|---|---| +| Triage Labels | | | +| | triage:not-checked | Item was not checked by the core team | +| | triage:not-approved | Item is not green-light by maintainer | | Type Labels | | | | | breaking | Indicates a major update or change which breaks compatibility | | | bug | Identifies a bug which needs to be addressed | From af0c6b957dfa6d25d0fa39b8ba9347fdd82710f8 Mon Sep 17 00:00:00 2001 From: Oliver Date: Mon, 8 Aug 2022 23:34:22 +1000 Subject: [PATCH 04/60] New Crowdin updates (#3493) * updated translation base * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- InvenTree/locale/cs/LC_MESSAGES/django.po | 96 +-- InvenTree/locale/de/LC_MESSAGES/django.po | 96 +-- InvenTree/locale/el/LC_MESSAGES/django.po | 96 +-- InvenTree/locale/en/LC_MESSAGES/django.po | 720 ++++++++++--------- InvenTree/locale/es/LC_MESSAGES/django.po | 96 +-- InvenTree/locale/es_MX/LC_MESSAGES/django.po | 720 ++++++++++--------- InvenTree/locale/fa/LC_MESSAGES/django.po | 96 +-- InvenTree/locale/fr/LC_MESSAGES/django.po | 96 +-- InvenTree/locale/he/LC_MESSAGES/django.po | 96 +-- InvenTree/locale/hu/LC_MESSAGES/django.po | 96 +-- InvenTree/locale/id/LC_MESSAGES/django.po | 96 +-- InvenTree/locale/it/LC_MESSAGES/django.po | 96 +-- InvenTree/locale/ja/LC_MESSAGES/django.po | 96 +-- InvenTree/locale/ko/LC_MESSAGES/django.po | 96 +-- InvenTree/locale/nl/LC_MESSAGES/django.po | 96 +-- InvenTree/locale/no/LC_MESSAGES/django.po | 96 +-- InvenTree/locale/pl/LC_MESSAGES/django.po | 96 +-- InvenTree/locale/pt/LC_MESSAGES/django.po | 96 +-- InvenTree/locale/pt_br/LC_MESSAGES/django.po | 720 ++++++++++--------- InvenTree/locale/ru/LC_MESSAGES/django.po | 96 +-- InvenTree/locale/sv/LC_MESSAGES/django.po | 96 +-- InvenTree/locale/th/LC_MESSAGES/django.po | 96 +-- InvenTree/locale/tr/LC_MESSAGES/django.po | 96 +-- InvenTree/locale/vi/LC_MESSAGES/django.po | 96 +-- InvenTree/locale/zh/LC_MESSAGES/django.po | 96 +-- 25 files changed, 2160 insertions(+), 2112 deletions(-) diff --git a/InvenTree/locale/cs/LC_MESSAGES/django.po b/InvenTree/locale/cs/LC_MESSAGES/django.po index 36ef2e9426..8dece7d55b 100644 --- a/InvenTree/locale/cs/LC_MESSAGES/django.po +++ b/InvenTree/locale/cs/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-04 22:08+0000\n" -"PO-Revision-Date: 2022-08-05 01:02\n" +"POT-Creation-Date: 2022-08-07 21:57+0000\n" +"PO-Revision-Date: 2022-08-08 13:04\n" "Last-Translator: \n" "Language-Team: Czech\n" "Language: cs_CZ\n" @@ -17,7 +17,7 @@ msgstr "" "X-Crowdin-File: /[inventree.InvenTree] l10/InvenTree/locale/en/LC_MESSAGES/django.po\n" "X-Crowdin-File-ID: 154\n" -#: InvenTree/api.py:52 +#: InvenTree/api.py:54 msgid "API endpoint not found" msgstr "API endpoint nebyl nalezen" @@ -25,11 +25,11 @@ msgstr "API endpoint nebyl nalezen" msgid "Error details can be found in the admin panel" msgstr "" -#: InvenTree/fields.py:108 +#: InvenTree/fields.py:109 msgid "Enter date" msgstr "Zadejte datum" -#: InvenTree/fields.py:185 build/serializers.py:384 +#: InvenTree/fields.py:186 build/serializers.py:384 #: build/templates/build/sidebar.html:21 company/models.py:523 #: company/templates/company/sidebar.html:25 order/models.py:906 #: order/templates/order/po_sidebar.html:11 @@ -89,76 +89,76 @@ msgstr "Potvrzení emailové adresy" msgid "You must type the same email each time." msgstr "Pokaždé musíte zadat stejný email." -#: InvenTree/helpers.py:172 +#: InvenTree/helpers.py:173 msgid "Connection error" msgstr "" -#: InvenTree/helpers.py:176 InvenTree/helpers.py:181 +#: InvenTree/helpers.py:177 InvenTree/helpers.py:182 msgid "Server responded with invalid status code" msgstr "" -#: InvenTree/helpers.py:178 +#: InvenTree/helpers.py:179 msgid "Exception occurred" msgstr "" -#: InvenTree/helpers.py:186 +#: InvenTree/helpers.py:187 msgid "Server responded with invalid Content-Length value" msgstr "" -#: InvenTree/helpers.py:189 +#: InvenTree/helpers.py:190 msgid "Image size is too large" msgstr "" -#: InvenTree/helpers.py:201 +#: InvenTree/helpers.py:202 msgid "Image download exceeded maximum size" msgstr "" -#: InvenTree/helpers.py:206 +#: InvenTree/helpers.py:207 msgid "Remote server returned empty response" msgstr "" -#: InvenTree/helpers.py:214 +#: InvenTree/helpers.py:215 msgid "Supplied URL is not a valid image file" msgstr "" -#: InvenTree/helpers.py:573 +#: InvenTree/helpers.py:584 #, python-brace-format msgid "Duplicate serial: {sn}" msgstr "Duplicitní výrobní číslo: {sn}" -#: InvenTree/helpers.py:580 order/models.py:320 order/models.py:472 +#: InvenTree/helpers.py:591 order/models.py:320 order/models.py:472 msgid "Invalid quantity provided" msgstr "Vyplněno neplatné množství" -#: InvenTree/helpers.py:583 +#: InvenTree/helpers.py:594 msgid "Empty serial number string" msgstr "Nevyplněné výrobní číslo" -#: InvenTree/helpers.py:615 +#: InvenTree/helpers.py:626 #, python-brace-format msgid "Invalid group range: {g}" msgstr "" -#: InvenTree/helpers.py:618 +#: InvenTree/helpers.py:629 #, python-brace-format msgid "Invalid group: {g}" msgstr "Neplatná skupina: {g}" -#: InvenTree/helpers.py:646 +#: InvenTree/helpers.py:657 #, python-brace-format msgid "Invalid group sequence: {g}" msgstr "" -#: InvenTree/helpers.py:654 +#: InvenTree/helpers.py:665 #, python-brace-format msgid "Invalid/no group {group}" msgstr "Neplatná/nevyplněná skupina {group}" -#: InvenTree/helpers.py:660 +#: InvenTree/helpers.py:671 msgid "No serial numbers found" msgstr "Nenalezena žádná výrobní čísla" -#: InvenTree/helpers.py:664 +#: InvenTree/helpers.py:675 #, python-brace-format msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "" @@ -398,99 +398,99 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/settings.py:607 +#: InvenTree/settings.py:609 msgid "Czech" msgstr "Čeština" -#: InvenTree/settings.py:608 +#: InvenTree/settings.py:610 msgid "German" msgstr "Němčina" -#: InvenTree/settings.py:609 +#: InvenTree/settings.py:611 msgid "Greek" msgstr "Řečtina" -#: InvenTree/settings.py:610 +#: InvenTree/settings.py:612 msgid "English" msgstr "Angličtina" -#: InvenTree/settings.py:611 +#: InvenTree/settings.py:613 msgid "Spanish" msgstr "Španělština" -#: InvenTree/settings.py:612 +#: InvenTree/settings.py:614 msgid "Spanish (Mexican)" msgstr "Španělština (Mexiko)" -#: InvenTree/settings.py:613 +#: InvenTree/settings.py:615 msgid "Farsi / Persian" msgstr "Farsi / Perština" -#: InvenTree/settings.py:614 +#: InvenTree/settings.py:616 msgid "French" msgstr "Francouzština" -#: InvenTree/settings.py:615 +#: InvenTree/settings.py:617 msgid "Hebrew" msgstr "Hebrejština" -#: InvenTree/settings.py:616 +#: InvenTree/settings.py:618 msgid "Hungarian" msgstr "Maďarština" -#: InvenTree/settings.py:617 +#: InvenTree/settings.py:619 msgid "Italian" msgstr "Italština" -#: InvenTree/settings.py:618 +#: InvenTree/settings.py:620 msgid "Japanese" msgstr "Japonština" -#: InvenTree/settings.py:619 +#: InvenTree/settings.py:621 msgid "Korean" msgstr "Korejština" -#: InvenTree/settings.py:620 +#: InvenTree/settings.py:622 msgid "Dutch" msgstr "Nizozemština" -#: InvenTree/settings.py:621 +#: InvenTree/settings.py:623 msgid "Norwegian" msgstr "Norština" -#: InvenTree/settings.py:622 +#: InvenTree/settings.py:624 msgid "Polish" msgstr "Polština" -#: InvenTree/settings.py:623 +#: InvenTree/settings.py:625 msgid "Portuguese" msgstr "" -#: InvenTree/settings.py:624 +#: InvenTree/settings.py:626 msgid "Portuguese (Brazilian)" msgstr "" -#: InvenTree/settings.py:625 +#: InvenTree/settings.py:627 msgid "Russian" msgstr "Ruština" -#: InvenTree/settings.py:626 +#: InvenTree/settings.py:628 msgid "Swedish" msgstr "Švédština" -#: InvenTree/settings.py:627 +#: InvenTree/settings.py:629 msgid "Thai" msgstr "Thajština" -#: InvenTree/settings.py:628 +#: InvenTree/settings.py:630 msgid "Turkish" msgstr "Turečtina" -#: InvenTree/settings.py:629 +#: InvenTree/settings.py:631 msgid "Vietnamese" msgstr "Vietnamština" -#: InvenTree/settings.py:630 +#: InvenTree/settings.py:632 msgid "Chinese" msgstr "Čínština" @@ -5516,11 +5516,11 @@ msgstr "" msgid "Create a new variant of template '%(full_name)s'." msgstr "" -#: part/templatetags/inventree_extras.py:157 +#: part/templatetags/inventree_extras.py:177 msgid "Unknown database" msgstr "" -#: part/templatetags/inventree_extras.py:202 +#: part/templatetags/inventree_extras.py:222 #, python-brace-format msgid "{title} v{version}" msgstr "" diff --git a/InvenTree/locale/de/LC_MESSAGES/django.po b/InvenTree/locale/de/LC_MESSAGES/django.po index 522e9ac231..81109a9b6b 100644 --- a/InvenTree/locale/de/LC_MESSAGES/django.po +++ b/InvenTree/locale/de/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-04 22:08+0000\n" -"PO-Revision-Date: 2022-08-05 01:02\n" +"POT-Creation-Date: 2022-08-07 21:57+0000\n" +"PO-Revision-Date: 2022-08-08 13:04\n" "Last-Translator: \n" "Language-Team: German\n" "Language: de_DE\n" @@ -17,7 +17,7 @@ msgstr "" "X-Crowdin-File: /[inventree.InvenTree] l10/InvenTree/locale/en/LC_MESSAGES/django.po\n" "X-Crowdin-File-ID: 154\n" -#: InvenTree/api.py:52 +#: InvenTree/api.py:54 msgid "API endpoint not found" msgstr "API-Endpunkt nicht gefunden" @@ -25,11 +25,11 @@ msgstr "API-Endpunkt nicht gefunden" msgid "Error details can be found in the admin panel" msgstr "Fehlerdetails finden Sie im Admin-Panel" -#: InvenTree/fields.py:108 +#: InvenTree/fields.py:109 msgid "Enter date" msgstr "Datum eingeben" -#: InvenTree/fields.py:185 build/serializers.py:384 +#: InvenTree/fields.py:186 build/serializers.py:384 #: build/templates/build/sidebar.html:21 company/models.py:523 #: company/templates/company/sidebar.html:25 order/models.py:906 #: order/templates/order/po_sidebar.html:11 @@ -89,76 +89,76 @@ msgstr "Bestätigung der E-Mail Adresse" msgid "You must type the same email each time." msgstr "E-Mail Adressen müssen übereinstimmen." -#: InvenTree/helpers.py:172 +#: InvenTree/helpers.py:173 msgid "Connection error" msgstr "Verbindungsfehler" -#: InvenTree/helpers.py:176 InvenTree/helpers.py:181 +#: InvenTree/helpers.py:177 InvenTree/helpers.py:182 msgid "Server responded with invalid status code" msgstr "Server antwortete mit ungültigem Statuscode" -#: InvenTree/helpers.py:178 +#: InvenTree/helpers.py:179 msgid "Exception occurred" msgstr "Ausnahme aufgetreten" -#: InvenTree/helpers.py:186 +#: InvenTree/helpers.py:187 msgid "Server responded with invalid Content-Length value" msgstr "" -#: InvenTree/helpers.py:189 +#: InvenTree/helpers.py:190 msgid "Image size is too large" msgstr "Bild ist zu groß" -#: InvenTree/helpers.py:201 +#: InvenTree/helpers.py:202 msgid "Image download exceeded maximum size" msgstr "Bilddownload überschreitet maximale Größe" -#: InvenTree/helpers.py:206 +#: InvenTree/helpers.py:207 msgid "Remote server returned empty response" msgstr "Remote-Server gab leere Antwort zurück" -#: InvenTree/helpers.py:214 +#: InvenTree/helpers.py:215 msgid "Supplied URL is not a valid image file" msgstr "Angegebene URL ist kein gültiges Bild" -#: InvenTree/helpers.py:573 +#: InvenTree/helpers.py:584 #, python-brace-format msgid "Duplicate serial: {sn}" msgstr "Doppelte Seriennummer: {sn}" -#: InvenTree/helpers.py:580 order/models.py:320 order/models.py:472 +#: InvenTree/helpers.py:591 order/models.py:320 order/models.py:472 msgid "Invalid quantity provided" msgstr "Keine gültige Menge" -#: InvenTree/helpers.py:583 +#: InvenTree/helpers.py:594 msgid "Empty serial number string" msgstr "Keine Seriennummer angegeben" -#: InvenTree/helpers.py:615 +#: InvenTree/helpers.py:626 #, python-brace-format msgid "Invalid group range: {g}" msgstr "Ungültiger Gruppenbereich: {g}" -#: InvenTree/helpers.py:618 +#: InvenTree/helpers.py:629 #, python-brace-format msgid "Invalid group: {g}" msgstr "Ungültige Gruppe: {g}" -#: InvenTree/helpers.py:646 +#: InvenTree/helpers.py:657 #, python-brace-format msgid "Invalid group sequence: {g}" msgstr "Ungültige Gruppensequenz: {g}" -#: InvenTree/helpers.py:654 +#: InvenTree/helpers.py:665 #, python-brace-format msgid "Invalid/no group {group}" msgstr "Ungültige/Keine Gruppe {group}" -#: InvenTree/helpers.py:660 +#: InvenTree/helpers.py:671 msgid "No serial numbers found" msgstr "Keine Seriennummern gefunden" -#: InvenTree/helpers.py:664 +#: InvenTree/helpers.py:675 #, python-brace-format msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "Anzahl der eindeutigen Seriennummern ({s}) muss mit der Anzahl ({q}) übereinstimmen" @@ -398,99 +398,99 @@ msgstr "URL der Remote-Bilddatei" msgid "Downloading images from remote URL is not enabled" msgstr "Das Herunterladen von Bildern von Remote-URLs ist nicht aktiviert" -#: InvenTree/settings.py:607 +#: InvenTree/settings.py:609 msgid "Czech" msgstr "Tschechisch" -#: InvenTree/settings.py:608 +#: InvenTree/settings.py:610 msgid "German" msgstr "Deutsch" -#: InvenTree/settings.py:609 +#: InvenTree/settings.py:611 msgid "Greek" msgstr "Griechisch" -#: InvenTree/settings.py:610 +#: InvenTree/settings.py:612 msgid "English" msgstr "Englisch" -#: InvenTree/settings.py:611 +#: InvenTree/settings.py:613 msgid "Spanish" msgstr "Spanisch" -#: InvenTree/settings.py:612 +#: InvenTree/settings.py:614 msgid "Spanish (Mexican)" msgstr "Spanisch (Mexikanisch)" -#: InvenTree/settings.py:613 +#: InvenTree/settings.py:615 msgid "Farsi / Persian" msgstr "Persisch" -#: InvenTree/settings.py:614 +#: InvenTree/settings.py:616 msgid "French" msgstr "Französisch" -#: InvenTree/settings.py:615 +#: InvenTree/settings.py:617 msgid "Hebrew" msgstr "Hebräisch" -#: InvenTree/settings.py:616 +#: InvenTree/settings.py:618 msgid "Hungarian" msgstr "Ungarisch" -#: InvenTree/settings.py:617 +#: InvenTree/settings.py:619 msgid "Italian" msgstr "Italienisch" -#: InvenTree/settings.py:618 +#: InvenTree/settings.py:620 msgid "Japanese" msgstr "Japanisch" -#: InvenTree/settings.py:619 +#: InvenTree/settings.py:621 msgid "Korean" msgstr "Koreanisch" -#: InvenTree/settings.py:620 +#: InvenTree/settings.py:622 msgid "Dutch" msgstr "Niederländisch" -#: InvenTree/settings.py:621 +#: InvenTree/settings.py:623 msgid "Norwegian" msgstr "Norwegisch" -#: InvenTree/settings.py:622 +#: InvenTree/settings.py:624 msgid "Polish" msgstr "Polnisch" -#: InvenTree/settings.py:623 +#: InvenTree/settings.py:625 msgid "Portuguese" msgstr "Portugiesisch" -#: InvenTree/settings.py:624 +#: InvenTree/settings.py:626 msgid "Portuguese (Brazilian)" msgstr "Portugiesisch (Brasilien)" -#: InvenTree/settings.py:625 +#: InvenTree/settings.py:627 msgid "Russian" msgstr "Russisch" -#: InvenTree/settings.py:626 +#: InvenTree/settings.py:628 msgid "Swedish" msgstr "Schwedisch" -#: InvenTree/settings.py:627 +#: InvenTree/settings.py:629 msgid "Thai" msgstr "Thailändisch" -#: InvenTree/settings.py:628 +#: InvenTree/settings.py:630 msgid "Turkish" msgstr "Türkisch" -#: InvenTree/settings.py:629 +#: InvenTree/settings.py:631 msgid "Vietnamese" msgstr "Vietnamesisch" -#: InvenTree/settings.py:630 +#: InvenTree/settings.py:632 msgid "Chinese" msgstr "Chinesisch" @@ -5516,11 +5516,11 @@ msgstr "Neue Teilevariante anlegen" msgid "Create a new variant of template '%(full_name)s'." msgstr "Neue Variante von Vorlage anlegen '%(full_name)s'." -#: part/templatetags/inventree_extras.py:157 +#: part/templatetags/inventree_extras.py:177 msgid "Unknown database" msgstr "Unbekannte Datenbank" -#: part/templatetags/inventree_extras.py:202 +#: part/templatetags/inventree_extras.py:222 #, python-brace-format msgid "{title} v{version}" msgstr "{title} v{version}" diff --git a/InvenTree/locale/el/LC_MESSAGES/django.po b/InvenTree/locale/el/LC_MESSAGES/django.po index eea6e139c9..8695c2a2da 100644 --- a/InvenTree/locale/el/LC_MESSAGES/django.po +++ b/InvenTree/locale/el/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-04 22:08+0000\n" -"PO-Revision-Date: 2022-08-05 01:02\n" +"POT-Creation-Date: 2022-08-07 21:57+0000\n" +"PO-Revision-Date: 2022-08-08 13:04\n" "Last-Translator: \n" "Language-Team: Greek\n" "Language: el_GR\n" @@ -17,7 +17,7 @@ msgstr "" "X-Crowdin-File: /[inventree.InvenTree] l10/InvenTree/locale/en/LC_MESSAGES/django.po\n" "X-Crowdin-File-ID: 154\n" -#: InvenTree/api.py:52 +#: InvenTree/api.py:54 msgid "API endpoint not found" msgstr "" @@ -25,11 +25,11 @@ msgstr "" msgid "Error details can be found in the admin panel" msgstr "" -#: InvenTree/fields.py:108 +#: InvenTree/fields.py:109 msgid "Enter date" msgstr "" -#: InvenTree/fields.py:185 build/serializers.py:384 +#: InvenTree/fields.py:186 build/serializers.py:384 #: build/templates/build/sidebar.html:21 company/models.py:523 #: company/templates/company/sidebar.html:25 order/models.py:906 #: order/templates/order/po_sidebar.html:11 @@ -89,76 +89,76 @@ msgstr "" msgid "You must type the same email each time." msgstr "" -#: InvenTree/helpers.py:172 +#: InvenTree/helpers.py:173 msgid "Connection error" msgstr "" -#: InvenTree/helpers.py:176 InvenTree/helpers.py:181 +#: InvenTree/helpers.py:177 InvenTree/helpers.py:182 msgid "Server responded with invalid status code" msgstr "" -#: InvenTree/helpers.py:178 +#: InvenTree/helpers.py:179 msgid "Exception occurred" msgstr "" -#: InvenTree/helpers.py:186 +#: InvenTree/helpers.py:187 msgid "Server responded with invalid Content-Length value" msgstr "" -#: InvenTree/helpers.py:189 +#: InvenTree/helpers.py:190 msgid "Image size is too large" msgstr "" -#: InvenTree/helpers.py:201 +#: InvenTree/helpers.py:202 msgid "Image download exceeded maximum size" msgstr "" -#: InvenTree/helpers.py:206 +#: InvenTree/helpers.py:207 msgid "Remote server returned empty response" msgstr "" -#: InvenTree/helpers.py:214 +#: InvenTree/helpers.py:215 msgid "Supplied URL is not a valid image file" msgstr "" -#: InvenTree/helpers.py:573 +#: InvenTree/helpers.py:584 #, python-brace-format msgid "Duplicate serial: {sn}" msgstr "" -#: InvenTree/helpers.py:580 order/models.py:320 order/models.py:472 +#: InvenTree/helpers.py:591 order/models.py:320 order/models.py:472 msgid "Invalid quantity provided" msgstr "" -#: InvenTree/helpers.py:583 +#: InvenTree/helpers.py:594 msgid "Empty serial number string" msgstr "" -#: InvenTree/helpers.py:615 +#: InvenTree/helpers.py:626 #, python-brace-format msgid "Invalid group range: {g}" msgstr "" -#: InvenTree/helpers.py:618 +#: InvenTree/helpers.py:629 #, python-brace-format msgid "Invalid group: {g}" msgstr "" -#: InvenTree/helpers.py:646 +#: InvenTree/helpers.py:657 #, python-brace-format msgid "Invalid group sequence: {g}" msgstr "" -#: InvenTree/helpers.py:654 +#: InvenTree/helpers.py:665 #, python-brace-format msgid "Invalid/no group {group}" msgstr "" -#: InvenTree/helpers.py:660 +#: InvenTree/helpers.py:671 msgid "No serial numbers found" msgstr "" -#: InvenTree/helpers.py:664 +#: InvenTree/helpers.py:675 #, python-brace-format msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "" @@ -398,99 +398,99 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/settings.py:607 +#: InvenTree/settings.py:609 msgid "Czech" msgstr "" -#: InvenTree/settings.py:608 +#: InvenTree/settings.py:610 msgid "German" msgstr "" -#: InvenTree/settings.py:609 +#: InvenTree/settings.py:611 msgid "Greek" msgstr "" -#: InvenTree/settings.py:610 +#: InvenTree/settings.py:612 msgid "English" msgstr "" -#: InvenTree/settings.py:611 +#: InvenTree/settings.py:613 msgid "Spanish" msgstr "" -#: InvenTree/settings.py:612 +#: InvenTree/settings.py:614 msgid "Spanish (Mexican)" msgstr "" -#: InvenTree/settings.py:613 +#: InvenTree/settings.py:615 msgid "Farsi / Persian" msgstr "" -#: InvenTree/settings.py:614 +#: InvenTree/settings.py:616 msgid "French" msgstr "" -#: InvenTree/settings.py:615 +#: InvenTree/settings.py:617 msgid "Hebrew" msgstr "" -#: InvenTree/settings.py:616 +#: InvenTree/settings.py:618 msgid "Hungarian" msgstr "" -#: InvenTree/settings.py:617 +#: InvenTree/settings.py:619 msgid "Italian" msgstr "" -#: InvenTree/settings.py:618 +#: InvenTree/settings.py:620 msgid "Japanese" msgstr "" -#: InvenTree/settings.py:619 +#: InvenTree/settings.py:621 msgid "Korean" msgstr "" -#: InvenTree/settings.py:620 +#: InvenTree/settings.py:622 msgid "Dutch" msgstr "" -#: InvenTree/settings.py:621 +#: InvenTree/settings.py:623 msgid "Norwegian" msgstr "" -#: InvenTree/settings.py:622 +#: InvenTree/settings.py:624 msgid "Polish" msgstr "" -#: InvenTree/settings.py:623 +#: InvenTree/settings.py:625 msgid "Portuguese" msgstr "" -#: InvenTree/settings.py:624 +#: InvenTree/settings.py:626 msgid "Portuguese (Brazilian)" msgstr "" -#: InvenTree/settings.py:625 +#: InvenTree/settings.py:627 msgid "Russian" msgstr "" -#: InvenTree/settings.py:626 +#: InvenTree/settings.py:628 msgid "Swedish" msgstr "" -#: InvenTree/settings.py:627 +#: InvenTree/settings.py:629 msgid "Thai" msgstr "" -#: InvenTree/settings.py:628 +#: InvenTree/settings.py:630 msgid "Turkish" msgstr "" -#: InvenTree/settings.py:629 +#: InvenTree/settings.py:631 msgid "Vietnamese" msgstr "" -#: InvenTree/settings.py:630 +#: InvenTree/settings.py:632 msgid "Chinese" msgstr "" @@ -5516,11 +5516,11 @@ msgstr "" msgid "Create a new variant of template '%(full_name)s'." msgstr "" -#: part/templatetags/inventree_extras.py:157 +#: part/templatetags/inventree_extras.py:177 msgid "Unknown database" msgstr "" -#: part/templatetags/inventree_extras.py:202 +#: part/templatetags/inventree_extras.py:222 #, python-brace-format msgid "{title} v{version}" msgstr "" diff --git a/InvenTree/locale/en/LC_MESSAGES/django.po b/InvenTree/locale/en/LC_MESSAGES/django.po index cdb0d4d84f..988374f9ab 100644 --- a/InvenTree/locale/en/LC_MESSAGES/django.po +++ b/InvenTree/locale/en/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-04 00:21+0000\n" +"POT-Creation-Date: 2022-08-07 12:49+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -26,11 +26,11 @@ msgstr "" msgid "Error details can be found in the admin panel" msgstr "" -#: InvenTree/fields.py:108 +#: InvenTree/fields.py:109 msgid "Enter date" msgstr "" -#: InvenTree/fields.py:185 build/serializers.py:384 +#: InvenTree/fields.py:186 build/serializers.py:384 #: build/templates/build/sidebar.html:21 company/models.py:523 #: company/templates/company/sidebar.html:25 order/models.py:906 #: order/templates/order/po_sidebar.html:11 @@ -90,76 +90,76 @@ msgstr "" msgid "You must type the same email each time." msgstr "" -#: InvenTree/helpers.py:172 +#: InvenTree/helpers.py:173 msgid "Connection error" msgstr "" -#: InvenTree/helpers.py:176 InvenTree/helpers.py:181 +#: InvenTree/helpers.py:177 InvenTree/helpers.py:182 msgid "Server responded with invalid status code" msgstr "" -#: InvenTree/helpers.py:178 +#: InvenTree/helpers.py:179 msgid "Exception occurred" msgstr "" -#: InvenTree/helpers.py:186 +#: InvenTree/helpers.py:187 msgid "Server responded with invalid Content-Length value" msgstr "" -#: InvenTree/helpers.py:189 +#: InvenTree/helpers.py:190 msgid "Image size is too large" msgstr "" -#: InvenTree/helpers.py:201 +#: InvenTree/helpers.py:202 msgid "Image download exceeded maximum size" msgstr "" -#: InvenTree/helpers.py:206 +#: InvenTree/helpers.py:207 msgid "Remote server returned empty response" msgstr "" -#: InvenTree/helpers.py:214 +#: InvenTree/helpers.py:215 msgid "Supplied URL is not a valid image file" msgstr "" -#: InvenTree/helpers.py:557 +#: InvenTree/helpers.py:584 #, python-brace-format msgid "Duplicate serial: {sn}" msgstr "" -#: InvenTree/helpers.py:564 order/models.py:320 order/models.py:472 +#: InvenTree/helpers.py:591 order/models.py:320 order/models.py:472 msgid "Invalid quantity provided" msgstr "" -#: InvenTree/helpers.py:567 +#: InvenTree/helpers.py:594 msgid "Empty serial number string" msgstr "" -#: InvenTree/helpers.py:599 +#: InvenTree/helpers.py:626 #, python-brace-format msgid "Invalid group range: {g}" msgstr "" -#: InvenTree/helpers.py:602 +#: InvenTree/helpers.py:629 #, python-brace-format msgid "Invalid group: {g}" msgstr "" -#: InvenTree/helpers.py:630 +#: InvenTree/helpers.py:657 #, python-brace-format msgid "Invalid group sequence: {g}" msgstr "" -#: InvenTree/helpers.py:638 +#: InvenTree/helpers.py:665 #, python-brace-format msgid "Invalid/no group {group}" msgstr "" -#: InvenTree/helpers.py:644 +#: InvenTree/helpers.py:671 msgid "No serial numbers found" msgstr "" -#: InvenTree/helpers.py:648 +#: InvenTree/helpers.py:675 #, python-brace-format msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "" @@ -230,12 +230,12 @@ msgstr "" msgid "File comment" msgstr "" -#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1636 -#: common/models.py:1637 common/models.py:1860 common/models.py:1861 -#: common/models.py:2123 common/models.py:2124 part/models.py:2193 +#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1646 +#: common/models.py:1647 common/models.py:1870 common/models.py:1871 +#: common/models.py:2133 common/models.py:2134 part/models.py:2193 #: part/models.py:2213 plugin/models.py:238 plugin/models.py:239 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2573 +#: templates/js/translated/stock.js:2632 msgid "User" msgstr "" @@ -272,7 +272,7 @@ msgstr "" msgid "Invalid choice" msgstr "" -#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1846 +#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1856 #: company/models.py:358 label/models.py:101 part/models.py:739 #: part/models.py:2371 plugin/models.py:93 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 @@ -284,7 +284,7 @@ msgstr "" #: templates/js/translated/company.js:758 #: templates/js/translated/notification.js:71 #: templates/js/translated/part.js:684 templates/js/translated/part.js:836 -#: templates/js/translated/part.js:1858 templates/js/translated/stock.js:2344 +#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2388 msgid "Name" msgstr "" @@ -305,9 +305,9 @@ msgstr "" #: templates/js/translated/company.js:959 templates/js/translated/order.js:1720 #: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531 #: templates/js/translated/part.js:743 templates/js/translated/part.js:1149 -#: templates/js/translated/part.js:1424 templates/js/translated/part.js:1877 -#: templates/js/translated/part.js:1946 templates/js/translated/stock.js:1739 -#: templates/js/translated/stock.js:2356 templates/js/translated/stock.js:2410 +#: templates/js/translated/part.js:1424 templates/js/translated/part.js:1933 +#: templates/js/translated/part.js:2002 templates/js/translated/stock.js:1739 +#: templates/js/translated/stock.js:2415 templates/js/translated/stock.js:2469 msgid "Description" msgstr "" @@ -320,7 +320,7 @@ msgid "parent" msgstr "" #: InvenTree/models.py:560 InvenTree/models.py:561 -#: templates/js/translated/part.js:1883 templates/js/translated/stock.js:2362 +#: templates/js/translated/part.js:1939 templates/js/translated/stock.js:2421 msgid "Path" msgstr "" @@ -399,99 +399,99 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/settings.py:607 +#: InvenTree/settings.py:609 msgid "Czech" msgstr "" -#: InvenTree/settings.py:608 +#: InvenTree/settings.py:610 msgid "German" msgstr "" -#: InvenTree/settings.py:609 +#: InvenTree/settings.py:611 msgid "Greek" msgstr "" -#: InvenTree/settings.py:610 +#: InvenTree/settings.py:612 msgid "English" msgstr "" -#: InvenTree/settings.py:611 +#: InvenTree/settings.py:613 msgid "Spanish" msgstr "" -#: InvenTree/settings.py:612 +#: InvenTree/settings.py:614 msgid "Spanish (Mexican)" msgstr "" -#: InvenTree/settings.py:613 +#: InvenTree/settings.py:615 msgid "Farsi / Persian" msgstr "" -#: InvenTree/settings.py:614 +#: InvenTree/settings.py:616 msgid "French" msgstr "" -#: InvenTree/settings.py:615 +#: InvenTree/settings.py:617 msgid "Hebrew" msgstr "" -#: InvenTree/settings.py:616 +#: InvenTree/settings.py:618 msgid "Hungarian" msgstr "" -#: InvenTree/settings.py:617 +#: InvenTree/settings.py:619 msgid "Italian" msgstr "" -#: InvenTree/settings.py:618 +#: InvenTree/settings.py:620 msgid "Japanese" msgstr "" -#: InvenTree/settings.py:619 +#: InvenTree/settings.py:621 msgid "Korean" msgstr "" -#: InvenTree/settings.py:620 +#: InvenTree/settings.py:622 msgid "Dutch" msgstr "" -#: InvenTree/settings.py:621 +#: InvenTree/settings.py:623 msgid "Norwegian" msgstr "" -#: InvenTree/settings.py:622 +#: InvenTree/settings.py:624 msgid "Polish" msgstr "" -#: InvenTree/settings.py:623 +#: InvenTree/settings.py:625 msgid "Portuguese" msgstr "" -#: InvenTree/settings.py:624 +#: InvenTree/settings.py:626 msgid "Portuguese (Brazilian)" msgstr "" -#: InvenTree/settings.py:625 +#: InvenTree/settings.py:627 msgid "Russian" msgstr "" -#: InvenTree/settings.py:626 +#: InvenTree/settings.py:628 msgid "Swedish" msgstr "" -#: InvenTree/settings.py:627 +#: InvenTree/settings.py:629 msgid "Thai" msgstr "" -#: InvenTree/settings.py:628 +#: InvenTree/settings.py:630 msgid "Turkish" msgstr "" -#: InvenTree/settings.py:629 +#: InvenTree/settings.py:631 msgid "Vietnamese" msgstr "" -#: InvenTree/settings.py:630 +#: InvenTree/settings.py:632 msgid "Chinese" msgstr "" @@ -800,8 +800,8 @@ msgstr "" #: templates/js/translated/part.js:1134 templates/js/translated/part.js:1206 #: templates/js/translated/part.js:1402 templates/js/translated/stock.js:582 #: templates/js/translated/stock.js:747 templates/js/translated/stock.js:954 -#: templates/js/translated/stock.js:1696 templates/js/translated/stock.js:2436 -#: templates/js/translated/stock.js:2631 templates/js/translated/stock.js:2765 +#: templates/js/translated/stock.js:1696 templates/js/translated/stock.js:2495 +#: templates/js/translated/stock.js:2690 templates/js/translated/stock.js:2824 msgid "Part" msgstr "" @@ -989,7 +989,7 @@ msgstr "" #: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193 #: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380 #: templates/js/translated/stock.js:583 templates/js/translated/stock.js:748 -#: templates/js/translated/stock.js:2509 +#: templates/js/translated/stock.js:2568 msgid "Stock Item" msgstr "" @@ -999,7 +999,7 @@ msgstr "" #: build/models.py:1330 build/serializers.py:193 #: build/templates/build/build_base.html:82 -#: build/templates/build/detail.html:34 common/models.py:1668 +#: build/templates/build/detail.html:34 common/models.py:1678 #: company/templates/company/supplier_part.html:279 order/models.py:897 #: order/models.py:1423 order/serializers.py:1155 #: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40 @@ -1026,11 +1026,11 @@ msgstr "" #: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207 #: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386 #: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037 -#: templates/js/translated/part.js:1034 templates/js/translated/part.js:2091 -#: templates/js/translated/part.js:2322 templates/js/translated/part.js:2356 -#: templates/js/translated/part.js:2434 templates/js/translated/stock.js:454 +#: templates/js/translated/part.js:1034 templates/js/translated/part.js:2147 +#: templates/js/translated/part.js:2378 templates/js/translated/part.js:2412 +#: templates/js/translated/part.js:2490 templates/js/translated/stock.js:454 #: templates/js/translated/stock.js:608 templates/js/translated/stock.js:778 -#: templates/js/translated/stock.js:2558 templates/js/translated/stock.js:2643 +#: templates/js/translated/stock.js:2617 templates/js/translated/stock.js:2702 msgid "Quantity" msgstr "" @@ -1104,7 +1104,7 @@ msgstr "" msgid "Automatically allocate required items with matching serial numbers" msgstr "" -#: build/serializers.py:278 stock/api.py:569 +#: build/serializers.py:278 stock/api.py:577 msgid "The following serial numbers already exist" msgstr "" @@ -1123,7 +1123,7 @@ msgstr "" #: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394 #: templates/js/translated/part.js:181 templates/js/translated/stock.js:584 #: templates/js/translated/stock.js:749 templates/js/translated/stock.js:956 -#: templates/js/translated/stock.js:1850 templates/js/translated/stock.js:2450 +#: templates/js/translated/stock.js:1850 templates/js/translated/stock.js:2509 msgid "Location" msgstr "" @@ -1137,7 +1137,7 @@ msgstr "" #: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505 #: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724 #: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1825 -#: templates/js/translated/stock.js:2527 templates/js/translated/stock.js:2659 +#: templates/js/translated/stock.js:2586 templates/js/translated/stock.js:2718 msgid "Status" msgstr "" @@ -1448,7 +1448,7 @@ msgstr "" #: templates/js/translated/build.js:1182 #: templates/js/translated/model_renderers.js:124 #: templates/js/translated/stock.js:1022 templates/js/translated/stock.js:1839 -#: templates/js/translated/stock.js:2666 +#: templates/js/translated/stock.js:2725 #: templates/js/translated/table_filters.js:159 #: templates/js/translated/table_filters.js:250 msgid "Batch" @@ -1759,821 +1759,829 @@ msgstr "" msgid "Require explicit user confirmation for certain action." msgstr "" -#: common/models.py:880 templates/InvenTree/settings/sidebar.html:33 -msgid "Barcode Support" +#: common/models.py:880 +msgid "Tree Depth" msgstr "" #: common/models.py:881 +msgid "Default tree depth for treeview. Deeper levels can be lazy loaded as they are needed." +msgstr "" + +#: common/models.py:890 templates/InvenTree/settings/sidebar.html:33 +msgid "Barcode Support" +msgstr "" + +#: common/models.py:891 msgid "Enable barcode scanner support" msgstr "" -#: common/models.py:887 +#: common/models.py:897 msgid "Barcode Webcam Support" msgstr "" -#: common/models.py:888 +#: common/models.py:898 msgid "Allow barcode scanning via webcam in browser" msgstr "" -#: common/models.py:894 +#: common/models.py:904 msgid "IPN Regex" msgstr "" -#: common/models.py:895 +#: common/models.py:905 msgid "Regular expression pattern for matching Part IPN" msgstr "" -#: common/models.py:899 +#: common/models.py:909 msgid "Allow Duplicate IPN" msgstr "" -#: common/models.py:900 +#: common/models.py:910 msgid "Allow multiple parts to share the same IPN" msgstr "" -#: common/models.py:906 +#: common/models.py:916 msgid "Allow Editing IPN" msgstr "" -#: common/models.py:907 +#: common/models.py:917 msgid "Allow changing the IPN value while editing a part" msgstr "" -#: common/models.py:913 +#: common/models.py:923 msgid "Copy Part BOM Data" msgstr "" -#: common/models.py:914 +#: common/models.py:924 msgid "Copy BOM data by default when duplicating a part" msgstr "" -#: common/models.py:920 +#: common/models.py:930 msgid "Copy Part Parameter Data" msgstr "" -#: common/models.py:921 +#: common/models.py:931 msgid "Copy parameter data by default when duplicating a part" msgstr "" -#: common/models.py:927 +#: common/models.py:937 msgid "Copy Part Test Data" msgstr "" -#: common/models.py:928 +#: common/models.py:938 msgid "Copy test data by default when duplicating a part" msgstr "" -#: common/models.py:934 +#: common/models.py:944 msgid "Copy Category Parameter Templates" msgstr "" -#: common/models.py:935 +#: common/models.py:945 msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:941 part/models.py:2412 report/models.py:158 +#: common/models.py:951 part/models.py:2412 report/models.py:158 #: templates/js/translated/table_filters.js:38 #: templates/js/translated/table_filters.js:484 msgid "Template" msgstr "" -#: common/models.py:942 +#: common/models.py:952 msgid "Parts are templates by default" msgstr "" -#: common/models.py:948 part/models.py:887 templates/js/translated/bom.js:1448 +#: common/models.py:958 part/models.py:887 templates/js/translated/bom.js:1448 #: templates/js/translated/table_filters.js:176 #: templates/js/translated/table_filters.js:447 msgid "Assembly" msgstr "" -#: common/models.py:949 +#: common/models.py:959 msgid "Parts can be assembled from other components by default" msgstr "" -#: common/models.py:955 part/models.py:893 +#: common/models.py:965 part/models.py:893 #: templates/js/translated/table_filters.js:455 msgid "Component" msgstr "" -#: common/models.py:956 +#: common/models.py:966 msgid "Parts can be used as sub-components by default" msgstr "" -#: common/models.py:962 part/models.py:904 +#: common/models.py:972 part/models.py:904 msgid "Purchaseable" msgstr "" -#: common/models.py:963 +#: common/models.py:973 msgid "Parts are purchaseable by default" msgstr "" -#: common/models.py:969 part/models.py:909 +#: common/models.py:979 part/models.py:909 #: templates/js/translated/table_filters.js:476 msgid "Salable" msgstr "" -#: common/models.py:970 +#: common/models.py:980 msgid "Parts are salable by default" msgstr "" -#: common/models.py:976 part/models.py:899 +#: common/models.py:986 part/models.py:899 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:108 #: templates/js/translated/table_filters.js:488 msgid "Trackable" msgstr "" -#: common/models.py:977 +#: common/models.py:987 msgid "Parts are trackable by default" msgstr "" -#: common/models.py:983 part/models.py:919 +#: common/models.py:993 part/models.py:919 #: part/templates/part/part_base.html:151 #: templates/js/translated/table_filters.js:42 #: templates/js/translated/table_filters.js:492 msgid "Virtual" msgstr "" -#: common/models.py:984 +#: common/models.py:994 msgid "Parts are virtual by default" msgstr "" -#: common/models.py:990 +#: common/models.py:1000 msgid "Show Import in Views" msgstr "" -#: common/models.py:991 +#: common/models.py:1001 msgid "Display the import wizard in some part views" msgstr "" -#: common/models.py:997 +#: common/models.py:1007 msgid "Show Price in Forms" msgstr "" -#: common/models.py:998 +#: common/models.py:1008 msgid "Display part price in some forms" msgstr "" -#: common/models.py:1009 +#: common/models.py:1019 msgid "Show Price in BOM" msgstr "" -#: common/models.py:1010 +#: common/models.py:1020 msgid "Include pricing information in BOM tables" msgstr "" -#: common/models.py:1021 +#: common/models.py:1031 msgid "Show Price History" msgstr "" -#: common/models.py:1022 +#: common/models.py:1032 msgid "Display historical pricing for Part" msgstr "" -#: common/models.py:1028 +#: common/models.py:1038 msgid "Show related parts" msgstr "" -#: common/models.py:1029 +#: common/models.py:1039 msgid "Display related parts for a part" msgstr "" -#: common/models.py:1035 +#: common/models.py:1045 msgid "Create initial stock" msgstr "" -#: common/models.py:1036 +#: common/models.py:1046 msgid "Create initial stock on part creation" msgstr "" -#: common/models.py:1042 +#: common/models.py:1052 msgid "Internal Prices" msgstr "" -#: common/models.py:1043 +#: common/models.py:1053 msgid "Enable internal prices for parts" msgstr "" -#: common/models.py:1049 +#: common/models.py:1059 msgid "Internal Price as BOM-Price" msgstr "" -#: common/models.py:1050 +#: common/models.py:1060 msgid "Use the internal price (if set) in BOM-price calculations" msgstr "" -#: common/models.py:1056 +#: common/models.py:1066 msgid "Part Name Display Format" msgstr "" -#: common/models.py:1057 +#: common/models.py:1067 msgid "Format to display the part name" msgstr "" -#: common/models.py:1064 +#: common/models.py:1074 msgid "Enable label printing" msgstr "" -#: common/models.py:1065 +#: common/models.py:1075 msgid "Enable label printing from the web interface" msgstr "" -#: common/models.py:1071 +#: common/models.py:1081 msgid "Label Image DPI" msgstr "" -#: common/models.py:1072 +#: common/models.py:1082 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/models.py:1081 +#: common/models.py:1091 msgid "Enable Reports" msgstr "" -#: common/models.py:1082 +#: common/models.py:1092 msgid "Enable generation of reports" msgstr "" -#: common/models.py:1088 templates/stats.html:25 +#: common/models.py:1098 templates/stats.html:25 msgid "Debug Mode" msgstr "" -#: common/models.py:1089 +#: common/models.py:1099 msgid "Generate reports in debug mode (HTML output)" msgstr "" -#: common/models.py:1095 +#: common/models.py:1105 msgid "Page Size" msgstr "" -#: common/models.py:1096 +#: common/models.py:1106 msgid "Default page size for PDF reports" msgstr "" -#: common/models.py:1106 +#: common/models.py:1116 msgid "Enable Test Reports" msgstr "" -#: common/models.py:1107 +#: common/models.py:1117 msgid "Enable generation of test reports" msgstr "" -#: common/models.py:1113 +#: common/models.py:1123 msgid "Attach Test Reports" msgstr "" -#: common/models.py:1114 +#: common/models.py:1124 msgid "When printing a Test Report, attach a copy of the Test Report to the associated Stock Item" msgstr "" -#: common/models.py:1120 +#: common/models.py:1130 msgid "Batch Code Template" msgstr "" -#: common/models.py:1121 +#: common/models.py:1131 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/models.py:1126 +#: common/models.py:1136 msgid "Stock Expiry" msgstr "" -#: common/models.py:1127 +#: common/models.py:1137 msgid "Enable stock expiry functionality" msgstr "" -#: common/models.py:1133 +#: common/models.py:1143 msgid "Sell Expired Stock" msgstr "" -#: common/models.py:1134 +#: common/models.py:1144 msgid "Allow sale of expired stock" msgstr "" -#: common/models.py:1140 +#: common/models.py:1150 msgid "Stock Stale Time" msgstr "" -#: common/models.py:1141 +#: common/models.py:1151 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/models.py:1143 +#: common/models.py:1153 msgid "days" msgstr "" -#: common/models.py:1148 +#: common/models.py:1158 msgid "Build Expired Stock" msgstr "" -#: common/models.py:1149 +#: common/models.py:1159 msgid "Allow building with expired stock" msgstr "" -#: common/models.py:1155 +#: common/models.py:1165 msgid "Stock Ownership Control" msgstr "" -#: common/models.py:1156 +#: common/models.py:1166 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/models.py:1162 +#: common/models.py:1172 msgid "Build Order Reference Pattern" msgstr "" -#: common/models.py:1163 +#: common/models.py:1173 msgid "Required pattern for generating Build Order reference field" msgstr "" -#: common/models.py:1169 +#: common/models.py:1179 msgid "Sales Order Reference Pattern" msgstr "" -#: common/models.py:1170 +#: common/models.py:1180 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/models.py:1176 +#: common/models.py:1186 msgid "Sales Order Default Shipment" msgstr "" -#: common/models.py:1177 +#: common/models.py:1187 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/models.py:1183 +#: common/models.py:1193 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/models.py:1184 +#: common/models.py:1194 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/models.py:1191 +#: common/models.py:1201 msgid "Enable password forgot" msgstr "" -#: common/models.py:1192 +#: common/models.py:1202 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/models.py:1198 +#: common/models.py:1208 msgid "Enable registration" msgstr "" -#: common/models.py:1199 +#: common/models.py:1209 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/models.py:1205 +#: common/models.py:1215 msgid "Enable SSO" msgstr "" -#: common/models.py:1206 +#: common/models.py:1216 msgid "Enable SSO on the login pages" msgstr "" -#: common/models.py:1212 +#: common/models.py:1222 msgid "Email required" msgstr "" -#: common/models.py:1213 +#: common/models.py:1223 msgid "Require user to supply mail on signup" msgstr "" -#: common/models.py:1219 +#: common/models.py:1229 msgid "Auto-fill SSO users" msgstr "" -#: common/models.py:1220 +#: common/models.py:1230 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/models.py:1226 +#: common/models.py:1236 msgid "Mail twice" msgstr "" -#: common/models.py:1227 +#: common/models.py:1237 msgid "On signup ask users twice for their mail" msgstr "" -#: common/models.py:1233 +#: common/models.py:1243 msgid "Password twice" msgstr "" -#: common/models.py:1234 +#: common/models.py:1244 msgid "On signup ask users twice for their password" msgstr "" -#: common/models.py:1240 +#: common/models.py:1250 msgid "Group on signup" msgstr "" -#: common/models.py:1241 +#: common/models.py:1251 msgid "Group to which new users are assigned on registration" msgstr "" -#: common/models.py:1247 +#: common/models.py:1257 msgid "Enforce MFA" msgstr "" -#: common/models.py:1248 +#: common/models.py:1258 msgid "Users must use multifactor security." msgstr "" -#: common/models.py:1254 +#: common/models.py:1264 msgid "Check plugins on startup" msgstr "" -#: common/models.py:1255 +#: common/models.py:1265 msgid "Check that all plugins are installed on startup - enable in container enviroments" msgstr "" -#: common/models.py:1263 +#: common/models.py:1273 msgid "Enable URL integration" msgstr "" -#: common/models.py:1264 +#: common/models.py:1274 msgid "Enable plugins to add URL routes" msgstr "" -#: common/models.py:1271 +#: common/models.py:1281 msgid "Enable navigation integration" msgstr "" -#: common/models.py:1272 +#: common/models.py:1282 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/models.py:1279 +#: common/models.py:1289 msgid "Enable app integration" msgstr "" -#: common/models.py:1280 +#: common/models.py:1290 msgid "Enable plugins to add apps" msgstr "" -#: common/models.py:1287 +#: common/models.py:1297 msgid "Enable schedule integration" msgstr "" -#: common/models.py:1288 +#: common/models.py:1298 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/models.py:1295 +#: common/models.py:1305 msgid "Enable event integration" msgstr "" -#: common/models.py:1296 +#: common/models.py:1306 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:1313 common/models.py:1629 +#: common/models.py:1323 common/models.py:1639 msgid "Settings key (must be unique - case insensitive" msgstr "" -#: common/models.py:1335 +#: common/models.py:1345 msgid "Show subscribed parts" msgstr "" -#: common/models.py:1336 +#: common/models.py:1346 msgid "Show subscribed parts on the homepage" msgstr "" -#: common/models.py:1342 +#: common/models.py:1352 msgid "Show subscribed categories" msgstr "" -#: common/models.py:1343 +#: common/models.py:1353 msgid "Show subscribed part categories on the homepage" msgstr "" -#: common/models.py:1349 +#: common/models.py:1359 msgid "Show latest parts" msgstr "" -#: common/models.py:1350 +#: common/models.py:1360 msgid "Show latest parts on the homepage" msgstr "" -#: common/models.py:1356 +#: common/models.py:1366 msgid "Recent Part Count" msgstr "" -#: common/models.py:1357 +#: common/models.py:1367 msgid "Number of recent parts to display on index page" msgstr "" -#: common/models.py:1363 +#: common/models.py:1373 msgid "Show unvalidated BOMs" msgstr "" -#: common/models.py:1364 +#: common/models.py:1374 msgid "Show BOMs that await validation on the homepage" msgstr "" -#: common/models.py:1370 +#: common/models.py:1380 msgid "Show recent stock changes" msgstr "" -#: common/models.py:1371 +#: common/models.py:1381 msgid "Show recently changed stock items on the homepage" msgstr "" -#: common/models.py:1377 +#: common/models.py:1387 msgid "Recent Stock Count" msgstr "" -#: common/models.py:1378 +#: common/models.py:1388 msgid "Number of recent stock items to display on index page" msgstr "" -#: common/models.py:1384 +#: common/models.py:1394 msgid "Show low stock" msgstr "" -#: common/models.py:1385 +#: common/models.py:1395 msgid "Show low stock items on the homepage" msgstr "" -#: common/models.py:1391 +#: common/models.py:1401 msgid "Show depleted stock" msgstr "" -#: common/models.py:1392 +#: common/models.py:1402 msgid "Show depleted stock items on the homepage" msgstr "" -#: common/models.py:1398 +#: common/models.py:1408 msgid "Show needed stock" msgstr "" -#: common/models.py:1399 +#: common/models.py:1409 msgid "Show stock items needed for builds on the homepage" msgstr "" -#: common/models.py:1405 +#: common/models.py:1415 msgid "Show expired stock" msgstr "" -#: common/models.py:1406 +#: common/models.py:1416 msgid "Show expired stock items on the homepage" msgstr "" -#: common/models.py:1412 +#: common/models.py:1422 msgid "Show stale stock" msgstr "" -#: common/models.py:1413 +#: common/models.py:1423 msgid "Show stale stock items on the homepage" msgstr "" -#: common/models.py:1419 +#: common/models.py:1429 msgid "Show pending builds" msgstr "" -#: common/models.py:1420 +#: common/models.py:1430 msgid "Show pending builds on the homepage" msgstr "" -#: common/models.py:1426 +#: common/models.py:1436 msgid "Show overdue builds" msgstr "" -#: common/models.py:1427 +#: common/models.py:1437 msgid "Show overdue builds on the homepage" msgstr "" -#: common/models.py:1433 +#: common/models.py:1443 msgid "Show outstanding POs" msgstr "" -#: common/models.py:1434 +#: common/models.py:1444 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:1440 +#: common/models.py:1450 msgid "Show overdue POs" msgstr "" -#: common/models.py:1441 +#: common/models.py:1451 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:1447 +#: common/models.py:1457 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:1448 +#: common/models.py:1458 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:1454 +#: common/models.py:1464 msgid "Show overdue SOs" msgstr "" -#: common/models.py:1455 +#: common/models.py:1465 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:1461 +#: common/models.py:1471 msgid "Inline label display" msgstr "" -#: common/models.py:1462 +#: common/models.py:1472 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1468 +#: common/models.py:1478 msgid "Inline report display" msgstr "" -#: common/models.py:1469 +#: common/models.py:1479 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1475 +#: common/models.py:1485 msgid "Search Parts" msgstr "" -#: common/models.py:1476 +#: common/models.py:1486 msgid "Display parts in search preview window" msgstr "" -#: common/models.py:1482 +#: common/models.py:1492 msgid "Seach Supplier Parts" msgstr "" -#: common/models.py:1483 +#: common/models.py:1493 msgid "Display supplier parts in search preview window" msgstr "" -#: common/models.py:1489 +#: common/models.py:1499 msgid "Search Manufacturer Parts" msgstr "" -#: common/models.py:1490 +#: common/models.py:1500 msgid "Display manufacturer parts in search preview window" msgstr "" -#: common/models.py:1496 +#: common/models.py:1506 msgid "Hide Inactive Parts" msgstr "" -#: common/models.py:1497 +#: common/models.py:1507 msgid "Excluded inactive parts from search preview window" msgstr "" -#: common/models.py:1503 +#: common/models.py:1513 msgid "Search Categories" msgstr "" -#: common/models.py:1504 +#: common/models.py:1514 msgid "Display part categories in search preview window" msgstr "" -#: common/models.py:1510 +#: common/models.py:1520 msgid "Search Stock" msgstr "" -#: common/models.py:1511 +#: common/models.py:1521 msgid "Display stock items in search preview window" msgstr "" -#: common/models.py:1517 +#: common/models.py:1527 msgid "Hide Unavailable Stock Items" msgstr "" -#: common/models.py:1518 +#: common/models.py:1528 msgid "Exclude stock items which are not available from the search preview window" msgstr "" -#: common/models.py:1524 +#: common/models.py:1534 msgid "Search Locations" msgstr "" -#: common/models.py:1525 +#: common/models.py:1535 msgid "Display stock locations in search preview window" msgstr "" -#: common/models.py:1531 +#: common/models.py:1541 msgid "Search Companies" msgstr "" -#: common/models.py:1532 +#: common/models.py:1542 msgid "Display companies in search preview window" msgstr "" -#: common/models.py:1538 +#: common/models.py:1548 msgid "Search Purchase Orders" msgstr "" -#: common/models.py:1539 +#: common/models.py:1549 msgid "Display purchase orders in search preview window" msgstr "" -#: common/models.py:1545 +#: common/models.py:1555 msgid "Exclude Inactive Purchase Orders" msgstr "" -#: common/models.py:1546 +#: common/models.py:1556 msgid "Exclude inactive purchase orders from search preview window" msgstr "" -#: common/models.py:1552 +#: common/models.py:1562 msgid "Search Sales Orders" msgstr "" -#: common/models.py:1553 +#: common/models.py:1563 msgid "Display sales orders in search preview window" msgstr "" -#: common/models.py:1559 +#: common/models.py:1569 msgid "Exclude Inactive Sales Orders" msgstr "" -#: common/models.py:1560 +#: common/models.py:1570 msgid "Exclude inactive sales orders from search preview window" msgstr "" -#: common/models.py:1566 +#: common/models.py:1576 msgid "Search Preview Results" msgstr "" -#: common/models.py:1567 +#: common/models.py:1577 msgid "Number of results to show in each section of the search preview window" msgstr "" -#: common/models.py:1573 +#: common/models.py:1583 msgid "Show Quantity in Forms" msgstr "" -#: common/models.py:1574 +#: common/models.py:1584 msgid "Display available part quantity in some forms" msgstr "" -#: common/models.py:1580 +#: common/models.py:1590 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:1581 +#: common/models.py:1591 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:1587 +#: common/models.py:1597 msgid "Fixed Navbar" msgstr "" -#: common/models.py:1588 +#: common/models.py:1598 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:1594 +#: common/models.py:1604 msgid "Date Format" msgstr "" -#: common/models.py:1595 +#: common/models.py:1605 msgid "Preferred format for displaying dates" msgstr "" -#: common/models.py:1609 part/templates/part/detail.html:41 +#: common/models.py:1619 part/templates/part/detail.html:41 msgid "Part Scheduling" msgstr "" -#: common/models.py:1610 +#: common/models.py:1620 msgid "Display part scheduling information" msgstr "" -#: common/models.py:1669 +#: common/models.py:1679 msgid "Price break quantity" msgstr "" -#: common/models.py:1676 company/serializers.py:366 +#: common/models.py:1686 company/serializers.py:366 #: company/templates/company/supplier_part.html:284 order/models.py:938 -#: templates/js/translated/part.js:1065 templates/js/translated/part.js:2096 +#: templates/js/translated/part.js:1065 templates/js/translated/part.js:2152 msgid "Price" msgstr "" -#: common/models.py:1677 +#: common/models.py:1687 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:1837 common/models.py:2015 +#: common/models.py:1847 common/models.py:2025 msgid "Endpoint" msgstr "" -#: common/models.py:1838 +#: common/models.py:1848 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:1847 +#: common/models.py:1857 msgid "Name for this webhook" msgstr "" -#: common/models.py:1852 part/models.py:914 plugin/models.py:99 +#: common/models.py:1862 part/models.py:914 plugin/models.py:99 #: templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:104 #: templates/js/translated/table_filters.js:316 @@ -2581,67 +2589,67 @@ msgstr "" msgid "Active" msgstr "" -#: common/models.py:1853 +#: common/models.py:1863 msgid "Is this webhook active" msgstr "" -#: common/models.py:1867 +#: common/models.py:1877 msgid "Token" msgstr "" -#: common/models.py:1868 +#: common/models.py:1878 msgid "Token for access" msgstr "" -#: common/models.py:1875 +#: common/models.py:1885 msgid "Secret" msgstr "" -#: common/models.py:1876 +#: common/models.py:1886 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:1982 +#: common/models.py:1992 msgid "Message ID" msgstr "" -#: common/models.py:1983 +#: common/models.py:1993 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:1991 +#: common/models.py:2001 msgid "Host" msgstr "" -#: common/models.py:1992 +#: common/models.py:2002 msgid "Host from which this message was received" msgstr "" -#: common/models.py:1999 +#: common/models.py:2009 msgid "Header" msgstr "" -#: common/models.py:2000 +#: common/models.py:2010 msgid "Header of this message" msgstr "" -#: common/models.py:2006 +#: common/models.py:2016 msgid "Body" msgstr "" -#: common/models.py:2007 +#: common/models.py:2017 msgid "Body of this message" msgstr "" -#: common/models.py:2016 +#: common/models.py:2026 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2021 +#: common/models.py:2031 msgid "Worked on" msgstr "" -#: common/models.py:2022 +#: common/models.py:2032 msgid "Was the work on this message finished?" msgstr "" @@ -3032,7 +3040,7 @@ msgstr "" #: stock/templates/stock/item_base.html:401 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:393 templates/js/translated/order.js:2513 -#: templates/js/translated/stock.js:2491 +#: templates/js/translated/stock.js:2550 #: templates/js/translated/table_filters.js:427 msgid "Customer" msgstr "" @@ -3320,7 +3328,7 @@ msgstr "" #: company/templates/company/supplier_part.html:212 #: company/templates/company/supplier_part.html:326 -#: part/templates/part/prices.html:276 templates/js/translated/part.js:2168 +#: part/templates/part/prices.html:276 templates/js/translated/part.js:2224 msgid "Add Price Break" msgstr "" @@ -3329,12 +3337,12 @@ msgid "No price break information found" msgstr "" #: company/templates/company/supplier_part.html:252 -#: templates/js/translated/part.js:2178 +#: templates/js/translated/part.js:2234 msgid "Delete Price Break" msgstr "" #: company/templates/company/supplier_part.html:266 -#: templates/js/translated/part.js:2192 +#: templates/js/translated/part.js:2248 msgid "Edit Price Break" msgstr "" @@ -3389,7 +3397,7 @@ msgstr "" #: stock/templates/stock/location.html:173 #: stock/templates/stock/location_sidebar.html:7 #: templates/InvenTree/search.html:153 templates/js/translated/search.js:223 -#: templates/js/translated/stock.js:2368 users/models.py:40 +#: templates/js/translated/stock.js:2427 users/models.py:40 msgid "Stock Items" msgstr "" @@ -3647,7 +3655,7 @@ msgstr "" #: templates/email/overdue_purchase_order.html:15 #: templates/js/translated/order.js:936 templates/js/translated/order.js:1691 #: templates/js/translated/part.js:968 templates/js/translated/stock.js:1909 -#: templates/js/translated/stock.js:2472 +#: templates/js/translated/stock.js:2531 msgid "Purchase Order" msgstr "" @@ -4207,47 +4215,47 @@ msgstr "" msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/api.py:505 +#: part/api.py:514 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:525 +#: part/api.py:534 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:543 +#: part/api.py:552 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:575 +#: part/api.py:584 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:695 +#: part/api.py:704 msgid "Valid" msgstr "" -#: part/api.py:696 +#: part/api.py:705 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:702 +#: part/api.py:711 msgid "This option must be selected" msgstr "" -#: part/api.py:1125 +#: part/api.py:1134 msgid "Must be greater than zero" msgstr "" -#: part/api.py:1129 +#: part/api.py:1138 msgid "Must be a valid quantity" msgstr "" -#: part/api.py:1144 +#: part/api.py:1153 msgid "Specify location for initial part stock" msgstr "" -#: part/api.py:1175 part/api.py:1179 part/api.py:1194 part/api.py:1198 +#: part/api.py:1184 part/api.py:1188 part/api.py:1203 part/api.py:1207 msgid "This field is required" msgstr "" @@ -4306,7 +4314,7 @@ msgstr "" #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82 #: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:1890 templates/js/translated/search.js:144 +#: templates/js/translated/part.js:1946 templates/js/translated/search.js:144 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "" @@ -4496,7 +4504,7 @@ msgstr "" msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:2295 templates/js/translated/part.js:1941 +#: part/models.py:2295 templates/js/translated/part.js:1997 #: templates/js/translated/stock.js:1336 msgid "Test Name" msgstr "" @@ -4513,7 +4521,7 @@ msgstr "" msgid "Enter description for this test" msgstr "" -#: part/models.py:2307 templates/js/translated/part.js:1950 +#: part/models.py:2307 templates/js/translated/part.js:2006 #: templates/js/translated/table_filters.js:302 msgid "Required" msgstr "" @@ -4522,7 +4530,7 @@ msgstr "" msgid "Is this test required to pass?" msgstr "" -#: part/models.py:2313 templates/js/translated/part.js:1958 +#: part/models.py:2313 templates/js/translated/part.js:2014 msgid "Requires Value" msgstr "" @@ -4530,7 +4538,7 @@ msgstr "" msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:2319 templates/js/translated/part.js:1965 +#: part/models.py:2319 templates/js/translated/part.js:2021 msgid "Requires Attachment" msgstr "" @@ -5868,7 +5876,7 @@ msgstr "" #: report/templates/report/inventree_test_report_base.html:97 #: templates/InvenTree/settings/plugin.html:51 #: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2400 +#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2459 msgid "Date" msgstr "" @@ -5887,19 +5895,19 @@ msgstr "" #: report/templates/report/inventree_test_report_base.html:137 #: templates/js/translated/stock.js:606 templates/js/translated/stock.js:776 -#: templates/js/translated/stock.js:2649 +#: templates/js/translated/stock.js:2708 msgid "Serial" msgstr "" -#: stock/api.py:521 +#: stock/api.py:529 msgid "Quantity is required" msgstr "" -#: stock/api.py:528 +#: stock/api.py:536 msgid "Valid part must be supplied" msgstr "" -#: stock/api.py:553 +#: stock/api.py:561 msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" @@ -6303,7 +6311,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2793 +#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2852 msgid "Install Stock Item" msgstr "" @@ -8309,8 +8317,8 @@ msgid "No builds matching query" msgstr "" #: templates/js/translated/build.js:2449 templates/js/translated/part.js:1383 -#: templates/js/translated/part.js:1851 templates/js/translated/stock.js:1682 -#: templates/js/translated/stock.js:2338 +#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1682 +#: templates/js/translated/stock.js:2382 msgid "Select" msgstr "" @@ -8322,7 +8330,7 @@ msgstr "" msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2579 +#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2638 msgid "No user information" msgstr "" @@ -8916,7 +8924,7 @@ msgstr "" #: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203 #: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050 -#: templates/js/translated/part.js:2070 templates/js/translated/part.js:2423 +#: templates/js/translated/part.js:2126 templates/js/translated/part.js:2479 msgid "Unit Price" msgstr "" @@ -9316,8 +9324,8 @@ msgstr "" msgid "No category" msgstr "" -#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1786 -#: templates/js/translated/stock.js:2299 +#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816 +#: templates/js/translated/stock.js:2343 msgid "Display as list" msgstr "" @@ -9341,71 +9349,75 @@ msgstr "" msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1805 templates/js/translated/stock.js:2318 +#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2362 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:1869 +#: templates/js/translated/part.js:1914 +msgid "Load Subcategories" +msgstr "" + +#: templates/js/translated/part.js:1925 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:1927 +#: templates/js/translated/part.js:1983 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:1978 templates/js/translated/stock.js:1295 +#: templates/js/translated/part.js:2034 templates/js/translated/stock.js:1295 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:1979 templates/js/translated/stock.js:1296 +#: templates/js/translated/part.js:2035 templates/js/translated/stock.js:1296 #: templates/js/translated/stock.js:1556 msgid "Delete test result" msgstr "" -#: templates/js/translated/part.js:1985 +#: templates/js/translated/part.js:2041 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2007 +#: templates/js/translated/part.js:2063 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2021 +#: templates/js/translated/part.js:2077 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2046 +#: templates/js/translated/part.js:2102 #, python-brace-format msgid "No ${human_name} information found" msgstr "" -#: templates/js/translated/part.js:2103 +#: templates/js/translated/part.js:2159 #, python-brace-format msgid "Edit ${human_name}" msgstr "" -#: templates/js/translated/part.js:2104 +#: templates/js/translated/part.js:2160 #, python-brace-format msgid "Delete ${human_name}" msgstr "" -#: templates/js/translated/part.js:2218 +#: templates/js/translated/part.js:2274 msgid "Current Stock" msgstr "" -#: templates/js/translated/part.js:2251 +#: templates/js/translated/part.js:2307 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2277 +#: templates/js/translated/part.js:2333 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2347 +#: templates/js/translated/part.js:2403 msgid "Single Price" msgstr "" -#: templates/js/translated/part.js:2366 +#: templates/js/translated/part.js:2422 msgid "Single Price Difference" msgstr "" @@ -9796,75 +9808,79 @@ msgstr "" msgid "Status code must be selected" msgstr "" -#: templates/js/translated/stock.js:2425 +#: templates/js/translated/stock.js:2400 +msgid "Load Subloactions" +msgstr "" + +#: templates/js/translated/stock.js:2484 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2441 +#: templates/js/translated/stock.js:2500 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2463 +#: templates/js/translated/stock.js:2522 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2482 +#: templates/js/translated/stock.js:2541 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2501 +#: templates/js/translated/stock.js:2560 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2519 +#: templates/js/translated/stock.js:2578 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:2542 +#: templates/js/translated/stock.js:2601 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:2550 +#: templates/js/translated/stock.js:2609 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:2626 +#: templates/js/translated/stock.js:2685 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:2677 templates/js/translated/stock.js:2713 +#: templates/js/translated/stock.js:2736 templates/js/translated/stock.js:2772 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:2726 +#: templates/js/translated/stock.js:2785 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:2747 +#: templates/js/translated/stock.js:2806 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:2748 +#: templates/js/translated/stock.js:2807 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:2750 +#: templates/js/translated/stock.js:2809 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:2751 +#: templates/js/translated/stock.js:2810 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:2752 +#: templates/js/translated/stock.js:2811 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:2753 +#: templates/js/translated/stock.js:2812 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:2766 +#: templates/js/translated/stock.js:2825 msgid "Select part to install" msgstr "" diff --git a/InvenTree/locale/es/LC_MESSAGES/django.po b/InvenTree/locale/es/LC_MESSAGES/django.po index 67f055b00d..ce644169b2 100644 --- a/InvenTree/locale/es/LC_MESSAGES/django.po +++ b/InvenTree/locale/es/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-04 22:08+0000\n" -"PO-Revision-Date: 2022-08-05 01:02\n" +"POT-Creation-Date: 2022-08-07 21:57+0000\n" +"PO-Revision-Date: 2022-08-08 13:03\n" "Last-Translator: \n" "Language-Team: Spanish\n" "Language: es_ES\n" @@ -17,7 +17,7 @@ msgstr "" "X-Crowdin-File: /[inventree.InvenTree] l10/InvenTree/locale/en/LC_MESSAGES/django.po\n" "X-Crowdin-File-ID: 154\n" -#: InvenTree/api.py:52 +#: InvenTree/api.py:54 msgid "API endpoint not found" msgstr "" @@ -25,11 +25,11 @@ msgstr "" msgid "Error details can be found in the admin panel" msgstr "" -#: InvenTree/fields.py:108 +#: InvenTree/fields.py:109 msgid "Enter date" msgstr "" -#: InvenTree/fields.py:185 build/serializers.py:384 +#: InvenTree/fields.py:186 build/serializers.py:384 #: build/templates/build/sidebar.html:21 company/models.py:523 #: company/templates/company/sidebar.html:25 order/models.py:906 #: order/templates/order/po_sidebar.html:11 @@ -89,76 +89,76 @@ msgstr "" msgid "You must type the same email each time." msgstr "" -#: InvenTree/helpers.py:172 +#: InvenTree/helpers.py:173 msgid "Connection error" msgstr "" -#: InvenTree/helpers.py:176 InvenTree/helpers.py:181 +#: InvenTree/helpers.py:177 InvenTree/helpers.py:182 msgid "Server responded with invalid status code" msgstr "" -#: InvenTree/helpers.py:178 +#: InvenTree/helpers.py:179 msgid "Exception occurred" msgstr "" -#: InvenTree/helpers.py:186 +#: InvenTree/helpers.py:187 msgid "Server responded with invalid Content-Length value" msgstr "" -#: InvenTree/helpers.py:189 +#: InvenTree/helpers.py:190 msgid "Image size is too large" msgstr "" -#: InvenTree/helpers.py:201 +#: InvenTree/helpers.py:202 msgid "Image download exceeded maximum size" msgstr "" -#: InvenTree/helpers.py:206 +#: InvenTree/helpers.py:207 msgid "Remote server returned empty response" msgstr "" -#: InvenTree/helpers.py:214 +#: InvenTree/helpers.py:215 msgid "Supplied URL is not a valid image file" msgstr "" -#: InvenTree/helpers.py:573 +#: InvenTree/helpers.py:584 #, python-brace-format msgid "Duplicate serial: {sn}" msgstr "" -#: InvenTree/helpers.py:580 order/models.py:320 order/models.py:472 +#: InvenTree/helpers.py:591 order/models.py:320 order/models.py:472 msgid "Invalid quantity provided" msgstr "" -#: InvenTree/helpers.py:583 +#: InvenTree/helpers.py:594 msgid "Empty serial number string" msgstr "" -#: InvenTree/helpers.py:615 +#: InvenTree/helpers.py:626 #, python-brace-format msgid "Invalid group range: {g}" msgstr "" -#: InvenTree/helpers.py:618 +#: InvenTree/helpers.py:629 #, python-brace-format msgid "Invalid group: {g}" msgstr "" -#: InvenTree/helpers.py:646 +#: InvenTree/helpers.py:657 #, python-brace-format msgid "Invalid group sequence: {g}" msgstr "" -#: InvenTree/helpers.py:654 +#: InvenTree/helpers.py:665 #, python-brace-format msgid "Invalid/no group {group}" msgstr "" -#: InvenTree/helpers.py:660 +#: InvenTree/helpers.py:671 msgid "No serial numbers found" msgstr "" -#: InvenTree/helpers.py:664 +#: InvenTree/helpers.py:675 #, python-brace-format msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "" @@ -398,99 +398,99 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/settings.py:607 +#: InvenTree/settings.py:609 msgid "Czech" msgstr "" -#: InvenTree/settings.py:608 +#: InvenTree/settings.py:610 msgid "German" msgstr "" -#: InvenTree/settings.py:609 +#: InvenTree/settings.py:611 msgid "Greek" msgstr "" -#: InvenTree/settings.py:610 +#: InvenTree/settings.py:612 msgid "English" msgstr "" -#: InvenTree/settings.py:611 +#: InvenTree/settings.py:613 msgid "Spanish" msgstr "" -#: InvenTree/settings.py:612 +#: InvenTree/settings.py:614 msgid "Spanish (Mexican)" msgstr "" -#: InvenTree/settings.py:613 +#: InvenTree/settings.py:615 msgid "Farsi / Persian" msgstr "" -#: InvenTree/settings.py:614 +#: InvenTree/settings.py:616 msgid "French" msgstr "" -#: InvenTree/settings.py:615 +#: InvenTree/settings.py:617 msgid "Hebrew" msgstr "" -#: InvenTree/settings.py:616 +#: InvenTree/settings.py:618 msgid "Hungarian" msgstr "" -#: InvenTree/settings.py:617 +#: InvenTree/settings.py:619 msgid "Italian" msgstr "" -#: InvenTree/settings.py:618 +#: InvenTree/settings.py:620 msgid "Japanese" msgstr "" -#: InvenTree/settings.py:619 +#: InvenTree/settings.py:621 msgid "Korean" msgstr "" -#: InvenTree/settings.py:620 +#: InvenTree/settings.py:622 msgid "Dutch" msgstr "" -#: InvenTree/settings.py:621 +#: InvenTree/settings.py:623 msgid "Norwegian" msgstr "" -#: InvenTree/settings.py:622 +#: InvenTree/settings.py:624 msgid "Polish" msgstr "" -#: InvenTree/settings.py:623 +#: InvenTree/settings.py:625 msgid "Portuguese" msgstr "" -#: InvenTree/settings.py:624 +#: InvenTree/settings.py:626 msgid "Portuguese (Brazilian)" msgstr "" -#: InvenTree/settings.py:625 +#: InvenTree/settings.py:627 msgid "Russian" msgstr "" -#: InvenTree/settings.py:626 +#: InvenTree/settings.py:628 msgid "Swedish" msgstr "" -#: InvenTree/settings.py:627 +#: InvenTree/settings.py:629 msgid "Thai" msgstr "" -#: InvenTree/settings.py:628 +#: InvenTree/settings.py:630 msgid "Turkish" msgstr "" -#: InvenTree/settings.py:629 +#: InvenTree/settings.py:631 msgid "Vietnamese" msgstr "" -#: InvenTree/settings.py:630 +#: InvenTree/settings.py:632 msgid "Chinese" msgstr "" @@ -5516,11 +5516,11 @@ msgstr "" msgid "Create a new variant of template '%(full_name)s'." msgstr "" -#: part/templatetags/inventree_extras.py:157 +#: part/templatetags/inventree_extras.py:177 msgid "Unknown database" msgstr "" -#: part/templatetags/inventree_extras.py:202 +#: part/templatetags/inventree_extras.py:222 #, python-brace-format msgid "{title} v{version}" msgstr "" diff --git a/InvenTree/locale/es_MX/LC_MESSAGES/django.po b/InvenTree/locale/es_MX/LC_MESSAGES/django.po index cdb0d4d84f..988374f9ab 100644 --- a/InvenTree/locale/es_MX/LC_MESSAGES/django.po +++ b/InvenTree/locale/es_MX/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-04 00:21+0000\n" +"POT-Creation-Date: 2022-08-07 12:49+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -26,11 +26,11 @@ msgstr "" msgid "Error details can be found in the admin panel" msgstr "" -#: InvenTree/fields.py:108 +#: InvenTree/fields.py:109 msgid "Enter date" msgstr "" -#: InvenTree/fields.py:185 build/serializers.py:384 +#: InvenTree/fields.py:186 build/serializers.py:384 #: build/templates/build/sidebar.html:21 company/models.py:523 #: company/templates/company/sidebar.html:25 order/models.py:906 #: order/templates/order/po_sidebar.html:11 @@ -90,76 +90,76 @@ msgstr "" msgid "You must type the same email each time." msgstr "" -#: InvenTree/helpers.py:172 +#: InvenTree/helpers.py:173 msgid "Connection error" msgstr "" -#: InvenTree/helpers.py:176 InvenTree/helpers.py:181 +#: InvenTree/helpers.py:177 InvenTree/helpers.py:182 msgid "Server responded with invalid status code" msgstr "" -#: InvenTree/helpers.py:178 +#: InvenTree/helpers.py:179 msgid "Exception occurred" msgstr "" -#: InvenTree/helpers.py:186 +#: InvenTree/helpers.py:187 msgid "Server responded with invalid Content-Length value" msgstr "" -#: InvenTree/helpers.py:189 +#: InvenTree/helpers.py:190 msgid "Image size is too large" msgstr "" -#: InvenTree/helpers.py:201 +#: InvenTree/helpers.py:202 msgid "Image download exceeded maximum size" msgstr "" -#: InvenTree/helpers.py:206 +#: InvenTree/helpers.py:207 msgid "Remote server returned empty response" msgstr "" -#: InvenTree/helpers.py:214 +#: InvenTree/helpers.py:215 msgid "Supplied URL is not a valid image file" msgstr "" -#: InvenTree/helpers.py:557 +#: InvenTree/helpers.py:584 #, python-brace-format msgid "Duplicate serial: {sn}" msgstr "" -#: InvenTree/helpers.py:564 order/models.py:320 order/models.py:472 +#: InvenTree/helpers.py:591 order/models.py:320 order/models.py:472 msgid "Invalid quantity provided" msgstr "" -#: InvenTree/helpers.py:567 +#: InvenTree/helpers.py:594 msgid "Empty serial number string" msgstr "" -#: InvenTree/helpers.py:599 +#: InvenTree/helpers.py:626 #, python-brace-format msgid "Invalid group range: {g}" msgstr "" -#: InvenTree/helpers.py:602 +#: InvenTree/helpers.py:629 #, python-brace-format msgid "Invalid group: {g}" msgstr "" -#: InvenTree/helpers.py:630 +#: InvenTree/helpers.py:657 #, python-brace-format msgid "Invalid group sequence: {g}" msgstr "" -#: InvenTree/helpers.py:638 +#: InvenTree/helpers.py:665 #, python-brace-format msgid "Invalid/no group {group}" msgstr "" -#: InvenTree/helpers.py:644 +#: InvenTree/helpers.py:671 msgid "No serial numbers found" msgstr "" -#: InvenTree/helpers.py:648 +#: InvenTree/helpers.py:675 #, python-brace-format msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "" @@ -230,12 +230,12 @@ msgstr "" msgid "File comment" msgstr "" -#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1636 -#: common/models.py:1637 common/models.py:1860 common/models.py:1861 -#: common/models.py:2123 common/models.py:2124 part/models.py:2193 +#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1646 +#: common/models.py:1647 common/models.py:1870 common/models.py:1871 +#: common/models.py:2133 common/models.py:2134 part/models.py:2193 #: part/models.py:2213 plugin/models.py:238 plugin/models.py:239 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2573 +#: templates/js/translated/stock.js:2632 msgid "User" msgstr "" @@ -272,7 +272,7 @@ msgstr "" msgid "Invalid choice" msgstr "" -#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1846 +#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1856 #: company/models.py:358 label/models.py:101 part/models.py:739 #: part/models.py:2371 plugin/models.py:93 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 @@ -284,7 +284,7 @@ msgstr "" #: templates/js/translated/company.js:758 #: templates/js/translated/notification.js:71 #: templates/js/translated/part.js:684 templates/js/translated/part.js:836 -#: templates/js/translated/part.js:1858 templates/js/translated/stock.js:2344 +#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2388 msgid "Name" msgstr "" @@ -305,9 +305,9 @@ msgstr "" #: templates/js/translated/company.js:959 templates/js/translated/order.js:1720 #: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531 #: templates/js/translated/part.js:743 templates/js/translated/part.js:1149 -#: templates/js/translated/part.js:1424 templates/js/translated/part.js:1877 -#: templates/js/translated/part.js:1946 templates/js/translated/stock.js:1739 -#: templates/js/translated/stock.js:2356 templates/js/translated/stock.js:2410 +#: templates/js/translated/part.js:1424 templates/js/translated/part.js:1933 +#: templates/js/translated/part.js:2002 templates/js/translated/stock.js:1739 +#: templates/js/translated/stock.js:2415 templates/js/translated/stock.js:2469 msgid "Description" msgstr "" @@ -320,7 +320,7 @@ msgid "parent" msgstr "" #: InvenTree/models.py:560 InvenTree/models.py:561 -#: templates/js/translated/part.js:1883 templates/js/translated/stock.js:2362 +#: templates/js/translated/part.js:1939 templates/js/translated/stock.js:2421 msgid "Path" msgstr "" @@ -399,99 +399,99 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/settings.py:607 +#: InvenTree/settings.py:609 msgid "Czech" msgstr "" -#: InvenTree/settings.py:608 +#: InvenTree/settings.py:610 msgid "German" msgstr "" -#: InvenTree/settings.py:609 +#: InvenTree/settings.py:611 msgid "Greek" msgstr "" -#: InvenTree/settings.py:610 +#: InvenTree/settings.py:612 msgid "English" msgstr "" -#: InvenTree/settings.py:611 +#: InvenTree/settings.py:613 msgid "Spanish" msgstr "" -#: InvenTree/settings.py:612 +#: InvenTree/settings.py:614 msgid "Spanish (Mexican)" msgstr "" -#: InvenTree/settings.py:613 +#: InvenTree/settings.py:615 msgid "Farsi / Persian" msgstr "" -#: InvenTree/settings.py:614 +#: InvenTree/settings.py:616 msgid "French" msgstr "" -#: InvenTree/settings.py:615 +#: InvenTree/settings.py:617 msgid "Hebrew" msgstr "" -#: InvenTree/settings.py:616 +#: InvenTree/settings.py:618 msgid "Hungarian" msgstr "" -#: InvenTree/settings.py:617 +#: InvenTree/settings.py:619 msgid "Italian" msgstr "" -#: InvenTree/settings.py:618 +#: InvenTree/settings.py:620 msgid "Japanese" msgstr "" -#: InvenTree/settings.py:619 +#: InvenTree/settings.py:621 msgid "Korean" msgstr "" -#: InvenTree/settings.py:620 +#: InvenTree/settings.py:622 msgid "Dutch" msgstr "" -#: InvenTree/settings.py:621 +#: InvenTree/settings.py:623 msgid "Norwegian" msgstr "" -#: InvenTree/settings.py:622 +#: InvenTree/settings.py:624 msgid "Polish" msgstr "" -#: InvenTree/settings.py:623 +#: InvenTree/settings.py:625 msgid "Portuguese" msgstr "" -#: InvenTree/settings.py:624 +#: InvenTree/settings.py:626 msgid "Portuguese (Brazilian)" msgstr "" -#: InvenTree/settings.py:625 +#: InvenTree/settings.py:627 msgid "Russian" msgstr "" -#: InvenTree/settings.py:626 +#: InvenTree/settings.py:628 msgid "Swedish" msgstr "" -#: InvenTree/settings.py:627 +#: InvenTree/settings.py:629 msgid "Thai" msgstr "" -#: InvenTree/settings.py:628 +#: InvenTree/settings.py:630 msgid "Turkish" msgstr "" -#: InvenTree/settings.py:629 +#: InvenTree/settings.py:631 msgid "Vietnamese" msgstr "" -#: InvenTree/settings.py:630 +#: InvenTree/settings.py:632 msgid "Chinese" msgstr "" @@ -800,8 +800,8 @@ msgstr "" #: templates/js/translated/part.js:1134 templates/js/translated/part.js:1206 #: templates/js/translated/part.js:1402 templates/js/translated/stock.js:582 #: templates/js/translated/stock.js:747 templates/js/translated/stock.js:954 -#: templates/js/translated/stock.js:1696 templates/js/translated/stock.js:2436 -#: templates/js/translated/stock.js:2631 templates/js/translated/stock.js:2765 +#: templates/js/translated/stock.js:1696 templates/js/translated/stock.js:2495 +#: templates/js/translated/stock.js:2690 templates/js/translated/stock.js:2824 msgid "Part" msgstr "" @@ -989,7 +989,7 @@ msgstr "" #: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193 #: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380 #: templates/js/translated/stock.js:583 templates/js/translated/stock.js:748 -#: templates/js/translated/stock.js:2509 +#: templates/js/translated/stock.js:2568 msgid "Stock Item" msgstr "" @@ -999,7 +999,7 @@ msgstr "" #: build/models.py:1330 build/serializers.py:193 #: build/templates/build/build_base.html:82 -#: build/templates/build/detail.html:34 common/models.py:1668 +#: build/templates/build/detail.html:34 common/models.py:1678 #: company/templates/company/supplier_part.html:279 order/models.py:897 #: order/models.py:1423 order/serializers.py:1155 #: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40 @@ -1026,11 +1026,11 @@ msgstr "" #: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207 #: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386 #: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037 -#: templates/js/translated/part.js:1034 templates/js/translated/part.js:2091 -#: templates/js/translated/part.js:2322 templates/js/translated/part.js:2356 -#: templates/js/translated/part.js:2434 templates/js/translated/stock.js:454 +#: templates/js/translated/part.js:1034 templates/js/translated/part.js:2147 +#: templates/js/translated/part.js:2378 templates/js/translated/part.js:2412 +#: templates/js/translated/part.js:2490 templates/js/translated/stock.js:454 #: templates/js/translated/stock.js:608 templates/js/translated/stock.js:778 -#: templates/js/translated/stock.js:2558 templates/js/translated/stock.js:2643 +#: templates/js/translated/stock.js:2617 templates/js/translated/stock.js:2702 msgid "Quantity" msgstr "" @@ -1104,7 +1104,7 @@ msgstr "" msgid "Automatically allocate required items with matching serial numbers" msgstr "" -#: build/serializers.py:278 stock/api.py:569 +#: build/serializers.py:278 stock/api.py:577 msgid "The following serial numbers already exist" msgstr "" @@ -1123,7 +1123,7 @@ msgstr "" #: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394 #: templates/js/translated/part.js:181 templates/js/translated/stock.js:584 #: templates/js/translated/stock.js:749 templates/js/translated/stock.js:956 -#: templates/js/translated/stock.js:1850 templates/js/translated/stock.js:2450 +#: templates/js/translated/stock.js:1850 templates/js/translated/stock.js:2509 msgid "Location" msgstr "" @@ -1137,7 +1137,7 @@ msgstr "" #: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505 #: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724 #: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1825 -#: templates/js/translated/stock.js:2527 templates/js/translated/stock.js:2659 +#: templates/js/translated/stock.js:2586 templates/js/translated/stock.js:2718 msgid "Status" msgstr "" @@ -1448,7 +1448,7 @@ msgstr "" #: templates/js/translated/build.js:1182 #: templates/js/translated/model_renderers.js:124 #: templates/js/translated/stock.js:1022 templates/js/translated/stock.js:1839 -#: templates/js/translated/stock.js:2666 +#: templates/js/translated/stock.js:2725 #: templates/js/translated/table_filters.js:159 #: templates/js/translated/table_filters.js:250 msgid "Batch" @@ -1759,821 +1759,829 @@ msgstr "" msgid "Require explicit user confirmation for certain action." msgstr "" -#: common/models.py:880 templates/InvenTree/settings/sidebar.html:33 -msgid "Barcode Support" +#: common/models.py:880 +msgid "Tree Depth" msgstr "" #: common/models.py:881 +msgid "Default tree depth for treeview. Deeper levels can be lazy loaded as they are needed." +msgstr "" + +#: common/models.py:890 templates/InvenTree/settings/sidebar.html:33 +msgid "Barcode Support" +msgstr "" + +#: common/models.py:891 msgid "Enable barcode scanner support" msgstr "" -#: common/models.py:887 +#: common/models.py:897 msgid "Barcode Webcam Support" msgstr "" -#: common/models.py:888 +#: common/models.py:898 msgid "Allow barcode scanning via webcam in browser" msgstr "" -#: common/models.py:894 +#: common/models.py:904 msgid "IPN Regex" msgstr "" -#: common/models.py:895 +#: common/models.py:905 msgid "Regular expression pattern for matching Part IPN" msgstr "" -#: common/models.py:899 +#: common/models.py:909 msgid "Allow Duplicate IPN" msgstr "" -#: common/models.py:900 +#: common/models.py:910 msgid "Allow multiple parts to share the same IPN" msgstr "" -#: common/models.py:906 +#: common/models.py:916 msgid "Allow Editing IPN" msgstr "" -#: common/models.py:907 +#: common/models.py:917 msgid "Allow changing the IPN value while editing a part" msgstr "" -#: common/models.py:913 +#: common/models.py:923 msgid "Copy Part BOM Data" msgstr "" -#: common/models.py:914 +#: common/models.py:924 msgid "Copy BOM data by default when duplicating a part" msgstr "" -#: common/models.py:920 +#: common/models.py:930 msgid "Copy Part Parameter Data" msgstr "" -#: common/models.py:921 +#: common/models.py:931 msgid "Copy parameter data by default when duplicating a part" msgstr "" -#: common/models.py:927 +#: common/models.py:937 msgid "Copy Part Test Data" msgstr "" -#: common/models.py:928 +#: common/models.py:938 msgid "Copy test data by default when duplicating a part" msgstr "" -#: common/models.py:934 +#: common/models.py:944 msgid "Copy Category Parameter Templates" msgstr "" -#: common/models.py:935 +#: common/models.py:945 msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:941 part/models.py:2412 report/models.py:158 +#: common/models.py:951 part/models.py:2412 report/models.py:158 #: templates/js/translated/table_filters.js:38 #: templates/js/translated/table_filters.js:484 msgid "Template" msgstr "" -#: common/models.py:942 +#: common/models.py:952 msgid "Parts are templates by default" msgstr "" -#: common/models.py:948 part/models.py:887 templates/js/translated/bom.js:1448 +#: common/models.py:958 part/models.py:887 templates/js/translated/bom.js:1448 #: templates/js/translated/table_filters.js:176 #: templates/js/translated/table_filters.js:447 msgid "Assembly" msgstr "" -#: common/models.py:949 +#: common/models.py:959 msgid "Parts can be assembled from other components by default" msgstr "" -#: common/models.py:955 part/models.py:893 +#: common/models.py:965 part/models.py:893 #: templates/js/translated/table_filters.js:455 msgid "Component" msgstr "" -#: common/models.py:956 +#: common/models.py:966 msgid "Parts can be used as sub-components by default" msgstr "" -#: common/models.py:962 part/models.py:904 +#: common/models.py:972 part/models.py:904 msgid "Purchaseable" msgstr "" -#: common/models.py:963 +#: common/models.py:973 msgid "Parts are purchaseable by default" msgstr "" -#: common/models.py:969 part/models.py:909 +#: common/models.py:979 part/models.py:909 #: templates/js/translated/table_filters.js:476 msgid "Salable" msgstr "" -#: common/models.py:970 +#: common/models.py:980 msgid "Parts are salable by default" msgstr "" -#: common/models.py:976 part/models.py:899 +#: common/models.py:986 part/models.py:899 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:108 #: templates/js/translated/table_filters.js:488 msgid "Trackable" msgstr "" -#: common/models.py:977 +#: common/models.py:987 msgid "Parts are trackable by default" msgstr "" -#: common/models.py:983 part/models.py:919 +#: common/models.py:993 part/models.py:919 #: part/templates/part/part_base.html:151 #: templates/js/translated/table_filters.js:42 #: templates/js/translated/table_filters.js:492 msgid "Virtual" msgstr "" -#: common/models.py:984 +#: common/models.py:994 msgid "Parts are virtual by default" msgstr "" -#: common/models.py:990 +#: common/models.py:1000 msgid "Show Import in Views" msgstr "" -#: common/models.py:991 +#: common/models.py:1001 msgid "Display the import wizard in some part views" msgstr "" -#: common/models.py:997 +#: common/models.py:1007 msgid "Show Price in Forms" msgstr "" -#: common/models.py:998 +#: common/models.py:1008 msgid "Display part price in some forms" msgstr "" -#: common/models.py:1009 +#: common/models.py:1019 msgid "Show Price in BOM" msgstr "" -#: common/models.py:1010 +#: common/models.py:1020 msgid "Include pricing information in BOM tables" msgstr "" -#: common/models.py:1021 +#: common/models.py:1031 msgid "Show Price History" msgstr "" -#: common/models.py:1022 +#: common/models.py:1032 msgid "Display historical pricing for Part" msgstr "" -#: common/models.py:1028 +#: common/models.py:1038 msgid "Show related parts" msgstr "" -#: common/models.py:1029 +#: common/models.py:1039 msgid "Display related parts for a part" msgstr "" -#: common/models.py:1035 +#: common/models.py:1045 msgid "Create initial stock" msgstr "" -#: common/models.py:1036 +#: common/models.py:1046 msgid "Create initial stock on part creation" msgstr "" -#: common/models.py:1042 +#: common/models.py:1052 msgid "Internal Prices" msgstr "" -#: common/models.py:1043 +#: common/models.py:1053 msgid "Enable internal prices for parts" msgstr "" -#: common/models.py:1049 +#: common/models.py:1059 msgid "Internal Price as BOM-Price" msgstr "" -#: common/models.py:1050 +#: common/models.py:1060 msgid "Use the internal price (if set) in BOM-price calculations" msgstr "" -#: common/models.py:1056 +#: common/models.py:1066 msgid "Part Name Display Format" msgstr "" -#: common/models.py:1057 +#: common/models.py:1067 msgid "Format to display the part name" msgstr "" -#: common/models.py:1064 +#: common/models.py:1074 msgid "Enable label printing" msgstr "" -#: common/models.py:1065 +#: common/models.py:1075 msgid "Enable label printing from the web interface" msgstr "" -#: common/models.py:1071 +#: common/models.py:1081 msgid "Label Image DPI" msgstr "" -#: common/models.py:1072 +#: common/models.py:1082 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/models.py:1081 +#: common/models.py:1091 msgid "Enable Reports" msgstr "" -#: common/models.py:1082 +#: common/models.py:1092 msgid "Enable generation of reports" msgstr "" -#: common/models.py:1088 templates/stats.html:25 +#: common/models.py:1098 templates/stats.html:25 msgid "Debug Mode" msgstr "" -#: common/models.py:1089 +#: common/models.py:1099 msgid "Generate reports in debug mode (HTML output)" msgstr "" -#: common/models.py:1095 +#: common/models.py:1105 msgid "Page Size" msgstr "" -#: common/models.py:1096 +#: common/models.py:1106 msgid "Default page size for PDF reports" msgstr "" -#: common/models.py:1106 +#: common/models.py:1116 msgid "Enable Test Reports" msgstr "" -#: common/models.py:1107 +#: common/models.py:1117 msgid "Enable generation of test reports" msgstr "" -#: common/models.py:1113 +#: common/models.py:1123 msgid "Attach Test Reports" msgstr "" -#: common/models.py:1114 +#: common/models.py:1124 msgid "When printing a Test Report, attach a copy of the Test Report to the associated Stock Item" msgstr "" -#: common/models.py:1120 +#: common/models.py:1130 msgid "Batch Code Template" msgstr "" -#: common/models.py:1121 +#: common/models.py:1131 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/models.py:1126 +#: common/models.py:1136 msgid "Stock Expiry" msgstr "" -#: common/models.py:1127 +#: common/models.py:1137 msgid "Enable stock expiry functionality" msgstr "" -#: common/models.py:1133 +#: common/models.py:1143 msgid "Sell Expired Stock" msgstr "" -#: common/models.py:1134 +#: common/models.py:1144 msgid "Allow sale of expired stock" msgstr "" -#: common/models.py:1140 +#: common/models.py:1150 msgid "Stock Stale Time" msgstr "" -#: common/models.py:1141 +#: common/models.py:1151 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/models.py:1143 +#: common/models.py:1153 msgid "days" msgstr "" -#: common/models.py:1148 +#: common/models.py:1158 msgid "Build Expired Stock" msgstr "" -#: common/models.py:1149 +#: common/models.py:1159 msgid "Allow building with expired stock" msgstr "" -#: common/models.py:1155 +#: common/models.py:1165 msgid "Stock Ownership Control" msgstr "" -#: common/models.py:1156 +#: common/models.py:1166 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/models.py:1162 +#: common/models.py:1172 msgid "Build Order Reference Pattern" msgstr "" -#: common/models.py:1163 +#: common/models.py:1173 msgid "Required pattern for generating Build Order reference field" msgstr "" -#: common/models.py:1169 +#: common/models.py:1179 msgid "Sales Order Reference Pattern" msgstr "" -#: common/models.py:1170 +#: common/models.py:1180 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/models.py:1176 +#: common/models.py:1186 msgid "Sales Order Default Shipment" msgstr "" -#: common/models.py:1177 +#: common/models.py:1187 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/models.py:1183 +#: common/models.py:1193 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/models.py:1184 +#: common/models.py:1194 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/models.py:1191 +#: common/models.py:1201 msgid "Enable password forgot" msgstr "" -#: common/models.py:1192 +#: common/models.py:1202 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/models.py:1198 +#: common/models.py:1208 msgid "Enable registration" msgstr "" -#: common/models.py:1199 +#: common/models.py:1209 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/models.py:1205 +#: common/models.py:1215 msgid "Enable SSO" msgstr "" -#: common/models.py:1206 +#: common/models.py:1216 msgid "Enable SSO on the login pages" msgstr "" -#: common/models.py:1212 +#: common/models.py:1222 msgid "Email required" msgstr "" -#: common/models.py:1213 +#: common/models.py:1223 msgid "Require user to supply mail on signup" msgstr "" -#: common/models.py:1219 +#: common/models.py:1229 msgid "Auto-fill SSO users" msgstr "" -#: common/models.py:1220 +#: common/models.py:1230 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/models.py:1226 +#: common/models.py:1236 msgid "Mail twice" msgstr "" -#: common/models.py:1227 +#: common/models.py:1237 msgid "On signup ask users twice for their mail" msgstr "" -#: common/models.py:1233 +#: common/models.py:1243 msgid "Password twice" msgstr "" -#: common/models.py:1234 +#: common/models.py:1244 msgid "On signup ask users twice for their password" msgstr "" -#: common/models.py:1240 +#: common/models.py:1250 msgid "Group on signup" msgstr "" -#: common/models.py:1241 +#: common/models.py:1251 msgid "Group to which new users are assigned on registration" msgstr "" -#: common/models.py:1247 +#: common/models.py:1257 msgid "Enforce MFA" msgstr "" -#: common/models.py:1248 +#: common/models.py:1258 msgid "Users must use multifactor security." msgstr "" -#: common/models.py:1254 +#: common/models.py:1264 msgid "Check plugins on startup" msgstr "" -#: common/models.py:1255 +#: common/models.py:1265 msgid "Check that all plugins are installed on startup - enable in container enviroments" msgstr "" -#: common/models.py:1263 +#: common/models.py:1273 msgid "Enable URL integration" msgstr "" -#: common/models.py:1264 +#: common/models.py:1274 msgid "Enable plugins to add URL routes" msgstr "" -#: common/models.py:1271 +#: common/models.py:1281 msgid "Enable navigation integration" msgstr "" -#: common/models.py:1272 +#: common/models.py:1282 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/models.py:1279 +#: common/models.py:1289 msgid "Enable app integration" msgstr "" -#: common/models.py:1280 +#: common/models.py:1290 msgid "Enable plugins to add apps" msgstr "" -#: common/models.py:1287 +#: common/models.py:1297 msgid "Enable schedule integration" msgstr "" -#: common/models.py:1288 +#: common/models.py:1298 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/models.py:1295 +#: common/models.py:1305 msgid "Enable event integration" msgstr "" -#: common/models.py:1296 +#: common/models.py:1306 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:1313 common/models.py:1629 +#: common/models.py:1323 common/models.py:1639 msgid "Settings key (must be unique - case insensitive" msgstr "" -#: common/models.py:1335 +#: common/models.py:1345 msgid "Show subscribed parts" msgstr "" -#: common/models.py:1336 +#: common/models.py:1346 msgid "Show subscribed parts on the homepage" msgstr "" -#: common/models.py:1342 +#: common/models.py:1352 msgid "Show subscribed categories" msgstr "" -#: common/models.py:1343 +#: common/models.py:1353 msgid "Show subscribed part categories on the homepage" msgstr "" -#: common/models.py:1349 +#: common/models.py:1359 msgid "Show latest parts" msgstr "" -#: common/models.py:1350 +#: common/models.py:1360 msgid "Show latest parts on the homepage" msgstr "" -#: common/models.py:1356 +#: common/models.py:1366 msgid "Recent Part Count" msgstr "" -#: common/models.py:1357 +#: common/models.py:1367 msgid "Number of recent parts to display on index page" msgstr "" -#: common/models.py:1363 +#: common/models.py:1373 msgid "Show unvalidated BOMs" msgstr "" -#: common/models.py:1364 +#: common/models.py:1374 msgid "Show BOMs that await validation on the homepage" msgstr "" -#: common/models.py:1370 +#: common/models.py:1380 msgid "Show recent stock changes" msgstr "" -#: common/models.py:1371 +#: common/models.py:1381 msgid "Show recently changed stock items on the homepage" msgstr "" -#: common/models.py:1377 +#: common/models.py:1387 msgid "Recent Stock Count" msgstr "" -#: common/models.py:1378 +#: common/models.py:1388 msgid "Number of recent stock items to display on index page" msgstr "" -#: common/models.py:1384 +#: common/models.py:1394 msgid "Show low stock" msgstr "" -#: common/models.py:1385 +#: common/models.py:1395 msgid "Show low stock items on the homepage" msgstr "" -#: common/models.py:1391 +#: common/models.py:1401 msgid "Show depleted stock" msgstr "" -#: common/models.py:1392 +#: common/models.py:1402 msgid "Show depleted stock items on the homepage" msgstr "" -#: common/models.py:1398 +#: common/models.py:1408 msgid "Show needed stock" msgstr "" -#: common/models.py:1399 +#: common/models.py:1409 msgid "Show stock items needed for builds on the homepage" msgstr "" -#: common/models.py:1405 +#: common/models.py:1415 msgid "Show expired stock" msgstr "" -#: common/models.py:1406 +#: common/models.py:1416 msgid "Show expired stock items on the homepage" msgstr "" -#: common/models.py:1412 +#: common/models.py:1422 msgid "Show stale stock" msgstr "" -#: common/models.py:1413 +#: common/models.py:1423 msgid "Show stale stock items on the homepage" msgstr "" -#: common/models.py:1419 +#: common/models.py:1429 msgid "Show pending builds" msgstr "" -#: common/models.py:1420 +#: common/models.py:1430 msgid "Show pending builds on the homepage" msgstr "" -#: common/models.py:1426 +#: common/models.py:1436 msgid "Show overdue builds" msgstr "" -#: common/models.py:1427 +#: common/models.py:1437 msgid "Show overdue builds on the homepage" msgstr "" -#: common/models.py:1433 +#: common/models.py:1443 msgid "Show outstanding POs" msgstr "" -#: common/models.py:1434 +#: common/models.py:1444 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:1440 +#: common/models.py:1450 msgid "Show overdue POs" msgstr "" -#: common/models.py:1441 +#: common/models.py:1451 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:1447 +#: common/models.py:1457 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:1448 +#: common/models.py:1458 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:1454 +#: common/models.py:1464 msgid "Show overdue SOs" msgstr "" -#: common/models.py:1455 +#: common/models.py:1465 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:1461 +#: common/models.py:1471 msgid "Inline label display" msgstr "" -#: common/models.py:1462 +#: common/models.py:1472 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1468 +#: common/models.py:1478 msgid "Inline report display" msgstr "" -#: common/models.py:1469 +#: common/models.py:1479 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1475 +#: common/models.py:1485 msgid "Search Parts" msgstr "" -#: common/models.py:1476 +#: common/models.py:1486 msgid "Display parts in search preview window" msgstr "" -#: common/models.py:1482 +#: common/models.py:1492 msgid "Seach Supplier Parts" msgstr "" -#: common/models.py:1483 +#: common/models.py:1493 msgid "Display supplier parts in search preview window" msgstr "" -#: common/models.py:1489 +#: common/models.py:1499 msgid "Search Manufacturer Parts" msgstr "" -#: common/models.py:1490 +#: common/models.py:1500 msgid "Display manufacturer parts in search preview window" msgstr "" -#: common/models.py:1496 +#: common/models.py:1506 msgid "Hide Inactive Parts" msgstr "" -#: common/models.py:1497 +#: common/models.py:1507 msgid "Excluded inactive parts from search preview window" msgstr "" -#: common/models.py:1503 +#: common/models.py:1513 msgid "Search Categories" msgstr "" -#: common/models.py:1504 +#: common/models.py:1514 msgid "Display part categories in search preview window" msgstr "" -#: common/models.py:1510 +#: common/models.py:1520 msgid "Search Stock" msgstr "" -#: common/models.py:1511 +#: common/models.py:1521 msgid "Display stock items in search preview window" msgstr "" -#: common/models.py:1517 +#: common/models.py:1527 msgid "Hide Unavailable Stock Items" msgstr "" -#: common/models.py:1518 +#: common/models.py:1528 msgid "Exclude stock items which are not available from the search preview window" msgstr "" -#: common/models.py:1524 +#: common/models.py:1534 msgid "Search Locations" msgstr "" -#: common/models.py:1525 +#: common/models.py:1535 msgid "Display stock locations in search preview window" msgstr "" -#: common/models.py:1531 +#: common/models.py:1541 msgid "Search Companies" msgstr "" -#: common/models.py:1532 +#: common/models.py:1542 msgid "Display companies in search preview window" msgstr "" -#: common/models.py:1538 +#: common/models.py:1548 msgid "Search Purchase Orders" msgstr "" -#: common/models.py:1539 +#: common/models.py:1549 msgid "Display purchase orders in search preview window" msgstr "" -#: common/models.py:1545 +#: common/models.py:1555 msgid "Exclude Inactive Purchase Orders" msgstr "" -#: common/models.py:1546 +#: common/models.py:1556 msgid "Exclude inactive purchase orders from search preview window" msgstr "" -#: common/models.py:1552 +#: common/models.py:1562 msgid "Search Sales Orders" msgstr "" -#: common/models.py:1553 +#: common/models.py:1563 msgid "Display sales orders in search preview window" msgstr "" -#: common/models.py:1559 +#: common/models.py:1569 msgid "Exclude Inactive Sales Orders" msgstr "" -#: common/models.py:1560 +#: common/models.py:1570 msgid "Exclude inactive sales orders from search preview window" msgstr "" -#: common/models.py:1566 +#: common/models.py:1576 msgid "Search Preview Results" msgstr "" -#: common/models.py:1567 +#: common/models.py:1577 msgid "Number of results to show in each section of the search preview window" msgstr "" -#: common/models.py:1573 +#: common/models.py:1583 msgid "Show Quantity in Forms" msgstr "" -#: common/models.py:1574 +#: common/models.py:1584 msgid "Display available part quantity in some forms" msgstr "" -#: common/models.py:1580 +#: common/models.py:1590 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:1581 +#: common/models.py:1591 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:1587 +#: common/models.py:1597 msgid "Fixed Navbar" msgstr "" -#: common/models.py:1588 +#: common/models.py:1598 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:1594 +#: common/models.py:1604 msgid "Date Format" msgstr "" -#: common/models.py:1595 +#: common/models.py:1605 msgid "Preferred format for displaying dates" msgstr "" -#: common/models.py:1609 part/templates/part/detail.html:41 +#: common/models.py:1619 part/templates/part/detail.html:41 msgid "Part Scheduling" msgstr "" -#: common/models.py:1610 +#: common/models.py:1620 msgid "Display part scheduling information" msgstr "" -#: common/models.py:1669 +#: common/models.py:1679 msgid "Price break quantity" msgstr "" -#: common/models.py:1676 company/serializers.py:366 +#: common/models.py:1686 company/serializers.py:366 #: company/templates/company/supplier_part.html:284 order/models.py:938 -#: templates/js/translated/part.js:1065 templates/js/translated/part.js:2096 +#: templates/js/translated/part.js:1065 templates/js/translated/part.js:2152 msgid "Price" msgstr "" -#: common/models.py:1677 +#: common/models.py:1687 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:1837 common/models.py:2015 +#: common/models.py:1847 common/models.py:2025 msgid "Endpoint" msgstr "" -#: common/models.py:1838 +#: common/models.py:1848 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:1847 +#: common/models.py:1857 msgid "Name for this webhook" msgstr "" -#: common/models.py:1852 part/models.py:914 plugin/models.py:99 +#: common/models.py:1862 part/models.py:914 plugin/models.py:99 #: templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:104 #: templates/js/translated/table_filters.js:316 @@ -2581,67 +2589,67 @@ msgstr "" msgid "Active" msgstr "" -#: common/models.py:1853 +#: common/models.py:1863 msgid "Is this webhook active" msgstr "" -#: common/models.py:1867 +#: common/models.py:1877 msgid "Token" msgstr "" -#: common/models.py:1868 +#: common/models.py:1878 msgid "Token for access" msgstr "" -#: common/models.py:1875 +#: common/models.py:1885 msgid "Secret" msgstr "" -#: common/models.py:1876 +#: common/models.py:1886 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:1982 +#: common/models.py:1992 msgid "Message ID" msgstr "" -#: common/models.py:1983 +#: common/models.py:1993 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:1991 +#: common/models.py:2001 msgid "Host" msgstr "" -#: common/models.py:1992 +#: common/models.py:2002 msgid "Host from which this message was received" msgstr "" -#: common/models.py:1999 +#: common/models.py:2009 msgid "Header" msgstr "" -#: common/models.py:2000 +#: common/models.py:2010 msgid "Header of this message" msgstr "" -#: common/models.py:2006 +#: common/models.py:2016 msgid "Body" msgstr "" -#: common/models.py:2007 +#: common/models.py:2017 msgid "Body of this message" msgstr "" -#: common/models.py:2016 +#: common/models.py:2026 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2021 +#: common/models.py:2031 msgid "Worked on" msgstr "" -#: common/models.py:2022 +#: common/models.py:2032 msgid "Was the work on this message finished?" msgstr "" @@ -3032,7 +3040,7 @@ msgstr "" #: stock/templates/stock/item_base.html:401 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:393 templates/js/translated/order.js:2513 -#: templates/js/translated/stock.js:2491 +#: templates/js/translated/stock.js:2550 #: templates/js/translated/table_filters.js:427 msgid "Customer" msgstr "" @@ -3320,7 +3328,7 @@ msgstr "" #: company/templates/company/supplier_part.html:212 #: company/templates/company/supplier_part.html:326 -#: part/templates/part/prices.html:276 templates/js/translated/part.js:2168 +#: part/templates/part/prices.html:276 templates/js/translated/part.js:2224 msgid "Add Price Break" msgstr "" @@ -3329,12 +3337,12 @@ msgid "No price break information found" msgstr "" #: company/templates/company/supplier_part.html:252 -#: templates/js/translated/part.js:2178 +#: templates/js/translated/part.js:2234 msgid "Delete Price Break" msgstr "" #: company/templates/company/supplier_part.html:266 -#: templates/js/translated/part.js:2192 +#: templates/js/translated/part.js:2248 msgid "Edit Price Break" msgstr "" @@ -3389,7 +3397,7 @@ msgstr "" #: stock/templates/stock/location.html:173 #: stock/templates/stock/location_sidebar.html:7 #: templates/InvenTree/search.html:153 templates/js/translated/search.js:223 -#: templates/js/translated/stock.js:2368 users/models.py:40 +#: templates/js/translated/stock.js:2427 users/models.py:40 msgid "Stock Items" msgstr "" @@ -3647,7 +3655,7 @@ msgstr "" #: templates/email/overdue_purchase_order.html:15 #: templates/js/translated/order.js:936 templates/js/translated/order.js:1691 #: templates/js/translated/part.js:968 templates/js/translated/stock.js:1909 -#: templates/js/translated/stock.js:2472 +#: templates/js/translated/stock.js:2531 msgid "Purchase Order" msgstr "" @@ -4207,47 +4215,47 @@ msgstr "" msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/api.py:505 +#: part/api.py:514 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:525 +#: part/api.py:534 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:543 +#: part/api.py:552 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:575 +#: part/api.py:584 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:695 +#: part/api.py:704 msgid "Valid" msgstr "" -#: part/api.py:696 +#: part/api.py:705 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:702 +#: part/api.py:711 msgid "This option must be selected" msgstr "" -#: part/api.py:1125 +#: part/api.py:1134 msgid "Must be greater than zero" msgstr "" -#: part/api.py:1129 +#: part/api.py:1138 msgid "Must be a valid quantity" msgstr "" -#: part/api.py:1144 +#: part/api.py:1153 msgid "Specify location for initial part stock" msgstr "" -#: part/api.py:1175 part/api.py:1179 part/api.py:1194 part/api.py:1198 +#: part/api.py:1184 part/api.py:1188 part/api.py:1203 part/api.py:1207 msgid "This field is required" msgstr "" @@ -4306,7 +4314,7 @@ msgstr "" #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82 #: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:1890 templates/js/translated/search.js:144 +#: templates/js/translated/part.js:1946 templates/js/translated/search.js:144 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "" @@ -4496,7 +4504,7 @@ msgstr "" msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:2295 templates/js/translated/part.js:1941 +#: part/models.py:2295 templates/js/translated/part.js:1997 #: templates/js/translated/stock.js:1336 msgid "Test Name" msgstr "" @@ -4513,7 +4521,7 @@ msgstr "" msgid "Enter description for this test" msgstr "" -#: part/models.py:2307 templates/js/translated/part.js:1950 +#: part/models.py:2307 templates/js/translated/part.js:2006 #: templates/js/translated/table_filters.js:302 msgid "Required" msgstr "" @@ -4522,7 +4530,7 @@ msgstr "" msgid "Is this test required to pass?" msgstr "" -#: part/models.py:2313 templates/js/translated/part.js:1958 +#: part/models.py:2313 templates/js/translated/part.js:2014 msgid "Requires Value" msgstr "" @@ -4530,7 +4538,7 @@ msgstr "" msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:2319 templates/js/translated/part.js:1965 +#: part/models.py:2319 templates/js/translated/part.js:2021 msgid "Requires Attachment" msgstr "" @@ -5868,7 +5876,7 @@ msgstr "" #: report/templates/report/inventree_test_report_base.html:97 #: templates/InvenTree/settings/plugin.html:51 #: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2400 +#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2459 msgid "Date" msgstr "" @@ -5887,19 +5895,19 @@ msgstr "" #: report/templates/report/inventree_test_report_base.html:137 #: templates/js/translated/stock.js:606 templates/js/translated/stock.js:776 -#: templates/js/translated/stock.js:2649 +#: templates/js/translated/stock.js:2708 msgid "Serial" msgstr "" -#: stock/api.py:521 +#: stock/api.py:529 msgid "Quantity is required" msgstr "" -#: stock/api.py:528 +#: stock/api.py:536 msgid "Valid part must be supplied" msgstr "" -#: stock/api.py:553 +#: stock/api.py:561 msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" @@ -6303,7 +6311,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2793 +#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2852 msgid "Install Stock Item" msgstr "" @@ -8309,8 +8317,8 @@ msgid "No builds matching query" msgstr "" #: templates/js/translated/build.js:2449 templates/js/translated/part.js:1383 -#: templates/js/translated/part.js:1851 templates/js/translated/stock.js:1682 -#: templates/js/translated/stock.js:2338 +#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1682 +#: templates/js/translated/stock.js:2382 msgid "Select" msgstr "" @@ -8322,7 +8330,7 @@ msgstr "" msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2579 +#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2638 msgid "No user information" msgstr "" @@ -8916,7 +8924,7 @@ msgstr "" #: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203 #: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050 -#: templates/js/translated/part.js:2070 templates/js/translated/part.js:2423 +#: templates/js/translated/part.js:2126 templates/js/translated/part.js:2479 msgid "Unit Price" msgstr "" @@ -9316,8 +9324,8 @@ msgstr "" msgid "No category" msgstr "" -#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1786 -#: templates/js/translated/stock.js:2299 +#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816 +#: templates/js/translated/stock.js:2343 msgid "Display as list" msgstr "" @@ -9341,71 +9349,75 @@ msgstr "" msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1805 templates/js/translated/stock.js:2318 +#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2362 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:1869 +#: templates/js/translated/part.js:1914 +msgid "Load Subcategories" +msgstr "" + +#: templates/js/translated/part.js:1925 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:1927 +#: templates/js/translated/part.js:1983 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:1978 templates/js/translated/stock.js:1295 +#: templates/js/translated/part.js:2034 templates/js/translated/stock.js:1295 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:1979 templates/js/translated/stock.js:1296 +#: templates/js/translated/part.js:2035 templates/js/translated/stock.js:1296 #: templates/js/translated/stock.js:1556 msgid "Delete test result" msgstr "" -#: templates/js/translated/part.js:1985 +#: templates/js/translated/part.js:2041 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2007 +#: templates/js/translated/part.js:2063 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2021 +#: templates/js/translated/part.js:2077 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2046 +#: templates/js/translated/part.js:2102 #, python-brace-format msgid "No ${human_name} information found" msgstr "" -#: templates/js/translated/part.js:2103 +#: templates/js/translated/part.js:2159 #, python-brace-format msgid "Edit ${human_name}" msgstr "" -#: templates/js/translated/part.js:2104 +#: templates/js/translated/part.js:2160 #, python-brace-format msgid "Delete ${human_name}" msgstr "" -#: templates/js/translated/part.js:2218 +#: templates/js/translated/part.js:2274 msgid "Current Stock" msgstr "" -#: templates/js/translated/part.js:2251 +#: templates/js/translated/part.js:2307 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2277 +#: templates/js/translated/part.js:2333 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2347 +#: templates/js/translated/part.js:2403 msgid "Single Price" msgstr "" -#: templates/js/translated/part.js:2366 +#: templates/js/translated/part.js:2422 msgid "Single Price Difference" msgstr "" @@ -9796,75 +9808,79 @@ msgstr "" msgid "Status code must be selected" msgstr "" -#: templates/js/translated/stock.js:2425 +#: templates/js/translated/stock.js:2400 +msgid "Load Subloactions" +msgstr "" + +#: templates/js/translated/stock.js:2484 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2441 +#: templates/js/translated/stock.js:2500 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2463 +#: templates/js/translated/stock.js:2522 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2482 +#: templates/js/translated/stock.js:2541 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2501 +#: templates/js/translated/stock.js:2560 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2519 +#: templates/js/translated/stock.js:2578 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:2542 +#: templates/js/translated/stock.js:2601 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:2550 +#: templates/js/translated/stock.js:2609 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:2626 +#: templates/js/translated/stock.js:2685 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:2677 templates/js/translated/stock.js:2713 +#: templates/js/translated/stock.js:2736 templates/js/translated/stock.js:2772 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:2726 +#: templates/js/translated/stock.js:2785 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:2747 +#: templates/js/translated/stock.js:2806 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:2748 +#: templates/js/translated/stock.js:2807 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:2750 +#: templates/js/translated/stock.js:2809 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:2751 +#: templates/js/translated/stock.js:2810 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:2752 +#: templates/js/translated/stock.js:2811 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:2753 +#: templates/js/translated/stock.js:2812 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:2766 +#: templates/js/translated/stock.js:2825 msgid "Select part to install" msgstr "" diff --git a/InvenTree/locale/fa/LC_MESSAGES/django.po b/InvenTree/locale/fa/LC_MESSAGES/django.po index 68130700a0..cf5f538745 100644 --- a/InvenTree/locale/fa/LC_MESSAGES/django.po +++ b/InvenTree/locale/fa/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-04 22:08+0000\n" -"PO-Revision-Date: 2022-08-05 01:02\n" +"POT-Creation-Date: 2022-08-07 21:57+0000\n" +"PO-Revision-Date: 2022-08-08 13:03\n" "Last-Translator: \n" "Language-Team: Persian\n" "Language: fa_IR\n" @@ -17,7 +17,7 @@ msgstr "" "X-Crowdin-File: /[inventree.InvenTree] l10/InvenTree/locale/en/LC_MESSAGES/django.po\n" "X-Crowdin-File-ID: 154\n" -#: InvenTree/api.py:52 +#: InvenTree/api.py:54 msgid "API endpoint not found" msgstr "Address e API peida nashod" @@ -25,11 +25,11 @@ msgstr "Address e API peida nashod" msgid "Error details can be found in the admin panel" msgstr "" -#: InvenTree/fields.py:108 +#: InvenTree/fields.py:109 msgid "Enter date" msgstr "" -#: InvenTree/fields.py:185 build/serializers.py:384 +#: InvenTree/fields.py:186 build/serializers.py:384 #: build/templates/build/sidebar.html:21 company/models.py:523 #: company/templates/company/sidebar.html:25 order/models.py:906 #: order/templates/order/po_sidebar.html:11 @@ -89,76 +89,76 @@ msgstr "" msgid "You must type the same email each time." msgstr "" -#: InvenTree/helpers.py:172 +#: InvenTree/helpers.py:173 msgid "Connection error" msgstr "" -#: InvenTree/helpers.py:176 InvenTree/helpers.py:181 +#: InvenTree/helpers.py:177 InvenTree/helpers.py:182 msgid "Server responded with invalid status code" msgstr "" -#: InvenTree/helpers.py:178 +#: InvenTree/helpers.py:179 msgid "Exception occurred" msgstr "" -#: InvenTree/helpers.py:186 +#: InvenTree/helpers.py:187 msgid "Server responded with invalid Content-Length value" msgstr "" -#: InvenTree/helpers.py:189 +#: InvenTree/helpers.py:190 msgid "Image size is too large" msgstr "" -#: InvenTree/helpers.py:201 +#: InvenTree/helpers.py:202 msgid "Image download exceeded maximum size" msgstr "" -#: InvenTree/helpers.py:206 +#: InvenTree/helpers.py:207 msgid "Remote server returned empty response" msgstr "" -#: InvenTree/helpers.py:214 +#: InvenTree/helpers.py:215 msgid "Supplied URL is not a valid image file" msgstr "" -#: InvenTree/helpers.py:573 +#: InvenTree/helpers.py:584 #, python-brace-format msgid "Duplicate serial: {sn}" msgstr "" -#: InvenTree/helpers.py:580 order/models.py:320 order/models.py:472 +#: InvenTree/helpers.py:591 order/models.py:320 order/models.py:472 msgid "Invalid quantity provided" msgstr "" -#: InvenTree/helpers.py:583 +#: InvenTree/helpers.py:594 msgid "Empty serial number string" msgstr "" -#: InvenTree/helpers.py:615 +#: InvenTree/helpers.py:626 #, python-brace-format msgid "Invalid group range: {g}" msgstr "" -#: InvenTree/helpers.py:618 +#: InvenTree/helpers.py:629 #, python-brace-format msgid "Invalid group: {g}" msgstr "" -#: InvenTree/helpers.py:646 +#: InvenTree/helpers.py:657 #, python-brace-format msgid "Invalid group sequence: {g}" msgstr "" -#: InvenTree/helpers.py:654 +#: InvenTree/helpers.py:665 #, python-brace-format msgid "Invalid/no group {group}" msgstr "" -#: InvenTree/helpers.py:660 +#: InvenTree/helpers.py:671 msgid "No serial numbers found" msgstr "" -#: InvenTree/helpers.py:664 +#: InvenTree/helpers.py:675 #, python-brace-format msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "" @@ -398,99 +398,99 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/settings.py:607 +#: InvenTree/settings.py:609 msgid "Czech" msgstr "" -#: InvenTree/settings.py:608 +#: InvenTree/settings.py:610 msgid "German" msgstr "" -#: InvenTree/settings.py:609 +#: InvenTree/settings.py:611 msgid "Greek" msgstr "" -#: InvenTree/settings.py:610 +#: InvenTree/settings.py:612 msgid "English" msgstr "" -#: InvenTree/settings.py:611 +#: InvenTree/settings.py:613 msgid "Spanish" msgstr "" -#: InvenTree/settings.py:612 +#: InvenTree/settings.py:614 msgid "Spanish (Mexican)" msgstr "" -#: InvenTree/settings.py:613 +#: InvenTree/settings.py:615 msgid "Farsi / Persian" msgstr "" -#: InvenTree/settings.py:614 +#: InvenTree/settings.py:616 msgid "French" msgstr "" -#: InvenTree/settings.py:615 +#: InvenTree/settings.py:617 msgid "Hebrew" msgstr "" -#: InvenTree/settings.py:616 +#: InvenTree/settings.py:618 msgid "Hungarian" msgstr "" -#: InvenTree/settings.py:617 +#: InvenTree/settings.py:619 msgid "Italian" msgstr "" -#: InvenTree/settings.py:618 +#: InvenTree/settings.py:620 msgid "Japanese" msgstr "" -#: InvenTree/settings.py:619 +#: InvenTree/settings.py:621 msgid "Korean" msgstr "" -#: InvenTree/settings.py:620 +#: InvenTree/settings.py:622 msgid "Dutch" msgstr "" -#: InvenTree/settings.py:621 +#: InvenTree/settings.py:623 msgid "Norwegian" msgstr "" -#: InvenTree/settings.py:622 +#: InvenTree/settings.py:624 msgid "Polish" msgstr "" -#: InvenTree/settings.py:623 +#: InvenTree/settings.py:625 msgid "Portuguese" msgstr "" -#: InvenTree/settings.py:624 +#: InvenTree/settings.py:626 msgid "Portuguese (Brazilian)" msgstr "" -#: InvenTree/settings.py:625 +#: InvenTree/settings.py:627 msgid "Russian" msgstr "" -#: InvenTree/settings.py:626 +#: InvenTree/settings.py:628 msgid "Swedish" msgstr "" -#: InvenTree/settings.py:627 +#: InvenTree/settings.py:629 msgid "Thai" msgstr "" -#: InvenTree/settings.py:628 +#: InvenTree/settings.py:630 msgid "Turkish" msgstr "" -#: InvenTree/settings.py:629 +#: InvenTree/settings.py:631 msgid "Vietnamese" msgstr "" -#: InvenTree/settings.py:630 +#: InvenTree/settings.py:632 msgid "Chinese" msgstr "" @@ -5516,11 +5516,11 @@ msgstr "" msgid "Create a new variant of template '%(full_name)s'." msgstr "" -#: part/templatetags/inventree_extras.py:157 +#: part/templatetags/inventree_extras.py:177 msgid "Unknown database" msgstr "" -#: part/templatetags/inventree_extras.py:202 +#: part/templatetags/inventree_extras.py:222 #, python-brace-format msgid "{title} v{version}" msgstr "" diff --git a/InvenTree/locale/fr/LC_MESSAGES/django.po b/InvenTree/locale/fr/LC_MESSAGES/django.po index 876efcc362..4fc541b2b8 100644 --- a/InvenTree/locale/fr/LC_MESSAGES/django.po +++ b/InvenTree/locale/fr/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-04 22:08+0000\n" -"PO-Revision-Date: 2022-08-05 01:02\n" +"POT-Creation-Date: 2022-08-07 21:57+0000\n" +"PO-Revision-Date: 2022-08-08 13:03\n" "Last-Translator: \n" "Language-Team: French\n" "Language: fr_FR\n" @@ -17,7 +17,7 @@ msgstr "" "X-Crowdin-File: /[inventree.InvenTree] l10/InvenTree/locale/en/LC_MESSAGES/django.po\n" "X-Crowdin-File-ID: 154\n" -#: InvenTree/api.py:52 +#: InvenTree/api.py:54 msgid "API endpoint not found" msgstr "Point de terminaison de l'API introuvable" @@ -25,11 +25,11 @@ msgstr "Point de terminaison de l'API introuvable" msgid "Error details can be found in the admin panel" msgstr "Les détails de l'erreur peuvent être trouvées dans le panneau d'administration" -#: InvenTree/fields.py:108 +#: InvenTree/fields.py:109 msgid "Enter date" msgstr "Entrer la date" -#: InvenTree/fields.py:185 build/serializers.py:384 +#: InvenTree/fields.py:186 build/serializers.py:384 #: build/templates/build/sidebar.html:21 company/models.py:523 #: company/templates/company/sidebar.html:25 order/models.py:906 #: order/templates/order/po_sidebar.html:11 @@ -89,76 +89,76 @@ msgstr "Confirmation de l'adresse email" msgid "You must type the same email each time." msgstr "Vous devez taper le même e-mail à chaque fois." -#: InvenTree/helpers.py:172 +#: InvenTree/helpers.py:173 msgid "Connection error" msgstr "" -#: InvenTree/helpers.py:176 InvenTree/helpers.py:181 +#: InvenTree/helpers.py:177 InvenTree/helpers.py:182 msgid "Server responded with invalid status code" msgstr "" -#: InvenTree/helpers.py:178 +#: InvenTree/helpers.py:179 msgid "Exception occurred" msgstr "" -#: InvenTree/helpers.py:186 +#: InvenTree/helpers.py:187 msgid "Server responded with invalid Content-Length value" msgstr "" -#: InvenTree/helpers.py:189 +#: InvenTree/helpers.py:190 msgid "Image size is too large" msgstr "" -#: InvenTree/helpers.py:201 +#: InvenTree/helpers.py:202 msgid "Image download exceeded maximum size" msgstr "" -#: InvenTree/helpers.py:206 +#: InvenTree/helpers.py:207 msgid "Remote server returned empty response" msgstr "" -#: InvenTree/helpers.py:214 +#: InvenTree/helpers.py:215 msgid "Supplied URL is not a valid image file" msgstr "" -#: InvenTree/helpers.py:573 +#: InvenTree/helpers.py:584 #, python-brace-format msgid "Duplicate serial: {sn}" msgstr "Dupliquer le numéro : {sn}" -#: InvenTree/helpers.py:580 order/models.py:320 order/models.py:472 +#: InvenTree/helpers.py:591 order/models.py:320 order/models.py:472 msgid "Invalid quantity provided" msgstr "Quantité fournie invalide" -#: InvenTree/helpers.py:583 +#: InvenTree/helpers.py:594 msgid "Empty serial number string" msgstr "Chaîne de numéro de série vide" -#: InvenTree/helpers.py:615 +#: InvenTree/helpers.py:626 #, python-brace-format msgid "Invalid group range: {g}" msgstr "Plage de groupe invalide : {g}" -#: InvenTree/helpers.py:618 +#: InvenTree/helpers.py:629 #, python-brace-format msgid "Invalid group: {g}" msgstr "Groupe invalide : {g}" -#: InvenTree/helpers.py:646 +#: InvenTree/helpers.py:657 #, python-brace-format msgid "Invalid group sequence: {g}" msgstr "Séquence de groupe invalide : {g}" -#: InvenTree/helpers.py:654 +#: InvenTree/helpers.py:665 #, python-brace-format msgid "Invalid/no group {group}" msgstr "Invalide/aucun groupe {group}" -#: InvenTree/helpers.py:660 +#: InvenTree/helpers.py:671 msgid "No serial numbers found" msgstr "Aucun numéro de série trouvé" -#: InvenTree/helpers.py:664 +#: InvenTree/helpers.py:675 #, python-brace-format msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "Le nombre de numéros de série uniques ({s}) doit correspondre à la quantité ({q})" @@ -398,99 +398,99 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/settings.py:607 +#: InvenTree/settings.py:609 msgid "Czech" msgstr "Tchèque" -#: InvenTree/settings.py:608 +#: InvenTree/settings.py:610 msgid "German" msgstr "Allemand" -#: InvenTree/settings.py:609 +#: InvenTree/settings.py:611 msgid "Greek" msgstr "Grec" -#: InvenTree/settings.py:610 +#: InvenTree/settings.py:612 msgid "English" msgstr "Anglais" -#: InvenTree/settings.py:611 +#: InvenTree/settings.py:613 msgid "Spanish" msgstr "Espagnol" -#: InvenTree/settings.py:612 +#: InvenTree/settings.py:614 msgid "Spanish (Mexican)" msgstr "Espagnol (Mexique)" -#: InvenTree/settings.py:613 +#: InvenTree/settings.py:615 msgid "Farsi / Persian" msgstr "Farsi / Perse" -#: InvenTree/settings.py:614 +#: InvenTree/settings.py:616 msgid "French" msgstr "Français" -#: InvenTree/settings.py:615 +#: InvenTree/settings.py:617 msgid "Hebrew" msgstr "Hébreu" -#: InvenTree/settings.py:616 +#: InvenTree/settings.py:618 msgid "Hungarian" msgstr "Hongrois" -#: InvenTree/settings.py:617 +#: InvenTree/settings.py:619 msgid "Italian" msgstr "Italien" -#: InvenTree/settings.py:618 +#: InvenTree/settings.py:620 msgid "Japanese" msgstr "Japonais" -#: InvenTree/settings.py:619 +#: InvenTree/settings.py:621 msgid "Korean" msgstr "Coréen" -#: InvenTree/settings.py:620 +#: InvenTree/settings.py:622 msgid "Dutch" msgstr "Néerlandais" -#: InvenTree/settings.py:621 +#: InvenTree/settings.py:623 msgid "Norwegian" msgstr "Norvégien" -#: InvenTree/settings.py:622 +#: InvenTree/settings.py:624 msgid "Polish" msgstr "Polonais" -#: InvenTree/settings.py:623 +#: InvenTree/settings.py:625 msgid "Portuguese" msgstr "Portugais" -#: InvenTree/settings.py:624 +#: InvenTree/settings.py:626 msgid "Portuguese (Brazilian)" msgstr "Portugais (Brésilien)" -#: InvenTree/settings.py:625 +#: InvenTree/settings.py:627 msgid "Russian" msgstr "Russe" -#: InvenTree/settings.py:626 +#: InvenTree/settings.py:628 msgid "Swedish" msgstr "Suédois" -#: InvenTree/settings.py:627 +#: InvenTree/settings.py:629 msgid "Thai" msgstr "Thaïlandais" -#: InvenTree/settings.py:628 +#: InvenTree/settings.py:630 msgid "Turkish" msgstr "Turc" -#: InvenTree/settings.py:629 +#: InvenTree/settings.py:631 msgid "Vietnamese" msgstr "Vietnamien" -#: InvenTree/settings.py:630 +#: InvenTree/settings.py:632 msgid "Chinese" msgstr "Chinois" @@ -5516,11 +5516,11 @@ msgstr "" msgid "Create a new variant of template '%(full_name)s'." msgstr "" -#: part/templatetags/inventree_extras.py:157 +#: part/templatetags/inventree_extras.py:177 msgid "Unknown database" msgstr "" -#: part/templatetags/inventree_extras.py:202 +#: part/templatetags/inventree_extras.py:222 #, python-brace-format msgid "{title} v{version}" msgstr "" diff --git a/InvenTree/locale/he/LC_MESSAGES/django.po b/InvenTree/locale/he/LC_MESSAGES/django.po index 98eb280e2b..55c0fce256 100644 --- a/InvenTree/locale/he/LC_MESSAGES/django.po +++ b/InvenTree/locale/he/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-04 22:08+0000\n" -"PO-Revision-Date: 2022-08-05 01:02\n" +"POT-Creation-Date: 2022-08-07 21:57+0000\n" +"PO-Revision-Date: 2022-08-08 13:04\n" "Last-Translator: \n" "Language-Team: Hebrew\n" "Language: he_IL\n" @@ -17,7 +17,7 @@ msgstr "" "X-Crowdin-File: /[inventree.InvenTree] l10/InvenTree/locale/en/LC_MESSAGES/django.po\n" "X-Crowdin-File-ID: 154\n" -#: InvenTree/api.py:52 +#: InvenTree/api.py:54 msgid "API endpoint not found" msgstr "" @@ -25,11 +25,11 @@ msgstr "" msgid "Error details can be found in the admin panel" msgstr "" -#: InvenTree/fields.py:108 +#: InvenTree/fields.py:109 msgid "Enter date" msgstr "הזן תאריך סיום" -#: InvenTree/fields.py:185 build/serializers.py:384 +#: InvenTree/fields.py:186 build/serializers.py:384 #: build/templates/build/sidebar.html:21 company/models.py:523 #: company/templates/company/sidebar.html:25 order/models.py:906 #: order/templates/order/po_sidebar.html:11 @@ -89,76 +89,76 @@ msgstr "אישור כתובת אימייל" msgid "You must type the same email each time." msgstr "חובה לרשום את אותו אימייל בכל פעם." -#: InvenTree/helpers.py:172 +#: InvenTree/helpers.py:173 msgid "Connection error" msgstr "" -#: InvenTree/helpers.py:176 InvenTree/helpers.py:181 +#: InvenTree/helpers.py:177 InvenTree/helpers.py:182 msgid "Server responded with invalid status code" msgstr "" -#: InvenTree/helpers.py:178 +#: InvenTree/helpers.py:179 msgid "Exception occurred" msgstr "" -#: InvenTree/helpers.py:186 +#: InvenTree/helpers.py:187 msgid "Server responded with invalid Content-Length value" msgstr "" -#: InvenTree/helpers.py:189 +#: InvenTree/helpers.py:190 msgid "Image size is too large" msgstr "" -#: InvenTree/helpers.py:201 +#: InvenTree/helpers.py:202 msgid "Image download exceeded maximum size" msgstr "" -#: InvenTree/helpers.py:206 +#: InvenTree/helpers.py:207 msgid "Remote server returned empty response" msgstr "" -#: InvenTree/helpers.py:214 +#: InvenTree/helpers.py:215 msgid "Supplied URL is not a valid image file" msgstr "" -#: InvenTree/helpers.py:573 +#: InvenTree/helpers.py:584 #, python-brace-format msgid "Duplicate serial: {sn}" msgstr "" -#: InvenTree/helpers.py:580 order/models.py:320 order/models.py:472 +#: InvenTree/helpers.py:591 order/models.py:320 order/models.py:472 msgid "Invalid quantity provided" msgstr "" -#: InvenTree/helpers.py:583 +#: InvenTree/helpers.py:594 msgid "Empty serial number string" msgstr "" -#: InvenTree/helpers.py:615 +#: InvenTree/helpers.py:626 #, python-brace-format msgid "Invalid group range: {g}" msgstr "" -#: InvenTree/helpers.py:618 +#: InvenTree/helpers.py:629 #, python-brace-format msgid "Invalid group: {g}" msgstr "קבוצה שגויה: {g}" -#: InvenTree/helpers.py:646 +#: InvenTree/helpers.py:657 #, python-brace-format msgid "Invalid group sequence: {g}" msgstr "" -#: InvenTree/helpers.py:654 +#: InvenTree/helpers.py:665 #, python-brace-format msgid "Invalid/no group {group}" msgstr "קבוצה שגויה / לא נמצאה {group}" -#: InvenTree/helpers.py:660 +#: InvenTree/helpers.py:671 msgid "No serial numbers found" msgstr "מספרים סידוריים לא נמצאו" -#: InvenTree/helpers.py:664 +#: InvenTree/helpers.py:675 #, python-brace-format msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "" @@ -398,99 +398,99 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/settings.py:607 +#: InvenTree/settings.py:609 msgid "Czech" msgstr "" -#: InvenTree/settings.py:608 +#: InvenTree/settings.py:610 msgid "German" msgstr "גרמנית" -#: InvenTree/settings.py:609 +#: InvenTree/settings.py:611 msgid "Greek" msgstr "יוונית" -#: InvenTree/settings.py:610 +#: InvenTree/settings.py:612 msgid "English" msgstr "אנגלית" -#: InvenTree/settings.py:611 +#: InvenTree/settings.py:613 msgid "Spanish" msgstr "ספרדית" -#: InvenTree/settings.py:612 +#: InvenTree/settings.py:614 msgid "Spanish (Mexican)" msgstr "ספרדית (מקסיקנית)" -#: InvenTree/settings.py:613 +#: InvenTree/settings.py:615 msgid "Farsi / Persian" msgstr "" -#: InvenTree/settings.py:614 +#: InvenTree/settings.py:616 msgid "French" msgstr "צרפתית" -#: InvenTree/settings.py:615 +#: InvenTree/settings.py:617 msgid "Hebrew" msgstr "עברית" -#: InvenTree/settings.py:616 +#: InvenTree/settings.py:618 msgid "Hungarian" msgstr "" -#: InvenTree/settings.py:617 +#: InvenTree/settings.py:619 msgid "Italian" msgstr "איטלקית" -#: InvenTree/settings.py:618 +#: InvenTree/settings.py:620 msgid "Japanese" msgstr "יפנית" -#: InvenTree/settings.py:619 +#: InvenTree/settings.py:621 msgid "Korean" msgstr "קוריאנית" -#: InvenTree/settings.py:620 +#: InvenTree/settings.py:622 msgid "Dutch" msgstr "הולנדית" -#: InvenTree/settings.py:621 +#: InvenTree/settings.py:623 msgid "Norwegian" msgstr "נורווגית" -#: InvenTree/settings.py:622 +#: InvenTree/settings.py:624 msgid "Polish" msgstr "פולנית" -#: InvenTree/settings.py:623 +#: InvenTree/settings.py:625 msgid "Portuguese" msgstr "" -#: InvenTree/settings.py:624 +#: InvenTree/settings.py:626 msgid "Portuguese (Brazilian)" msgstr "" -#: InvenTree/settings.py:625 +#: InvenTree/settings.py:627 msgid "Russian" msgstr "רוסית" -#: InvenTree/settings.py:626 +#: InvenTree/settings.py:628 msgid "Swedish" msgstr "שוודית" -#: InvenTree/settings.py:627 +#: InvenTree/settings.py:629 msgid "Thai" msgstr "תאילנדית" -#: InvenTree/settings.py:628 +#: InvenTree/settings.py:630 msgid "Turkish" msgstr "טורקית" -#: InvenTree/settings.py:629 +#: InvenTree/settings.py:631 msgid "Vietnamese" msgstr "ווייטנאמית" -#: InvenTree/settings.py:630 +#: InvenTree/settings.py:632 msgid "Chinese" msgstr "סינית" @@ -5516,11 +5516,11 @@ msgstr "" msgid "Create a new variant of template '%(full_name)s'." msgstr "" -#: part/templatetags/inventree_extras.py:157 +#: part/templatetags/inventree_extras.py:177 msgid "Unknown database" msgstr "" -#: part/templatetags/inventree_extras.py:202 +#: part/templatetags/inventree_extras.py:222 #, python-brace-format msgid "{title} v{version}" msgstr "" diff --git a/InvenTree/locale/hu/LC_MESSAGES/django.po b/InvenTree/locale/hu/LC_MESSAGES/django.po index 33856d83cc..838fa7ce54 100644 --- a/InvenTree/locale/hu/LC_MESSAGES/django.po +++ b/InvenTree/locale/hu/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-04 22:08+0000\n" -"PO-Revision-Date: 2022-08-05 01:02\n" +"POT-Creation-Date: 2022-08-07 21:57+0000\n" +"PO-Revision-Date: 2022-08-08 13:04\n" "Last-Translator: \n" "Language-Team: Hungarian\n" "Language: hu_HU\n" @@ -17,7 +17,7 @@ msgstr "" "X-Crowdin-File: /[inventree.InvenTree] l10/InvenTree/locale/en/LC_MESSAGES/django.po\n" "X-Crowdin-File-ID: 154\n" -#: InvenTree/api.py:52 +#: InvenTree/api.py:54 msgid "API endpoint not found" msgstr "API funkciót nem találom" @@ -25,11 +25,11 @@ msgstr "API funkciót nem találom" msgid "Error details can be found in the admin panel" msgstr "A hiba részleteit megtalálod az admin panelen" -#: InvenTree/fields.py:108 +#: InvenTree/fields.py:109 msgid "Enter date" msgstr "Dátum megadása" -#: InvenTree/fields.py:185 build/serializers.py:384 +#: InvenTree/fields.py:186 build/serializers.py:384 #: build/templates/build/sidebar.html:21 company/models.py:523 #: company/templates/company/sidebar.html:25 order/models.py:906 #: order/templates/order/po_sidebar.html:11 @@ -89,76 +89,76 @@ msgstr "Email cím megerősítés" msgid "You must type the same email each time." msgstr "Mindig ugyanazt az email címet kell beírni." -#: InvenTree/helpers.py:172 +#: InvenTree/helpers.py:173 msgid "Connection error" msgstr "Csatlakozási hiba" -#: InvenTree/helpers.py:176 InvenTree/helpers.py:181 +#: InvenTree/helpers.py:177 InvenTree/helpers.py:182 msgid "Server responded with invalid status code" msgstr "A kiszolgáló érvénytelen státuszkóddal válaszolt" -#: InvenTree/helpers.py:178 +#: InvenTree/helpers.py:179 msgid "Exception occurred" msgstr "Kivétel történt" -#: InvenTree/helpers.py:186 +#: InvenTree/helpers.py:187 msgid "Server responded with invalid Content-Length value" msgstr "A kiszolgáló érvénytelen Content-Length értéket adott" -#: InvenTree/helpers.py:189 +#: InvenTree/helpers.py:190 msgid "Image size is too large" msgstr "A kép mérete túl nagy" -#: InvenTree/helpers.py:201 +#: InvenTree/helpers.py:202 msgid "Image download exceeded maximum size" msgstr "A kép letöltés meghaladja a maximális méretet" -#: InvenTree/helpers.py:206 +#: InvenTree/helpers.py:207 msgid "Remote server returned empty response" msgstr "A kiszolgáló üres választ adott" -#: InvenTree/helpers.py:214 +#: InvenTree/helpers.py:215 msgid "Supplied URL is not a valid image file" msgstr "A megadott URL nem egy érvényes kép fájl" -#: InvenTree/helpers.py:573 +#: InvenTree/helpers.py:584 #, python-brace-format msgid "Duplicate serial: {sn}" msgstr "Duplikált sorozatszám: {sn}" -#: InvenTree/helpers.py:580 order/models.py:320 order/models.py:472 +#: InvenTree/helpers.py:591 order/models.py:320 order/models.py:472 msgid "Invalid quantity provided" msgstr "Nem megfelelő mennyiség" -#: InvenTree/helpers.py:583 +#: InvenTree/helpers.py:594 msgid "Empty serial number string" msgstr "Üres sorozatszám" -#: InvenTree/helpers.py:615 +#: InvenTree/helpers.py:626 #, python-brace-format msgid "Invalid group range: {g}" msgstr "Érvénytelen csoport tartomány: {g}" -#: InvenTree/helpers.py:618 +#: InvenTree/helpers.py:629 #, python-brace-format msgid "Invalid group: {g}" msgstr "Érvénytelen csoport: {g}" -#: InvenTree/helpers.py:646 +#: InvenTree/helpers.py:657 #, python-brace-format msgid "Invalid group sequence: {g}" msgstr "Érvénytelen csoport szekvencia: {g}" -#: InvenTree/helpers.py:654 +#: InvenTree/helpers.py:665 #, python-brace-format msgid "Invalid/no group {group}" msgstr "Érvénytelen vagy nemlétező csoport {group}" -#: InvenTree/helpers.py:660 +#: InvenTree/helpers.py:671 msgid "No serial numbers found" msgstr "Nem található sorozatszám" -#: InvenTree/helpers.py:664 +#: InvenTree/helpers.py:675 #, python-brace-format msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "A megadott számú egyedi sorozatszám ({s}) meg kell egyezzen a darabszámmal ({q})" @@ -398,99 +398,99 @@ msgstr "A távoli kép URL-je" msgid "Downloading images from remote URL is not enabled" msgstr "Képek letöltése távoli URL-ről nem engedélyezett" -#: InvenTree/settings.py:607 +#: InvenTree/settings.py:609 msgid "Czech" msgstr "Cseh" -#: InvenTree/settings.py:608 +#: InvenTree/settings.py:610 msgid "German" msgstr "Német" -#: InvenTree/settings.py:609 +#: InvenTree/settings.py:611 msgid "Greek" msgstr "Görög" -#: InvenTree/settings.py:610 +#: InvenTree/settings.py:612 msgid "English" msgstr "Angol" -#: InvenTree/settings.py:611 +#: InvenTree/settings.py:613 msgid "Spanish" msgstr "Spanyol" -#: InvenTree/settings.py:612 +#: InvenTree/settings.py:614 msgid "Spanish (Mexican)" msgstr "Spanyol (Mexikói)" -#: InvenTree/settings.py:613 +#: InvenTree/settings.py:615 msgid "Farsi / Persian" msgstr "Fárszi/Perzsa" -#: InvenTree/settings.py:614 +#: InvenTree/settings.py:616 msgid "French" msgstr "Francia" -#: InvenTree/settings.py:615 +#: InvenTree/settings.py:617 msgid "Hebrew" msgstr "Héber" -#: InvenTree/settings.py:616 +#: InvenTree/settings.py:618 msgid "Hungarian" msgstr "Magyar" -#: InvenTree/settings.py:617 +#: InvenTree/settings.py:619 msgid "Italian" msgstr "Olasz" -#: InvenTree/settings.py:618 +#: InvenTree/settings.py:620 msgid "Japanese" msgstr "Japán" -#: InvenTree/settings.py:619 +#: InvenTree/settings.py:621 msgid "Korean" msgstr "Koreai" -#: InvenTree/settings.py:620 +#: InvenTree/settings.py:622 msgid "Dutch" msgstr "Holland" -#: InvenTree/settings.py:621 +#: InvenTree/settings.py:623 msgid "Norwegian" msgstr "Norvég" -#: InvenTree/settings.py:622 +#: InvenTree/settings.py:624 msgid "Polish" msgstr "Lengyel" -#: InvenTree/settings.py:623 +#: InvenTree/settings.py:625 msgid "Portuguese" msgstr "Portugál" -#: InvenTree/settings.py:624 +#: InvenTree/settings.py:626 msgid "Portuguese (Brazilian)" msgstr "Portugál (Brazíliai)" -#: InvenTree/settings.py:625 +#: InvenTree/settings.py:627 msgid "Russian" msgstr "Orosz" -#: InvenTree/settings.py:626 +#: InvenTree/settings.py:628 msgid "Swedish" msgstr "Svéd" -#: InvenTree/settings.py:627 +#: InvenTree/settings.py:629 msgid "Thai" msgstr "Tháj" -#: InvenTree/settings.py:628 +#: InvenTree/settings.py:630 msgid "Turkish" msgstr "Török" -#: InvenTree/settings.py:629 +#: InvenTree/settings.py:631 msgid "Vietnamese" msgstr "Vietnámi" -#: InvenTree/settings.py:630 +#: InvenTree/settings.py:632 msgid "Chinese" msgstr "Kínai" @@ -5517,11 +5517,11 @@ msgstr "Alkatrész változat létrehozása" msgid "Create a new variant of template '%(full_name)s'." msgstr "Új változat létrehozása a '%(full_name)s' sablonból." -#: part/templatetags/inventree_extras.py:157 +#: part/templatetags/inventree_extras.py:177 msgid "Unknown database" msgstr "Ismeretlen adatbázis" -#: part/templatetags/inventree_extras.py:202 +#: part/templatetags/inventree_extras.py:222 #, python-brace-format msgid "{title} v{version}" msgstr "{title} v{version}" diff --git a/InvenTree/locale/id/LC_MESSAGES/django.po b/InvenTree/locale/id/LC_MESSAGES/django.po index 81a019e4ea..dfde3a10cb 100644 --- a/InvenTree/locale/id/LC_MESSAGES/django.po +++ b/InvenTree/locale/id/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-04 22:08+0000\n" -"PO-Revision-Date: 2022-08-05 01:02\n" +"POT-Creation-Date: 2022-08-07 21:57+0000\n" +"PO-Revision-Date: 2022-08-08 13:03\n" "Last-Translator: \n" "Language-Team: Indonesian\n" "Language: id_ID\n" @@ -17,7 +17,7 @@ msgstr "" "X-Crowdin-File: /[inventree.InvenTree] l10/InvenTree/locale/en/LC_MESSAGES/django.po\n" "X-Crowdin-File-ID: 154\n" -#: InvenTree/api.py:52 +#: InvenTree/api.py:54 msgid "API endpoint not found" msgstr "API endpoint tidak ditemukan" @@ -25,11 +25,11 @@ msgstr "API endpoint tidak ditemukan" msgid "Error details can be found in the admin panel" msgstr "" -#: InvenTree/fields.py:108 +#: InvenTree/fields.py:109 msgid "Enter date" msgstr "Masukkan tanggal" -#: InvenTree/fields.py:185 build/serializers.py:384 +#: InvenTree/fields.py:186 build/serializers.py:384 #: build/templates/build/sidebar.html:21 company/models.py:523 #: company/templates/company/sidebar.html:25 order/models.py:906 #: order/templates/order/po_sidebar.html:11 @@ -89,76 +89,76 @@ msgstr "Konfirmasi alamat email" msgid "You must type the same email each time." msgstr "" -#: InvenTree/helpers.py:172 +#: InvenTree/helpers.py:173 msgid "Connection error" msgstr "" -#: InvenTree/helpers.py:176 InvenTree/helpers.py:181 +#: InvenTree/helpers.py:177 InvenTree/helpers.py:182 msgid "Server responded with invalid status code" msgstr "" -#: InvenTree/helpers.py:178 +#: InvenTree/helpers.py:179 msgid "Exception occurred" msgstr "" -#: InvenTree/helpers.py:186 +#: InvenTree/helpers.py:187 msgid "Server responded with invalid Content-Length value" msgstr "" -#: InvenTree/helpers.py:189 +#: InvenTree/helpers.py:190 msgid "Image size is too large" msgstr "" -#: InvenTree/helpers.py:201 +#: InvenTree/helpers.py:202 msgid "Image download exceeded maximum size" msgstr "" -#: InvenTree/helpers.py:206 +#: InvenTree/helpers.py:207 msgid "Remote server returned empty response" msgstr "" -#: InvenTree/helpers.py:214 +#: InvenTree/helpers.py:215 msgid "Supplied URL is not a valid image file" msgstr "" -#: InvenTree/helpers.py:573 +#: InvenTree/helpers.py:584 #, python-brace-format msgid "Duplicate serial: {sn}" msgstr "" -#: InvenTree/helpers.py:580 order/models.py:320 order/models.py:472 +#: InvenTree/helpers.py:591 order/models.py:320 order/models.py:472 msgid "Invalid quantity provided" msgstr "" -#: InvenTree/helpers.py:583 +#: InvenTree/helpers.py:594 msgid "Empty serial number string" msgstr "" -#: InvenTree/helpers.py:615 +#: InvenTree/helpers.py:626 #, python-brace-format msgid "Invalid group range: {g}" msgstr "" -#: InvenTree/helpers.py:618 +#: InvenTree/helpers.py:629 #, python-brace-format msgid "Invalid group: {g}" msgstr "" -#: InvenTree/helpers.py:646 +#: InvenTree/helpers.py:657 #, python-brace-format msgid "Invalid group sequence: {g}" msgstr "" -#: InvenTree/helpers.py:654 +#: InvenTree/helpers.py:665 #, python-brace-format msgid "Invalid/no group {group}" msgstr "" -#: InvenTree/helpers.py:660 +#: InvenTree/helpers.py:671 msgid "No serial numbers found" msgstr "" -#: InvenTree/helpers.py:664 +#: InvenTree/helpers.py:675 #, python-brace-format msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "" @@ -398,99 +398,99 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/settings.py:607 +#: InvenTree/settings.py:609 msgid "Czech" msgstr "" -#: InvenTree/settings.py:608 +#: InvenTree/settings.py:610 msgid "German" msgstr "" -#: InvenTree/settings.py:609 +#: InvenTree/settings.py:611 msgid "Greek" msgstr "" -#: InvenTree/settings.py:610 +#: InvenTree/settings.py:612 msgid "English" msgstr "" -#: InvenTree/settings.py:611 +#: InvenTree/settings.py:613 msgid "Spanish" msgstr "" -#: InvenTree/settings.py:612 +#: InvenTree/settings.py:614 msgid "Spanish (Mexican)" msgstr "" -#: InvenTree/settings.py:613 +#: InvenTree/settings.py:615 msgid "Farsi / Persian" msgstr "" -#: InvenTree/settings.py:614 +#: InvenTree/settings.py:616 msgid "French" msgstr "" -#: InvenTree/settings.py:615 +#: InvenTree/settings.py:617 msgid "Hebrew" msgstr "" -#: InvenTree/settings.py:616 +#: InvenTree/settings.py:618 msgid "Hungarian" msgstr "" -#: InvenTree/settings.py:617 +#: InvenTree/settings.py:619 msgid "Italian" msgstr "" -#: InvenTree/settings.py:618 +#: InvenTree/settings.py:620 msgid "Japanese" msgstr "" -#: InvenTree/settings.py:619 +#: InvenTree/settings.py:621 msgid "Korean" msgstr "" -#: InvenTree/settings.py:620 +#: InvenTree/settings.py:622 msgid "Dutch" msgstr "" -#: InvenTree/settings.py:621 +#: InvenTree/settings.py:623 msgid "Norwegian" msgstr "" -#: InvenTree/settings.py:622 +#: InvenTree/settings.py:624 msgid "Polish" msgstr "" -#: InvenTree/settings.py:623 +#: InvenTree/settings.py:625 msgid "Portuguese" msgstr "" -#: InvenTree/settings.py:624 +#: InvenTree/settings.py:626 msgid "Portuguese (Brazilian)" msgstr "" -#: InvenTree/settings.py:625 +#: InvenTree/settings.py:627 msgid "Russian" msgstr "" -#: InvenTree/settings.py:626 +#: InvenTree/settings.py:628 msgid "Swedish" msgstr "" -#: InvenTree/settings.py:627 +#: InvenTree/settings.py:629 msgid "Thai" msgstr "" -#: InvenTree/settings.py:628 +#: InvenTree/settings.py:630 msgid "Turkish" msgstr "" -#: InvenTree/settings.py:629 +#: InvenTree/settings.py:631 msgid "Vietnamese" msgstr "" -#: InvenTree/settings.py:630 +#: InvenTree/settings.py:632 msgid "Chinese" msgstr "" @@ -5516,11 +5516,11 @@ msgstr "" msgid "Create a new variant of template '%(full_name)s'." msgstr "" -#: part/templatetags/inventree_extras.py:157 +#: part/templatetags/inventree_extras.py:177 msgid "Unknown database" msgstr "" -#: part/templatetags/inventree_extras.py:202 +#: part/templatetags/inventree_extras.py:222 #, python-brace-format msgid "{title} v{version}" msgstr "" diff --git a/InvenTree/locale/it/LC_MESSAGES/django.po b/InvenTree/locale/it/LC_MESSAGES/django.po index 41454eb66d..6647bf3400 100644 --- a/InvenTree/locale/it/LC_MESSAGES/django.po +++ b/InvenTree/locale/it/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-04 22:08+0000\n" -"PO-Revision-Date: 2022-08-05 01:02\n" +"POT-Creation-Date: 2022-08-07 21:57+0000\n" +"PO-Revision-Date: 2022-08-08 13:04\n" "Last-Translator: \n" "Language-Team: Italian\n" "Language: it_IT\n" @@ -17,7 +17,7 @@ msgstr "" "X-Crowdin-File: /[inventree.InvenTree] l10/InvenTree/locale/en/LC_MESSAGES/django.po\n" "X-Crowdin-File-ID: 154\n" -#: InvenTree/api.py:52 +#: InvenTree/api.py:54 msgid "API endpoint not found" msgstr "Endpoint API non trovato" @@ -25,11 +25,11 @@ msgstr "Endpoint API non trovato" msgid "Error details can be found in the admin panel" msgstr "I dettagli dell'errore possono essere trovati nel pannello di amministrazione" -#: InvenTree/fields.py:108 +#: InvenTree/fields.py:109 msgid "Enter date" msgstr "Inserisci la data" -#: InvenTree/fields.py:185 build/serializers.py:384 +#: InvenTree/fields.py:186 build/serializers.py:384 #: build/templates/build/sidebar.html:21 company/models.py:523 #: company/templates/company/sidebar.html:25 order/models.py:906 #: order/templates/order/po_sidebar.html:11 @@ -89,76 +89,76 @@ msgstr "Conferma indirizzo email" msgid "You must type the same email each time." msgstr "È necessario digitare la stessa e-mail ogni volta." -#: InvenTree/helpers.py:172 +#: InvenTree/helpers.py:173 msgid "Connection error" msgstr "" -#: InvenTree/helpers.py:176 InvenTree/helpers.py:181 +#: InvenTree/helpers.py:177 InvenTree/helpers.py:182 msgid "Server responded with invalid status code" msgstr "" -#: InvenTree/helpers.py:178 +#: InvenTree/helpers.py:179 msgid "Exception occurred" msgstr "" -#: InvenTree/helpers.py:186 +#: InvenTree/helpers.py:187 msgid "Server responded with invalid Content-Length value" msgstr "" -#: InvenTree/helpers.py:189 +#: InvenTree/helpers.py:190 msgid "Image size is too large" msgstr "" -#: InvenTree/helpers.py:201 +#: InvenTree/helpers.py:202 msgid "Image download exceeded maximum size" msgstr "" -#: InvenTree/helpers.py:206 +#: InvenTree/helpers.py:207 msgid "Remote server returned empty response" msgstr "" -#: InvenTree/helpers.py:214 +#: InvenTree/helpers.py:215 msgid "Supplied URL is not a valid image file" msgstr "L'URL fornito non è un file immagine valido" -#: InvenTree/helpers.py:573 +#: InvenTree/helpers.py:584 #, python-brace-format msgid "Duplicate serial: {sn}" msgstr "Seriale duplicato: {sn}" -#: InvenTree/helpers.py:580 order/models.py:320 order/models.py:472 +#: InvenTree/helpers.py:591 order/models.py:320 order/models.py:472 msgid "Invalid quantity provided" msgstr "Quantità inserita non valida" -#: InvenTree/helpers.py:583 +#: InvenTree/helpers.py:594 msgid "Empty serial number string" msgstr "Numero seriale vuoto" -#: InvenTree/helpers.py:615 +#: InvenTree/helpers.py:626 #, python-brace-format msgid "Invalid group range: {g}" msgstr "Range gruppo: {g}" -#: InvenTree/helpers.py:618 +#: InvenTree/helpers.py:629 #, python-brace-format msgid "Invalid group: {g}" msgstr "Gruppo non valido: {g}" -#: InvenTree/helpers.py:646 +#: InvenTree/helpers.py:657 #, python-brace-format msgid "Invalid group sequence: {g}" msgstr "Sequenza gruppo non valida: {g}" -#: InvenTree/helpers.py:654 +#: InvenTree/helpers.py:665 #, python-brace-format msgid "Invalid/no group {group}" msgstr "Gruppo {group} invalido o inesistente" -#: InvenTree/helpers.py:660 +#: InvenTree/helpers.py:671 msgid "No serial numbers found" msgstr "Nessun numero di serie trovato" -#: InvenTree/helpers.py:664 +#: InvenTree/helpers.py:675 #, python-brace-format msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "Il numero dei numeri seriali univoci ({s}) deve essere uguale alla quantità ({q})" @@ -398,99 +398,99 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/settings.py:607 +#: InvenTree/settings.py:609 msgid "Czech" msgstr "Ceco" -#: InvenTree/settings.py:608 +#: InvenTree/settings.py:610 msgid "German" msgstr "Tedesco" -#: InvenTree/settings.py:609 +#: InvenTree/settings.py:611 msgid "Greek" msgstr "Greco" -#: InvenTree/settings.py:610 +#: InvenTree/settings.py:612 msgid "English" msgstr "Inglese" -#: InvenTree/settings.py:611 +#: InvenTree/settings.py:613 msgid "Spanish" msgstr "Spagnolo" -#: InvenTree/settings.py:612 +#: InvenTree/settings.py:614 msgid "Spanish (Mexican)" msgstr "Spagnolo (Messicano)" -#: InvenTree/settings.py:613 +#: InvenTree/settings.py:615 msgid "Farsi / Persian" msgstr "Farsi / Persiano" -#: InvenTree/settings.py:614 +#: InvenTree/settings.py:616 msgid "French" msgstr "Francese" -#: InvenTree/settings.py:615 +#: InvenTree/settings.py:617 msgid "Hebrew" msgstr "Ebraico" -#: InvenTree/settings.py:616 +#: InvenTree/settings.py:618 msgid "Hungarian" msgstr "Ungherese" -#: InvenTree/settings.py:617 +#: InvenTree/settings.py:619 msgid "Italian" msgstr "Italiano" -#: InvenTree/settings.py:618 +#: InvenTree/settings.py:620 msgid "Japanese" msgstr "Giapponese" -#: InvenTree/settings.py:619 +#: InvenTree/settings.py:621 msgid "Korean" msgstr "Coreano" -#: InvenTree/settings.py:620 +#: InvenTree/settings.py:622 msgid "Dutch" msgstr "Olandese" -#: InvenTree/settings.py:621 +#: InvenTree/settings.py:623 msgid "Norwegian" msgstr "Norvegese" -#: InvenTree/settings.py:622 +#: InvenTree/settings.py:624 msgid "Polish" msgstr "Polacco" -#: InvenTree/settings.py:623 +#: InvenTree/settings.py:625 msgid "Portuguese" msgstr "Portoghese" -#: InvenTree/settings.py:624 +#: InvenTree/settings.py:626 msgid "Portuguese (Brazilian)" msgstr "Portoghese (Brasile)" -#: InvenTree/settings.py:625 +#: InvenTree/settings.py:627 msgid "Russian" msgstr "Russo" -#: InvenTree/settings.py:626 +#: InvenTree/settings.py:628 msgid "Swedish" msgstr "Svedese" -#: InvenTree/settings.py:627 +#: InvenTree/settings.py:629 msgid "Thai" msgstr "Thailandese" -#: InvenTree/settings.py:628 +#: InvenTree/settings.py:630 msgid "Turkish" msgstr "Turco" -#: InvenTree/settings.py:629 +#: InvenTree/settings.py:631 msgid "Vietnamese" msgstr "Vietnamita" -#: InvenTree/settings.py:630 +#: InvenTree/settings.py:632 msgid "Chinese" msgstr "Cinese" @@ -5516,11 +5516,11 @@ msgstr "" msgid "Create a new variant of template '%(full_name)s'." msgstr "" -#: part/templatetags/inventree_extras.py:157 +#: part/templatetags/inventree_extras.py:177 msgid "Unknown database" msgstr "Database sconosciuto" -#: part/templatetags/inventree_extras.py:202 +#: part/templatetags/inventree_extras.py:222 #, python-brace-format msgid "{title} v{version}" msgstr "" diff --git a/InvenTree/locale/ja/LC_MESSAGES/django.po b/InvenTree/locale/ja/LC_MESSAGES/django.po index 6244f66a11..0c374bbec5 100644 --- a/InvenTree/locale/ja/LC_MESSAGES/django.po +++ b/InvenTree/locale/ja/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-04 22:08+0000\n" -"PO-Revision-Date: 2022-08-05 01:02\n" +"POT-Creation-Date: 2022-08-07 21:57+0000\n" +"PO-Revision-Date: 2022-08-08 13:03\n" "Last-Translator: \n" "Language-Team: Japanese\n" "Language: ja_JP\n" @@ -17,7 +17,7 @@ msgstr "" "X-Crowdin-File: /[inventree.InvenTree] l10/InvenTree/locale/en/LC_MESSAGES/django.po\n" "X-Crowdin-File-ID: 154\n" -#: InvenTree/api.py:52 +#: InvenTree/api.py:54 msgid "API endpoint not found" msgstr "APIエンドポイントが見つかりません" @@ -25,11 +25,11 @@ msgstr "APIエンドポイントが見つかりません" msgid "Error details can be found in the admin panel" msgstr "" -#: InvenTree/fields.py:108 +#: InvenTree/fields.py:109 msgid "Enter date" msgstr "日付を入力する" -#: InvenTree/fields.py:185 build/serializers.py:384 +#: InvenTree/fields.py:186 build/serializers.py:384 #: build/templates/build/sidebar.html:21 company/models.py:523 #: company/templates/company/sidebar.html:25 order/models.py:906 #: order/templates/order/po_sidebar.html:11 @@ -89,76 +89,76 @@ msgstr "メールアドレスの確認" msgid "You must type the same email each time." msgstr "毎回同じメールアドレスを入力する必要があります。" -#: InvenTree/helpers.py:172 +#: InvenTree/helpers.py:173 msgid "Connection error" msgstr "" -#: InvenTree/helpers.py:176 InvenTree/helpers.py:181 +#: InvenTree/helpers.py:177 InvenTree/helpers.py:182 msgid "Server responded with invalid status code" msgstr "" -#: InvenTree/helpers.py:178 +#: InvenTree/helpers.py:179 msgid "Exception occurred" msgstr "" -#: InvenTree/helpers.py:186 +#: InvenTree/helpers.py:187 msgid "Server responded with invalid Content-Length value" msgstr "" -#: InvenTree/helpers.py:189 +#: InvenTree/helpers.py:190 msgid "Image size is too large" msgstr "" -#: InvenTree/helpers.py:201 +#: InvenTree/helpers.py:202 msgid "Image download exceeded maximum size" msgstr "" -#: InvenTree/helpers.py:206 +#: InvenTree/helpers.py:207 msgid "Remote server returned empty response" msgstr "" -#: InvenTree/helpers.py:214 +#: InvenTree/helpers.py:215 msgid "Supplied URL is not a valid image file" msgstr "" -#: InvenTree/helpers.py:573 +#: InvenTree/helpers.py:584 #, python-brace-format msgid "Duplicate serial: {sn}" msgstr "重複したシリアル番号: {sn}" -#: InvenTree/helpers.py:580 order/models.py:320 order/models.py:472 +#: InvenTree/helpers.py:591 order/models.py:320 order/models.py:472 msgid "Invalid quantity provided" msgstr "数量コードが無効です" -#: InvenTree/helpers.py:583 +#: InvenTree/helpers.py:594 msgid "Empty serial number string" msgstr "シリアル番号は空です" -#: InvenTree/helpers.py:615 +#: InvenTree/helpers.py:626 #, python-brace-format msgid "Invalid group range: {g}" msgstr "" -#: InvenTree/helpers.py:618 +#: InvenTree/helpers.py:629 #, python-brace-format msgid "Invalid group: {g}" msgstr "無効なグループ: {g}" -#: InvenTree/helpers.py:646 +#: InvenTree/helpers.py:657 #, python-brace-format msgid "Invalid group sequence: {g}" msgstr "" -#: InvenTree/helpers.py:654 +#: InvenTree/helpers.py:665 #, python-brace-format msgid "Invalid/no group {group}" msgstr "{group} は無効なグループか、存在しません。" -#: InvenTree/helpers.py:660 +#: InvenTree/helpers.py:671 msgid "No serial numbers found" msgstr "シリアル番号が見つかりません" -#: InvenTree/helpers.py:664 +#: InvenTree/helpers.py:675 #, python-brace-format msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "" @@ -398,99 +398,99 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/settings.py:607 +#: InvenTree/settings.py:609 msgid "Czech" msgstr "" -#: InvenTree/settings.py:608 +#: InvenTree/settings.py:610 msgid "German" msgstr "ドイツ語" -#: InvenTree/settings.py:609 +#: InvenTree/settings.py:611 msgid "Greek" msgstr "ギリシャ語" -#: InvenTree/settings.py:610 +#: InvenTree/settings.py:612 msgid "English" msgstr "英語" -#: InvenTree/settings.py:611 +#: InvenTree/settings.py:613 msgid "Spanish" msgstr "スペイン語" -#: InvenTree/settings.py:612 +#: InvenTree/settings.py:614 msgid "Spanish (Mexican)" msgstr "スペイン語(メキシコ)" -#: InvenTree/settings.py:613 +#: InvenTree/settings.py:615 msgid "Farsi / Persian" msgstr "" -#: InvenTree/settings.py:614 +#: InvenTree/settings.py:616 msgid "French" msgstr "フランス語" -#: InvenTree/settings.py:615 +#: InvenTree/settings.py:617 msgid "Hebrew" msgstr "ヘブライ語" -#: InvenTree/settings.py:616 +#: InvenTree/settings.py:618 msgid "Hungarian" msgstr "ハンガリー語" -#: InvenTree/settings.py:617 +#: InvenTree/settings.py:619 msgid "Italian" msgstr "イタリア語" -#: InvenTree/settings.py:618 +#: InvenTree/settings.py:620 msgid "Japanese" msgstr "日本語" -#: InvenTree/settings.py:619 +#: InvenTree/settings.py:621 msgid "Korean" msgstr "韓国語" -#: InvenTree/settings.py:620 +#: InvenTree/settings.py:622 msgid "Dutch" msgstr "オランダ語" -#: InvenTree/settings.py:621 +#: InvenTree/settings.py:623 msgid "Norwegian" msgstr "ノルウェー語" -#: InvenTree/settings.py:622 +#: InvenTree/settings.py:624 msgid "Polish" msgstr "ポーランド語" -#: InvenTree/settings.py:623 +#: InvenTree/settings.py:625 msgid "Portuguese" msgstr "" -#: InvenTree/settings.py:624 +#: InvenTree/settings.py:626 msgid "Portuguese (Brazilian)" msgstr "" -#: InvenTree/settings.py:625 +#: InvenTree/settings.py:627 msgid "Russian" msgstr "ロシア語" -#: InvenTree/settings.py:626 +#: InvenTree/settings.py:628 msgid "Swedish" msgstr "スウェーデン語" -#: InvenTree/settings.py:627 +#: InvenTree/settings.py:629 msgid "Thai" msgstr "タイ語" -#: InvenTree/settings.py:628 +#: InvenTree/settings.py:630 msgid "Turkish" msgstr "トルコ語" -#: InvenTree/settings.py:629 +#: InvenTree/settings.py:631 msgid "Vietnamese" msgstr "ベトナム語" -#: InvenTree/settings.py:630 +#: InvenTree/settings.py:632 msgid "Chinese" msgstr "中国語" @@ -5516,11 +5516,11 @@ msgstr "" msgid "Create a new variant of template '%(full_name)s'." msgstr "" -#: part/templatetags/inventree_extras.py:157 +#: part/templatetags/inventree_extras.py:177 msgid "Unknown database" msgstr "" -#: part/templatetags/inventree_extras.py:202 +#: part/templatetags/inventree_extras.py:222 #, python-brace-format msgid "{title} v{version}" msgstr "" diff --git a/InvenTree/locale/ko/LC_MESSAGES/django.po b/InvenTree/locale/ko/LC_MESSAGES/django.po index d87af16a77..c3a95168be 100644 --- a/InvenTree/locale/ko/LC_MESSAGES/django.po +++ b/InvenTree/locale/ko/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-04 22:08+0000\n" -"PO-Revision-Date: 2022-08-05 01:02\n" +"POT-Creation-Date: 2022-08-07 21:57+0000\n" +"PO-Revision-Date: 2022-08-08 13:03\n" "Last-Translator: \n" "Language-Team: Korean\n" "Language: ko_KR\n" @@ -17,7 +17,7 @@ msgstr "" "X-Crowdin-File: /[inventree.InvenTree] l10/InvenTree/locale/en/LC_MESSAGES/django.po\n" "X-Crowdin-File-ID: 154\n" -#: InvenTree/api.py:52 +#: InvenTree/api.py:54 msgid "API endpoint not found" msgstr "" @@ -25,11 +25,11 @@ msgstr "" msgid "Error details can be found in the admin panel" msgstr "" -#: InvenTree/fields.py:108 +#: InvenTree/fields.py:109 msgid "Enter date" msgstr "" -#: InvenTree/fields.py:185 build/serializers.py:384 +#: InvenTree/fields.py:186 build/serializers.py:384 #: build/templates/build/sidebar.html:21 company/models.py:523 #: company/templates/company/sidebar.html:25 order/models.py:906 #: order/templates/order/po_sidebar.html:11 @@ -89,76 +89,76 @@ msgstr "이메일 주소 확인" msgid "You must type the same email each time." msgstr "" -#: InvenTree/helpers.py:172 +#: InvenTree/helpers.py:173 msgid "Connection error" msgstr "" -#: InvenTree/helpers.py:176 InvenTree/helpers.py:181 +#: InvenTree/helpers.py:177 InvenTree/helpers.py:182 msgid "Server responded with invalid status code" msgstr "" -#: InvenTree/helpers.py:178 +#: InvenTree/helpers.py:179 msgid "Exception occurred" msgstr "" -#: InvenTree/helpers.py:186 +#: InvenTree/helpers.py:187 msgid "Server responded with invalid Content-Length value" msgstr "" -#: InvenTree/helpers.py:189 +#: InvenTree/helpers.py:190 msgid "Image size is too large" msgstr "" -#: InvenTree/helpers.py:201 +#: InvenTree/helpers.py:202 msgid "Image download exceeded maximum size" msgstr "" -#: InvenTree/helpers.py:206 +#: InvenTree/helpers.py:207 msgid "Remote server returned empty response" msgstr "" -#: InvenTree/helpers.py:214 +#: InvenTree/helpers.py:215 msgid "Supplied URL is not a valid image file" msgstr "" -#: InvenTree/helpers.py:573 +#: InvenTree/helpers.py:584 #, python-brace-format msgid "Duplicate serial: {sn}" msgstr "" -#: InvenTree/helpers.py:580 order/models.py:320 order/models.py:472 +#: InvenTree/helpers.py:591 order/models.py:320 order/models.py:472 msgid "Invalid quantity provided" msgstr "" -#: InvenTree/helpers.py:583 +#: InvenTree/helpers.py:594 msgid "Empty serial number string" msgstr "" -#: InvenTree/helpers.py:615 +#: InvenTree/helpers.py:626 #, python-brace-format msgid "Invalid group range: {g}" msgstr "" -#: InvenTree/helpers.py:618 +#: InvenTree/helpers.py:629 #, python-brace-format msgid "Invalid group: {g}" msgstr "" -#: InvenTree/helpers.py:646 +#: InvenTree/helpers.py:657 #, python-brace-format msgid "Invalid group sequence: {g}" msgstr "" -#: InvenTree/helpers.py:654 +#: InvenTree/helpers.py:665 #, python-brace-format msgid "Invalid/no group {group}" msgstr "" -#: InvenTree/helpers.py:660 +#: InvenTree/helpers.py:671 msgid "No serial numbers found" msgstr "" -#: InvenTree/helpers.py:664 +#: InvenTree/helpers.py:675 #, python-brace-format msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "" @@ -398,99 +398,99 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/settings.py:607 +#: InvenTree/settings.py:609 msgid "Czech" msgstr "체코어" -#: InvenTree/settings.py:608 +#: InvenTree/settings.py:610 msgid "German" msgstr "독일어" -#: InvenTree/settings.py:609 +#: InvenTree/settings.py:611 msgid "Greek" msgstr "그리스어" -#: InvenTree/settings.py:610 +#: InvenTree/settings.py:612 msgid "English" msgstr "영어" -#: InvenTree/settings.py:611 +#: InvenTree/settings.py:613 msgid "Spanish" msgstr "스페인어" -#: InvenTree/settings.py:612 +#: InvenTree/settings.py:614 msgid "Spanish (Mexican)" msgstr "스페인어 (멕시코)" -#: InvenTree/settings.py:613 +#: InvenTree/settings.py:615 msgid "Farsi / Persian" msgstr "파르시어/페르시아어" -#: InvenTree/settings.py:614 +#: InvenTree/settings.py:616 msgid "French" msgstr "프랑스어" -#: InvenTree/settings.py:615 +#: InvenTree/settings.py:617 msgid "Hebrew" msgstr "히브리어" -#: InvenTree/settings.py:616 +#: InvenTree/settings.py:618 msgid "Hungarian" msgstr "헝가리어" -#: InvenTree/settings.py:617 +#: InvenTree/settings.py:619 msgid "Italian" msgstr "이탈리아어" -#: InvenTree/settings.py:618 +#: InvenTree/settings.py:620 msgid "Japanese" msgstr "일본어" -#: InvenTree/settings.py:619 +#: InvenTree/settings.py:621 msgid "Korean" msgstr "한국어" -#: InvenTree/settings.py:620 +#: InvenTree/settings.py:622 msgid "Dutch" msgstr "네덜란드어" -#: InvenTree/settings.py:621 +#: InvenTree/settings.py:623 msgid "Norwegian" msgstr "노르웨이어" -#: InvenTree/settings.py:622 +#: InvenTree/settings.py:624 msgid "Polish" msgstr "폴란드어" -#: InvenTree/settings.py:623 +#: InvenTree/settings.py:625 msgid "Portuguese" msgstr "" -#: InvenTree/settings.py:624 +#: InvenTree/settings.py:626 msgid "Portuguese (Brazilian)" msgstr "" -#: InvenTree/settings.py:625 +#: InvenTree/settings.py:627 msgid "Russian" msgstr "러시아어" -#: InvenTree/settings.py:626 +#: InvenTree/settings.py:628 msgid "Swedish" msgstr "스웨덴어" -#: InvenTree/settings.py:627 +#: InvenTree/settings.py:629 msgid "Thai" msgstr "태국어" -#: InvenTree/settings.py:628 +#: InvenTree/settings.py:630 msgid "Turkish" msgstr "터키어" -#: InvenTree/settings.py:629 +#: InvenTree/settings.py:631 msgid "Vietnamese" msgstr "베트남어" -#: InvenTree/settings.py:630 +#: InvenTree/settings.py:632 msgid "Chinese" msgstr "중국어" @@ -5516,11 +5516,11 @@ msgstr "" msgid "Create a new variant of template '%(full_name)s'." msgstr "" -#: part/templatetags/inventree_extras.py:157 +#: part/templatetags/inventree_extras.py:177 msgid "Unknown database" msgstr "" -#: part/templatetags/inventree_extras.py:202 +#: part/templatetags/inventree_extras.py:222 #, python-brace-format msgid "{title} v{version}" msgstr "" diff --git a/InvenTree/locale/nl/LC_MESSAGES/django.po b/InvenTree/locale/nl/LC_MESSAGES/django.po index 7d5d35fb2a..bfc943cc4f 100644 --- a/InvenTree/locale/nl/LC_MESSAGES/django.po +++ b/InvenTree/locale/nl/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-04 22:08+0000\n" -"PO-Revision-Date: 2022-08-06 01:07\n" +"POT-Creation-Date: 2022-08-07 21:57+0000\n" +"PO-Revision-Date: 2022-08-08 13:03\n" "Last-Translator: \n" "Language-Team: Dutch\n" "Language: nl_NL\n" @@ -17,7 +17,7 @@ msgstr "" "X-Crowdin-File: /[inventree.InvenTree] l10/InvenTree/locale/en/LC_MESSAGES/django.po\n" "X-Crowdin-File-ID: 154\n" -#: InvenTree/api.py:52 +#: InvenTree/api.py:54 msgid "API endpoint not found" msgstr "API eindpunt niet gevonden" @@ -25,11 +25,11 @@ msgstr "API eindpunt niet gevonden" msgid "Error details can be found in the admin panel" msgstr "Error details kunnen worden gevonden in het admin scherm" -#: InvenTree/fields.py:108 +#: InvenTree/fields.py:109 msgid "Enter date" msgstr "Voer datum in" -#: InvenTree/fields.py:185 build/serializers.py:384 +#: InvenTree/fields.py:186 build/serializers.py:384 #: build/templates/build/sidebar.html:21 company/models.py:523 #: company/templates/company/sidebar.html:25 order/models.py:906 #: order/templates/order/po_sidebar.html:11 @@ -89,76 +89,76 @@ msgstr "E-mailadres bevestiging" msgid "You must type the same email each time." msgstr "Er moet hetzelfde e-mailadres ingevoerd worden." -#: InvenTree/helpers.py:172 +#: InvenTree/helpers.py:173 msgid "Connection error" msgstr "Verbindingsfout" -#: InvenTree/helpers.py:176 InvenTree/helpers.py:181 +#: InvenTree/helpers.py:177 InvenTree/helpers.py:182 msgid "Server responded with invalid status code" msgstr "Server reageerde met ongeldige statuscode" -#: InvenTree/helpers.py:178 +#: InvenTree/helpers.py:179 msgid "Exception occurred" msgstr "Uitzondering opgetreden" -#: InvenTree/helpers.py:186 +#: InvenTree/helpers.py:187 msgid "Server responded with invalid Content-Length value" msgstr "Server reageerde met ongeldige Content-Length waarde" -#: InvenTree/helpers.py:189 +#: InvenTree/helpers.py:190 msgid "Image size is too large" msgstr "Afbeeldingsformaat is te groot" -#: InvenTree/helpers.py:201 +#: InvenTree/helpers.py:202 msgid "Image download exceeded maximum size" msgstr "Beelddownload overschrijdt de maximale grootte" -#: InvenTree/helpers.py:206 +#: InvenTree/helpers.py:207 msgid "Remote server returned empty response" msgstr "Externe server heeft lege reactie teruggegeven" -#: InvenTree/helpers.py:214 +#: InvenTree/helpers.py:215 msgid "Supplied URL is not a valid image file" msgstr "Opgegeven URL is geen geldig afbeeldingsbestand" -#: InvenTree/helpers.py:573 +#: InvenTree/helpers.py:584 #, python-brace-format msgid "Duplicate serial: {sn}" msgstr "Duplicaat serienummer: {sn}" -#: InvenTree/helpers.py:580 order/models.py:320 order/models.py:472 +#: InvenTree/helpers.py:591 order/models.py:320 order/models.py:472 msgid "Invalid quantity provided" msgstr "Ongeldige hoeveelheid ingevoerd" -#: InvenTree/helpers.py:583 +#: InvenTree/helpers.py:594 msgid "Empty serial number string" msgstr "Leeg serienummer" -#: InvenTree/helpers.py:615 +#: InvenTree/helpers.py:626 #, python-brace-format msgid "Invalid group range: {g}" msgstr "Ongeldig groepsbereik: {g}" -#: InvenTree/helpers.py:618 +#: InvenTree/helpers.py:629 #, python-brace-format msgid "Invalid group: {g}" msgstr "Ongeldige groep: {g}" -#: InvenTree/helpers.py:646 +#: InvenTree/helpers.py:657 #, python-brace-format msgid "Invalid group sequence: {g}" msgstr "Ongeldig groepsbereik: {g}" -#: InvenTree/helpers.py:654 +#: InvenTree/helpers.py:665 #, python-brace-format msgid "Invalid/no group {group}" msgstr "Ongeldige/geen groep {group}" -#: InvenTree/helpers.py:660 +#: InvenTree/helpers.py:671 msgid "No serial numbers found" msgstr "Geen serienummers gevonden" -#: InvenTree/helpers.py:664 +#: InvenTree/helpers.py:675 #, python-brace-format msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "Hoeveelheid van unieke serienummers ({s}) moet overeenkomen met de hoeveelheid ({q})" @@ -398,99 +398,99 @@ msgstr "URL van extern afbeeldingsbestand" msgid "Downloading images from remote URL is not enabled" msgstr "Afbeeldingen van externe URL downloaden is niet ingeschakeld" -#: InvenTree/settings.py:607 +#: InvenTree/settings.py:609 msgid "Czech" msgstr "Tsjechisch" -#: InvenTree/settings.py:608 +#: InvenTree/settings.py:610 msgid "German" msgstr "Duits" -#: InvenTree/settings.py:609 +#: InvenTree/settings.py:611 msgid "Greek" msgstr "Grieks" -#: InvenTree/settings.py:610 +#: InvenTree/settings.py:612 msgid "English" msgstr "Engels" -#: InvenTree/settings.py:611 +#: InvenTree/settings.py:613 msgid "Spanish" msgstr "Spaans" -#: InvenTree/settings.py:612 +#: InvenTree/settings.py:614 msgid "Spanish (Mexican)" msgstr "Spaans (Mexicaans)" -#: InvenTree/settings.py:613 +#: InvenTree/settings.py:615 msgid "Farsi / Persian" msgstr "Farsi / Perzisch" -#: InvenTree/settings.py:614 +#: InvenTree/settings.py:616 msgid "French" msgstr "Frans" -#: InvenTree/settings.py:615 +#: InvenTree/settings.py:617 msgid "Hebrew" msgstr "Hebreeuws" -#: InvenTree/settings.py:616 +#: InvenTree/settings.py:618 msgid "Hungarian" msgstr "Hongaars" -#: InvenTree/settings.py:617 +#: InvenTree/settings.py:619 msgid "Italian" msgstr "Italiaans" -#: InvenTree/settings.py:618 +#: InvenTree/settings.py:620 msgid "Japanese" msgstr "Japans" -#: InvenTree/settings.py:619 +#: InvenTree/settings.py:621 msgid "Korean" msgstr "Koreaans" -#: InvenTree/settings.py:620 +#: InvenTree/settings.py:622 msgid "Dutch" msgstr "Nederlands" -#: InvenTree/settings.py:621 +#: InvenTree/settings.py:623 msgid "Norwegian" msgstr "Noors" -#: InvenTree/settings.py:622 +#: InvenTree/settings.py:624 msgid "Polish" msgstr "Pools" -#: InvenTree/settings.py:623 +#: InvenTree/settings.py:625 msgid "Portuguese" msgstr "Portugees" -#: InvenTree/settings.py:624 +#: InvenTree/settings.py:626 msgid "Portuguese (Brazilian)" msgstr "Portugees (Braziliaans)" -#: InvenTree/settings.py:625 +#: InvenTree/settings.py:627 msgid "Russian" msgstr "Russisch" -#: InvenTree/settings.py:626 +#: InvenTree/settings.py:628 msgid "Swedish" msgstr "Zweeds" -#: InvenTree/settings.py:627 +#: InvenTree/settings.py:629 msgid "Thai" msgstr "Thais" -#: InvenTree/settings.py:628 +#: InvenTree/settings.py:630 msgid "Turkish" msgstr "Turks" -#: InvenTree/settings.py:629 +#: InvenTree/settings.py:631 msgid "Vietnamese" msgstr "Vietnamees" -#: InvenTree/settings.py:630 +#: InvenTree/settings.py:632 msgid "Chinese" msgstr "Chinees" @@ -5516,11 +5516,11 @@ msgstr "" msgid "Create a new variant of template '%(full_name)s'." msgstr "" -#: part/templatetags/inventree_extras.py:157 +#: part/templatetags/inventree_extras.py:177 msgid "Unknown database" msgstr "" -#: part/templatetags/inventree_extras.py:202 +#: part/templatetags/inventree_extras.py:222 #, python-brace-format msgid "{title} v{version}" msgstr "" diff --git a/InvenTree/locale/no/LC_MESSAGES/django.po b/InvenTree/locale/no/LC_MESSAGES/django.po index 45c1070efe..432863233e 100644 --- a/InvenTree/locale/no/LC_MESSAGES/django.po +++ b/InvenTree/locale/no/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-04 22:08+0000\n" -"PO-Revision-Date: 2022-08-05 01:02\n" +"POT-Creation-Date: 2022-08-07 21:57+0000\n" +"PO-Revision-Date: 2022-08-08 13:03\n" "Last-Translator: \n" "Language-Team: Norwegian\n" "Language: no_NO\n" @@ -17,7 +17,7 @@ msgstr "" "X-Crowdin-File: /[inventree.InvenTree] l10/InvenTree/locale/en/LC_MESSAGES/django.po\n" "X-Crowdin-File-ID: 154\n" -#: InvenTree/api.py:52 +#: InvenTree/api.py:54 msgid "API endpoint not found" msgstr "API endepunkt ikke funnet" @@ -25,11 +25,11 @@ msgstr "API endepunkt ikke funnet" msgid "Error details can be found in the admin panel" msgstr "Feildetaljer kan ikke finnes i admin-panelet" -#: InvenTree/fields.py:108 +#: InvenTree/fields.py:109 msgid "Enter date" msgstr "Oppgi dato" -#: InvenTree/fields.py:185 build/serializers.py:384 +#: InvenTree/fields.py:186 build/serializers.py:384 #: build/templates/build/sidebar.html:21 company/models.py:523 #: company/templates/company/sidebar.html:25 order/models.py:906 #: order/templates/order/po_sidebar.html:11 @@ -89,76 +89,76 @@ msgstr "Bekreftelsen på e-postaddresse" msgid "You must type the same email each time." msgstr "Du må angi samme e-post hver gang." -#: InvenTree/helpers.py:172 +#: InvenTree/helpers.py:173 msgid "Connection error" msgstr "Tilkoblingsfeil" -#: InvenTree/helpers.py:176 InvenTree/helpers.py:181 +#: InvenTree/helpers.py:177 InvenTree/helpers.py:182 msgid "Server responded with invalid status code" msgstr "Serveren svarte med ugyldig statuskode" -#: InvenTree/helpers.py:178 +#: InvenTree/helpers.py:179 msgid "Exception occurred" msgstr "Det har oppstått et unntak" -#: InvenTree/helpers.py:186 +#: InvenTree/helpers.py:187 msgid "Server responded with invalid Content-Length value" msgstr "Serveren svarte med ugylding innholdslengde verdi" -#: InvenTree/helpers.py:189 +#: InvenTree/helpers.py:190 msgid "Image size is too large" msgstr "Bildestørrelsen er for stor" -#: InvenTree/helpers.py:201 +#: InvenTree/helpers.py:202 msgid "Image download exceeded maximum size" msgstr "Bildenedlasting overskred maksimal størrelse" -#: InvenTree/helpers.py:206 +#: InvenTree/helpers.py:207 msgid "Remote server returned empty response" msgstr "Ekstern server returnerte tomt svar" -#: InvenTree/helpers.py:214 +#: InvenTree/helpers.py:215 msgid "Supplied URL is not a valid image file" msgstr "Angitt URL er ikke en gyldig bildefil" -#: InvenTree/helpers.py:573 +#: InvenTree/helpers.py:584 #, python-brace-format msgid "Duplicate serial: {sn}" msgstr "Dupliser serie: {sn}" -#: InvenTree/helpers.py:580 order/models.py:320 order/models.py:472 +#: InvenTree/helpers.py:591 order/models.py:320 order/models.py:472 msgid "Invalid quantity provided" msgstr "Ugyldig mengde oppgitt" -#: InvenTree/helpers.py:583 +#: InvenTree/helpers.py:594 msgid "Empty serial number string" msgstr "Tom serienummerstreng" -#: InvenTree/helpers.py:615 +#: InvenTree/helpers.py:626 #, python-brace-format msgid "Invalid group range: {g}" msgstr "Ugyldig gruppeserie: {g}" -#: InvenTree/helpers.py:618 +#: InvenTree/helpers.py:629 #, python-brace-format msgid "Invalid group: {g}" msgstr "Ugyldig gruppe: {g}" -#: InvenTree/helpers.py:646 +#: InvenTree/helpers.py:657 #, python-brace-format msgid "Invalid group sequence: {g}" msgstr "Ugyldig gruppesekvense: {g}" -#: InvenTree/helpers.py:654 +#: InvenTree/helpers.py:665 #, python-brace-format msgid "Invalid/no group {group}" msgstr "Ugyldig/ingen gruppe {group}" -#: InvenTree/helpers.py:660 +#: InvenTree/helpers.py:671 msgid "No serial numbers found" msgstr "Ingen serienummer funnet" -#: InvenTree/helpers.py:664 +#: InvenTree/helpers.py:675 #, python-brace-format msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "Antall unike serienumre ({s}) må samsvare med antall ({q})" @@ -398,99 +398,99 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/settings.py:607 +#: InvenTree/settings.py:609 msgid "Czech" msgstr "Tsjekkisk" -#: InvenTree/settings.py:608 +#: InvenTree/settings.py:610 msgid "German" msgstr "Tysk" -#: InvenTree/settings.py:609 +#: InvenTree/settings.py:611 msgid "Greek" msgstr "Gresk" -#: InvenTree/settings.py:610 +#: InvenTree/settings.py:612 msgid "English" msgstr "Engelsk" -#: InvenTree/settings.py:611 +#: InvenTree/settings.py:613 msgid "Spanish" msgstr "Spansk" -#: InvenTree/settings.py:612 +#: InvenTree/settings.py:614 msgid "Spanish (Mexican)" msgstr "Spansk (Meksikansk)" -#: InvenTree/settings.py:613 +#: InvenTree/settings.py:615 msgid "Farsi / Persian" msgstr "Farsi / Persisk" -#: InvenTree/settings.py:614 +#: InvenTree/settings.py:616 msgid "French" msgstr "Fransk" -#: InvenTree/settings.py:615 +#: InvenTree/settings.py:617 msgid "Hebrew" msgstr "Hebraisk" -#: InvenTree/settings.py:616 +#: InvenTree/settings.py:618 msgid "Hungarian" msgstr "Ungarsk" -#: InvenTree/settings.py:617 +#: InvenTree/settings.py:619 msgid "Italian" msgstr "Italiensk" -#: InvenTree/settings.py:618 +#: InvenTree/settings.py:620 msgid "Japanese" msgstr "Japansk" -#: InvenTree/settings.py:619 +#: InvenTree/settings.py:621 msgid "Korean" msgstr "Koreansk" -#: InvenTree/settings.py:620 +#: InvenTree/settings.py:622 msgid "Dutch" msgstr "Nederlandsk" -#: InvenTree/settings.py:621 +#: InvenTree/settings.py:623 msgid "Norwegian" msgstr "Norsk" -#: InvenTree/settings.py:622 +#: InvenTree/settings.py:624 msgid "Polish" msgstr "Polsk" -#: InvenTree/settings.py:623 +#: InvenTree/settings.py:625 msgid "Portuguese" msgstr "Portugisisk" -#: InvenTree/settings.py:624 +#: InvenTree/settings.py:626 msgid "Portuguese (Brazilian)" msgstr "Portugisisk (Brasilian)" -#: InvenTree/settings.py:625 +#: InvenTree/settings.py:627 msgid "Russian" msgstr "Russisk" -#: InvenTree/settings.py:626 +#: InvenTree/settings.py:628 msgid "Swedish" msgstr "Svensk" -#: InvenTree/settings.py:627 +#: InvenTree/settings.py:629 msgid "Thai" msgstr "Thailandsk" -#: InvenTree/settings.py:628 +#: InvenTree/settings.py:630 msgid "Turkish" msgstr "Tyrkisk" -#: InvenTree/settings.py:629 +#: InvenTree/settings.py:631 msgid "Vietnamese" msgstr "Vietnamesisk" -#: InvenTree/settings.py:630 +#: InvenTree/settings.py:632 msgid "Chinese" msgstr "Kinesisk" @@ -5516,11 +5516,11 @@ msgstr "" msgid "Create a new variant of template '%(full_name)s'." msgstr "" -#: part/templatetags/inventree_extras.py:157 +#: part/templatetags/inventree_extras.py:177 msgid "Unknown database" msgstr "" -#: part/templatetags/inventree_extras.py:202 +#: part/templatetags/inventree_extras.py:222 #, python-brace-format msgid "{title} v{version}" msgstr "" diff --git a/InvenTree/locale/pl/LC_MESSAGES/django.po b/InvenTree/locale/pl/LC_MESSAGES/django.po index 5df6c03a1e..0aaaa58fad 100644 --- a/InvenTree/locale/pl/LC_MESSAGES/django.po +++ b/InvenTree/locale/pl/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-04 22:08+0000\n" -"PO-Revision-Date: 2022-08-05 01:02\n" +"POT-Creation-Date: 2022-08-07 21:57+0000\n" +"PO-Revision-Date: 2022-08-08 13:03\n" "Last-Translator: \n" "Language-Team: Polish\n" "Language: pl_PL\n" @@ -17,7 +17,7 @@ msgstr "" "X-Crowdin-File: /[inventree.InvenTree] l10/InvenTree/locale/en/LC_MESSAGES/django.po\n" "X-Crowdin-File-ID: 154\n" -#: InvenTree/api.py:52 +#: InvenTree/api.py:54 msgid "API endpoint not found" msgstr "Nie znaleziono punktu końcowego API" @@ -25,11 +25,11 @@ msgstr "Nie znaleziono punktu końcowego API" msgid "Error details can be found in the admin panel" msgstr "Szczegóły błędu można znaleźć w panelu administracyjnym" -#: InvenTree/fields.py:108 +#: InvenTree/fields.py:109 msgid "Enter date" msgstr "Wprowadź dane" -#: InvenTree/fields.py:185 build/serializers.py:384 +#: InvenTree/fields.py:186 build/serializers.py:384 #: build/templates/build/sidebar.html:21 company/models.py:523 #: company/templates/company/sidebar.html:25 order/models.py:906 #: order/templates/order/po_sidebar.html:11 @@ -89,76 +89,76 @@ msgstr "Potwierdzenie adresu email" msgid "You must type the same email each time." msgstr "Należy ponownie wpisać ten sam adres e-mail." -#: InvenTree/helpers.py:172 +#: InvenTree/helpers.py:173 msgid "Connection error" msgstr "" -#: InvenTree/helpers.py:176 InvenTree/helpers.py:181 +#: InvenTree/helpers.py:177 InvenTree/helpers.py:182 msgid "Server responded with invalid status code" msgstr "" -#: InvenTree/helpers.py:178 +#: InvenTree/helpers.py:179 msgid "Exception occurred" msgstr "" -#: InvenTree/helpers.py:186 +#: InvenTree/helpers.py:187 msgid "Server responded with invalid Content-Length value" msgstr "" -#: InvenTree/helpers.py:189 +#: InvenTree/helpers.py:190 msgid "Image size is too large" msgstr "" -#: InvenTree/helpers.py:201 +#: InvenTree/helpers.py:202 msgid "Image download exceeded maximum size" msgstr "" -#: InvenTree/helpers.py:206 +#: InvenTree/helpers.py:207 msgid "Remote server returned empty response" msgstr "" -#: InvenTree/helpers.py:214 +#: InvenTree/helpers.py:215 msgid "Supplied URL is not a valid image file" msgstr "" -#: InvenTree/helpers.py:573 +#: InvenTree/helpers.py:584 #, python-brace-format msgid "Duplicate serial: {sn}" msgstr "Powtórzony numer seryjny: {sn}" -#: InvenTree/helpers.py:580 order/models.py:320 order/models.py:472 +#: InvenTree/helpers.py:591 order/models.py:320 order/models.py:472 msgid "Invalid quantity provided" msgstr "Podano nieprawidłową ilość" -#: InvenTree/helpers.py:583 +#: InvenTree/helpers.py:594 msgid "Empty serial number string" msgstr "Pusty ciąg numeru seryjnego" -#: InvenTree/helpers.py:615 +#: InvenTree/helpers.py:626 #, python-brace-format msgid "Invalid group range: {g}" msgstr "Nieprawidłowy zakres grupy: {g}" -#: InvenTree/helpers.py:618 +#: InvenTree/helpers.py:629 #, python-brace-format msgid "Invalid group: {g}" msgstr "Nieprawidłowa grupa: {g}" -#: InvenTree/helpers.py:646 +#: InvenTree/helpers.py:657 #, python-brace-format msgid "Invalid group sequence: {g}" msgstr "Nieprawidłowa sekwencja grupy: {g}" -#: InvenTree/helpers.py:654 +#: InvenTree/helpers.py:665 #, python-brace-format msgid "Invalid/no group {group}" msgstr "Nieprawidłowa/Brak grupy {group}" -#: InvenTree/helpers.py:660 +#: InvenTree/helpers.py:671 msgid "No serial numbers found" msgstr "Nie znaleziono numerów seryjnych" -#: InvenTree/helpers.py:664 +#: InvenTree/helpers.py:675 #, python-brace-format msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "Liczba unikalnych numerów seryjnych ({s}) musi odpowiadać ilości ({q})" @@ -398,99 +398,99 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/settings.py:607 +#: InvenTree/settings.py:609 msgid "Czech" msgstr "Czeski" -#: InvenTree/settings.py:608 +#: InvenTree/settings.py:610 msgid "German" msgstr "Niemiecki" -#: InvenTree/settings.py:609 +#: InvenTree/settings.py:611 msgid "Greek" msgstr "Grecki" -#: InvenTree/settings.py:610 +#: InvenTree/settings.py:612 msgid "English" msgstr "Angielski" -#: InvenTree/settings.py:611 +#: InvenTree/settings.py:613 msgid "Spanish" msgstr "Hiszpański" -#: InvenTree/settings.py:612 +#: InvenTree/settings.py:614 msgid "Spanish (Mexican)" msgstr "Hiszpański (Meksyk)" -#: InvenTree/settings.py:613 +#: InvenTree/settings.py:615 msgid "Farsi / Persian" msgstr "Perski" -#: InvenTree/settings.py:614 +#: InvenTree/settings.py:616 msgid "French" msgstr "Francuski" -#: InvenTree/settings.py:615 +#: InvenTree/settings.py:617 msgid "Hebrew" msgstr "Hebrajski" -#: InvenTree/settings.py:616 +#: InvenTree/settings.py:618 msgid "Hungarian" msgstr "Węgierski" -#: InvenTree/settings.py:617 +#: InvenTree/settings.py:619 msgid "Italian" msgstr "Włoski" -#: InvenTree/settings.py:618 +#: InvenTree/settings.py:620 msgid "Japanese" msgstr "Japoński" -#: InvenTree/settings.py:619 +#: InvenTree/settings.py:621 msgid "Korean" msgstr "Koreański" -#: InvenTree/settings.py:620 +#: InvenTree/settings.py:622 msgid "Dutch" msgstr "Holenderski" -#: InvenTree/settings.py:621 +#: InvenTree/settings.py:623 msgid "Norwegian" msgstr "Norweski" -#: InvenTree/settings.py:622 +#: InvenTree/settings.py:624 msgid "Polish" msgstr "Polski" -#: InvenTree/settings.py:623 +#: InvenTree/settings.py:625 msgid "Portuguese" msgstr "Portugalski" -#: InvenTree/settings.py:624 +#: InvenTree/settings.py:626 msgid "Portuguese (Brazilian)" msgstr "Portugalski (Brazylijski)" -#: InvenTree/settings.py:625 +#: InvenTree/settings.py:627 msgid "Russian" msgstr "Rosyjski" -#: InvenTree/settings.py:626 +#: InvenTree/settings.py:628 msgid "Swedish" msgstr "Szwedzki" -#: InvenTree/settings.py:627 +#: InvenTree/settings.py:629 msgid "Thai" msgstr "Tajski" -#: InvenTree/settings.py:628 +#: InvenTree/settings.py:630 msgid "Turkish" msgstr "Turecki" -#: InvenTree/settings.py:629 +#: InvenTree/settings.py:631 msgid "Vietnamese" msgstr "Wietnamski" -#: InvenTree/settings.py:630 +#: InvenTree/settings.py:632 msgid "Chinese" msgstr "Chiński" @@ -5516,11 +5516,11 @@ msgstr "" msgid "Create a new variant of template '%(full_name)s'." msgstr "" -#: part/templatetags/inventree_extras.py:157 +#: part/templatetags/inventree_extras.py:177 msgid "Unknown database" msgstr "Nieznana baza danych" -#: part/templatetags/inventree_extras.py:202 +#: part/templatetags/inventree_extras.py:222 #, python-brace-format msgid "{title} v{version}" msgstr "" diff --git a/InvenTree/locale/pt/LC_MESSAGES/django.po b/InvenTree/locale/pt/LC_MESSAGES/django.po index 1d554c59c2..9a3be100c5 100644 --- a/InvenTree/locale/pt/LC_MESSAGES/django.po +++ b/InvenTree/locale/pt/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-04 22:08+0000\n" -"PO-Revision-Date: 2022-08-05 01:02\n" +"POT-Creation-Date: 2022-08-07 21:57+0000\n" +"PO-Revision-Date: 2022-08-08 13:03\n" "Last-Translator: \n" "Language-Team: Portuguese, Brazilian\n" "Language: pt_BR\n" @@ -17,7 +17,7 @@ msgstr "" "X-Crowdin-File: /[inventree.InvenTree] l10/InvenTree/locale/en/LC_MESSAGES/django.po\n" "X-Crowdin-File-ID: 154\n" -#: InvenTree/api.py:52 +#: InvenTree/api.py:54 msgid "API endpoint not found" msgstr "API endpoint não encontrado" @@ -25,11 +25,11 @@ msgstr "API endpoint não encontrado" msgid "Error details can be found in the admin panel" msgstr "Detalhes do erro podem ser encontrados no painel de administrador" -#: InvenTree/fields.py:108 +#: InvenTree/fields.py:109 msgid "Enter date" msgstr "Insira uma Data" -#: InvenTree/fields.py:185 build/serializers.py:384 +#: InvenTree/fields.py:186 build/serializers.py:384 #: build/templates/build/sidebar.html:21 company/models.py:523 #: company/templates/company/sidebar.html:25 order/models.py:906 #: order/templates/order/po_sidebar.html:11 @@ -89,76 +89,76 @@ msgstr "Confirmação do endereço de email" msgid "You must type the same email each time." msgstr "Voce precisa digital o mesmo email." -#: InvenTree/helpers.py:172 +#: InvenTree/helpers.py:173 msgid "Connection error" msgstr "" -#: InvenTree/helpers.py:176 InvenTree/helpers.py:181 +#: InvenTree/helpers.py:177 InvenTree/helpers.py:182 msgid "Server responded with invalid status code" msgstr "" -#: InvenTree/helpers.py:178 +#: InvenTree/helpers.py:179 msgid "Exception occurred" msgstr "" -#: InvenTree/helpers.py:186 +#: InvenTree/helpers.py:187 msgid "Server responded with invalid Content-Length value" msgstr "" -#: InvenTree/helpers.py:189 +#: InvenTree/helpers.py:190 msgid "Image size is too large" msgstr "" -#: InvenTree/helpers.py:201 +#: InvenTree/helpers.py:202 msgid "Image download exceeded maximum size" msgstr "" -#: InvenTree/helpers.py:206 +#: InvenTree/helpers.py:207 msgid "Remote server returned empty response" msgstr "" -#: InvenTree/helpers.py:214 +#: InvenTree/helpers.py:215 msgid "Supplied URL is not a valid image file" msgstr "" -#: InvenTree/helpers.py:573 +#: InvenTree/helpers.py:584 #, python-brace-format msgid "Duplicate serial: {sn}" msgstr "Numero serial duplicado: {sn}" -#: InvenTree/helpers.py:580 order/models.py:320 order/models.py:472 +#: InvenTree/helpers.py:591 order/models.py:320 order/models.py:472 msgid "Invalid quantity provided" msgstr "Quantidade invalida" -#: InvenTree/helpers.py:583 +#: InvenTree/helpers.py:594 msgid "Empty serial number string" msgstr "Numero serial em branco" -#: InvenTree/helpers.py:615 +#: InvenTree/helpers.py:626 #, python-brace-format msgid "Invalid group range: {g}" msgstr "Numero de grupo invalido:{g}" -#: InvenTree/helpers.py:618 +#: InvenTree/helpers.py:629 #, python-brace-format msgid "Invalid group: {g}" msgstr "Grupo invalido:{g}" -#: InvenTree/helpers.py:646 +#: InvenTree/helpers.py:657 #, python-brace-format msgid "Invalid group sequence: {g}" msgstr "Sequencia de grupo invalida:{g}" -#: InvenTree/helpers.py:654 +#: InvenTree/helpers.py:665 #, python-brace-format msgid "Invalid/no group {group}" msgstr "Invalido/sem grupo {group}" -#: InvenTree/helpers.py:660 +#: InvenTree/helpers.py:671 msgid "No serial numbers found" msgstr "Nenhum numero serial encontrado" -#: InvenTree/helpers.py:664 +#: InvenTree/helpers.py:675 #, python-brace-format msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "Numero de numeros seriais ({s}) precisa bater com quantidade ({q})" @@ -398,99 +398,99 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/settings.py:607 +#: InvenTree/settings.py:609 msgid "Czech" msgstr "" -#: InvenTree/settings.py:608 +#: InvenTree/settings.py:610 msgid "German" msgstr "" -#: InvenTree/settings.py:609 +#: InvenTree/settings.py:611 msgid "Greek" msgstr "" -#: InvenTree/settings.py:610 +#: InvenTree/settings.py:612 msgid "English" msgstr "" -#: InvenTree/settings.py:611 +#: InvenTree/settings.py:613 msgid "Spanish" msgstr "" -#: InvenTree/settings.py:612 +#: InvenTree/settings.py:614 msgid "Spanish (Mexican)" msgstr "" -#: InvenTree/settings.py:613 +#: InvenTree/settings.py:615 msgid "Farsi / Persian" msgstr "" -#: InvenTree/settings.py:614 +#: InvenTree/settings.py:616 msgid "French" msgstr "" -#: InvenTree/settings.py:615 +#: InvenTree/settings.py:617 msgid "Hebrew" msgstr "" -#: InvenTree/settings.py:616 +#: InvenTree/settings.py:618 msgid "Hungarian" msgstr "" -#: InvenTree/settings.py:617 +#: InvenTree/settings.py:619 msgid "Italian" msgstr "" -#: InvenTree/settings.py:618 +#: InvenTree/settings.py:620 msgid "Japanese" msgstr "" -#: InvenTree/settings.py:619 +#: InvenTree/settings.py:621 msgid "Korean" msgstr "" -#: InvenTree/settings.py:620 +#: InvenTree/settings.py:622 msgid "Dutch" msgstr "" -#: InvenTree/settings.py:621 +#: InvenTree/settings.py:623 msgid "Norwegian" msgstr "" -#: InvenTree/settings.py:622 +#: InvenTree/settings.py:624 msgid "Polish" msgstr "" -#: InvenTree/settings.py:623 +#: InvenTree/settings.py:625 msgid "Portuguese" msgstr "" -#: InvenTree/settings.py:624 +#: InvenTree/settings.py:626 msgid "Portuguese (Brazilian)" msgstr "" -#: InvenTree/settings.py:625 +#: InvenTree/settings.py:627 msgid "Russian" msgstr "" -#: InvenTree/settings.py:626 +#: InvenTree/settings.py:628 msgid "Swedish" msgstr "" -#: InvenTree/settings.py:627 +#: InvenTree/settings.py:629 msgid "Thai" msgstr "" -#: InvenTree/settings.py:628 +#: InvenTree/settings.py:630 msgid "Turkish" msgstr "" -#: InvenTree/settings.py:629 +#: InvenTree/settings.py:631 msgid "Vietnamese" msgstr "" -#: InvenTree/settings.py:630 +#: InvenTree/settings.py:632 msgid "Chinese" msgstr "" @@ -5516,11 +5516,11 @@ msgstr "" msgid "Create a new variant of template '%(full_name)s'." msgstr "" -#: part/templatetags/inventree_extras.py:157 +#: part/templatetags/inventree_extras.py:177 msgid "Unknown database" msgstr "" -#: part/templatetags/inventree_extras.py:202 +#: part/templatetags/inventree_extras.py:222 #, python-brace-format msgid "{title} v{version}" msgstr "" diff --git a/InvenTree/locale/pt_br/LC_MESSAGES/django.po b/InvenTree/locale/pt_br/LC_MESSAGES/django.po index 6a5ca70fea..6af15e7092 100644 --- a/InvenTree/locale/pt_br/LC_MESSAGES/django.po +++ b/InvenTree/locale/pt_br/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-04 00:21+0000\n" +"POT-Creation-Date: 2022-08-07 12:49+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -26,11 +26,11 @@ msgstr "" msgid "Error details can be found in the admin panel" msgstr "" -#: InvenTree/fields.py:108 +#: InvenTree/fields.py:109 msgid "Enter date" msgstr "" -#: InvenTree/fields.py:185 build/serializers.py:384 +#: InvenTree/fields.py:186 build/serializers.py:384 #: build/templates/build/sidebar.html:21 company/models.py:523 #: company/templates/company/sidebar.html:25 order/models.py:906 #: order/templates/order/po_sidebar.html:11 @@ -90,76 +90,76 @@ msgstr "" msgid "You must type the same email each time." msgstr "" -#: InvenTree/helpers.py:172 +#: InvenTree/helpers.py:173 msgid "Connection error" msgstr "" -#: InvenTree/helpers.py:176 InvenTree/helpers.py:181 +#: InvenTree/helpers.py:177 InvenTree/helpers.py:182 msgid "Server responded with invalid status code" msgstr "" -#: InvenTree/helpers.py:178 +#: InvenTree/helpers.py:179 msgid "Exception occurred" msgstr "" -#: InvenTree/helpers.py:186 +#: InvenTree/helpers.py:187 msgid "Server responded with invalid Content-Length value" msgstr "" -#: InvenTree/helpers.py:189 +#: InvenTree/helpers.py:190 msgid "Image size is too large" msgstr "" -#: InvenTree/helpers.py:201 +#: InvenTree/helpers.py:202 msgid "Image download exceeded maximum size" msgstr "" -#: InvenTree/helpers.py:206 +#: InvenTree/helpers.py:207 msgid "Remote server returned empty response" msgstr "" -#: InvenTree/helpers.py:214 +#: InvenTree/helpers.py:215 msgid "Supplied URL is not a valid image file" msgstr "" -#: InvenTree/helpers.py:557 +#: InvenTree/helpers.py:584 #, python-brace-format msgid "Duplicate serial: {sn}" msgstr "" -#: InvenTree/helpers.py:564 order/models.py:320 order/models.py:472 +#: InvenTree/helpers.py:591 order/models.py:320 order/models.py:472 msgid "Invalid quantity provided" msgstr "" -#: InvenTree/helpers.py:567 +#: InvenTree/helpers.py:594 msgid "Empty serial number string" msgstr "" -#: InvenTree/helpers.py:599 +#: InvenTree/helpers.py:626 #, python-brace-format msgid "Invalid group range: {g}" msgstr "" -#: InvenTree/helpers.py:602 +#: InvenTree/helpers.py:629 #, python-brace-format msgid "Invalid group: {g}" msgstr "" -#: InvenTree/helpers.py:630 +#: InvenTree/helpers.py:657 #, python-brace-format msgid "Invalid group sequence: {g}" msgstr "" -#: InvenTree/helpers.py:638 +#: InvenTree/helpers.py:665 #, python-brace-format msgid "Invalid/no group {group}" msgstr "" -#: InvenTree/helpers.py:644 +#: InvenTree/helpers.py:671 msgid "No serial numbers found" msgstr "" -#: InvenTree/helpers.py:648 +#: InvenTree/helpers.py:675 #, python-brace-format msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "" @@ -230,12 +230,12 @@ msgstr "" msgid "File comment" msgstr "" -#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1636 -#: common/models.py:1637 common/models.py:1860 common/models.py:1861 -#: common/models.py:2123 common/models.py:2124 part/models.py:2193 +#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1646 +#: common/models.py:1647 common/models.py:1870 common/models.py:1871 +#: common/models.py:2133 common/models.py:2134 part/models.py:2193 #: part/models.py:2213 plugin/models.py:238 plugin/models.py:239 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2573 +#: templates/js/translated/stock.js:2632 msgid "User" msgstr "" @@ -272,7 +272,7 @@ msgstr "" msgid "Invalid choice" msgstr "" -#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1846 +#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1856 #: company/models.py:358 label/models.py:101 part/models.py:739 #: part/models.py:2371 plugin/models.py:93 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 @@ -284,7 +284,7 @@ msgstr "" #: templates/js/translated/company.js:758 #: templates/js/translated/notification.js:71 #: templates/js/translated/part.js:684 templates/js/translated/part.js:836 -#: templates/js/translated/part.js:1858 templates/js/translated/stock.js:2344 +#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2388 msgid "Name" msgstr "" @@ -305,9 +305,9 @@ msgstr "" #: templates/js/translated/company.js:959 templates/js/translated/order.js:1720 #: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531 #: templates/js/translated/part.js:743 templates/js/translated/part.js:1149 -#: templates/js/translated/part.js:1424 templates/js/translated/part.js:1877 -#: templates/js/translated/part.js:1946 templates/js/translated/stock.js:1739 -#: templates/js/translated/stock.js:2356 templates/js/translated/stock.js:2410 +#: templates/js/translated/part.js:1424 templates/js/translated/part.js:1933 +#: templates/js/translated/part.js:2002 templates/js/translated/stock.js:1739 +#: templates/js/translated/stock.js:2415 templates/js/translated/stock.js:2469 msgid "Description" msgstr "" @@ -320,7 +320,7 @@ msgid "parent" msgstr "" #: InvenTree/models.py:560 InvenTree/models.py:561 -#: templates/js/translated/part.js:1883 templates/js/translated/stock.js:2362 +#: templates/js/translated/part.js:1939 templates/js/translated/stock.js:2421 msgid "Path" msgstr "" @@ -399,99 +399,99 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/settings.py:607 +#: InvenTree/settings.py:609 msgid "Czech" msgstr "" -#: InvenTree/settings.py:608 +#: InvenTree/settings.py:610 msgid "German" msgstr "" -#: InvenTree/settings.py:609 +#: InvenTree/settings.py:611 msgid "Greek" msgstr "" -#: InvenTree/settings.py:610 +#: InvenTree/settings.py:612 msgid "English" msgstr "" -#: InvenTree/settings.py:611 +#: InvenTree/settings.py:613 msgid "Spanish" msgstr "" -#: InvenTree/settings.py:612 +#: InvenTree/settings.py:614 msgid "Spanish (Mexican)" msgstr "" -#: InvenTree/settings.py:613 +#: InvenTree/settings.py:615 msgid "Farsi / Persian" msgstr "" -#: InvenTree/settings.py:614 +#: InvenTree/settings.py:616 msgid "French" msgstr "" -#: InvenTree/settings.py:615 +#: InvenTree/settings.py:617 msgid "Hebrew" msgstr "" -#: InvenTree/settings.py:616 +#: InvenTree/settings.py:618 msgid "Hungarian" msgstr "" -#: InvenTree/settings.py:617 +#: InvenTree/settings.py:619 msgid "Italian" msgstr "" -#: InvenTree/settings.py:618 +#: InvenTree/settings.py:620 msgid "Japanese" msgstr "" -#: InvenTree/settings.py:619 +#: InvenTree/settings.py:621 msgid "Korean" msgstr "" -#: InvenTree/settings.py:620 +#: InvenTree/settings.py:622 msgid "Dutch" msgstr "" -#: InvenTree/settings.py:621 +#: InvenTree/settings.py:623 msgid "Norwegian" msgstr "" -#: InvenTree/settings.py:622 +#: InvenTree/settings.py:624 msgid "Polish" msgstr "" -#: InvenTree/settings.py:623 +#: InvenTree/settings.py:625 msgid "Portuguese" msgstr "" -#: InvenTree/settings.py:624 +#: InvenTree/settings.py:626 msgid "Portuguese (Brazilian)" msgstr "" -#: InvenTree/settings.py:625 +#: InvenTree/settings.py:627 msgid "Russian" msgstr "" -#: InvenTree/settings.py:626 +#: InvenTree/settings.py:628 msgid "Swedish" msgstr "" -#: InvenTree/settings.py:627 +#: InvenTree/settings.py:629 msgid "Thai" msgstr "" -#: InvenTree/settings.py:628 +#: InvenTree/settings.py:630 msgid "Turkish" msgstr "" -#: InvenTree/settings.py:629 +#: InvenTree/settings.py:631 msgid "Vietnamese" msgstr "" -#: InvenTree/settings.py:630 +#: InvenTree/settings.py:632 msgid "Chinese" msgstr "" @@ -800,8 +800,8 @@ msgstr "" #: templates/js/translated/part.js:1134 templates/js/translated/part.js:1206 #: templates/js/translated/part.js:1402 templates/js/translated/stock.js:582 #: templates/js/translated/stock.js:747 templates/js/translated/stock.js:954 -#: templates/js/translated/stock.js:1696 templates/js/translated/stock.js:2436 -#: templates/js/translated/stock.js:2631 templates/js/translated/stock.js:2765 +#: templates/js/translated/stock.js:1696 templates/js/translated/stock.js:2495 +#: templates/js/translated/stock.js:2690 templates/js/translated/stock.js:2824 msgid "Part" msgstr "" @@ -989,7 +989,7 @@ msgstr "" #: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193 #: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380 #: templates/js/translated/stock.js:583 templates/js/translated/stock.js:748 -#: templates/js/translated/stock.js:2509 +#: templates/js/translated/stock.js:2568 msgid "Stock Item" msgstr "" @@ -999,7 +999,7 @@ msgstr "" #: build/models.py:1330 build/serializers.py:193 #: build/templates/build/build_base.html:82 -#: build/templates/build/detail.html:34 common/models.py:1668 +#: build/templates/build/detail.html:34 common/models.py:1678 #: company/templates/company/supplier_part.html:279 order/models.py:897 #: order/models.py:1423 order/serializers.py:1155 #: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40 @@ -1026,11 +1026,11 @@ msgstr "" #: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207 #: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386 #: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037 -#: templates/js/translated/part.js:1034 templates/js/translated/part.js:2091 -#: templates/js/translated/part.js:2322 templates/js/translated/part.js:2356 -#: templates/js/translated/part.js:2434 templates/js/translated/stock.js:454 +#: templates/js/translated/part.js:1034 templates/js/translated/part.js:2147 +#: templates/js/translated/part.js:2378 templates/js/translated/part.js:2412 +#: templates/js/translated/part.js:2490 templates/js/translated/stock.js:454 #: templates/js/translated/stock.js:608 templates/js/translated/stock.js:778 -#: templates/js/translated/stock.js:2558 templates/js/translated/stock.js:2643 +#: templates/js/translated/stock.js:2617 templates/js/translated/stock.js:2702 msgid "Quantity" msgstr "" @@ -1104,7 +1104,7 @@ msgstr "" msgid "Automatically allocate required items with matching serial numbers" msgstr "" -#: build/serializers.py:278 stock/api.py:569 +#: build/serializers.py:278 stock/api.py:577 msgid "The following serial numbers already exist" msgstr "" @@ -1123,7 +1123,7 @@ msgstr "" #: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394 #: templates/js/translated/part.js:181 templates/js/translated/stock.js:584 #: templates/js/translated/stock.js:749 templates/js/translated/stock.js:956 -#: templates/js/translated/stock.js:1850 templates/js/translated/stock.js:2450 +#: templates/js/translated/stock.js:1850 templates/js/translated/stock.js:2509 msgid "Location" msgstr "" @@ -1137,7 +1137,7 @@ msgstr "" #: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505 #: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724 #: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1825 -#: templates/js/translated/stock.js:2527 templates/js/translated/stock.js:2659 +#: templates/js/translated/stock.js:2586 templates/js/translated/stock.js:2718 msgid "Status" msgstr "" @@ -1448,7 +1448,7 @@ msgstr "" #: templates/js/translated/build.js:1182 #: templates/js/translated/model_renderers.js:124 #: templates/js/translated/stock.js:1022 templates/js/translated/stock.js:1839 -#: templates/js/translated/stock.js:2666 +#: templates/js/translated/stock.js:2725 #: templates/js/translated/table_filters.js:159 #: templates/js/translated/table_filters.js:250 msgid "Batch" @@ -1759,821 +1759,829 @@ msgstr "" msgid "Require explicit user confirmation for certain action." msgstr "" -#: common/models.py:880 templates/InvenTree/settings/sidebar.html:33 -msgid "Barcode Support" +#: common/models.py:880 +msgid "Tree Depth" msgstr "" #: common/models.py:881 +msgid "Default tree depth for treeview. Deeper levels can be lazy loaded as they are needed." +msgstr "" + +#: common/models.py:890 templates/InvenTree/settings/sidebar.html:33 +msgid "Barcode Support" +msgstr "" + +#: common/models.py:891 msgid "Enable barcode scanner support" msgstr "" -#: common/models.py:887 +#: common/models.py:897 msgid "Barcode Webcam Support" msgstr "" -#: common/models.py:888 +#: common/models.py:898 msgid "Allow barcode scanning via webcam in browser" msgstr "" -#: common/models.py:894 +#: common/models.py:904 msgid "IPN Regex" msgstr "" -#: common/models.py:895 +#: common/models.py:905 msgid "Regular expression pattern for matching Part IPN" msgstr "" -#: common/models.py:899 +#: common/models.py:909 msgid "Allow Duplicate IPN" msgstr "" -#: common/models.py:900 +#: common/models.py:910 msgid "Allow multiple parts to share the same IPN" msgstr "" -#: common/models.py:906 +#: common/models.py:916 msgid "Allow Editing IPN" msgstr "" -#: common/models.py:907 +#: common/models.py:917 msgid "Allow changing the IPN value while editing a part" msgstr "" -#: common/models.py:913 +#: common/models.py:923 msgid "Copy Part BOM Data" msgstr "" -#: common/models.py:914 +#: common/models.py:924 msgid "Copy BOM data by default when duplicating a part" msgstr "" -#: common/models.py:920 +#: common/models.py:930 msgid "Copy Part Parameter Data" msgstr "" -#: common/models.py:921 +#: common/models.py:931 msgid "Copy parameter data by default when duplicating a part" msgstr "" -#: common/models.py:927 +#: common/models.py:937 msgid "Copy Part Test Data" msgstr "" -#: common/models.py:928 +#: common/models.py:938 msgid "Copy test data by default when duplicating a part" msgstr "" -#: common/models.py:934 +#: common/models.py:944 msgid "Copy Category Parameter Templates" msgstr "" -#: common/models.py:935 +#: common/models.py:945 msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:941 part/models.py:2412 report/models.py:158 +#: common/models.py:951 part/models.py:2412 report/models.py:158 #: templates/js/translated/table_filters.js:38 #: templates/js/translated/table_filters.js:484 msgid "Template" msgstr "" -#: common/models.py:942 +#: common/models.py:952 msgid "Parts are templates by default" msgstr "" -#: common/models.py:948 part/models.py:887 templates/js/translated/bom.js:1448 +#: common/models.py:958 part/models.py:887 templates/js/translated/bom.js:1448 #: templates/js/translated/table_filters.js:176 #: templates/js/translated/table_filters.js:447 msgid "Assembly" msgstr "" -#: common/models.py:949 +#: common/models.py:959 msgid "Parts can be assembled from other components by default" msgstr "" -#: common/models.py:955 part/models.py:893 +#: common/models.py:965 part/models.py:893 #: templates/js/translated/table_filters.js:455 msgid "Component" msgstr "" -#: common/models.py:956 +#: common/models.py:966 msgid "Parts can be used as sub-components by default" msgstr "" -#: common/models.py:962 part/models.py:904 +#: common/models.py:972 part/models.py:904 msgid "Purchaseable" msgstr "" -#: common/models.py:963 +#: common/models.py:973 msgid "Parts are purchaseable by default" msgstr "" -#: common/models.py:969 part/models.py:909 +#: common/models.py:979 part/models.py:909 #: templates/js/translated/table_filters.js:476 msgid "Salable" msgstr "" -#: common/models.py:970 +#: common/models.py:980 msgid "Parts are salable by default" msgstr "" -#: common/models.py:976 part/models.py:899 +#: common/models.py:986 part/models.py:899 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:108 #: templates/js/translated/table_filters.js:488 msgid "Trackable" msgstr "" -#: common/models.py:977 +#: common/models.py:987 msgid "Parts are trackable by default" msgstr "" -#: common/models.py:983 part/models.py:919 +#: common/models.py:993 part/models.py:919 #: part/templates/part/part_base.html:151 #: templates/js/translated/table_filters.js:42 #: templates/js/translated/table_filters.js:492 msgid "Virtual" msgstr "" -#: common/models.py:984 +#: common/models.py:994 msgid "Parts are virtual by default" msgstr "" -#: common/models.py:990 +#: common/models.py:1000 msgid "Show Import in Views" msgstr "" -#: common/models.py:991 +#: common/models.py:1001 msgid "Display the import wizard in some part views" msgstr "" -#: common/models.py:997 +#: common/models.py:1007 msgid "Show Price in Forms" msgstr "" -#: common/models.py:998 +#: common/models.py:1008 msgid "Display part price in some forms" msgstr "" -#: common/models.py:1009 +#: common/models.py:1019 msgid "Show Price in BOM" msgstr "" -#: common/models.py:1010 +#: common/models.py:1020 msgid "Include pricing information in BOM tables" msgstr "" -#: common/models.py:1021 +#: common/models.py:1031 msgid "Show Price History" msgstr "" -#: common/models.py:1022 +#: common/models.py:1032 msgid "Display historical pricing for Part" msgstr "" -#: common/models.py:1028 +#: common/models.py:1038 msgid "Show related parts" msgstr "" -#: common/models.py:1029 +#: common/models.py:1039 msgid "Display related parts for a part" msgstr "" -#: common/models.py:1035 +#: common/models.py:1045 msgid "Create initial stock" msgstr "" -#: common/models.py:1036 +#: common/models.py:1046 msgid "Create initial stock on part creation" msgstr "" -#: common/models.py:1042 +#: common/models.py:1052 msgid "Internal Prices" msgstr "" -#: common/models.py:1043 +#: common/models.py:1053 msgid "Enable internal prices for parts" msgstr "" -#: common/models.py:1049 +#: common/models.py:1059 msgid "Internal Price as BOM-Price" msgstr "" -#: common/models.py:1050 +#: common/models.py:1060 msgid "Use the internal price (if set) in BOM-price calculations" msgstr "" -#: common/models.py:1056 +#: common/models.py:1066 msgid "Part Name Display Format" msgstr "" -#: common/models.py:1057 +#: common/models.py:1067 msgid "Format to display the part name" msgstr "" -#: common/models.py:1064 +#: common/models.py:1074 msgid "Enable label printing" msgstr "" -#: common/models.py:1065 +#: common/models.py:1075 msgid "Enable label printing from the web interface" msgstr "" -#: common/models.py:1071 +#: common/models.py:1081 msgid "Label Image DPI" msgstr "" -#: common/models.py:1072 +#: common/models.py:1082 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/models.py:1081 +#: common/models.py:1091 msgid "Enable Reports" msgstr "" -#: common/models.py:1082 +#: common/models.py:1092 msgid "Enable generation of reports" msgstr "" -#: common/models.py:1088 templates/stats.html:25 +#: common/models.py:1098 templates/stats.html:25 msgid "Debug Mode" msgstr "" -#: common/models.py:1089 +#: common/models.py:1099 msgid "Generate reports in debug mode (HTML output)" msgstr "" -#: common/models.py:1095 +#: common/models.py:1105 msgid "Page Size" msgstr "" -#: common/models.py:1096 +#: common/models.py:1106 msgid "Default page size for PDF reports" msgstr "" -#: common/models.py:1106 +#: common/models.py:1116 msgid "Enable Test Reports" msgstr "" -#: common/models.py:1107 +#: common/models.py:1117 msgid "Enable generation of test reports" msgstr "" -#: common/models.py:1113 +#: common/models.py:1123 msgid "Attach Test Reports" msgstr "" -#: common/models.py:1114 +#: common/models.py:1124 msgid "When printing a Test Report, attach a copy of the Test Report to the associated Stock Item" msgstr "" -#: common/models.py:1120 +#: common/models.py:1130 msgid "Batch Code Template" msgstr "" -#: common/models.py:1121 +#: common/models.py:1131 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/models.py:1126 +#: common/models.py:1136 msgid "Stock Expiry" msgstr "" -#: common/models.py:1127 +#: common/models.py:1137 msgid "Enable stock expiry functionality" msgstr "" -#: common/models.py:1133 +#: common/models.py:1143 msgid "Sell Expired Stock" msgstr "" -#: common/models.py:1134 +#: common/models.py:1144 msgid "Allow sale of expired stock" msgstr "" -#: common/models.py:1140 +#: common/models.py:1150 msgid "Stock Stale Time" msgstr "" -#: common/models.py:1141 +#: common/models.py:1151 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/models.py:1143 +#: common/models.py:1153 msgid "days" msgstr "" -#: common/models.py:1148 +#: common/models.py:1158 msgid "Build Expired Stock" msgstr "" -#: common/models.py:1149 +#: common/models.py:1159 msgid "Allow building with expired stock" msgstr "" -#: common/models.py:1155 +#: common/models.py:1165 msgid "Stock Ownership Control" msgstr "" -#: common/models.py:1156 +#: common/models.py:1166 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/models.py:1162 +#: common/models.py:1172 msgid "Build Order Reference Pattern" msgstr "" -#: common/models.py:1163 +#: common/models.py:1173 msgid "Required pattern for generating Build Order reference field" msgstr "" -#: common/models.py:1169 +#: common/models.py:1179 msgid "Sales Order Reference Pattern" msgstr "" -#: common/models.py:1170 +#: common/models.py:1180 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/models.py:1176 +#: common/models.py:1186 msgid "Sales Order Default Shipment" msgstr "" -#: common/models.py:1177 +#: common/models.py:1187 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/models.py:1183 +#: common/models.py:1193 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/models.py:1184 +#: common/models.py:1194 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/models.py:1191 +#: common/models.py:1201 msgid "Enable password forgot" msgstr "" -#: common/models.py:1192 +#: common/models.py:1202 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/models.py:1198 +#: common/models.py:1208 msgid "Enable registration" msgstr "" -#: common/models.py:1199 +#: common/models.py:1209 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/models.py:1205 +#: common/models.py:1215 msgid "Enable SSO" msgstr "" -#: common/models.py:1206 +#: common/models.py:1216 msgid "Enable SSO on the login pages" msgstr "" -#: common/models.py:1212 +#: common/models.py:1222 msgid "Email required" msgstr "" -#: common/models.py:1213 +#: common/models.py:1223 msgid "Require user to supply mail on signup" msgstr "" -#: common/models.py:1219 +#: common/models.py:1229 msgid "Auto-fill SSO users" msgstr "" -#: common/models.py:1220 +#: common/models.py:1230 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/models.py:1226 +#: common/models.py:1236 msgid "Mail twice" msgstr "" -#: common/models.py:1227 +#: common/models.py:1237 msgid "On signup ask users twice for their mail" msgstr "" -#: common/models.py:1233 +#: common/models.py:1243 msgid "Password twice" msgstr "" -#: common/models.py:1234 +#: common/models.py:1244 msgid "On signup ask users twice for their password" msgstr "" -#: common/models.py:1240 +#: common/models.py:1250 msgid "Group on signup" msgstr "" -#: common/models.py:1241 +#: common/models.py:1251 msgid "Group to which new users are assigned on registration" msgstr "" -#: common/models.py:1247 +#: common/models.py:1257 msgid "Enforce MFA" msgstr "" -#: common/models.py:1248 +#: common/models.py:1258 msgid "Users must use multifactor security." msgstr "" -#: common/models.py:1254 +#: common/models.py:1264 msgid "Check plugins on startup" msgstr "" -#: common/models.py:1255 +#: common/models.py:1265 msgid "Check that all plugins are installed on startup - enable in container enviroments" msgstr "" -#: common/models.py:1263 +#: common/models.py:1273 msgid "Enable URL integration" msgstr "" -#: common/models.py:1264 +#: common/models.py:1274 msgid "Enable plugins to add URL routes" msgstr "" -#: common/models.py:1271 +#: common/models.py:1281 msgid "Enable navigation integration" msgstr "" -#: common/models.py:1272 +#: common/models.py:1282 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/models.py:1279 +#: common/models.py:1289 msgid "Enable app integration" msgstr "" -#: common/models.py:1280 +#: common/models.py:1290 msgid "Enable plugins to add apps" msgstr "" -#: common/models.py:1287 +#: common/models.py:1297 msgid "Enable schedule integration" msgstr "" -#: common/models.py:1288 +#: common/models.py:1298 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/models.py:1295 +#: common/models.py:1305 msgid "Enable event integration" msgstr "" -#: common/models.py:1296 +#: common/models.py:1306 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:1313 common/models.py:1629 +#: common/models.py:1323 common/models.py:1639 msgid "Settings key (must be unique - case insensitive" msgstr "" -#: common/models.py:1335 +#: common/models.py:1345 msgid "Show subscribed parts" msgstr "" -#: common/models.py:1336 +#: common/models.py:1346 msgid "Show subscribed parts on the homepage" msgstr "" -#: common/models.py:1342 +#: common/models.py:1352 msgid "Show subscribed categories" msgstr "" -#: common/models.py:1343 +#: common/models.py:1353 msgid "Show subscribed part categories on the homepage" msgstr "" -#: common/models.py:1349 +#: common/models.py:1359 msgid "Show latest parts" msgstr "" -#: common/models.py:1350 +#: common/models.py:1360 msgid "Show latest parts on the homepage" msgstr "" -#: common/models.py:1356 +#: common/models.py:1366 msgid "Recent Part Count" msgstr "" -#: common/models.py:1357 +#: common/models.py:1367 msgid "Number of recent parts to display on index page" msgstr "" -#: common/models.py:1363 +#: common/models.py:1373 msgid "Show unvalidated BOMs" msgstr "" -#: common/models.py:1364 +#: common/models.py:1374 msgid "Show BOMs that await validation on the homepage" msgstr "" -#: common/models.py:1370 +#: common/models.py:1380 msgid "Show recent stock changes" msgstr "" -#: common/models.py:1371 +#: common/models.py:1381 msgid "Show recently changed stock items on the homepage" msgstr "" -#: common/models.py:1377 +#: common/models.py:1387 msgid "Recent Stock Count" msgstr "" -#: common/models.py:1378 +#: common/models.py:1388 msgid "Number of recent stock items to display on index page" msgstr "" -#: common/models.py:1384 +#: common/models.py:1394 msgid "Show low stock" msgstr "" -#: common/models.py:1385 +#: common/models.py:1395 msgid "Show low stock items on the homepage" msgstr "" -#: common/models.py:1391 +#: common/models.py:1401 msgid "Show depleted stock" msgstr "" -#: common/models.py:1392 +#: common/models.py:1402 msgid "Show depleted stock items on the homepage" msgstr "" -#: common/models.py:1398 +#: common/models.py:1408 msgid "Show needed stock" msgstr "" -#: common/models.py:1399 +#: common/models.py:1409 msgid "Show stock items needed for builds on the homepage" msgstr "" -#: common/models.py:1405 +#: common/models.py:1415 msgid "Show expired stock" msgstr "" -#: common/models.py:1406 +#: common/models.py:1416 msgid "Show expired stock items on the homepage" msgstr "" -#: common/models.py:1412 +#: common/models.py:1422 msgid "Show stale stock" msgstr "" -#: common/models.py:1413 +#: common/models.py:1423 msgid "Show stale stock items on the homepage" msgstr "" -#: common/models.py:1419 +#: common/models.py:1429 msgid "Show pending builds" msgstr "" -#: common/models.py:1420 +#: common/models.py:1430 msgid "Show pending builds on the homepage" msgstr "" -#: common/models.py:1426 +#: common/models.py:1436 msgid "Show overdue builds" msgstr "" -#: common/models.py:1427 +#: common/models.py:1437 msgid "Show overdue builds on the homepage" msgstr "" -#: common/models.py:1433 +#: common/models.py:1443 msgid "Show outstanding POs" msgstr "" -#: common/models.py:1434 +#: common/models.py:1444 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:1440 +#: common/models.py:1450 msgid "Show overdue POs" msgstr "" -#: common/models.py:1441 +#: common/models.py:1451 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:1447 +#: common/models.py:1457 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:1448 +#: common/models.py:1458 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:1454 +#: common/models.py:1464 msgid "Show overdue SOs" msgstr "" -#: common/models.py:1455 +#: common/models.py:1465 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:1461 +#: common/models.py:1471 msgid "Inline label display" msgstr "" -#: common/models.py:1462 +#: common/models.py:1472 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1468 +#: common/models.py:1478 msgid "Inline report display" msgstr "" -#: common/models.py:1469 +#: common/models.py:1479 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1475 +#: common/models.py:1485 msgid "Search Parts" msgstr "" -#: common/models.py:1476 +#: common/models.py:1486 msgid "Display parts in search preview window" msgstr "" -#: common/models.py:1482 +#: common/models.py:1492 msgid "Seach Supplier Parts" msgstr "" -#: common/models.py:1483 +#: common/models.py:1493 msgid "Display supplier parts in search preview window" msgstr "" -#: common/models.py:1489 +#: common/models.py:1499 msgid "Search Manufacturer Parts" msgstr "" -#: common/models.py:1490 +#: common/models.py:1500 msgid "Display manufacturer parts in search preview window" msgstr "" -#: common/models.py:1496 +#: common/models.py:1506 msgid "Hide Inactive Parts" msgstr "" -#: common/models.py:1497 +#: common/models.py:1507 msgid "Excluded inactive parts from search preview window" msgstr "" -#: common/models.py:1503 +#: common/models.py:1513 msgid "Search Categories" msgstr "" -#: common/models.py:1504 +#: common/models.py:1514 msgid "Display part categories in search preview window" msgstr "" -#: common/models.py:1510 +#: common/models.py:1520 msgid "Search Stock" msgstr "" -#: common/models.py:1511 +#: common/models.py:1521 msgid "Display stock items in search preview window" msgstr "" -#: common/models.py:1517 +#: common/models.py:1527 msgid "Hide Unavailable Stock Items" msgstr "" -#: common/models.py:1518 +#: common/models.py:1528 msgid "Exclude stock items which are not available from the search preview window" msgstr "" -#: common/models.py:1524 +#: common/models.py:1534 msgid "Search Locations" msgstr "" -#: common/models.py:1525 +#: common/models.py:1535 msgid "Display stock locations in search preview window" msgstr "" -#: common/models.py:1531 +#: common/models.py:1541 msgid "Search Companies" msgstr "" -#: common/models.py:1532 +#: common/models.py:1542 msgid "Display companies in search preview window" msgstr "" -#: common/models.py:1538 +#: common/models.py:1548 msgid "Search Purchase Orders" msgstr "" -#: common/models.py:1539 +#: common/models.py:1549 msgid "Display purchase orders in search preview window" msgstr "" -#: common/models.py:1545 +#: common/models.py:1555 msgid "Exclude Inactive Purchase Orders" msgstr "" -#: common/models.py:1546 +#: common/models.py:1556 msgid "Exclude inactive purchase orders from search preview window" msgstr "" -#: common/models.py:1552 +#: common/models.py:1562 msgid "Search Sales Orders" msgstr "" -#: common/models.py:1553 +#: common/models.py:1563 msgid "Display sales orders in search preview window" msgstr "" -#: common/models.py:1559 +#: common/models.py:1569 msgid "Exclude Inactive Sales Orders" msgstr "" -#: common/models.py:1560 +#: common/models.py:1570 msgid "Exclude inactive sales orders from search preview window" msgstr "" -#: common/models.py:1566 +#: common/models.py:1576 msgid "Search Preview Results" msgstr "" -#: common/models.py:1567 +#: common/models.py:1577 msgid "Number of results to show in each section of the search preview window" msgstr "" -#: common/models.py:1573 +#: common/models.py:1583 msgid "Show Quantity in Forms" msgstr "" -#: common/models.py:1574 +#: common/models.py:1584 msgid "Display available part quantity in some forms" msgstr "" -#: common/models.py:1580 +#: common/models.py:1590 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:1581 +#: common/models.py:1591 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:1587 +#: common/models.py:1597 msgid "Fixed Navbar" msgstr "" -#: common/models.py:1588 +#: common/models.py:1598 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:1594 +#: common/models.py:1604 msgid "Date Format" msgstr "" -#: common/models.py:1595 +#: common/models.py:1605 msgid "Preferred format for displaying dates" msgstr "" -#: common/models.py:1609 part/templates/part/detail.html:41 +#: common/models.py:1619 part/templates/part/detail.html:41 msgid "Part Scheduling" msgstr "" -#: common/models.py:1610 +#: common/models.py:1620 msgid "Display part scheduling information" msgstr "" -#: common/models.py:1669 +#: common/models.py:1679 msgid "Price break quantity" msgstr "" -#: common/models.py:1676 company/serializers.py:366 +#: common/models.py:1686 company/serializers.py:366 #: company/templates/company/supplier_part.html:284 order/models.py:938 -#: templates/js/translated/part.js:1065 templates/js/translated/part.js:2096 +#: templates/js/translated/part.js:1065 templates/js/translated/part.js:2152 msgid "Price" msgstr "" -#: common/models.py:1677 +#: common/models.py:1687 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:1837 common/models.py:2015 +#: common/models.py:1847 common/models.py:2025 msgid "Endpoint" msgstr "" -#: common/models.py:1838 +#: common/models.py:1848 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:1847 +#: common/models.py:1857 msgid "Name for this webhook" msgstr "" -#: common/models.py:1852 part/models.py:914 plugin/models.py:99 +#: common/models.py:1862 part/models.py:914 plugin/models.py:99 #: templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:104 #: templates/js/translated/table_filters.js:316 @@ -2581,67 +2589,67 @@ msgstr "" msgid "Active" msgstr "" -#: common/models.py:1853 +#: common/models.py:1863 msgid "Is this webhook active" msgstr "" -#: common/models.py:1867 +#: common/models.py:1877 msgid "Token" msgstr "" -#: common/models.py:1868 +#: common/models.py:1878 msgid "Token for access" msgstr "" -#: common/models.py:1875 +#: common/models.py:1885 msgid "Secret" msgstr "" -#: common/models.py:1876 +#: common/models.py:1886 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:1982 +#: common/models.py:1992 msgid "Message ID" msgstr "" -#: common/models.py:1983 +#: common/models.py:1993 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:1991 +#: common/models.py:2001 msgid "Host" msgstr "" -#: common/models.py:1992 +#: common/models.py:2002 msgid "Host from which this message was received" msgstr "" -#: common/models.py:1999 +#: common/models.py:2009 msgid "Header" msgstr "" -#: common/models.py:2000 +#: common/models.py:2010 msgid "Header of this message" msgstr "" -#: common/models.py:2006 +#: common/models.py:2016 msgid "Body" msgstr "" -#: common/models.py:2007 +#: common/models.py:2017 msgid "Body of this message" msgstr "" -#: common/models.py:2016 +#: common/models.py:2026 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2021 +#: common/models.py:2031 msgid "Worked on" msgstr "" -#: common/models.py:2022 +#: common/models.py:2032 msgid "Was the work on this message finished?" msgstr "" @@ -3032,7 +3040,7 @@ msgstr "" #: stock/templates/stock/item_base.html:401 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:393 templates/js/translated/order.js:2513 -#: templates/js/translated/stock.js:2491 +#: templates/js/translated/stock.js:2550 #: templates/js/translated/table_filters.js:427 msgid "Customer" msgstr "" @@ -3320,7 +3328,7 @@ msgstr "" #: company/templates/company/supplier_part.html:212 #: company/templates/company/supplier_part.html:326 -#: part/templates/part/prices.html:276 templates/js/translated/part.js:2168 +#: part/templates/part/prices.html:276 templates/js/translated/part.js:2224 msgid "Add Price Break" msgstr "" @@ -3329,12 +3337,12 @@ msgid "No price break information found" msgstr "" #: company/templates/company/supplier_part.html:252 -#: templates/js/translated/part.js:2178 +#: templates/js/translated/part.js:2234 msgid "Delete Price Break" msgstr "" #: company/templates/company/supplier_part.html:266 -#: templates/js/translated/part.js:2192 +#: templates/js/translated/part.js:2248 msgid "Edit Price Break" msgstr "" @@ -3389,7 +3397,7 @@ msgstr "" #: stock/templates/stock/location.html:173 #: stock/templates/stock/location_sidebar.html:7 #: templates/InvenTree/search.html:153 templates/js/translated/search.js:223 -#: templates/js/translated/stock.js:2368 users/models.py:40 +#: templates/js/translated/stock.js:2427 users/models.py:40 msgid "Stock Items" msgstr "" @@ -3647,7 +3655,7 @@ msgstr "" #: templates/email/overdue_purchase_order.html:15 #: templates/js/translated/order.js:936 templates/js/translated/order.js:1691 #: templates/js/translated/part.js:968 templates/js/translated/stock.js:1909 -#: templates/js/translated/stock.js:2472 +#: templates/js/translated/stock.js:2531 msgid "Purchase Order" msgstr "" @@ -4207,47 +4215,47 @@ msgstr "" msgid "Updated {part} unit-price to {price} and quantity to {qty}" msgstr "" -#: part/api.py:505 +#: part/api.py:514 msgid "Incoming Purchase Order" msgstr "" -#: part/api.py:525 +#: part/api.py:534 msgid "Outgoing Sales Order" msgstr "" -#: part/api.py:543 +#: part/api.py:552 msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:575 +#: part/api.py:584 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:695 +#: part/api.py:704 msgid "Valid" msgstr "" -#: part/api.py:696 +#: part/api.py:705 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:702 +#: part/api.py:711 msgid "This option must be selected" msgstr "" -#: part/api.py:1125 +#: part/api.py:1134 msgid "Must be greater than zero" msgstr "" -#: part/api.py:1129 +#: part/api.py:1138 msgid "Must be a valid quantity" msgstr "" -#: part/api.py:1144 +#: part/api.py:1153 msgid "Specify location for initial part stock" msgstr "" -#: part/api.py:1175 part/api.py:1179 part/api.py:1194 part/api.py:1198 +#: part/api.py:1184 part/api.py:1188 part/api.py:1203 part/api.py:1207 msgid "This field is required" msgstr "" @@ -4306,7 +4314,7 @@ msgstr "" #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82 #: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:1890 templates/js/translated/search.js:144 +#: templates/js/translated/part.js:1946 templates/js/translated/search.js:144 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "" @@ -4496,7 +4504,7 @@ msgstr "" msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:2295 templates/js/translated/part.js:1941 +#: part/models.py:2295 templates/js/translated/part.js:1997 #: templates/js/translated/stock.js:1336 msgid "Test Name" msgstr "" @@ -4513,7 +4521,7 @@ msgstr "" msgid "Enter description for this test" msgstr "" -#: part/models.py:2307 templates/js/translated/part.js:1950 +#: part/models.py:2307 templates/js/translated/part.js:2006 #: templates/js/translated/table_filters.js:302 msgid "Required" msgstr "" @@ -4522,7 +4530,7 @@ msgstr "" msgid "Is this test required to pass?" msgstr "" -#: part/models.py:2313 templates/js/translated/part.js:1958 +#: part/models.py:2313 templates/js/translated/part.js:2014 msgid "Requires Value" msgstr "" @@ -4530,7 +4538,7 @@ msgstr "" msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:2319 templates/js/translated/part.js:1965 +#: part/models.py:2319 templates/js/translated/part.js:2021 msgid "Requires Attachment" msgstr "" @@ -5868,7 +5876,7 @@ msgstr "" #: report/templates/report/inventree_test_report_base.html:97 #: templates/InvenTree/settings/plugin.html:51 #: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2400 +#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2459 msgid "Date" msgstr "" @@ -5887,19 +5895,19 @@ msgstr "" #: report/templates/report/inventree_test_report_base.html:137 #: templates/js/translated/stock.js:606 templates/js/translated/stock.js:776 -#: templates/js/translated/stock.js:2649 +#: templates/js/translated/stock.js:2708 msgid "Serial" msgstr "" -#: stock/api.py:521 +#: stock/api.py:529 msgid "Quantity is required" msgstr "" -#: stock/api.py:528 +#: stock/api.py:536 msgid "Valid part must be supplied" msgstr "" -#: stock/api.py:553 +#: stock/api.py:561 msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" @@ -6303,7 +6311,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2793 +#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2852 msgid "Install Stock Item" msgstr "" @@ -8309,8 +8317,8 @@ msgid "No builds matching query" msgstr "" #: templates/js/translated/build.js:2449 templates/js/translated/part.js:1383 -#: templates/js/translated/part.js:1851 templates/js/translated/stock.js:1682 -#: templates/js/translated/stock.js:2338 +#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1682 +#: templates/js/translated/stock.js:2382 msgid "Select" msgstr "" @@ -8322,7 +8330,7 @@ msgstr "" msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2579 +#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2638 msgid "No user information" msgstr "" @@ -8916,7 +8924,7 @@ msgstr "" #: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203 #: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050 -#: templates/js/translated/part.js:2070 templates/js/translated/part.js:2423 +#: templates/js/translated/part.js:2126 templates/js/translated/part.js:2479 msgid "Unit Price" msgstr "" @@ -9316,8 +9324,8 @@ msgstr "" msgid "No category" msgstr "" -#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1786 -#: templates/js/translated/stock.js:2299 +#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816 +#: templates/js/translated/stock.js:2343 msgid "Display as list" msgstr "" @@ -9341,71 +9349,75 @@ msgstr "" msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1805 templates/js/translated/stock.js:2318 +#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2362 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:1869 +#: templates/js/translated/part.js:1914 +msgid "Load Subcategories" +msgstr "" + +#: templates/js/translated/part.js:1925 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:1927 +#: templates/js/translated/part.js:1983 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:1978 templates/js/translated/stock.js:1295 +#: templates/js/translated/part.js:2034 templates/js/translated/stock.js:1295 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:1979 templates/js/translated/stock.js:1296 +#: templates/js/translated/part.js:2035 templates/js/translated/stock.js:1296 #: templates/js/translated/stock.js:1556 msgid "Delete test result" msgstr "" -#: templates/js/translated/part.js:1985 +#: templates/js/translated/part.js:2041 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2007 +#: templates/js/translated/part.js:2063 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2021 +#: templates/js/translated/part.js:2077 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2046 +#: templates/js/translated/part.js:2102 #, python-brace-format msgid "No ${human_name} information found" msgstr "" -#: templates/js/translated/part.js:2103 +#: templates/js/translated/part.js:2159 #, python-brace-format msgid "Edit ${human_name}" msgstr "" -#: templates/js/translated/part.js:2104 +#: templates/js/translated/part.js:2160 #, python-brace-format msgid "Delete ${human_name}" msgstr "" -#: templates/js/translated/part.js:2218 +#: templates/js/translated/part.js:2274 msgid "Current Stock" msgstr "" -#: templates/js/translated/part.js:2251 +#: templates/js/translated/part.js:2307 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2277 +#: templates/js/translated/part.js:2333 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2347 +#: templates/js/translated/part.js:2403 msgid "Single Price" msgstr "" -#: templates/js/translated/part.js:2366 +#: templates/js/translated/part.js:2422 msgid "Single Price Difference" msgstr "" @@ -9796,75 +9808,79 @@ msgstr "" msgid "Status code must be selected" msgstr "" -#: templates/js/translated/stock.js:2425 +#: templates/js/translated/stock.js:2400 +msgid "Load Subloactions" +msgstr "" + +#: templates/js/translated/stock.js:2484 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2441 +#: templates/js/translated/stock.js:2500 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2463 +#: templates/js/translated/stock.js:2522 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2482 +#: templates/js/translated/stock.js:2541 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2501 +#: templates/js/translated/stock.js:2560 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2519 +#: templates/js/translated/stock.js:2578 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:2542 +#: templates/js/translated/stock.js:2601 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:2550 +#: templates/js/translated/stock.js:2609 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:2626 +#: templates/js/translated/stock.js:2685 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:2677 templates/js/translated/stock.js:2713 +#: templates/js/translated/stock.js:2736 templates/js/translated/stock.js:2772 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:2726 +#: templates/js/translated/stock.js:2785 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:2747 +#: templates/js/translated/stock.js:2806 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:2748 +#: templates/js/translated/stock.js:2807 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:2750 +#: templates/js/translated/stock.js:2809 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:2751 +#: templates/js/translated/stock.js:2810 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:2752 +#: templates/js/translated/stock.js:2811 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:2753 +#: templates/js/translated/stock.js:2812 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:2766 +#: templates/js/translated/stock.js:2825 msgid "Select part to install" msgstr "" diff --git a/InvenTree/locale/ru/LC_MESSAGES/django.po b/InvenTree/locale/ru/LC_MESSAGES/django.po index afdb862698..895aec9754 100644 --- a/InvenTree/locale/ru/LC_MESSAGES/django.po +++ b/InvenTree/locale/ru/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-04 22:08+0000\n" -"PO-Revision-Date: 2022-08-05 01:02\n" +"POT-Creation-Date: 2022-08-07 21:57+0000\n" +"PO-Revision-Date: 2022-08-08 13:03\n" "Last-Translator: \n" "Language-Team: Russian\n" "Language: ru_RU\n" @@ -17,7 +17,7 @@ msgstr "" "X-Crowdin-File: /[inventree.InvenTree] l10/InvenTree/locale/en/LC_MESSAGES/django.po\n" "X-Crowdin-File-ID: 154\n" -#: InvenTree/api.py:52 +#: InvenTree/api.py:54 msgid "API endpoint not found" msgstr "Конечная точка API не обнаружена" @@ -25,11 +25,11 @@ msgstr "Конечная точка API не обнаружена" msgid "Error details can be found in the admin panel" msgstr "Подробности об ошибке можно найти в панели администратора" -#: InvenTree/fields.py:108 +#: InvenTree/fields.py:109 msgid "Enter date" msgstr "Введите дату" -#: InvenTree/fields.py:185 build/serializers.py:384 +#: InvenTree/fields.py:186 build/serializers.py:384 #: build/templates/build/sidebar.html:21 company/models.py:523 #: company/templates/company/sidebar.html:25 order/models.py:906 #: order/templates/order/po_sidebar.html:11 @@ -89,76 +89,76 @@ msgstr "Подтверждение адреса электронной почт msgid "You must type the same email each time." msgstr "Вы должны вводить один и тот же адрес электронной почты." -#: InvenTree/helpers.py:172 +#: InvenTree/helpers.py:173 msgid "Connection error" msgstr "" -#: InvenTree/helpers.py:176 InvenTree/helpers.py:181 +#: InvenTree/helpers.py:177 InvenTree/helpers.py:182 msgid "Server responded with invalid status code" msgstr "" -#: InvenTree/helpers.py:178 +#: InvenTree/helpers.py:179 msgid "Exception occurred" msgstr "" -#: InvenTree/helpers.py:186 +#: InvenTree/helpers.py:187 msgid "Server responded with invalid Content-Length value" msgstr "" -#: InvenTree/helpers.py:189 +#: InvenTree/helpers.py:190 msgid "Image size is too large" msgstr "Изображение слишком большое" -#: InvenTree/helpers.py:201 +#: InvenTree/helpers.py:202 msgid "Image download exceeded maximum size" msgstr "" -#: InvenTree/helpers.py:206 +#: InvenTree/helpers.py:207 msgid "Remote server returned empty response" msgstr "" -#: InvenTree/helpers.py:214 +#: InvenTree/helpers.py:215 msgid "Supplied URL is not a valid image file" msgstr "" -#: InvenTree/helpers.py:573 +#: InvenTree/helpers.py:584 #, python-brace-format msgid "Duplicate serial: {sn}" msgstr "Повторяющийся серийный номер: {sn}" -#: InvenTree/helpers.py:580 order/models.py:320 order/models.py:472 +#: InvenTree/helpers.py:591 order/models.py:320 order/models.py:472 msgid "Invalid quantity provided" msgstr "недопустимое количество" -#: InvenTree/helpers.py:583 +#: InvenTree/helpers.py:594 msgid "Empty serial number string" msgstr "Пустая строка серийного номера" -#: InvenTree/helpers.py:615 +#: InvenTree/helpers.py:626 #, python-brace-format msgid "Invalid group range: {g}" msgstr "" -#: InvenTree/helpers.py:618 +#: InvenTree/helpers.py:629 #, python-brace-format msgid "Invalid group: {g}" msgstr "Некорректный идентификатор группы {g}" -#: InvenTree/helpers.py:646 +#: InvenTree/helpers.py:657 #, python-brace-format msgid "Invalid group sequence: {g}" msgstr "" -#: InvenTree/helpers.py:654 +#: InvenTree/helpers.py:665 #, python-brace-format msgid "Invalid/no group {group}" msgstr "Недопустимая/несуществующая группа {group}" -#: InvenTree/helpers.py:660 +#: InvenTree/helpers.py:671 msgid "No serial numbers found" msgstr "Серийных номеров не найдено" -#: InvenTree/helpers.py:664 +#: InvenTree/helpers.py:675 #, python-brace-format msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "" @@ -398,99 +398,99 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/settings.py:607 +#: InvenTree/settings.py:609 msgid "Czech" msgstr "" -#: InvenTree/settings.py:608 +#: InvenTree/settings.py:610 msgid "German" msgstr "Немецкий" -#: InvenTree/settings.py:609 +#: InvenTree/settings.py:611 msgid "Greek" msgstr "Греческий" -#: InvenTree/settings.py:610 +#: InvenTree/settings.py:612 msgid "English" msgstr "Английский" -#: InvenTree/settings.py:611 +#: InvenTree/settings.py:613 msgid "Spanish" msgstr "Испанский" -#: InvenTree/settings.py:612 +#: InvenTree/settings.py:614 msgid "Spanish (Mexican)" msgstr "Испанский (Мексика)" -#: InvenTree/settings.py:613 +#: InvenTree/settings.py:615 msgid "Farsi / Persian" msgstr "" -#: InvenTree/settings.py:614 +#: InvenTree/settings.py:616 msgid "French" msgstr "Французский" -#: InvenTree/settings.py:615 +#: InvenTree/settings.py:617 msgid "Hebrew" msgstr "Иврит" -#: InvenTree/settings.py:616 +#: InvenTree/settings.py:618 msgid "Hungarian" msgstr "Венгерский" -#: InvenTree/settings.py:617 +#: InvenTree/settings.py:619 msgid "Italian" msgstr "Итальянский" -#: InvenTree/settings.py:618 +#: InvenTree/settings.py:620 msgid "Japanese" msgstr "Японский" -#: InvenTree/settings.py:619 +#: InvenTree/settings.py:621 msgid "Korean" msgstr "Корейский" -#: InvenTree/settings.py:620 +#: InvenTree/settings.py:622 msgid "Dutch" msgstr "Голландский" -#: InvenTree/settings.py:621 +#: InvenTree/settings.py:623 msgid "Norwegian" msgstr "Норвежский" -#: InvenTree/settings.py:622 +#: InvenTree/settings.py:624 msgid "Polish" msgstr "Польский" -#: InvenTree/settings.py:623 +#: InvenTree/settings.py:625 msgid "Portuguese" msgstr "" -#: InvenTree/settings.py:624 +#: InvenTree/settings.py:626 msgid "Portuguese (Brazilian)" msgstr "" -#: InvenTree/settings.py:625 +#: InvenTree/settings.py:627 msgid "Russian" msgstr "Русский" -#: InvenTree/settings.py:626 +#: InvenTree/settings.py:628 msgid "Swedish" msgstr "Шведский" -#: InvenTree/settings.py:627 +#: InvenTree/settings.py:629 msgid "Thai" msgstr "Тайский" -#: InvenTree/settings.py:628 +#: InvenTree/settings.py:630 msgid "Turkish" msgstr "Турецкий" -#: InvenTree/settings.py:629 +#: InvenTree/settings.py:631 msgid "Vietnamese" msgstr "Вьетнамский" -#: InvenTree/settings.py:630 +#: InvenTree/settings.py:632 msgid "Chinese" msgstr "Китайский" @@ -5516,11 +5516,11 @@ msgstr "Создать новую разновидность детали" msgid "Create a new variant of template '%(full_name)s'." msgstr "Создать новую разновидность из шаблона '%(full_name)s'." -#: part/templatetags/inventree_extras.py:157 +#: part/templatetags/inventree_extras.py:177 msgid "Unknown database" msgstr "Неизвестная база данных" -#: part/templatetags/inventree_extras.py:202 +#: part/templatetags/inventree_extras.py:222 #, python-brace-format msgid "{title} v{version}" msgstr "" diff --git a/InvenTree/locale/sv/LC_MESSAGES/django.po b/InvenTree/locale/sv/LC_MESSAGES/django.po index 979cdaaa12..7b49ae95e6 100644 --- a/InvenTree/locale/sv/LC_MESSAGES/django.po +++ b/InvenTree/locale/sv/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-04 22:08+0000\n" -"PO-Revision-Date: 2022-08-05 01:02\n" +"POT-Creation-Date: 2022-08-07 21:57+0000\n" +"PO-Revision-Date: 2022-08-08 13:03\n" "Last-Translator: \n" "Language-Team: Swedish\n" "Language: sv_SE\n" @@ -17,7 +17,7 @@ msgstr "" "X-Crowdin-File: /[inventree.InvenTree] l10/InvenTree/locale/en/LC_MESSAGES/django.po\n" "X-Crowdin-File-ID: 154\n" -#: InvenTree/api.py:52 +#: InvenTree/api.py:54 msgid "API endpoint not found" msgstr "API-slutpunkt hittades inte" @@ -25,11 +25,11 @@ msgstr "API-slutpunkt hittades inte" msgid "Error details can be found in the admin panel" msgstr "Information om felet finns under Error i adminpanelen" -#: InvenTree/fields.py:108 +#: InvenTree/fields.py:109 msgid "Enter date" msgstr "Ange datum" -#: InvenTree/fields.py:185 build/serializers.py:384 +#: InvenTree/fields.py:186 build/serializers.py:384 #: build/templates/build/sidebar.html:21 company/models.py:523 #: company/templates/company/sidebar.html:25 order/models.py:906 #: order/templates/order/po_sidebar.html:11 @@ -89,76 +89,76 @@ msgstr "Bekräfta e-postadress" msgid "You must type the same email each time." msgstr "Du måste ange samma e-post varje gång." -#: InvenTree/helpers.py:172 +#: InvenTree/helpers.py:173 msgid "Connection error" msgstr "" -#: InvenTree/helpers.py:176 InvenTree/helpers.py:181 +#: InvenTree/helpers.py:177 InvenTree/helpers.py:182 msgid "Server responded with invalid status code" msgstr "" -#: InvenTree/helpers.py:178 +#: InvenTree/helpers.py:179 msgid "Exception occurred" msgstr "" -#: InvenTree/helpers.py:186 +#: InvenTree/helpers.py:187 msgid "Server responded with invalid Content-Length value" msgstr "" -#: InvenTree/helpers.py:189 +#: InvenTree/helpers.py:190 msgid "Image size is too large" msgstr "" -#: InvenTree/helpers.py:201 +#: InvenTree/helpers.py:202 msgid "Image download exceeded maximum size" msgstr "" -#: InvenTree/helpers.py:206 +#: InvenTree/helpers.py:207 msgid "Remote server returned empty response" msgstr "" -#: InvenTree/helpers.py:214 +#: InvenTree/helpers.py:215 msgid "Supplied URL is not a valid image file" msgstr "" -#: InvenTree/helpers.py:573 +#: InvenTree/helpers.py:584 #, python-brace-format msgid "Duplicate serial: {sn}" msgstr "Serienummret finns redan: {sn}" -#: InvenTree/helpers.py:580 order/models.py:320 order/models.py:472 +#: InvenTree/helpers.py:591 order/models.py:320 order/models.py:472 msgid "Invalid quantity provided" msgstr "Ogiltigt antal angivet" -#: InvenTree/helpers.py:583 +#: InvenTree/helpers.py:594 msgid "Empty serial number string" msgstr "Tom serienummersträng" -#: InvenTree/helpers.py:615 +#: InvenTree/helpers.py:626 #, python-brace-format msgid "Invalid group range: {g}" msgstr "Ogiltigt gruppområde: {g}" -#: InvenTree/helpers.py:618 +#: InvenTree/helpers.py:629 #, python-brace-format msgid "Invalid group: {g}" msgstr "Ogiltig grupp: {g}" -#: InvenTree/helpers.py:646 +#: InvenTree/helpers.py:657 #, python-brace-format msgid "Invalid group sequence: {g}" msgstr "Ogiltig gruppsekvens: {g}" -#: InvenTree/helpers.py:654 +#: InvenTree/helpers.py:665 #, python-brace-format msgid "Invalid/no group {group}" msgstr "" -#: InvenTree/helpers.py:660 +#: InvenTree/helpers.py:671 msgid "No serial numbers found" msgstr "Inga serienummer hittades" -#: InvenTree/helpers.py:664 +#: InvenTree/helpers.py:675 #, python-brace-format msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "" @@ -398,99 +398,99 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/settings.py:607 +#: InvenTree/settings.py:609 msgid "Czech" msgstr "Tjeckiska" -#: InvenTree/settings.py:608 +#: InvenTree/settings.py:610 msgid "German" msgstr "Tyska" -#: InvenTree/settings.py:609 +#: InvenTree/settings.py:611 msgid "Greek" msgstr "Grekiska" -#: InvenTree/settings.py:610 +#: InvenTree/settings.py:612 msgid "English" msgstr "Engelska" -#: InvenTree/settings.py:611 +#: InvenTree/settings.py:613 msgid "Spanish" msgstr "Spanska" -#: InvenTree/settings.py:612 +#: InvenTree/settings.py:614 msgid "Spanish (Mexican)" msgstr "Spanska (Mexikanska)" -#: InvenTree/settings.py:613 +#: InvenTree/settings.py:615 msgid "Farsi / Persian" msgstr "Farsi / Persiska" -#: InvenTree/settings.py:614 +#: InvenTree/settings.py:616 msgid "French" msgstr "Franska" -#: InvenTree/settings.py:615 +#: InvenTree/settings.py:617 msgid "Hebrew" msgstr "Hebreiska" -#: InvenTree/settings.py:616 +#: InvenTree/settings.py:618 msgid "Hungarian" msgstr "Ungerska" -#: InvenTree/settings.py:617 +#: InvenTree/settings.py:619 msgid "Italian" msgstr "Italienska" -#: InvenTree/settings.py:618 +#: InvenTree/settings.py:620 msgid "Japanese" msgstr "Japanska" -#: InvenTree/settings.py:619 +#: InvenTree/settings.py:621 msgid "Korean" msgstr "Koreanska" -#: InvenTree/settings.py:620 +#: InvenTree/settings.py:622 msgid "Dutch" msgstr "Nederländska" -#: InvenTree/settings.py:621 +#: InvenTree/settings.py:623 msgid "Norwegian" msgstr "Norska" -#: InvenTree/settings.py:622 +#: InvenTree/settings.py:624 msgid "Polish" msgstr "Polska" -#: InvenTree/settings.py:623 +#: InvenTree/settings.py:625 msgid "Portuguese" msgstr "Portugisiska" -#: InvenTree/settings.py:624 +#: InvenTree/settings.py:626 msgid "Portuguese (Brazilian)" msgstr "Portugisiska (brasiliansk)" -#: InvenTree/settings.py:625 +#: InvenTree/settings.py:627 msgid "Russian" msgstr "Ryska" -#: InvenTree/settings.py:626 +#: InvenTree/settings.py:628 msgid "Swedish" msgstr "Svenska" -#: InvenTree/settings.py:627 +#: InvenTree/settings.py:629 msgid "Thai" msgstr "Thailändska" -#: InvenTree/settings.py:628 +#: InvenTree/settings.py:630 msgid "Turkish" msgstr "Turkiska" -#: InvenTree/settings.py:629 +#: InvenTree/settings.py:631 msgid "Vietnamese" msgstr "Vietnamesiska" -#: InvenTree/settings.py:630 +#: InvenTree/settings.py:632 msgid "Chinese" msgstr "Kinesiska" @@ -5516,11 +5516,11 @@ msgstr "" msgid "Create a new variant of template '%(full_name)s'." msgstr "" -#: part/templatetags/inventree_extras.py:157 +#: part/templatetags/inventree_extras.py:177 msgid "Unknown database" msgstr "" -#: part/templatetags/inventree_extras.py:202 +#: part/templatetags/inventree_extras.py:222 #, python-brace-format msgid "{title} v{version}" msgstr "" diff --git a/InvenTree/locale/th/LC_MESSAGES/django.po b/InvenTree/locale/th/LC_MESSAGES/django.po index 7e92bac3e4..1933f91ed8 100644 --- a/InvenTree/locale/th/LC_MESSAGES/django.po +++ b/InvenTree/locale/th/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-04 22:08+0000\n" -"PO-Revision-Date: 2022-08-05 01:02\n" +"POT-Creation-Date: 2022-08-07 21:57+0000\n" +"PO-Revision-Date: 2022-08-08 13:04\n" "Last-Translator: \n" "Language-Team: Thai\n" "Language: th_TH\n" @@ -17,7 +17,7 @@ msgstr "" "X-Crowdin-File: /[inventree.InvenTree] l10/InvenTree/locale/en/LC_MESSAGES/django.po\n" "X-Crowdin-File-ID: 154\n" -#: InvenTree/api.py:52 +#: InvenTree/api.py:54 msgid "API endpoint not found" msgstr "" @@ -25,11 +25,11 @@ msgstr "" msgid "Error details can be found in the admin panel" msgstr "" -#: InvenTree/fields.py:108 +#: InvenTree/fields.py:109 msgid "Enter date" msgstr "" -#: InvenTree/fields.py:185 build/serializers.py:384 +#: InvenTree/fields.py:186 build/serializers.py:384 #: build/templates/build/sidebar.html:21 company/models.py:523 #: company/templates/company/sidebar.html:25 order/models.py:906 #: order/templates/order/po_sidebar.html:11 @@ -89,76 +89,76 @@ msgstr "" msgid "You must type the same email each time." msgstr "" -#: InvenTree/helpers.py:172 +#: InvenTree/helpers.py:173 msgid "Connection error" msgstr "" -#: InvenTree/helpers.py:176 InvenTree/helpers.py:181 +#: InvenTree/helpers.py:177 InvenTree/helpers.py:182 msgid "Server responded with invalid status code" msgstr "" -#: InvenTree/helpers.py:178 +#: InvenTree/helpers.py:179 msgid "Exception occurred" msgstr "" -#: InvenTree/helpers.py:186 +#: InvenTree/helpers.py:187 msgid "Server responded with invalid Content-Length value" msgstr "" -#: InvenTree/helpers.py:189 +#: InvenTree/helpers.py:190 msgid "Image size is too large" msgstr "" -#: InvenTree/helpers.py:201 +#: InvenTree/helpers.py:202 msgid "Image download exceeded maximum size" msgstr "" -#: InvenTree/helpers.py:206 +#: InvenTree/helpers.py:207 msgid "Remote server returned empty response" msgstr "" -#: InvenTree/helpers.py:214 +#: InvenTree/helpers.py:215 msgid "Supplied URL is not a valid image file" msgstr "" -#: InvenTree/helpers.py:573 +#: InvenTree/helpers.py:584 #, python-brace-format msgid "Duplicate serial: {sn}" msgstr "" -#: InvenTree/helpers.py:580 order/models.py:320 order/models.py:472 +#: InvenTree/helpers.py:591 order/models.py:320 order/models.py:472 msgid "Invalid quantity provided" msgstr "" -#: InvenTree/helpers.py:583 +#: InvenTree/helpers.py:594 msgid "Empty serial number string" msgstr "" -#: InvenTree/helpers.py:615 +#: InvenTree/helpers.py:626 #, python-brace-format msgid "Invalid group range: {g}" msgstr "" -#: InvenTree/helpers.py:618 +#: InvenTree/helpers.py:629 #, python-brace-format msgid "Invalid group: {g}" msgstr "" -#: InvenTree/helpers.py:646 +#: InvenTree/helpers.py:657 #, python-brace-format msgid "Invalid group sequence: {g}" msgstr "" -#: InvenTree/helpers.py:654 +#: InvenTree/helpers.py:665 #, python-brace-format msgid "Invalid/no group {group}" msgstr "" -#: InvenTree/helpers.py:660 +#: InvenTree/helpers.py:671 msgid "No serial numbers found" msgstr "" -#: InvenTree/helpers.py:664 +#: InvenTree/helpers.py:675 #, python-brace-format msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "" @@ -398,99 +398,99 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/settings.py:607 +#: InvenTree/settings.py:609 msgid "Czech" msgstr "" -#: InvenTree/settings.py:608 +#: InvenTree/settings.py:610 msgid "German" msgstr "" -#: InvenTree/settings.py:609 +#: InvenTree/settings.py:611 msgid "Greek" msgstr "" -#: InvenTree/settings.py:610 +#: InvenTree/settings.py:612 msgid "English" msgstr "" -#: InvenTree/settings.py:611 +#: InvenTree/settings.py:613 msgid "Spanish" msgstr "" -#: InvenTree/settings.py:612 +#: InvenTree/settings.py:614 msgid "Spanish (Mexican)" msgstr "" -#: InvenTree/settings.py:613 +#: InvenTree/settings.py:615 msgid "Farsi / Persian" msgstr "" -#: InvenTree/settings.py:614 +#: InvenTree/settings.py:616 msgid "French" msgstr "" -#: InvenTree/settings.py:615 +#: InvenTree/settings.py:617 msgid "Hebrew" msgstr "" -#: InvenTree/settings.py:616 +#: InvenTree/settings.py:618 msgid "Hungarian" msgstr "" -#: InvenTree/settings.py:617 +#: InvenTree/settings.py:619 msgid "Italian" msgstr "" -#: InvenTree/settings.py:618 +#: InvenTree/settings.py:620 msgid "Japanese" msgstr "" -#: InvenTree/settings.py:619 +#: InvenTree/settings.py:621 msgid "Korean" msgstr "" -#: InvenTree/settings.py:620 +#: InvenTree/settings.py:622 msgid "Dutch" msgstr "" -#: InvenTree/settings.py:621 +#: InvenTree/settings.py:623 msgid "Norwegian" msgstr "" -#: InvenTree/settings.py:622 +#: InvenTree/settings.py:624 msgid "Polish" msgstr "" -#: InvenTree/settings.py:623 +#: InvenTree/settings.py:625 msgid "Portuguese" msgstr "" -#: InvenTree/settings.py:624 +#: InvenTree/settings.py:626 msgid "Portuguese (Brazilian)" msgstr "" -#: InvenTree/settings.py:625 +#: InvenTree/settings.py:627 msgid "Russian" msgstr "" -#: InvenTree/settings.py:626 +#: InvenTree/settings.py:628 msgid "Swedish" msgstr "" -#: InvenTree/settings.py:627 +#: InvenTree/settings.py:629 msgid "Thai" msgstr "" -#: InvenTree/settings.py:628 +#: InvenTree/settings.py:630 msgid "Turkish" msgstr "" -#: InvenTree/settings.py:629 +#: InvenTree/settings.py:631 msgid "Vietnamese" msgstr "" -#: InvenTree/settings.py:630 +#: InvenTree/settings.py:632 msgid "Chinese" msgstr "" @@ -5516,11 +5516,11 @@ msgstr "" msgid "Create a new variant of template '%(full_name)s'." msgstr "" -#: part/templatetags/inventree_extras.py:157 +#: part/templatetags/inventree_extras.py:177 msgid "Unknown database" msgstr "" -#: part/templatetags/inventree_extras.py:202 +#: part/templatetags/inventree_extras.py:222 #, python-brace-format msgid "{title} v{version}" msgstr "" diff --git a/InvenTree/locale/tr/LC_MESSAGES/django.po b/InvenTree/locale/tr/LC_MESSAGES/django.po index fc376514e1..a94406bf5f 100644 --- a/InvenTree/locale/tr/LC_MESSAGES/django.po +++ b/InvenTree/locale/tr/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-04 22:08+0000\n" -"PO-Revision-Date: 2022-08-05 01:02\n" +"POT-Creation-Date: 2022-08-07 21:57+0000\n" +"PO-Revision-Date: 2022-08-08 13:03\n" "Last-Translator: \n" "Language-Team: Turkish\n" "Language: tr_TR\n" @@ -17,7 +17,7 @@ msgstr "" "X-Crowdin-File: /[inventree.InvenTree] l10/InvenTree/locale/en/LC_MESSAGES/django.po\n" "X-Crowdin-File-ID: 154\n" -#: InvenTree/api.py:52 +#: InvenTree/api.py:54 msgid "API endpoint not found" msgstr "API uç noktası bulunamadı" @@ -25,11 +25,11 @@ msgstr "API uç noktası bulunamadı" msgid "Error details can be found in the admin panel" msgstr "" -#: InvenTree/fields.py:108 +#: InvenTree/fields.py:109 msgid "Enter date" msgstr "Tarih giriniz" -#: InvenTree/fields.py:185 build/serializers.py:384 +#: InvenTree/fields.py:186 build/serializers.py:384 #: build/templates/build/sidebar.html:21 company/models.py:523 #: company/templates/company/sidebar.html:25 order/models.py:906 #: order/templates/order/po_sidebar.html:11 @@ -89,76 +89,76 @@ msgstr "E-posta adresi onayı" msgid "You must type the same email each time." msgstr "Her seferind eaynı e-posta adresini yazmalısınız." -#: InvenTree/helpers.py:172 +#: InvenTree/helpers.py:173 msgid "Connection error" msgstr "" -#: InvenTree/helpers.py:176 InvenTree/helpers.py:181 +#: InvenTree/helpers.py:177 InvenTree/helpers.py:182 msgid "Server responded with invalid status code" msgstr "" -#: InvenTree/helpers.py:178 +#: InvenTree/helpers.py:179 msgid "Exception occurred" msgstr "" -#: InvenTree/helpers.py:186 +#: InvenTree/helpers.py:187 msgid "Server responded with invalid Content-Length value" msgstr "" -#: InvenTree/helpers.py:189 +#: InvenTree/helpers.py:190 msgid "Image size is too large" msgstr "" -#: InvenTree/helpers.py:201 +#: InvenTree/helpers.py:202 msgid "Image download exceeded maximum size" msgstr "" -#: InvenTree/helpers.py:206 +#: InvenTree/helpers.py:207 msgid "Remote server returned empty response" msgstr "" -#: InvenTree/helpers.py:214 +#: InvenTree/helpers.py:215 msgid "Supplied URL is not a valid image file" msgstr "Sağlanan URL geçerli bir resim dosyası değil" -#: InvenTree/helpers.py:573 +#: InvenTree/helpers.py:584 #, python-brace-format msgid "Duplicate serial: {sn}" msgstr "Tekrarlanan seri no:{sn}" -#: InvenTree/helpers.py:580 order/models.py:320 order/models.py:472 +#: InvenTree/helpers.py:591 order/models.py:320 order/models.py:472 msgid "Invalid quantity provided" msgstr "Geçersiz veri sağlandı" -#: InvenTree/helpers.py:583 +#: InvenTree/helpers.py:594 msgid "Empty serial number string" msgstr "Boş seri numarası dizesi" -#: InvenTree/helpers.py:615 +#: InvenTree/helpers.py:626 #, python-brace-format msgid "Invalid group range: {g}" msgstr "" -#: InvenTree/helpers.py:618 +#: InvenTree/helpers.py:629 #, python-brace-format msgid "Invalid group: {g}" msgstr "Geçersiz grup: {g}" -#: InvenTree/helpers.py:646 +#: InvenTree/helpers.py:657 #, python-brace-format msgid "Invalid group sequence: {g}" msgstr "" -#: InvenTree/helpers.py:654 +#: InvenTree/helpers.py:665 #, python-brace-format msgid "Invalid/no group {group}" msgstr "Geçersiz grup: {group}" -#: InvenTree/helpers.py:660 +#: InvenTree/helpers.py:671 msgid "No serial numbers found" msgstr "Seri numarası bulunamadı" -#: InvenTree/helpers.py:664 +#: InvenTree/helpers.py:675 #, python-brace-format msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "" @@ -398,99 +398,99 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/settings.py:607 +#: InvenTree/settings.py:609 msgid "Czech" msgstr "" -#: InvenTree/settings.py:608 +#: InvenTree/settings.py:610 msgid "German" msgstr "Almanca" -#: InvenTree/settings.py:609 +#: InvenTree/settings.py:611 msgid "Greek" msgstr "Yunanca" -#: InvenTree/settings.py:610 +#: InvenTree/settings.py:612 msgid "English" msgstr "İngilizce" -#: InvenTree/settings.py:611 +#: InvenTree/settings.py:613 msgid "Spanish" msgstr "İspanyolca" -#: InvenTree/settings.py:612 +#: InvenTree/settings.py:614 msgid "Spanish (Mexican)" msgstr "İspanyolca(Meksika)" -#: InvenTree/settings.py:613 +#: InvenTree/settings.py:615 msgid "Farsi / Persian" msgstr "" -#: InvenTree/settings.py:614 +#: InvenTree/settings.py:616 msgid "French" msgstr "Fransızca" -#: InvenTree/settings.py:615 +#: InvenTree/settings.py:617 msgid "Hebrew" msgstr "İbranice" -#: InvenTree/settings.py:616 +#: InvenTree/settings.py:618 msgid "Hungarian" msgstr "Macarca" -#: InvenTree/settings.py:617 +#: InvenTree/settings.py:619 msgid "Italian" msgstr "İtalyanca" -#: InvenTree/settings.py:618 +#: InvenTree/settings.py:620 msgid "Japanese" msgstr "Japonca" -#: InvenTree/settings.py:619 +#: InvenTree/settings.py:621 msgid "Korean" msgstr "Korece" -#: InvenTree/settings.py:620 +#: InvenTree/settings.py:622 msgid "Dutch" msgstr "Flemenkçe" -#: InvenTree/settings.py:621 +#: InvenTree/settings.py:623 msgid "Norwegian" msgstr "Norveççe" -#: InvenTree/settings.py:622 +#: InvenTree/settings.py:624 msgid "Polish" msgstr "Polonyaca" -#: InvenTree/settings.py:623 +#: InvenTree/settings.py:625 msgid "Portuguese" msgstr "" -#: InvenTree/settings.py:624 +#: InvenTree/settings.py:626 msgid "Portuguese (Brazilian)" msgstr "" -#: InvenTree/settings.py:625 +#: InvenTree/settings.py:627 msgid "Russian" msgstr "Rusça" -#: InvenTree/settings.py:626 +#: InvenTree/settings.py:628 msgid "Swedish" msgstr "İsveççe" -#: InvenTree/settings.py:627 +#: InvenTree/settings.py:629 msgid "Thai" msgstr "Tay dili" -#: InvenTree/settings.py:628 +#: InvenTree/settings.py:630 msgid "Turkish" msgstr "Türkçe" -#: InvenTree/settings.py:629 +#: InvenTree/settings.py:631 msgid "Vietnamese" msgstr "Vietnamca" -#: InvenTree/settings.py:630 +#: InvenTree/settings.py:632 msgid "Chinese" msgstr "Çince" @@ -5516,11 +5516,11 @@ msgstr "Yeni parça çeşidi oluştur" msgid "Create a new variant of template '%(full_name)s'." msgstr "" -#: part/templatetags/inventree_extras.py:157 +#: part/templatetags/inventree_extras.py:177 msgid "Unknown database" msgstr "" -#: part/templatetags/inventree_extras.py:202 +#: part/templatetags/inventree_extras.py:222 #, python-brace-format msgid "{title} v{version}" msgstr "" diff --git a/InvenTree/locale/vi/LC_MESSAGES/django.po b/InvenTree/locale/vi/LC_MESSAGES/django.po index 88e09d4efc..3b02bec27b 100644 --- a/InvenTree/locale/vi/LC_MESSAGES/django.po +++ b/InvenTree/locale/vi/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-04 22:08+0000\n" -"PO-Revision-Date: 2022-08-05 01:02\n" +"POT-Creation-Date: 2022-08-07 21:57+0000\n" +"PO-Revision-Date: 2022-08-08 13:03\n" "Last-Translator: \n" "Language-Team: Vietnamese\n" "Language: vi_VN\n" @@ -17,7 +17,7 @@ msgstr "" "X-Crowdin-File: /[inventree.InvenTree] l10/InvenTree/locale/en/LC_MESSAGES/django.po\n" "X-Crowdin-File-ID: 154\n" -#: InvenTree/api.py:52 +#: InvenTree/api.py:54 msgid "API endpoint not found" msgstr "" @@ -25,11 +25,11 @@ msgstr "" msgid "Error details can be found in the admin panel" msgstr "" -#: InvenTree/fields.py:108 +#: InvenTree/fields.py:109 msgid "Enter date" msgstr "" -#: InvenTree/fields.py:185 build/serializers.py:384 +#: InvenTree/fields.py:186 build/serializers.py:384 #: build/templates/build/sidebar.html:21 company/models.py:523 #: company/templates/company/sidebar.html:25 order/models.py:906 #: order/templates/order/po_sidebar.html:11 @@ -89,76 +89,76 @@ msgstr "" msgid "You must type the same email each time." msgstr "" -#: InvenTree/helpers.py:172 +#: InvenTree/helpers.py:173 msgid "Connection error" msgstr "" -#: InvenTree/helpers.py:176 InvenTree/helpers.py:181 +#: InvenTree/helpers.py:177 InvenTree/helpers.py:182 msgid "Server responded with invalid status code" msgstr "" -#: InvenTree/helpers.py:178 +#: InvenTree/helpers.py:179 msgid "Exception occurred" msgstr "" -#: InvenTree/helpers.py:186 +#: InvenTree/helpers.py:187 msgid "Server responded with invalid Content-Length value" msgstr "" -#: InvenTree/helpers.py:189 +#: InvenTree/helpers.py:190 msgid "Image size is too large" msgstr "" -#: InvenTree/helpers.py:201 +#: InvenTree/helpers.py:202 msgid "Image download exceeded maximum size" msgstr "" -#: InvenTree/helpers.py:206 +#: InvenTree/helpers.py:207 msgid "Remote server returned empty response" msgstr "" -#: InvenTree/helpers.py:214 +#: InvenTree/helpers.py:215 msgid "Supplied URL is not a valid image file" msgstr "" -#: InvenTree/helpers.py:573 +#: InvenTree/helpers.py:584 #, python-brace-format msgid "Duplicate serial: {sn}" msgstr "" -#: InvenTree/helpers.py:580 order/models.py:320 order/models.py:472 +#: InvenTree/helpers.py:591 order/models.py:320 order/models.py:472 msgid "Invalid quantity provided" msgstr "" -#: InvenTree/helpers.py:583 +#: InvenTree/helpers.py:594 msgid "Empty serial number string" msgstr "" -#: InvenTree/helpers.py:615 +#: InvenTree/helpers.py:626 #, python-brace-format msgid "Invalid group range: {g}" msgstr "" -#: InvenTree/helpers.py:618 +#: InvenTree/helpers.py:629 #, python-brace-format msgid "Invalid group: {g}" msgstr "" -#: InvenTree/helpers.py:646 +#: InvenTree/helpers.py:657 #, python-brace-format msgid "Invalid group sequence: {g}" msgstr "" -#: InvenTree/helpers.py:654 +#: InvenTree/helpers.py:665 #, python-brace-format msgid "Invalid/no group {group}" msgstr "" -#: InvenTree/helpers.py:660 +#: InvenTree/helpers.py:671 msgid "No serial numbers found" msgstr "" -#: InvenTree/helpers.py:664 +#: InvenTree/helpers.py:675 #, python-brace-format msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "" @@ -398,99 +398,99 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/settings.py:607 +#: InvenTree/settings.py:609 msgid "Czech" msgstr "" -#: InvenTree/settings.py:608 +#: InvenTree/settings.py:610 msgid "German" msgstr "" -#: InvenTree/settings.py:609 +#: InvenTree/settings.py:611 msgid "Greek" msgstr "" -#: InvenTree/settings.py:610 +#: InvenTree/settings.py:612 msgid "English" msgstr "" -#: InvenTree/settings.py:611 +#: InvenTree/settings.py:613 msgid "Spanish" msgstr "" -#: InvenTree/settings.py:612 +#: InvenTree/settings.py:614 msgid "Spanish (Mexican)" msgstr "" -#: InvenTree/settings.py:613 +#: InvenTree/settings.py:615 msgid "Farsi / Persian" msgstr "" -#: InvenTree/settings.py:614 +#: InvenTree/settings.py:616 msgid "French" msgstr "" -#: InvenTree/settings.py:615 +#: InvenTree/settings.py:617 msgid "Hebrew" msgstr "" -#: InvenTree/settings.py:616 +#: InvenTree/settings.py:618 msgid "Hungarian" msgstr "" -#: InvenTree/settings.py:617 +#: InvenTree/settings.py:619 msgid "Italian" msgstr "" -#: InvenTree/settings.py:618 +#: InvenTree/settings.py:620 msgid "Japanese" msgstr "" -#: InvenTree/settings.py:619 +#: InvenTree/settings.py:621 msgid "Korean" msgstr "" -#: InvenTree/settings.py:620 +#: InvenTree/settings.py:622 msgid "Dutch" msgstr "" -#: InvenTree/settings.py:621 +#: InvenTree/settings.py:623 msgid "Norwegian" msgstr "" -#: InvenTree/settings.py:622 +#: InvenTree/settings.py:624 msgid "Polish" msgstr "" -#: InvenTree/settings.py:623 +#: InvenTree/settings.py:625 msgid "Portuguese" msgstr "" -#: InvenTree/settings.py:624 +#: InvenTree/settings.py:626 msgid "Portuguese (Brazilian)" msgstr "" -#: InvenTree/settings.py:625 +#: InvenTree/settings.py:627 msgid "Russian" msgstr "" -#: InvenTree/settings.py:626 +#: InvenTree/settings.py:628 msgid "Swedish" msgstr "" -#: InvenTree/settings.py:627 +#: InvenTree/settings.py:629 msgid "Thai" msgstr "" -#: InvenTree/settings.py:628 +#: InvenTree/settings.py:630 msgid "Turkish" msgstr "" -#: InvenTree/settings.py:629 +#: InvenTree/settings.py:631 msgid "Vietnamese" msgstr "" -#: InvenTree/settings.py:630 +#: InvenTree/settings.py:632 msgid "Chinese" msgstr "" @@ -5516,11 +5516,11 @@ msgstr "" msgid "Create a new variant of template '%(full_name)s'." msgstr "" -#: part/templatetags/inventree_extras.py:157 +#: part/templatetags/inventree_extras.py:177 msgid "Unknown database" msgstr "" -#: part/templatetags/inventree_extras.py:202 +#: part/templatetags/inventree_extras.py:222 #, python-brace-format msgid "{title} v{version}" msgstr "" diff --git a/InvenTree/locale/zh/LC_MESSAGES/django.po b/InvenTree/locale/zh/LC_MESSAGES/django.po index aed7c4b206..e42c5afe31 100644 --- a/InvenTree/locale/zh/LC_MESSAGES/django.po +++ b/InvenTree/locale/zh/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-04 22:08+0000\n" -"PO-Revision-Date: 2022-08-05 01:02\n" +"POT-Creation-Date: 2022-08-07 21:57+0000\n" +"PO-Revision-Date: 2022-08-08 13:03\n" "Last-Translator: \n" "Language-Team: Chinese Simplified\n" "Language: zh_CN\n" @@ -17,7 +17,7 @@ msgstr "" "X-Crowdin-File: /[inventree.InvenTree] l10/InvenTree/locale/en/LC_MESSAGES/django.po\n" "X-Crowdin-File-ID: 154\n" -#: InvenTree/api.py:52 +#: InvenTree/api.py:54 msgid "API endpoint not found" msgstr "未找到 API 端点" @@ -25,11 +25,11 @@ msgstr "未找到 API 端点" msgid "Error details can be found in the admin panel" msgstr "在管理面板中可以找到错误详细信息" -#: InvenTree/fields.py:108 +#: InvenTree/fields.py:109 msgid "Enter date" msgstr "输入日期" -#: InvenTree/fields.py:185 build/serializers.py:384 +#: InvenTree/fields.py:186 build/serializers.py:384 #: build/templates/build/sidebar.html:21 company/models.py:523 #: company/templates/company/sidebar.html:25 order/models.py:906 #: order/templates/order/po_sidebar.html:11 @@ -89,76 +89,76 @@ msgstr "Email 地址确认" msgid "You must type the same email each time." msgstr "您必须输入相同的 Email 。" -#: InvenTree/helpers.py:172 +#: InvenTree/helpers.py:173 msgid "Connection error" msgstr "" -#: InvenTree/helpers.py:176 InvenTree/helpers.py:181 +#: InvenTree/helpers.py:177 InvenTree/helpers.py:182 msgid "Server responded with invalid status code" msgstr "" -#: InvenTree/helpers.py:178 +#: InvenTree/helpers.py:179 msgid "Exception occurred" msgstr "" -#: InvenTree/helpers.py:186 +#: InvenTree/helpers.py:187 msgid "Server responded with invalid Content-Length value" msgstr "" -#: InvenTree/helpers.py:189 +#: InvenTree/helpers.py:190 msgid "Image size is too large" msgstr "" -#: InvenTree/helpers.py:201 +#: InvenTree/helpers.py:202 msgid "Image download exceeded maximum size" msgstr "" -#: InvenTree/helpers.py:206 +#: InvenTree/helpers.py:207 msgid "Remote server returned empty response" msgstr "" -#: InvenTree/helpers.py:214 +#: InvenTree/helpers.py:215 msgid "Supplied URL is not a valid image file" msgstr "提供的 URL 不是一个有效的图片文件" -#: InvenTree/helpers.py:573 +#: InvenTree/helpers.py:584 #, python-brace-format msgid "Duplicate serial: {sn}" msgstr "重复的序列号: {sn}" -#: InvenTree/helpers.py:580 order/models.py:320 order/models.py:472 +#: InvenTree/helpers.py:591 order/models.py:320 order/models.py:472 msgid "Invalid quantity provided" msgstr "提供的数量无效" -#: InvenTree/helpers.py:583 +#: InvenTree/helpers.py:594 msgid "Empty serial number string" msgstr "空序列号字符串" -#: InvenTree/helpers.py:615 +#: InvenTree/helpers.py:626 #, python-brace-format msgid "Invalid group range: {g}" msgstr "无效的组范围: {g}" -#: InvenTree/helpers.py:618 +#: InvenTree/helpers.py:629 #, python-brace-format msgid "Invalid group: {g}" msgstr "无效的群组: {g}" -#: InvenTree/helpers.py:646 +#: InvenTree/helpers.py:657 #, python-brace-format msgid "Invalid group sequence: {g}" msgstr "无效的组序列: {g}" -#: InvenTree/helpers.py:654 +#: InvenTree/helpers.py:665 #, python-brace-format msgid "Invalid/no group {group}" msgstr "无效的群组: {group}" -#: InvenTree/helpers.py:660 +#: InvenTree/helpers.py:671 msgid "No serial numbers found" msgstr "未找到序列号" -#: InvenTree/helpers.py:664 +#: InvenTree/helpers.py:675 #, python-brace-format msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "唯一序列号 ({s}) 必须匹配数量 ({q})" @@ -398,99 +398,99 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/settings.py:607 +#: InvenTree/settings.py:609 msgid "Czech" msgstr "捷克语" -#: InvenTree/settings.py:608 +#: InvenTree/settings.py:610 msgid "German" msgstr "德语" -#: InvenTree/settings.py:609 +#: InvenTree/settings.py:611 msgid "Greek" msgstr "希腊语" -#: InvenTree/settings.py:610 +#: InvenTree/settings.py:612 msgid "English" msgstr "英语" -#: InvenTree/settings.py:611 +#: InvenTree/settings.py:613 msgid "Spanish" msgstr "西班牙语" -#: InvenTree/settings.py:612 +#: InvenTree/settings.py:614 msgid "Spanish (Mexican)" msgstr "西班牙语(墨西哥)" -#: InvenTree/settings.py:613 +#: InvenTree/settings.py:615 msgid "Farsi / Persian" msgstr "波斯语" -#: InvenTree/settings.py:614 +#: InvenTree/settings.py:616 msgid "French" msgstr "法语" -#: InvenTree/settings.py:615 +#: InvenTree/settings.py:617 msgid "Hebrew" msgstr "希伯来语" -#: InvenTree/settings.py:616 +#: InvenTree/settings.py:618 msgid "Hungarian" msgstr "匈牙利语" -#: InvenTree/settings.py:617 +#: InvenTree/settings.py:619 msgid "Italian" msgstr "意大利语" -#: InvenTree/settings.py:618 +#: InvenTree/settings.py:620 msgid "Japanese" msgstr "日语" -#: InvenTree/settings.py:619 +#: InvenTree/settings.py:621 msgid "Korean" msgstr "韩语" -#: InvenTree/settings.py:620 +#: InvenTree/settings.py:622 msgid "Dutch" msgstr "荷兰语" -#: InvenTree/settings.py:621 +#: InvenTree/settings.py:623 msgid "Norwegian" msgstr "挪威语" -#: InvenTree/settings.py:622 +#: InvenTree/settings.py:624 msgid "Polish" msgstr "波兰语" -#: InvenTree/settings.py:623 +#: InvenTree/settings.py:625 msgid "Portuguese" msgstr "葡萄牙语" -#: InvenTree/settings.py:624 +#: InvenTree/settings.py:626 msgid "Portuguese (Brazilian)" msgstr "葡萄牙语 (巴西)" -#: InvenTree/settings.py:625 +#: InvenTree/settings.py:627 msgid "Russian" msgstr "俄语" -#: InvenTree/settings.py:626 +#: InvenTree/settings.py:628 msgid "Swedish" msgstr "瑞典语" -#: InvenTree/settings.py:627 +#: InvenTree/settings.py:629 msgid "Thai" msgstr "泰语" -#: InvenTree/settings.py:628 +#: InvenTree/settings.py:630 msgid "Turkish" msgstr "土耳其语" -#: InvenTree/settings.py:629 +#: InvenTree/settings.py:631 msgid "Vietnamese" msgstr "越南语" -#: InvenTree/settings.py:630 +#: InvenTree/settings.py:632 msgid "Chinese" msgstr "中文(简体)" @@ -5516,11 +5516,11 @@ msgstr "" msgid "Create a new variant of template '%(full_name)s'." msgstr "" -#: part/templatetags/inventree_extras.py:157 +#: part/templatetags/inventree_extras.py:177 msgid "Unknown database" msgstr "" -#: part/templatetags/inventree_extras.py:202 +#: part/templatetags/inventree_extras.py:222 #, python-brace-format msgid "{title} v{version}" msgstr "" From b0ad326daab9cba828a4150e99337e827a8d712f Mon Sep 17 00:00:00 2001 From: Oliver Date: Tue, 9 Aug 2022 09:42:53 +1000 Subject: [PATCH 05/60] Custom splash screen (#3499) * Adds support for custom splash screen * Add option to config template file --- InvenTree/InvenTree/helpers.py | 14 ++++++++++++ InvenTree/InvenTree/settings.py | 20 +++++++++++++----- InvenTree/InvenTree/static/css/inventree.css | 2 +- ...{paper_splash.jpg => inventree_splash.jpg} | Bin InvenTree/config_template.yaml | 1 + .../part/templatetags/inventree_extras.py | 9 +++++++- InvenTree/templates/account/base.html | 6 ++---- 7 files changed, 41 insertions(+), 11 deletions(-) rename InvenTree/InvenTree/static/img/{paper_splash.jpg => inventree_splash.jpg} (100%) diff --git a/InvenTree/InvenTree/helpers.py b/InvenTree/InvenTree/helpers.py index 51dc08bd47..e1ea93c885 100644 --- a/InvenTree/InvenTree/helpers.py +++ b/InvenTree/InvenTree/helpers.py @@ -265,6 +265,20 @@ def getLogoImage(as_file=False, custom=True): return getStaticUrl('img/inventree.png') +def getSplashScren(custom=True): + """Return the InvenTree splash screen, or a custom splash if available""" + + static_storage = StaticFilesStorage() + + if custom and settings.CUSTOM_SPLASH: + + if static_storage.exists(settings.CUSTOM_SPLASH): + return static_storage.url(settings.CUSTOM_SPLASH) + + # No custom splash screen + return static_storage.url("img/inventree_splash.jpg") + + def TestIfImageURL(url): """Test if an image URL (or filename) looks like a valid image format. diff --git a/InvenTree/InvenTree/settings.py b/InvenTree/InvenTree/settings.py index 3e2c907c22..2d4b898f74 100644 --- a/InvenTree/InvenTree/settings.py +++ b/InvenTree/InvenTree/settings.py @@ -820,7 +820,7 @@ PLUGIN_FILE_CHECKED = False # Was the plugin file checked? # User interface customization values CUSTOMIZE = get_setting('INVENTREE_CUSTOMIZE', 'customize', {}) -CUSTOM_LOGO = get_setting('INVENTREE_CUSTOM_LOGO', 'customize.logo', None) +static_storage = StaticFilesStorage() """ Check for the existence of a 'custom logo' file: @@ -828,9 +828,9 @@ Check for the existence of a 'custom logo' file: - Check the 'media' directory (legacy) """ -if CUSTOM_LOGO: - static_storage = StaticFilesStorage() +CUSTOM_LOGO = get_setting('INVENTREE_CUSTOM_LOGO', 'customize.logo', None) +if CUSTOM_LOGO: if static_storage.exists(CUSTOM_LOGO): logger.info(f"Loading custom logo from static directory: {CUSTOM_LOGO}") elif default_storage.exists(CUSTOM_LOGO): @@ -839,8 +839,18 @@ if CUSTOM_LOGO: logger.warning(f"The custom logo file '{CUSTOM_LOGO}' could not be found in the static or media directories") CUSTOM_LOGO = False +# Check for a custom splash screen +CUSTOM_SPLASH = get_setting('INVENTREE_CUSTOM_SPLASH', 'customize.splash', None) + +if CUSTOM_SPLASH: + if static_storage.exists(CUSTOM_SPLASH): + logger.info(f"Loading custom splash screen from static directory: {CUSTOM_SPLASH}") + else: + logger.warning(f"The custom splash screen '{CUSTOM_SPLASH}' could not be found in the static directory") + CUSTOM_SPLASH = False + if DEBUG: logger.info("InvenTree running with DEBUG enabled") -logger.debug(f"MEDIA_ROOT: '{MEDIA_ROOT}'") -logger.debug(f"STATIC_ROOT: '{STATIC_ROOT}'") +logger.info(f"MEDIA_ROOT: '{MEDIA_ROOT}'") +logger.info(f"STATIC_ROOT: '{STATIC_ROOT}'") diff --git a/InvenTree/InvenTree/static/css/inventree.css b/InvenTree/InvenTree/static/css/inventree.css index 96409dc9a1..0d6b07e9ff 100644 --- a/InvenTree/InvenTree/static/css/inventree.css +++ b/InvenTree/InvenTree/static/css/inventree.css @@ -19,8 +19,8 @@ main { } .login-screen { - background: url(/static/img/paper_splash.jpg) no-repeat center fixed; background-size: cover; + background-position: center; height: 100vh; font-family: 'Numans', sans-serif; color: #eee; diff --git a/InvenTree/InvenTree/static/img/paper_splash.jpg b/InvenTree/InvenTree/static/img/inventree_splash.jpg similarity index 100% rename from InvenTree/InvenTree/static/img/paper_splash.jpg rename to InvenTree/InvenTree/static/img/inventree_splash.jpg diff --git a/InvenTree/config_template.yaml b/InvenTree/config_template.yaml index aa5d715d04..549f2f011c 100644 --- a/InvenTree/config_template.yaml +++ b/InvenTree/config_template.yaml @@ -188,5 +188,6 @@ remote_login_header: REMOTE_USER # login_message: InvenTree demo instance - Click here for login details # navbar_message:
InvenTree demo mode
# logo: logo.png +# splash: splash_screen.jpg # hide_admin_link: true # hide_password_reset: true diff --git a/InvenTree/part/templatetags/inventree_extras.py b/InvenTree/part/templatetags/inventree_extras.py index 4516f17e5e..6116acd327 100644 --- a/InvenTree/part/templatetags/inventree_extras.py +++ b/InvenTree/part/templatetags/inventree_extras.py @@ -195,7 +195,7 @@ def inventree_title(*args, **kwargs): @register.simple_tag() def inventree_logo(**kwargs): - """Return the InvenTree logo, *or* a custom logo if the user has uploaded one. + """Return the InvenTree logo, *or* a custom logo if the user has provided one. Returns a path to an image file, which can be rendered in the web interface """ @@ -203,6 +203,13 @@ def inventree_logo(**kwargs): return InvenTree.helpers.getLogoImage(**kwargs) +@register.simple_tag() +def inventree_splash(**kwargs): + """Return the URL for the InvenTree splash screen, *or* a custom screen if the user has provided one.""" + + return InvenTree.helpers.getSplashScren(**kwargs) + + @register.simple_tag() def inventree_base_url(*args, **kwargs): """Return the INVENTREE_BASE_URL setting.""" diff --git a/InvenTree/templates/account/base.html b/InvenTree/templates/account/base.html index 4ac646b717..518ab0798b 100644 --- a/InvenTree/templates/account/base.html +++ b/InvenTree/templates/account/base.html @@ -49,10 +49,8 @@ {% endblock %} - - + +
From 2d63122ebe0fb5fdbefd223da2f744f130b71b0e Mon Sep 17 00:00:00 2001 From: luwol03 Date: Tue, 9 Aug 2022 08:06:32 +0200 Subject: [PATCH 06/60] vscode devcontainer (#3474) * Added devcontainer configuration files * Added launch.json and improved devcontainer * Added tasks.json * fix: lint * fix: lint * Applied suggestions from codereview * Added more system dependencies and preserve history * devcontainer updates - Add extra environment variables for InvenTree config - Move venv into dev directory (cleaner structure) - Ensure base package requirements get installed - Handle write-permission error for compiling translations - Install test data inside dev directory * Auto create plugin dir and added gh cli * Refactored postCreateCommand into own file * Applied suggestions from codereview Co-authored-by: Oliver Walters --- .devcontainer/Dockerfile | 47 ++++++++++++++++ .devcontainer/devcontainer.json | 87 ++++++++++++++++++++++++++++++ .devcontainer/postCreateCommand.sh | 14 +++++ .gitignore | 9 +++- .vscode/launch.json | 26 +++++++++ .vscode/tasks.json | 52 ++++++++++++++++++ tasks.py | 5 +- 7 files changed, 238 insertions(+), 2 deletions(-) create mode 100644 .devcontainer/Dockerfile create mode 100644 .devcontainer/devcontainer.json create mode 100755 .devcontainer/postCreateCommand.sh create mode 100644 .vscode/launch.json create mode 100644 .vscode/tasks.json diff --git a/.devcontainer/Dockerfile b/.devcontainer/Dockerfile new file mode 100644 index 0000000000..b252c260bc --- /dev/null +++ b/.devcontainer/Dockerfile @@ -0,0 +1,47 @@ +# See here for image contents: https://github.com/microsoft/vscode-dev-containers/tree/v0.241.1/containers/python-3/.devcontainer/base.Dockerfile + +# [Choice] Python version (use -bullseye variants on local arm64/Apple Silicon): 3, 3.10, 3.9, 3.8, 3.7, 3.6, 3-bullseye, 3.10-bullseye, 3.9-bullseye, 3.8-bullseye, 3.7-bullseye, 3.6-bullseye, 3-buster, 3.10-buster, 3.9-buster, 3.8-buster, 3.7-buster, 3.6-buster +ARG VARIANT="3.10-bullseye" +FROM mcr.microsoft.com/vscode/devcontainers/python:0-${VARIANT} + +# [Choice] Node.js version: none, lts/*, 16, 14, 12, 10 +ARG NODE_VERSION="none" +RUN if [ "${NODE_VERSION}" != "none" ]; then su vscode -c "umask 0002 && . /usr/local/share/nvm/nvm.sh && nvm install ${NODE_VERSION} 2>&1"; fi + +# [Optional] If your pip requirements rarely change, uncomment this section to add them to the image. +# COPY requirements.txt /tmp/pip-tmp/ +# RUN pip3 --disable-pip-version-check --no-cache-dir install -r /tmp/pip-tmp/requirements.txt \ +# && rm -rf /tmp/pip-tmp + +# [Optional] Uncomment this section to install additional OS packages. +RUN apt-get update && export DEBIAN_FRONTEND=noninteractive && \ + apt-get -y install --no-install-recommends \ + git gcc g++ gettext gnupg libffi-dev \ + # Weasyprint requirements : https://doc.courtbouillon.org/weasyprint/stable/first_steps.html#debian-11 + poppler-utils libpango-1.0-0 libpangoft2-1.0-0 \ + # Image format support + libjpeg-dev webp \ + # SQLite support + sqlite3 \ + # PostgreSQL support + libpq-dev \ + # MySQL / MariaDB support + default-libmysqlclient-dev mariadb-client && \ + apt-get autoclean && apt-get autoremove + +# [Optional] Uncomment this line to install global node packages. +# RUN su vscode -c "source /usr/local/share/nvm/nvm.sh && npm install -g " 2>&1 + +# Update pip +RUN pip install --upgrade pip + +# Install required base-level python packages +COPY ./docker/requirements.txt base_requirements.txt +RUN pip install --disable-pip-version-check -U -r base_requirements.txt + +# preserve command history between container starts +# Ref: https://code.visualstudio.com/remote/advancedcontainers/persist-bash-history +# Folder will be created in 'postCreateCommand' in devcontainer.json as it's not preserved due to the bind mount +RUN echo "export PROMPT_COMMAND='history -a' && export HISTFILE=/workspaces/InvenTree/dev/commandhistory/.bash_history" >> "/home/vscode/.bashrc" + +WORKDIR /workspaces/InvenTree diff --git a/.devcontainer/devcontainer.json b/.devcontainer/devcontainer.json new file mode 100644 index 0000000000..3d77ab14a2 --- /dev/null +++ b/.devcontainer/devcontainer.json @@ -0,0 +1,87 @@ +// For format details, see https://aka.ms/devcontainer.json. For config options, see the README at: +// https://github.com/microsoft/vscode-dev-containers/tree/v0.241.1/containers/python-3 +{ + "name": "InvenTree", + "build": { + "dockerfile": "Dockerfile", + "context": "..", + "args": { + // Update 'VARIANT' to pick a Python version: 3, 3.10, 3.9, 3.8, 3.7, 3.6 + // Append -bullseye or -buster to pin to an OS version. + // Use -bullseye variants on local on arm64/Apple Silicon. + "VARIANT": "3.10-bullseye", + // Options + "NODE_VERSION": "lts/*" + } + }, + + // Configure tool-specific properties. + "customizations": { + // Configure properties specific to VS Code. + "vscode": { + // Set *default* container specific settings.json values on container create. + "settings": { + "python.defaultInterpreterPath": "/workspaces/InvenTree/dev/venv/bin/python", + "python.linting.enabled": true, + "python.linting.pylintEnabled": false, + "python.linting.flake8Enabled": true, + "python.formatting.autopep8Path": "/usr/local/py-utils/bin/autopep8", + "python.formatting.blackPath": "/usr/local/py-utils/bin/black", + "python.formatting.yapfPath": "/usr/local/py-utils/bin/yapf", + "python.linting.banditPath": "/usr/local/py-utils/bin/bandit", + "python.linting.flake8Path": "/usr/local/py-utils/bin/flake8", + "python.linting.mypyPath": "/usr/local/py-utils/bin/mypy", + "python.linting.pycodestylePath": "/usr/local/py-utils/bin/pycodestyle", + "python.linting.pydocstylePath": "/usr/local/py-utils/bin/pydocstyle", + "python.linting.pylintPath": "/usr/local/py-utils/bin/pylint" + }, + + // Add the IDs of extensions you want installed when the container is created. + "extensions": [ + "ms-python.python", + "ms-python.vscode-pylance", + "batisteo.vscode-django" + ] + } + }, + + // Use 'forwardPorts' to make a list of ports inside the container available locally. + "forwardPorts": [8000], + "portsAttributes": { + "8000": { + "label": "InvenTree server" + } + }, + + // Use 'postCreateCommand' to run commands after the container is created. + "postCreateCommand": "./.devcontainer/postCreateCommand.sh", + + // Comment out to connect as root instead. More info: https://aka.ms/vscode-remote/containers/non-root. + "remoteUser": "vscode", + "features": { + "git": "os-provided", + "github-cli": "latest" + }, + + "remoteEnv": { + // Inventree config + "INVENTREE_DEBUG": "True", + "INVENTREE_DEBUG_LEVEL": "INFO", + "INVENTREE_DB_ENGINE": "sqlite3", + "INVENTREE_DB_NAME": "/workspaces/InvenTree/dev/database.sqlite3", + "INVENTREE_MEDIA_ROOT": "/workspaces/InvenTree/dev/media", + "INVENTREE_STATIC_ROOT": "/workspaces/InvenTree/dev/static", + "INVENTREE_CONFIG_FILE": "/workspaces/InvenTree/dev/config.yaml", + "INVENTREE_SECRET_KEY_FILE": "/workspaces/InvenTree/dev/secret_key.txt", + "INVENTREE_PLUGIN_DIR": "/workspaces/InvenTree/dev/plugins", + "INVENTREE_PLUGIN_FILE": "/workspaces/InvenTree/dev/plugins.txt", + + // Python config + "PIP_USER": "no", + + // used to load the venv into the PATH and avtivate it + // Ref: https://stackoverflow.com/a/56286534 + "VIRTUAL_ENV": "/workspaces/InvenTree/dev/venv", + "PATH": "/workspaces/InvenTree/dev/venv/bin:${containerEnv:PATH}" + } +} diff --git a/.devcontainer/postCreateCommand.sh b/.devcontainer/postCreateCommand.sh new file mode 100755 index 0000000000..30e506383e --- /dev/null +++ b/.devcontainer/postCreateCommand.sh @@ -0,0 +1,14 @@ +#!/bin/bash + +# create folders +mkdir -p /workspaces/InvenTree/dev/{commandhistory,plugins} +cd /workspaces/InvenTree + +# create venv +python3 -m venv dev/venv +. dev/venv/bin/activate + +# setup inventree server +pip install invoke +inv update +inv setup-dev diff --git a/.gitignore b/.gitignore index 693ed10362..be9c91ecb9 100644 --- a/.gitignore +++ b/.gitignore @@ -66,9 +66,16 @@ secret_key.txt # IDE / development files .idea/ *.code-workspace -.vscode/ .bash_history +# https://github.com/github/gitignore/blob/main/Global/VisualStudioCode.gitignore +.vscode/* +#!.vscode/settings.json +!.vscode/tasks.json +!.vscode/launch.json +#!.vscode/extensions.json +#!.vscode/*.code-snippets + # Coverage reports .coverage htmlcov/ diff --git a/.vscode/launch.json b/.vscode/launch.json new file mode 100644 index 0000000000..55aa17b353 --- /dev/null +++ b/.vscode/launch.json @@ -0,0 +1,26 @@ +{ + // Use IntelliSense to learn about possible attributes. + // Hover to view descriptions of existing attributes. + // For more information, visit: https://go.microsoft.com/fwlink/?linkid=830387 + "version": "0.2.0", + "configurations": [ + { + "name": "InvenTree Server", + "type": "python", + "request": "launch", + "program": "${workspaceFolder}/InvenTree/manage.py", + "args": ["runserver"], + "django": true, + "justMyCode": true + }, + { + "name": "Python: Django - 3rd party", + "type": "python", + "request": "launch", + "program": "${workspaceFolder}/InvenTree/manage.py", + "args": ["runserver"], + "django": true, + "justMyCode": false + } + ] +} diff --git a/.vscode/tasks.json b/.vscode/tasks.json new file mode 100644 index 0000000000..951e2af546 --- /dev/null +++ b/.vscode/tasks.json @@ -0,0 +1,52 @@ +{ + // See https://go.microsoft.com/fwlink/?LinkId=733558 + // for the documentation about the tasks.json format + "version": "2.0.0", + "tasks": [ + { + "label": "clean-settings", + "type": "shell", + "command": "inv clean-settings", + }, + { + "label": "delete-data", + "type": "shell", + "command": "inv delete-data", + }, + { + "label": "migrate", + "type": "shell", + "command": "inv migrate", + }, + { + "label": "server", + "type": "shell", + "command": "inv server", + }, + { + "label": "setup-dev", + "type": "shell", + "command": "inv setup-dev", + }, + { + "label": "setup-test", + "type": "shell", + "command": "inv setup-test --path dev/inventree-demo-dataset", + }, + { + "label": "superuser", + "type": "shell", + "command": "inv superuser", + }, + { + "label": "test", + "type": "shell", + "command": "inv test", + }, + { + "label": "update", + "type": "shell", + "command": "inv update", + }, + ] +} diff --git a/tasks.py b/tasks.py index 86041f63e3..54b9210131 100644 --- a/tasks.py +++ b/tasks.py @@ -230,7 +230,10 @@ def update(c): """ # Recompile the translation files (.mo) # We do not run 'invoke translate' here, as that will touch the source (.po) files too! - manage(c, 'compilemessages', pty=True) + try: + manage(c, 'compilemessages', pty=True) + except Exception: + print("WARNING: Translation files could not be compiled:") # Data tasks From 139e059a457172ee568c281c50d0ae405d711888 Mon Sep 17 00:00:00 2001 From: Matt Brown Date: Wed, 10 Aug 2022 23:37:29 +1200 Subject: [PATCH 07/60] Check for (and reduce) overallocated stock when editing build orders. (#3237) * Check for (and reduce) overallocated stock when editing build orders. After a build order is edited, check whether any bom items are now overallocated to the build, and if they are find appropriate build items to reduce the quantity of or remove from the build. Fixes: #3236 * Only trim overallocated stock if requested Turns the complete with overallocated stock option into a choice, so the user can reject (default), continue (existing option in the bool), or now additionally instead choose to have the overallocated stock removed before the build is completed. * fix style errors * Another style fix. * Add tests for overallocation handling API logic * Capitalize overallocation options. --- InvenTree/build/models.py | 28 ++++++++++ InvenTree/build/serializers.py | 29 ++++++++-- InvenTree/build/test_api.py | 99 ++++++++++++++++++++++++++++++++++ InvenTree/build/test_build.py | 69 ++++++++++++++++++++++-- 4 files changed, 217 insertions(+), 8 deletions(-) diff --git a/InvenTree/build/models.py b/InvenTree/build/models.py index c71defc40c..1f73037707 100644 --- a/InvenTree/build/models.py +++ b/InvenTree/build/models.py @@ -736,6 +736,34 @@ class Build(MPTTModel, ReferenceIndexingMixin): # Remove the build output from the database output.delete() + @transaction.atomic + def trim_allocated_stock(self): + """Called after save to reduce allocated stock if the build order is now overallocated.""" + allocations = BuildItem.objects.filter(build=self) + + # Only need to worry about untracked stock here + for bom_item in self.untracked_bom_items: + reduce_by = self.allocated_quantity(bom_item) - self.required_quantity(bom_item) + if reduce_by <= 0: + continue # all OK + + # find builditem(s) to trim + for a in allocations.filter(bom_item=bom_item): + # Previous item completed the job + if reduce_by == 0: + break + + # Easy case - this item can just be reduced. + if a.quantity > reduce_by: + a.quantity -= reduce_by + a.save() + break + + # Harder case, this item needs to be deleted, and any remainder + # taken from the next items in the list. + reduce_by -= a.quantity + a.delete() + @transaction.atomic def subtract_allocated_stock(self, user): """Called when the Build is marked as "complete", this function removes the allocated untracked items from stock.""" diff --git a/InvenTree/build/serializers.py b/InvenTree/build/serializers.py index 74fdf599ee..309e63071e 100644 --- a/InvenTree/build/serializers.py +++ b/InvenTree/build/serializers.py @@ -473,21 +473,36 @@ class BuildCancelSerializer(serializers.Serializer): ) +class OverallocationChoice(): + """Utility class to contain options for handling over allocated stock items.""" + + REJECT = 'reject' + ACCEPT = 'accept' + TRIM = 'trim' + + OPTIONS = { + REJECT: ('Not permitted'), + ACCEPT: _('Accept as consumed by this build order'), + TRIM: _('Deallocate before completing this build order'), + } + + class BuildCompleteSerializer(serializers.Serializer): """DRF serializer for marking a BuildOrder as complete.""" - accept_overallocated = serializers.BooleanField( - label=_('Accept Overallocated'), - help_text=_('Accept stock items which have been overallocated to this build order'), + accept_overallocated = serializers.ChoiceField( + label=_('Overallocated Stock'), + choices=list(OverallocationChoice.OPTIONS.items()), + help_text=_('How do you want to handle extra stock items assigned to the build order'), required=False, - default=False, + default=OverallocationChoice.REJECT, ) def validate_accept_overallocated(self, value): """Check if the 'accept_overallocated' field is required""" build = self.context['build'] - if build.has_overallocated_parts(output=None) and not value: + if build.has_overallocated_parts(output=None) and value == OverallocationChoice.REJECT: raise ValidationError(_('Some stock items have been overallocated')) return value @@ -541,6 +556,10 @@ class BuildCompleteSerializer(serializers.Serializer): request = self.context['request'] build = self.context['build'] + data = self.validated_data + if data.get('accept_overallocated', OverallocationChoice.REJECT) == OverallocationChoice.TRIM: + build.trim_allocated_stock() + build.complete_build(request.user) diff --git a/InvenTree/build/test_api.py b/InvenTree/build/test_api.py index 8af14ddb67..02304b0066 100644 --- a/InvenTree/build/test_api.py +++ b/InvenTree/build/test_api.py @@ -717,6 +717,105 @@ class BuildAllocationTest(BuildAPITest): self.assertEqual(allocation.stock_item.pk, 2) +class BuildOverallocationTest(BuildAPITest): + """Unit tests for over allocation of stock items against a build order. + + Using same Build ID=1 as allocation test above. + """ + + def setUp(self): + """Basic operation as part of test suite setup""" + super().setUp() + + self.assignRole('build.add') + self.assignRole('build.change') + + self.build = Build.objects.get(pk=1) + self.url = reverse('api-build-finish', kwargs={'pk': self.build.pk}) + + StockItem.objects.create(part=Part.objects.get(pk=50), quantity=30) + + # Keep some state for use in later assertions, and then overallocate + self.state = {} + self.allocation = {} + for i, bi in enumerate(self.build.part.bom_items.all()): + rq = self.build.required_quantity(bi, None) + i + 1 + si = StockItem.objects.filter(part=bi.sub_part, quantity__gte=rq).first() + + self.state[bi.sub_part] = (si, si.quantity, rq) + BuildItem.objects.create( + build=self.build, + stock_item=si, + quantity=rq, + ) + + # create and complete outputs + self.build.create_build_output(self.build.quantity) + outputs = self.build.build_outputs.all() + self.build.complete_build_output(outputs[0], self.user) + + # Validate expected state after set-up. + self.assertEqual(self.build.incomplete_outputs.count(), 0) + self.assertEqual(self.build.complete_outputs.count(), 1) + self.assertEqual(self.build.completed, self.build.quantity) + + def test_overallocated_requires_acceptance(self): + """Test build order cannot complete with overallocated items.""" + # Try to complete the build (it should fail due to overallocation) + response = self.post( + self.url, + {}, + expected_code=400 + ) + self.assertTrue('accept_overallocated' in response.data) + + # Check stock items have not reduced at all + for si, oq, _ in self.state.values(): + si.refresh_from_db() + self.assertEqual(si.quantity, oq) + + # Accept overallocated stock + self.post( + self.url, + { + 'accept_overallocated': 'accept', + }, + expected_code=201, + ) + + self.build.refresh_from_db() + + # Build should have been marked as complete + self.assertTrue(self.build.is_complete) + + # Check stock items have reduced in-line with the overallocation + for si, oq, rq in self.state.values(): + si.refresh_from_db() + self.assertEqual(si.quantity, oq - rq) + + def test_overallocated_can_trim(self): + """Test build order will trim/de-allocate overallocated stock when requested.""" + self.post( + self.url, + { + 'accept_overallocated': 'trim', + }, + expected_code=201, + ) + + self.build.refresh_from_db() + + # Build should have been marked as complete + self.assertTrue(self.build.is_complete) + + # Check stock items have reduced only by bom requirement (overallocation trimmed) + for bi in self.build.part.bom_items.all(): + si, oq, _ = self.state[bi.sub_part] + rq = self.build.required_quantity(bi, None) + si.refresh_from_db() + self.assertEqual(si.quantity, oq - rq) + + class BuildListTest(BuildAPITest): """Tests for the BuildOrder LIST API.""" diff --git a/InvenTree/build/test_build.py b/InvenTree/build/test_build.py index 79c7953c1d..23925eba17 100644 --- a/InvenTree/build/test_build.py +++ b/InvenTree/build/test_build.py @@ -7,6 +7,7 @@ from django.test import TestCase from django.contrib.auth import get_user_model from django.contrib.auth.models import Group from django.core.exceptions import ValidationError +from django.db.models import Sum from InvenTree import status_codes as status @@ -17,6 +18,9 @@ from part.models import Part, BomItem, BomItemSubstitute from stock.models import StockItem from users.models import Owner +import logging +logger = logging.getLogger('inventree') + class BuildTestBase(TestCase): """Run some tests to ensure that the Build model is working properly.""" @@ -120,9 +124,9 @@ class BuildTestBase(TestCase): self.stock_2_1 = StockItem.objects.create(part=self.sub_part_2, quantity=5) self.stock_2_2 = StockItem.objects.create(part=self.sub_part_2, quantity=5) - self.stock_2_2 = StockItem.objects.create(part=self.sub_part_2, quantity=5) - self.stock_2_2 = StockItem.objects.create(part=self.sub_part_2, quantity=5) - self.stock_2_2 = StockItem.objects.create(part=self.sub_part_2, quantity=5) + self.stock_2_3 = StockItem.objects.create(part=self.sub_part_2, quantity=5) + self.stock_2_4 = StockItem.objects.create(part=self.sub_part_2, quantity=5) + self.stock_2_5 = StockItem.objects.create(part=self.sub_part_2, quantity=5) self.stock_3_1 = StockItem.objects.create(part=self.sub_part_3, quantity=1000) @@ -375,6 +379,65 @@ class BuildTest(BuildTestBase): self.assertTrue(self.build.are_untracked_parts_allocated()) + def test_overallocation_and_trim(self): + """Test overallocation of stock and trim function""" + + # Fully allocate tracked stock (not eligible for trimming) + self.allocate_stock( + self.output_1, + { + self.stock_3_1: 6, + } + ) + self.allocate_stock( + self.output_2, + { + self.stock_3_1: 14, + } + ) + # Fully allocate part 1 (should be left alone) + self.allocate_stock( + None, + { + self.stock_1_1: 3, + self.stock_1_2: 47, + } + ) + + extra_2_1 = StockItem.objects.create(part=self.sub_part_2, quantity=6) + extra_2_2 = StockItem.objects.create(part=self.sub_part_2, quantity=4) + + # Overallocate part 2 (30 needed) + self.allocate_stock( + None, + { + self.stock_2_1: 5, + self.stock_2_2: 5, + self.stock_2_3: 5, + self.stock_2_4: 5, + self.stock_2_5: 5, # 25 + extra_2_1: 6, # 31 + extra_2_2: 4, # 35 + } + ) + self.assertTrue(self.build.has_overallocated_parts(None)) + + self.build.trim_allocated_stock() + self.assertFalse(self.build.has_overallocated_parts(None)) + + self.build.complete_build_output(self.output_1, None) + self.build.complete_build_output(self.output_2, None) + self.assertTrue(self.build.can_complete) + + self.build.complete_build(None) + + self.assertEqual(self.build.status, status.BuildStatus.COMPLETE) + + # Check stock items are in expected state. + self.assertEqual(StockItem.objects.get(pk=self.stock_1_2.pk).quantity, 53) + self.assertEqual(StockItem.objects.filter(part=self.sub_part_2).aggregate(Sum('quantity'))['quantity__sum'], 5) + self.assertEqual(StockItem.objects.get(pk=self.stock_3_1.pk).quantity, 980) + def test_cancel(self): """Test cancellation of the build""" From 4ae3cf9a9c97e9843b45b8bc4f3871cf7fc53e12 Mon Sep 17 00:00:00 2001 From: Oliver Date: Thu, 11 Aug 2022 12:00:39 +1000 Subject: [PATCH 08/60] New Crowdin updates (#3507) * updated translation base * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- InvenTree/locale/cs/LC_MESSAGES/django.po | 126 ++++++++------- InvenTree/locale/de/LC_MESSAGES/django.po | 126 ++++++++------- InvenTree/locale/el/LC_MESSAGES/django.po | 126 ++++++++------- InvenTree/locale/en/LC_MESSAGES/django.po | 26 ++-- InvenTree/locale/es/LC_MESSAGES/django.po | 126 ++++++++------- InvenTree/locale/es_MX/LC_MESSAGES/django.po | 26 ++-- InvenTree/locale/fa/LC_MESSAGES/django.po | 126 ++++++++------- InvenTree/locale/fr/LC_MESSAGES/django.po | 130 ++++++++-------- InvenTree/locale/he/LC_MESSAGES/django.po | 126 ++++++++------- InvenTree/locale/hu/LC_MESSAGES/django.po | 130 ++++++++-------- InvenTree/locale/id/LC_MESSAGES/django.po | 126 ++++++++------- InvenTree/locale/it/LC_MESSAGES/django.po | 126 ++++++++------- InvenTree/locale/ja/LC_MESSAGES/django.po | 126 ++++++++------- InvenTree/locale/ko/LC_MESSAGES/django.po | 126 ++++++++------- InvenTree/locale/nl/LC_MESSAGES/django.po | 152 ++++++++++--------- InvenTree/locale/no/LC_MESSAGES/django.po | 126 ++++++++------- InvenTree/locale/pl/LC_MESSAGES/django.po | 126 ++++++++------- InvenTree/locale/pt/LC_MESSAGES/django.po | 126 ++++++++------- InvenTree/locale/pt_br/LC_MESSAGES/django.po | 26 ++-- InvenTree/locale/ru/LC_MESSAGES/django.po | 126 ++++++++------- InvenTree/locale/sv/LC_MESSAGES/django.po | 126 ++++++++------- InvenTree/locale/th/LC_MESSAGES/django.po | 126 ++++++++------- InvenTree/locale/tr/LC_MESSAGES/django.po | 126 ++++++++------- InvenTree/locale/vi/LC_MESSAGES/django.po | 126 ++++++++------- InvenTree/locale/zh/LC_MESSAGES/django.po | 130 ++++++++-------- 25 files changed, 1532 insertions(+), 1356 deletions(-) diff --git a/InvenTree/locale/cs/LC_MESSAGES/django.po b/InvenTree/locale/cs/LC_MESSAGES/django.po index 8dece7d55b..3175e03df5 100644 --- a/InvenTree/locale/cs/LC_MESSAGES/django.po +++ b/InvenTree/locale/cs/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 21:57+0000\n" -"PO-Revision-Date: 2022-08-08 13:04\n" +"POT-Creation-Date: 2022-08-10 11:38+0000\n" +"PO-Revision-Date: 2022-08-10 13:23\n" "Last-Translator: \n" "Language-Team: Czech\n" "Language: cs_CZ\n" @@ -121,44 +121,44 @@ msgstr "" msgid "Supplied URL is not a valid image file" msgstr "" -#: InvenTree/helpers.py:584 +#: InvenTree/helpers.py:598 #, python-brace-format msgid "Duplicate serial: {sn}" msgstr "Duplicitní výrobní číslo: {sn}" -#: InvenTree/helpers.py:591 order/models.py:320 order/models.py:472 +#: InvenTree/helpers.py:605 order/models.py:320 order/models.py:472 msgid "Invalid quantity provided" msgstr "Vyplněno neplatné množství" -#: InvenTree/helpers.py:594 +#: InvenTree/helpers.py:608 msgid "Empty serial number string" msgstr "Nevyplněné výrobní číslo" -#: InvenTree/helpers.py:626 +#: InvenTree/helpers.py:640 #, python-brace-format msgid "Invalid group range: {g}" msgstr "" -#: InvenTree/helpers.py:629 +#: InvenTree/helpers.py:643 #, python-brace-format msgid "Invalid group: {g}" msgstr "Neplatná skupina: {g}" -#: InvenTree/helpers.py:657 +#: InvenTree/helpers.py:671 #, python-brace-format msgid "Invalid group sequence: {g}" msgstr "" -#: InvenTree/helpers.py:665 +#: InvenTree/helpers.py:679 #, python-brace-format msgid "Invalid/no group {group}" msgstr "Neplatná/nevyplněná skupina {group}" -#: InvenTree/helpers.py:671 +#: InvenTree/helpers.py:685 msgid "No serial numbers found" msgstr "Nenalezena žádná výrobní čísla" -#: InvenTree/helpers.py:675 +#: InvenTree/helpers.py:689 #, python-brace-format msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "" @@ -816,7 +816,7 @@ msgstr "" msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:213 build/serializers.py:784 +#: build/models.py:213 build/serializers.py:803 #: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873 msgid "Source Location" msgstr "" @@ -942,42 +942,42 @@ msgstr "" msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:1143 +#: build/models.py:1171 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "" -#: build/models.py:1152 +#: build/models.py:1180 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "" -#: build/models.py:1162 order/models.py:1379 +#: build/models.py:1190 order/models.py:1379 msgid "Stock item is over-allocated" msgstr "" -#: build/models.py:1168 order/models.py:1382 +#: build/models.py:1196 order/models.py:1382 msgid "Allocation quantity must be greater than zero" msgstr "" -#: build/models.py:1174 +#: build/models.py:1202 msgid "Quantity must be 1 for serialized stock" msgstr "" -#: build/models.py:1231 +#: build/models.py:1259 msgid "Selected stock item not found in BOM" msgstr "" -#: build/models.py:1300 stock/templates/stock/item_base.html:177 +#: build/models.py:1328 stock/templates/stock/item_base.html:177 #: templates/InvenTree/search.html:137 templates/js/translated/build.js:2455 #: templates/navbar.html:38 msgid "Build" msgstr "" -#: build/models.py:1301 +#: build/models.py:1329 msgid "Build to allocate parts" msgstr "" -#: build/models.py:1317 build/serializers.py:629 order/serializers.py:1015 +#: build/models.py:1345 build/serializers.py:648 order/serializers.py:1015 #: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 #: stock/serializers.py:880 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 @@ -992,11 +992,11 @@ msgstr "" msgid "Stock Item" msgstr "" -#: build/models.py:1318 +#: build/models.py:1346 msgid "Source stock item" msgstr "" -#: build/models.py:1330 build/serializers.py:193 +#: build/models.py:1358 build/serializers.py:193 #: build/templates/build/build_base.html:82 #: build/templates/build/detail.html:34 common/models.py:1678 #: company/templates/company/supplier_part.html:279 order/models.py:897 @@ -1033,19 +1033,19 @@ msgstr "" msgid "Quantity" msgstr "" -#: build/models.py:1331 +#: build/models.py:1359 msgid "Stock quantity to allocate to build" msgstr "" -#: build/models.py:1339 +#: build/models.py:1367 msgid "Install into" msgstr "" -#: build/models.py:1340 +#: build/models.py:1368 msgid "Destination stock item" msgstr "" -#: build/serializers.py:138 build/serializers.py:658 +#: build/serializers.py:138 build/serializers.py:677 #: templates/js/translated/build.js:1166 msgid "Build Output" msgstr "" @@ -1070,7 +1070,7 @@ msgstr "" msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:208 build/serializers.py:649 order/models.py:318 +#: build/serializers.py:208 build/serializers.py:668 order/models.py:318 #: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 #: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 #: stock/serializers.py:302 @@ -1164,117 +1164,125 @@ msgstr "" msgid "Delete any build outputs which have not been completed" msgstr "" -#: build/serializers.py:480 -msgid "Accept Overallocated" +#: build/serializers.py:485 +msgid "Accept as consumed by this build order" msgstr "" -#: build/serializers.py:481 -msgid "Accept stock items which have been overallocated to this build order" +#: build/serializers.py:486 +msgid "Deallocate before completing this build order" msgstr "" -#: build/serializers.py:491 -msgid "Some stock items have been overallocated" +#: build/serializers.py:494 +msgid "Overallocated Stock" msgstr "" #: build/serializers.py:496 +msgid "How do you want to handle extra stock items assigned to the build order" +msgstr "" + +#: build/serializers.py:506 +msgid "Some stock items have been overallocated" +msgstr "" + +#: build/serializers.py:511 msgid "Accept Unallocated" msgstr "" -#: build/serializers.py:497 +#: build/serializers.py:512 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:507 templates/js/translated/build.js:195 +#: build/serializers.py:522 templates/js/translated/build.js:195 msgid "Required stock has not been fully allocated" msgstr "" -#: build/serializers.py:512 +#: build/serializers.py:527 msgid "Accept Incomplete" msgstr "" -#: build/serializers.py:513 +#: build/serializers.py:528 msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:523 templates/js/translated/build.js:199 +#: build/serializers.py:538 templates/js/translated/build.js:199 msgid "Required build quantity has not been completed" msgstr "" -#: build/serializers.py:532 +#: build/serializers.py:547 msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:535 build/templates/build/build_base.html:95 +#: build/serializers.py:550 build/templates/build/build_base.html:95 msgid "No build outputs have been created for this build order" msgstr "" -#: build/serializers.py:561 build/serializers.py:606 part/models.py:2719 +#: build/serializers.py:580 build/serializers.py:625 part/models.py:2719 #: part/models.py:2853 msgid "BOM Item" msgstr "" -#: build/serializers.py:571 +#: build/serializers.py:590 msgid "Build output" msgstr "" -#: build/serializers.py:579 +#: build/serializers.py:598 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:620 +#: build/serializers.py:639 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:635 stock/serializers.py:767 +#: build/serializers.py:654 stock/serializers.py:767 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:693 order/serializers.py:1073 +#: build/serializers.py:712 order/serializers.py:1073 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:699 +#: build/serializers.py:718 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:706 +#: build/serializers.py:725 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:711 +#: build/serializers.py:730 msgid "This stock item has already been allocated to this build output" msgstr "" -#: build/serializers.py:734 order/serializers.py:1319 +#: build/serializers.py:753 order/serializers.py:1319 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:785 +#: build/serializers.py:804 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:793 +#: build/serializers.py:812 msgid "Exclude Location" msgstr "" -#: build/serializers.py:794 +#: build/serializers.py:813 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:799 +#: build/serializers.py:818 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:800 +#: build/serializers.py:819 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:805 +#: build/serializers.py:824 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:806 +#: build/serializers.py:825 msgid "Allow allocation of substitute parts" msgstr "" @@ -5520,7 +5528,7 @@ msgstr "" msgid "Unknown database" msgstr "" -#: part/templatetags/inventree_extras.py:222 +#: part/templatetags/inventree_extras.py:229 #, python-brace-format msgid "{title} v{version}" msgstr "" diff --git a/InvenTree/locale/de/LC_MESSAGES/django.po b/InvenTree/locale/de/LC_MESSAGES/django.po index 81109a9b6b..0f89801511 100644 --- a/InvenTree/locale/de/LC_MESSAGES/django.po +++ b/InvenTree/locale/de/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 21:57+0000\n" -"PO-Revision-Date: 2022-08-08 13:04\n" +"POT-Creation-Date: 2022-08-10 11:38+0000\n" +"PO-Revision-Date: 2022-08-10 13:23\n" "Last-Translator: \n" "Language-Team: German\n" "Language: de_DE\n" @@ -121,44 +121,44 @@ msgstr "Remote-Server gab leere Antwort zurück" msgid "Supplied URL is not a valid image file" msgstr "Angegebene URL ist kein gültiges Bild" -#: InvenTree/helpers.py:584 +#: InvenTree/helpers.py:598 #, python-brace-format msgid "Duplicate serial: {sn}" msgstr "Doppelte Seriennummer: {sn}" -#: InvenTree/helpers.py:591 order/models.py:320 order/models.py:472 +#: InvenTree/helpers.py:605 order/models.py:320 order/models.py:472 msgid "Invalid quantity provided" msgstr "Keine gültige Menge" -#: InvenTree/helpers.py:594 +#: InvenTree/helpers.py:608 msgid "Empty serial number string" msgstr "Keine Seriennummer angegeben" -#: InvenTree/helpers.py:626 +#: InvenTree/helpers.py:640 #, python-brace-format msgid "Invalid group range: {g}" msgstr "Ungültiger Gruppenbereich: {g}" -#: InvenTree/helpers.py:629 +#: InvenTree/helpers.py:643 #, python-brace-format msgid "Invalid group: {g}" msgstr "Ungültige Gruppe: {g}" -#: InvenTree/helpers.py:657 +#: InvenTree/helpers.py:671 #, python-brace-format msgid "Invalid group sequence: {g}" msgstr "Ungültige Gruppensequenz: {g}" -#: InvenTree/helpers.py:665 +#: InvenTree/helpers.py:679 #, python-brace-format msgid "Invalid/no group {group}" msgstr "Ungültige/Keine Gruppe {group}" -#: InvenTree/helpers.py:671 +#: InvenTree/helpers.py:685 msgid "No serial numbers found" msgstr "Keine Seriennummern gefunden" -#: InvenTree/helpers.py:675 +#: InvenTree/helpers.py:689 #, python-brace-format msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "Anzahl der eindeutigen Seriennummern ({s}) muss mit der Anzahl ({q}) übereinstimmen" @@ -816,7 +816,7 @@ msgstr "Auftrag Referenz" msgid "SalesOrder to which this build is allocated" msgstr "Bestellung, die diesem Bauauftrag zugewiesen ist" -#: build/models.py:213 build/serializers.py:784 +#: build/models.py:213 build/serializers.py:803 #: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873 msgid "Source Location" msgstr "Quell-Lagerort" @@ -942,42 +942,42 @@ msgstr "Endprodukt bereits hergstellt" msgid "Build output does not match Build Order" msgstr "Endprodukt stimmt nicht mit dem Bauauftrag überein" -#: build/models.py:1143 +#: build/models.py:1171 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "Bauauftragsposition muss ein Endprodukt festlegen, da der übergeordnete Teil verfolgbar ist" -#: build/models.py:1152 +#: build/models.py:1180 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "Zugewiesene Menge ({q}) darf nicht verfügbare Menge ({a}) übersteigen" -#: build/models.py:1162 order/models.py:1379 +#: build/models.py:1190 order/models.py:1379 msgid "Stock item is over-allocated" msgstr "BestandObjekt ist zu oft zugewiesen" -#: build/models.py:1168 order/models.py:1382 +#: build/models.py:1196 order/models.py:1382 msgid "Allocation quantity must be greater than zero" msgstr "Reserviermenge muss größer null sein" -#: build/models.py:1174 +#: build/models.py:1202 msgid "Quantity must be 1 for serialized stock" msgstr "Anzahl muss 1 für Objekte mit Seriennummer sein" -#: build/models.py:1231 +#: build/models.py:1259 msgid "Selected stock item not found in BOM" msgstr "Ausgewähltes Bestands-Objekt nicht in Stückliste für Teil '{p}' gefunden" -#: build/models.py:1300 stock/templates/stock/item_base.html:177 +#: build/models.py:1328 stock/templates/stock/item_base.html:177 #: templates/InvenTree/search.html:137 templates/js/translated/build.js:2455 #: templates/navbar.html:38 msgid "Build" msgstr "Bauauftrag" -#: build/models.py:1301 +#: build/models.py:1329 msgid "Build to allocate parts" msgstr "Bauauftrag starten um Teile zuzuweisen" -#: build/models.py:1317 build/serializers.py:629 order/serializers.py:1015 +#: build/models.py:1345 build/serializers.py:648 order/serializers.py:1015 #: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 #: stock/serializers.py:880 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 @@ -992,11 +992,11 @@ msgstr "Bauauftrag starten um Teile zuzuweisen" msgid "Stock Item" msgstr "Lagerartikel" -#: build/models.py:1318 +#: build/models.py:1346 msgid "Source stock item" msgstr "Quell-Lagerartikel" -#: build/models.py:1330 build/serializers.py:193 +#: build/models.py:1358 build/serializers.py:193 #: build/templates/build/build_base.html:82 #: build/templates/build/detail.html:34 common/models.py:1678 #: company/templates/company/supplier_part.html:279 order/models.py:897 @@ -1033,19 +1033,19 @@ msgstr "Quell-Lagerartikel" msgid "Quantity" msgstr "Anzahl" -#: build/models.py:1331 +#: build/models.py:1359 msgid "Stock quantity to allocate to build" msgstr "Anzahl an Lagerartikel dem Bauauftrag zuweisen" -#: build/models.py:1339 +#: build/models.py:1367 msgid "Install into" msgstr "Installiere in" -#: build/models.py:1340 +#: build/models.py:1368 msgid "Destination stock item" msgstr "Ziel-Lagerartikel" -#: build/serializers.py:138 build/serializers.py:658 +#: build/serializers.py:138 build/serializers.py:677 #: templates/js/translated/build.js:1166 msgid "Build Output" msgstr "Endprodukt" @@ -1070,7 +1070,7 @@ msgstr "Dieses Endprodukt ist nicht vollständig zugewiesen" msgid "Enter quantity for build output" msgstr "Menge der Endprodukte angeben" -#: build/serializers.py:208 build/serializers.py:649 order/models.py:318 +#: build/serializers.py:208 build/serializers.py:668 order/models.py:318 #: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 #: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 #: stock/serializers.py:302 @@ -1164,117 +1164,125 @@ msgstr "Unfertige Endprodukte entfernen" msgid "Delete any build outputs which have not been completed" msgstr "Lösche alle noch nicht abgeschlossenen Endprodukte" -#: build/serializers.py:480 -msgid "Accept Overallocated" +#: build/serializers.py:485 +msgid "Accept as consumed by this build order" msgstr "" -#: build/serializers.py:481 -msgid "Accept stock items which have been overallocated to this build order" +#: build/serializers.py:486 +msgid "Deallocate before completing this build order" msgstr "" -#: build/serializers.py:491 -msgid "Some stock items have been overallocated" +#: build/serializers.py:494 +msgid "Overallocated Stock" msgstr "" #: build/serializers.py:496 +msgid "How do you want to handle extra stock items assigned to the build order" +msgstr "" + +#: build/serializers.py:506 +msgid "Some stock items have been overallocated" +msgstr "" + +#: build/serializers.py:511 msgid "Accept Unallocated" msgstr "Nicht zugewiesene akzeptieren" -#: build/serializers.py:497 +#: build/serializers.py:512 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "Akzeptieren, dass Lagerartikel diesem Bauauftrag nicht vollständig zugewiesen wurden" -#: build/serializers.py:507 templates/js/translated/build.js:195 +#: build/serializers.py:522 templates/js/translated/build.js:195 msgid "Required stock has not been fully allocated" msgstr "Benötigter Bestand wurde nicht vollständig zugewiesen" -#: build/serializers.py:512 +#: build/serializers.py:527 msgid "Accept Incomplete" msgstr "Unvollständig Zuweisung akzeptieren" -#: build/serializers.py:513 +#: build/serializers.py:528 msgid "Accept that the required number of build outputs have not been completed" msgstr "Akzeptieren, dass die erforderliche Anzahl der Bauaufträge nicht abgeschlossen ist" -#: build/serializers.py:523 templates/js/translated/build.js:199 +#: build/serializers.py:538 templates/js/translated/build.js:199 msgid "Required build quantity has not been completed" msgstr "Benötigte Teil-Anzahl wurde noch nicht fertiggestellt" -#: build/serializers.py:532 +#: build/serializers.py:547 msgid "Build order has incomplete outputs" msgstr "Bauauftrag hat unvollständige Aufbauten" -#: build/serializers.py:535 build/templates/build/build_base.html:95 +#: build/serializers.py:550 build/templates/build/build_base.html:95 msgid "No build outputs have been created for this build order" msgstr "Es wurden keine Endprodukte für diesen Bauauftrag erstellt" -#: build/serializers.py:561 build/serializers.py:606 part/models.py:2719 +#: build/serializers.py:580 build/serializers.py:625 part/models.py:2719 #: part/models.py:2853 msgid "BOM Item" msgstr "Stücklisten-Position" -#: build/serializers.py:571 +#: build/serializers.py:590 msgid "Build output" msgstr "Endprodukt" -#: build/serializers.py:579 +#: build/serializers.py:598 msgid "Build output must point to the same build" msgstr "Endprodukt muss auf den gleichen Bauauftrag verweisen" -#: build/serializers.py:620 +#: build/serializers.py:639 msgid "bom_item.part must point to the same part as the build order" msgstr "bom_item.part muss auf dasselbe Teil verweisen wie der Bauauftrag" -#: build/serializers.py:635 stock/serializers.py:767 +#: build/serializers.py:654 stock/serializers.py:767 msgid "Item must be in stock" msgstr "Teil muss auf Lager sein" -#: build/serializers.py:693 order/serializers.py:1073 +#: build/serializers.py:712 order/serializers.py:1073 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "Verfügbare Menge ({q}) überschritten" -#: build/serializers.py:699 +#: build/serializers.py:718 msgid "Build output must be specified for allocation of tracked parts" msgstr "Für Zuweisung von verfolgten Teilen muss ein Endprodukt angegeben sein" -#: build/serializers.py:706 +#: build/serializers.py:725 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "Endprodukt kann bei Zuweisung nicht-verfolgter Teile nicht angegeben werden" -#: build/serializers.py:711 +#: build/serializers.py:730 msgid "This stock item has already been allocated to this build output" msgstr "Dieser Lagerbestand wurde bereits diesem Endprodukt zugewiesen" -#: build/serializers.py:734 order/serializers.py:1319 +#: build/serializers.py:753 order/serializers.py:1319 msgid "Allocation items must be provided" msgstr "Zuweisungen müssen angegeben werden" -#: build/serializers.py:785 +#: build/serializers.py:804 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "Lagerort, von dem Teile bezogen werden sollen (leer lassen, um sie von jedem Lagerort zu nehmen)" -#: build/serializers.py:793 +#: build/serializers.py:812 msgid "Exclude Location" msgstr "Lagerort ausschließen" -#: build/serializers.py:794 +#: build/serializers.py:813 msgid "Exclude stock items from this selected location" msgstr "Lagerartikel vom ausgewählten Ort ausschließen" -#: build/serializers.py:799 +#: build/serializers.py:818 msgid "Interchangeable Stock" msgstr "Wechselbares Lagerbestand" -#: build/serializers.py:800 +#: build/serializers.py:819 msgid "Stock items in multiple locations can be used interchangeably" msgstr "Lagerartikel an mehreren Standorten können austauschbar verwendet werden" -#: build/serializers.py:805 +#: build/serializers.py:824 msgid "Substitute Stock" msgstr "Ersatzbestand" -#: build/serializers.py:806 +#: build/serializers.py:825 msgid "Allow allocation of substitute parts" msgstr "Zuordnung von Ersatzteilen erlauben" @@ -5520,7 +5528,7 @@ msgstr "Neue Variante von Vorlage anlegen '%(full_name)s'." msgid "Unknown database" msgstr "Unbekannte Datenbank" -#: part/templatetags/inventree_extras.py:222 +#: part/templatetags/inventree_extras.py:229 #, python-brace-format msgid "{title} v{version}" msgstr "{title} v{version}" diff --git a/InvenTree/locale/el/LC_MESSAGES/django.po b/InvenTree/locale/el/LC_MESSAGES/django.po index 8695c2a2da..471b09711b 100644 --- a/InvenTree/locale/el/LC_MESSAGES/django.po +++ b/InvenTree/locale/el/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 21:57+0000\n" -"PO-Revision-Date: 2022-08-08 13:04\n" +"POT-Creation-Date: 2022-08-10 11:38+0000\n" +"PO-Revision-Date: 2022-08-10 13:23\n" "Last-Translator: \n" "Language-Team: Greek\n" "Language: el_GR\n" @@ -121,44 +121,44 @@ msgstr "" msgid "Supplied URL is not a valid image file" msgstr "" -#: InvenTree/helpers.py:584 +#: InvenTree/helpers.py:598 #, python-brace-format msgid "Duplicate serial: {sn}" msgstr "" -#: InvenTree/helpers.py:591 order/models.py:320 order/models.py:472 +#: InvenTree/helpers.py:605 order/models.py:320 order/models.py:472 msgid "Invalid quantity provided" msgstr "" -#: InvenTree/helpers.py:594 +#: InvenTree/helpers.py:608 msgid "Empty serial number string" msgstr "" -#: InvenTree/helpers.py:626 +#: InvenTree/helpers.py:640 #, python-brace-format msgid "Invalid group range: {g}" msgstr "" -#: InvenTree/helpers.py:629 +#: InvenTree/helpers.py:643 #, python-brace-format msgid "Invalid group: {g}" msgstr "" -#: InvenTree/helpers.py:657 +#: InvenTree/helpers.py:671 #, python-brace-format msgid "Invalid group sequence: {g}" msgstr "" -#: InvenTree/helpers.py:665 +#: InvenTree/helpers.py:679 #, python-brace-format msgid "Invalid/no group {group}" msgstr "" -#: InvenTree/helpers.py:671 +#: InvenTree/helpers.py:685 msgid "No serial numbers found" msgstr "" -#: InvenTree/helpers.py:675 +#: InvenTree/helpers.py:689 #, python-brace-format msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "" @@ -816,7 +816,7 @@ msgstr "" msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:213 build/serializers.py:784 +#: build/models.py:213 build/serializers.py:803 #: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873 msgid "Source Location" msgstr "" @@ -942,42 +942,42 @@ msgstr "" msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:1143 +#: build/models.py:1171 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "" -#: build/models.py:1152 +#: build/models.py:1180 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "" -#: build/models.py:1162 order/models.py:1379 +#: build/models.py:1190 order/models.py:1379 msgid "Stock item is over-allocated" msgstr "" -#: build/models.py:1168 order/models.py:1382 +#: build/models.py:1196 order/models.py:1382 msgid "Allocation quantity must be greater than zero" msgstr "" -#: build/models.py:1174 +#: build/models.py:1202 msgid "Quantity must be 1 for serialized stock" msgstr "" -#: build/models.py:1231 +#: build/models.py:1259 msgid "Selected stock item not found in BOM" msgstr "" -#: build/models.py:1300 stock/templates/stock/item_base.html:177 +#: build/models.py:1328 stock/templates/stock/item_base.html:177 #: templates/InvenTree/search.html:137 templates/js/translated/build.js:2455 #: templates/navbar.html:38 msgid "Build" msgstr "" -#: build/models.py:1301 +#: build/models.py:1329 msgid "Build to allocate parts" msgstr "" -#: build/models.py:1317 build/serializers.py:629 order/serializers.py:1015 +#: build/models.py:1345 build/serializers.py:648 order/serializers.py:1015 #: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 #: stock/serializers.py:880 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 @@ -992,11 +992,11 @@ msgstr "" msgid "Stock Item" msgstr "" -#: build/models.py:1318 +#: build/models.py:1346 msgid "Source stock item" msgstr "" -#: build/models.py:1330 build/serializers.py:193 +#: build/models.py:1358 build/serializers.py:193 #: build/templates/build/build_base.html:82 #: build/templates/build/detail.html:34 common/models.py:1678 #: company/templates/company/supplier_part.html:279 order/models.py:897 @@ -1033,19 +1033,19 @@ msgstr "" msgid "Quantity" msgstr "" -#: build/models.py:1331 +#: build/models.py:1359 msgid "Stock quantity to allocate to build" msgstr "" -#: build/models.py:1339 +#: build/models.py:1367 msgid "Install into" msgstr "" -#: build/models.py:1340 +#: build/models.py:1368 msgid "Destination stock item" msgstr "" -#: build/serializers.py:138 build/serializers.py:658 +#: build/serializers.py:138 build/serializers.py:677 #: templates/js/translated/build.js:1166 msgid "Build Output" msgstr "" @@ -1070,7 +1070,7 @@ msgstr "" msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:208 build/serializers.py:649 order/models.py:318 +#: build/serializers.py:208 build/serializers.py:668 order/models.py:318 #: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 #: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 #: stock/serializers.py:302 @@ -1164,117 +1164,125 @@ msgstr "" msgid "Delete any build outputs which have not been completed" msgstr "" -#: build/serializers.py:480 -msgid "Accept Overallocated" +#: build/serializers.py:485 +msgid "Accept as consumed by this build order" msgstr "" -#: build/serializers.py:481 -msgid "Accept stock items which have been overallocated to this build order" +#: build/serializers.py:486 +msgid "Deallocate before completing this build order" msgstr "" -#: build/serializers.py:491 -msgid "Some stock items have been overallocated" +#: build/serializers.py:494 +msgid "Overallocated Stock" msgstr "" #: build/serializers.py:496 +msgid "How do you want to handle extra stock items assigned to the build order" +msgstr "" + +#: build/serializers.py:506 +msgid "Some stock items have been overallocated" +msgstr "" + +#: build/serializers.py:511 msgid "Accept Unallocated" msgstr "" -#: build/serializers.py:497 +#: build/serializers.py:512 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:507 templates/js/translated/build.js:195 +#: build/serializers.py:522 templates/js/translated/build.js:195 msgid "Required stock has not been fully allocated" msgstr "" -#: build/serializers.py:512 +#: build/serializers.py:527 msgid "Accept Incomplete" msgstr "" -#: build/serializers.py:513 +#: build/serializers.py:528 msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:523 templates/js/translated/build.js:199 +#: build/serializers.py:538 templates/js/translated/build.js:199 msgid "Required build quantity has not been completed" msgstr "" -#: build/serializers.py:532 +#: build/serializers.py:547 msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:535 build/templates/build/build_base.html:95 +#: build/serializers.py:550 build/templates/build/build_base.html:95 msgid "No build outputs have been created for this build order" msgstr "" -#: build/serializers.py:561 build/serializers.py:606 part/models.py:2719 +#: build/serializers.py:580 build/serializers.py:625 part/models.py:2719 #: part/models.py:2853 msgid "BOM Item" msgstr "" -#: build/serializers.py:571 +#: build/serializers.py:590 msgid "Build output" msgstr "" -#: build/serializers.py:579 +#: build/serializers.py:598 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:620 +#: build/serializers.py:639 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:635 stock/serializers.py:767 +#: build/serializers.py:654 stock/serializers.py:767 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:693 order/serializers.py:1073 +#: build/serializers.py:712 order/serializers.py:1073 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:699 +#: build/serializers.py:718 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:706 +#: build/serializers.py:725 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:711 +#: build/serializers.py:730 msgid "This stock item has already been allocated to this build output" msgstr "" -#: build/serializers.py:734 order/serializers.py:1319 +#: build/serializers.py:753 order/serializers.py:1319 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:785 +#: build/serializers.py:804 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:793 +#: build/serializers.py:812 msgid "Exclude Location" msgstr "" -#: build/serializers.py:794 +#: build/serializers.py:813 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:799 +#: build/serializers.py:818 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:800 +#: build/serializers.py:819 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:805 +#: build/serializers.py:824 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:806 +#: build/serializers.py:825 msgid "Allow allocation of substitute parts" msgstr "" @@ -5520,7 +5528,7 @@ msgstr "" msgid "Unknown database" msgstr "" -#: part/templatetags/inventree_extras.py:222 +#: part/templatetags/inventree_extras.py:229 #, python-brace-format msgid "{title} v{version}" msgstr "" diff --git a/InvenTree/locale/en/LC_MESSAGES/django.po b/InvenTree/locale/en/LC_MESSAGES/django.po index 988374f9ab..b58048382b 100644 --- a/InvenTree/locale/en/LC_MESSAGES/django.po +++ b/InvenTree/locale/en/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 12:49+0000\n" +"POT-Creation-Date: 2022-08-09 06:07+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -18,7 +18,7 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: InvenTree/api.py:52 +#: InvenTree/api.py:54 msgid "API endpoint not found" msgstr "" @@ -122,44 +122,44 @@ msgstr "" msgid "Supplied URL is not a valid image file" msgstr "" -#: InvenTree/helpers.py:584 +#: InvenTree/helpers.py:598 #, python-brace-format msgid "Duplicate serial: {sn}" msgstr "" -#: InvenTree/helpers.py:591 order/models.py:320 order/models.py:472 +#: InvenTree/helpers.py:605 order/models.py:320 order/models.py:472 msgid "Invalid quantity provided" msgstr "" -#: InvenTree/helpers.py:594 +#: InvenTree/helpers.py:608 msgid "Empty serial number string" msgstr "" -#: InvenTree/helpers.py:626 +#: InvenTree/helpers.py:640 #, python-brace-format msgid "Invalid group range: {g}" msgstr "" -#: InvenTree/helpers.py:629 +#: InvenTree/helpers.py:643 #, python-brace-format msgid "Invalid group: {g}" msgstr "" -#: InvenTree/helpers.py:657 +#: InvenTree/helpers.py:671 #, python-brace-format msgid "Invalid group sequence: {g}" msgstr "" -#: InvenTree/helpers.py:665 +#: InvenTree/helpers.py:679 #, python-brace-format msgid "Invalid/no group {group}" msgstr "" -#: InvenTree/helpers.py:671 +#: InvenTree/helpers.py:685 msgid "No serial numbers found" msgstr "" -#: InvenTree/helpers.py:675 +#: InvenTree/helpers.py:689 #, python-brace-format msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "" @@ -5517,11 +5517,11 @@ msgstr "" msgid "Create a new variant of template '%(full_name)s'." msgstr "" -#: part/templatetags/inventree_extras.py:157 +#: part/templatetags/inventree_extras.py:177 msgid "Unknown database" msgstr "" -#: part/templatetags/inventree_extras.py:202 +#: part/templatetags/inventree_extras.py:229 #, python-brace-format msgid "{title} v{version}" msgstr "" diff --git a/InvenTree/locale/es/LC_MESSAGES/django.po b/InvenTree/locale/es/LC_MESSAGES/django.po index ce644169b2..4c858dd9d8 100644 --- a/InvenTree/locale/es/LC_MESSAGES/django.po +++ b/InvenTree/locale/es/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 21:57+0000\n" -"PO-Revision-Date: 2022-08-08 13:03\n" +"POT-Creation-Date: 2022-08-10 11:38+0000\n" +"PO-Revision-Date: 2022-08-10 13:22\n" "Last-Translator: \n" "Language-Team: Spanish\n" "Language: es_ES\n" @@ -121,44 +121,44 @@ msgstr "" msgid "Supplied URL is not a valid image file" msgstr "" -#: InvenTree/helpers.py:584 +#: InvenTree/helpers.py:598 #, python-brace-format msgid "Duplicate serial: {sn}" msgstr "" -#: InvenTree/helpers.py:591 order/models.py:320 order/models.py:472 +#: InvenTree/helpers.py:605 order/models.py:320 order/models.py:472 msgid "Invalid quantity provided" msgstr "" -#: InvenTree/helpers.py:594 +#: InvenTree/helpers.py:608 msgid "Empty serial number string" msgstr "" -#: InvenTree/helpers.py:626 +#: InvenTree/helpers.py:640 #, python-brace-format msgid "Invalid group range: {g}" msgstr "" -#: InvenTree/helpers.py:629 +#: InvenTree/helpers.py:643 #, python-brace-format msgid "Invalid group: {g}" msgstr "" -#: InvenTree/helpers.py:657 +#: InvenTree/helpers.py:671 #, python-brace-format msgid "Invalid group sequence: {g}" msgstr "" -#: InvenTree/helpers.py:665 +#: InvenTree/helpers.py:679 #, python-brace-format msgid "Invalid/no group {group}" msgstr "" -#: InvenTree/helpers.py:671 +#: InvenTree/helpers.py:685 msgid "No serial numbers found" msgstr "" -#: InvenTree/helpers.py:675 +#: InvenTree/helpers.py:689 #, python-brace-format msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "" @@ -816,7 +816,7 @@ msgstr "" msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:213 build/serializers.py:784 +#: build/models.py:213 build/serializers.py:803 #: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873 msgid "Source Location" msgstr "" @@ -942,42 +942,42 @@ msgstr "" msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:1143 +#: build/models.py:1171 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "" -#: build/models.py:1152 +#: build/models.py:1180 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "" -#: build/models.py:1162 order/models.py:1379 +#: build/models.py:1190 order/models.py:1379 msgid "Stock item is over-allocated" msgstr "" -#: build/models.py:1168 order/models.py:1382 +#: build/models.py:1196 order/models.py:1382 msgid "Allocation quantity must be greater than zero" msgstr "" -#: build/models.py:1174 +#: build/models.py:1202 msgid "Quantity must be 1 for serialized stock" msgstr "" -#: build/models.py:1231 +#: build/models.py:1259 msgid "Selected stock item not found in BOM" msgstr "" -#: build/models.py:1300 stock/templates/stock/item_base.html:177 +#: build/models.py:1328 stock/templates/stock/item_base.html:177 #: templates/InvenTree/search.html:137 templates/js/translated/build.js:2455 #: templates/navbar.html:38 msgid "Build" msgstr "" -#: build/models.py:1301 +#: build/models.py:1329 msgid "Build to allocate parts" msgstr "" -#: build/models.py:1317 build/serializers.py:629 order/serializers.py:1015 +#: build/models.py:1345 build/serializers.py:648 order/serializers.py:1015 #: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 #: stock/serializers.py:880 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 @@ -992,11 +992,11 @@ msgstr "" msgid "Stock Item" msgstr "" -#: build/models.py:1318 +#: build/models.py:1346 msgid "Source stock item" msgstr "" -#: build/models.py:1330 build/serializers.py:193 +#: build/models.py:1358 build/serializers.py:193 #: build/templates/build/build_base.html:82 #: build/templates/build/detail.html:34 common/models.py:1678 #: company/templates/company/supplier_part.html:279 order/models.py:897 @@ -1033,19 +1033,19 @@ msgstr "" msgid "Quantity" msgstr "" -#: build/models.py:1331 +#: build/models.py:1359 msgid "Stock quantity to allocate to build" msgstr "" -#: build/models.py:1339 +#: build/models.py:1367 msgid "Install into" msgstr "" -#: build/models.py:1340 +#: build/models.py:1368 msgid "Destination stock item" msgstr "" -#: build/serializers.py:138 build/serializers.py:658 +#: build/serializers.py:138 build/serializers.py:677 #: templates/js/translated/build.js:1166 msgid "Build Output" msgstr "" @@ -1070,7 +1070,7 @@ msgstr "" msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:208 build/serializers.py:649 order/models.py:318 +#: build/serializers.py:208 build/serializers.py:668 order/models.py:318 #: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 #: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 #: stock/serializers.py:302 @@ -1164,117 +1164,125 @@ msgstr "" msgid "Delete any build outputs which have not been completed" msgstr "" -#: build/serializers.py:480 -msgid "Accept Overallocated" +#: build/serializers.py:485 +msgid "Accept as consumed by this build order" msgstr "" -#: build/serializers.py:481 -msgid "Accept stock items which have been overallocated to this build order" +#: build/serializers.py:486 +msgid "Deallocate before completing this build order" msgstr "" -#: build/serializers.py:491 -msgid "Some stock items have been overallocated" +#: build/serializers.py:494 +msgid "Overallocated Stock" msgstr "" #: build/serializers.py:496 +msgid "How do you want to handle extra stock items assigned to the build order" +msgstr "" + +#: build/serializers.py:506 +msgid "Some stock items have been overallocated" +msgstr "" + +#: build/serializers.py:511 msgid "Accept Unallocated" msgstr "" -#: build/serializers.py:497 +#: build/serializers.py:512 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:507 templates/js/translated/build.js:195 +#: build/serializers.py:522 templates/js/translated/build.js:195 msgid "Required stock has not been fully allocated" msgstr "" -#: build/serializers.py:512 +#: build/serializers.py:527 msgid "Accept Incomplete" msgstr "" -#: build/serializers.py:513 +#: build/serializers.py:528 msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:523 templates/js/translated/build.js:199 +#: build/serializers.py:538 templates/js/translated/build.js:199 msgid "Required build quantity has not been completed" msgstr "" -#: build/serializers.py:532 +#: build/serializers.py:547 msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:535 build/templates/build/build_base.html:95 +#: build/serializers.py:550 build/templates/build/build_base.html:95 msgid "No build outputs have been created for this build order" msgstr "" -#: build/serializers.py:561 build/serializers.py:606 part/models.py:2719 +#: build/serializers.py:580 build/serializers.py:625 part/models.py:2719 #: part/models.py:2853 msgid "BOM Item" msgstr "" -#: build/serializers.py:571 +#: build/serializers.py:590 msgid "Build output" msgstr "" -#: build/serializers.py:579 +#: build/serializers.py:598 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:620 +#: build/serializers.py:639 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:635 stock/serializers.py:767 +#: build/serializers.py:654 stock/serializers.py:767 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:693 order/serializers.py:1073 +#: build/serializers.py:712 order/serializers.py:1073 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:699 +#: build/serializers.py:718 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:706 +#: build/serializers.py:725 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:711 +#: build/serializers.py:730 msgid "This stock item has already been allocated to this build output" msgstr "" -#: build/serializers.py:734 order/serializers.py:1319 +#: build/serializers.py:753 order/serializers.py:1319 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:785 +#: build/serializers.py:804 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:793 +#: build/serializers.py:812 msgid "Exclude Location" msgstr "" -#: build/serializers.py:794 +#: build/serializers.py:813 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:799 +#: build/serializers.py:818 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:800 +#: build/serializers.py:819 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:805 +#: build/serializers.py:824 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:806 +#: build/serializers.py:825 msgid "Allow allocation of substitute parts" msgstr "" @@ -5520,7 +5528,7 @@ msgstr "" msgid "Unknown database" msgstr "" -#: part/templatetags/inventree_extras.py:222 +#: part/templatetags/inventree_extras.py:229 #, python-brace-format msgid "{title} v{version}" msgstr "" diff --git a/InvenTree/locale/es_MX/LC_MESSAGES/django.po b/InvenTree/locale/es_MX/LC_MESSAGES/django.po index 988374f9ab..b58048382b 100644 --- a/InvenTree/locale/es_MX/LC_MESSAGES/django.po +++ b/InvenTree/locale/es_MX/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 12:49+0000\n" +"POT-Creation-Date: 2022-08-09 06:07+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -18,7 +18,7 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -#: InvenTree/api.py:52 +#: InvenTree/api.py:54 msgid "API endpoint not found" msgstr "" @@ -122,44 +122,44 @@ msgstr "" msgid "Supplied URL is not a valid image file" msgstr "" -#: InvenTree/helpers.py:584 +#: InvenTree/helpers.py:598 #, python-brace-format msgid "Duplicate serial: {sn}" msgstr "" -#: InvenTree/helpers.py:591 order/models.py:320 order/models.py:472 +#: InvenTree/helpers.py:605 order/models.py:320 order/models.py:472 msgid "Invalid quantity provided" msgstr "" -#: InvenTree/helpers.py:594 +#: InvenTree/helpers.py:608 msgid "Empty serial number string" msgstr "" -#: InvenTree/helpers.py:626 +#: InvenTree/helpers.py:640 #, python-brace-format msgid "Invalid group range: {g}" msgstr "" -#: InvenTree/helpers.py:629 +#: InvenTree/helpers.py:643 #, python-brace-format msgid "Invalid group: {g}" msgstr "" -#: InvenTree/helpers.py:657 +#: InvenTree/helpers.py:671 #, python-brace-format msgid "Invalid group sequence: {g}" msgstr "" -#: InvenTree/helpers.py:665 +#: InvenTree/helpers.py:679 #, python-brace-format msgid "Invalid/no group {group}" msgstr "" -#: InvenTree/helpers.py:671 +#: InvenTree/helpers.py:685 msgid "No serial numbers found" msgstr "" -#: InvenTree/helpers.py:675 +#: InvenTree/helpers.py:689 #, python-brace-format msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "" @@ -5517,11 +5517,11 @@ msgstr "" msgid "Create a new variant of template '%(full_name)s'." msgstr "" -#: part/templatetags/inventree_extras.py:157 +#: part/templatetags/inventree_extras.py:177 msgid "Unknown database" msgstr "" -#: part/templatetags/inventree_extras.py:202 +#: part/templatetags/inventree_extras.py:229 #, python-brace-format msgid "{title} v{version}" msgstr "" diff --git a/InvenTree/locale/fa/LC_MESSAGES/django.po b/InvenTree/locale/fa/LC_MESSAGES/django.po index cf5f538745..8aec6e43c7 100644 --- a/InvenTree/locale/fa/LC_MESSAGES/django.po +++ b/InvenTree/locale/fa/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 21:57+0000\n" -"PO-Revision-Date: 2022-08-08 13:03\n" +"POT-Creation-Date: 2022-08-10 11:38+0000\n" +"PO-Revision-Date: 2022-08-10 13:22\n" "Last-Translator: \n" "Language-Team: Persian\n" "Language: fa_IR\n" @@ -121,44 +121,44 @@ msgstr "" msgid "Supplied URL is not a valid image file" msgstr "" -#: InvenTree/helpers.py:584 +#: InvenTree/helpers.py:598 #, python-brace-format msgid "Duplicate serial: {sn}" msgstr "" -#: InvenTree/helpers.py:591 order/models.py:320 order/models.py:472 +#: InvenTree/helpers.py:605 order/models.py:320 order/models.py:472 msgid "Invalid quantity provided" msgstr "" -#: InvenTree/helpers.py:594 +#: InvenTree/helpers.py:608 msgid "Empty serial number string" msgstr "" -#: InvenTree/helpers.py:626 +#: InvenTree/helpers.py:640 #, python-brace-format msgid "Invalid group range: {g}" msgstr "" -#: InvenTree/helpers.py:629 +#: InvenTree/helpers.py:643 #, python-brace-format msgid "Invalid group: {g}" msgstr "" -#: InvenTree/helpers.py:657 +#: InvenTree/helpers.py:671 #, python-brace-format msgid "Invalid group sequence: {g}" msgstr "" -#: InvenTree/helpers.py:665 +#: InvenTree/helpers.py:679 #, python-brace-format msgid "Invalid/no group {group}" msgstr "" -#: InvenTree/helpers.py:671 +#: InvenTree/helpers.py:685 msgid "No serial numbers found" msgstr "" -#: InvenTree/helpers.py:675 +#: InvenTree/helpers.py:689 #, python-brace-format msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "" @@ -816,7 +816,7 @@ msgstr "" msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:213 build/serializers.py:784 +#: build/models.py:213 build/serializers.py:803 #: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873 msgid "Source Location" msgstr "" @@ -942,42 +942,42 @@ msgstr "" msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:1143 +#: build/models.py:1171 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "" -#: build/models.py:1152 +#: build/models.py:1180 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "" -#: build/models.py:1162 order/models.py:1379 +#: build/models.py:1190 order/models.py:1379 msgid "Stock item is over-allocated" msgstr "" -#: build/models.py:1168 order/models.py:1382 +#: build/models.py:1196 order/models.py:1382 msgid "Allocation quantity must be greater than zero" msgstr "" -#: build/models.py:1174 +#: build/models.py:1202 msgid "Quantity must be 1 for serialized stock" msgstr "" -#: build/models.py:1231 +#: build/models.py:1259 msgid "Selected stock item not found in BOM" msgstr "" -#: build/models.py:1300 stock/templates/stock/item_base.html:177 +#: build/models.py:1328 stock/templates/stock/item_base.html:177 #: templates/InvenTree/search.html:137 templates/js/translated/build.js:2455 #: templates/navbar.html:38 msgid "Build" msgstr "" -#: build/models.py:1301 +#: build/models.py:1329 msgid "Build to allocate parts" msgstr "" -#: build/models.py:1317 build/serializers.py:629 order/serializers.py:1015 +#: build/models.py:1345 build/serializers.py:648 order/serializers.py:1015 #: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 #: stock/serializers.py:880 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 @@ -992,11 +992,11 @@ msgstr "" msgid "Stock Item" msgstr "" -#: build/models.py:1318 +#: build/models.py:1346 msgid "Source stock item" msgstr "" -#: build/models.py:1330 build/serializers.py:193 +#: build/models.py:1358 build/serializers.py:193 #: build/templates/build/build_base.html:82 #: build/templates/build/detail.html:34 common/models.py:1678 #: company/templates/company/supplier_part.html:279 order/models.py:897 @@ -1033,19 +1033,19 @@ msgstr "" msgid "Quantity" msgstr "" -#: build/models.py:1331 +#: build/models.py:1359 msgid "Stock quantity to allocate to build" msgstr "" -#: build/models.py:1339 +#: build/models.py:1367 msgid "Install into" msgstr "" -#: build/models.py:1340 +#: build/models.py:1368 msgid "Destination stock item" msgstr "" -#: build/serializers.py:138 build/serializers.py:658 +#: build/serializers.py:138 build/serializers.py:677 #: templates/js/translated/build.js:1166 msgid "Build Output" msgstr "" @@ -1070,7 +1070,7 @@ msgstr "" msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:208 build/serializers.py:649 order/models.py:318 +#: build/serializers.py:208 build/serializers.py:668 order/models.py:318 #: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 #: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 #: stock/serializers.py:302 @@ -1164,117 +1164,125 @@ msgstr "" msgid "Delete any build outputs which have not been completed" msgstr "" -#: build/serializers.py:480 -msgid "Accept Overallocated" +#: build/serializers.py:485 +msgid "Accept as consumed by this build order" msgstr "" -#: build/serializers.py:481 -msgid "Accept stock items which have been overallocated to this build order" +#: build/serializers.py:486 +msgid "Deallocate before completing this build order" msgstr "" -#: build/serializers.py:491 -msgid "Some stock items have been overallocated" +#: build/serializers.py:494 +msgid "Overallocated Stock" msgstr "" #: build/serializers.py:496 +msgid "How do you want to handle extra stock items assigned to the build order" +msgstr "" + +#: build/serializers.py:506 +msgid "Some stock items have been overallocated" +msgstr "" + +#: build/serializers.py:511 msgid "Accept Unallocated" msgstr "" -#: build/serializers.py:497 +#: build/serializers.py:512 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:507 templates/js/translated/build.js:195 +#: build/serializers.py:522 templates/js/translated/build.js:195 msgid "Required stock has not been fully allocated" msgstr "" -#: build/serializers.py:512 +#: build/serializers.py:527 msgid "Accept Incomplete" msgstr "" -#: build/serializers.py:513 +#: build/serializers.py:528 msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:523 templates/js/translated/build.js:199 +#: build/serializers.py:538 templates/js/translated/build.js:199 msgid "Required build quantity has not been completed" msgstr "" -#: build/serializers.py:532 +#: build/serializers.py:547 msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:535 build/templates/build/build_base.html:95 +#: build/serializers.py:550 build/templates/build/build_base.html:95 msgid "No build outputs have been created for this build order" msgstr "" -#: build/serializers.py:561 build/serializers.py:606 part/models.py:2719 +#: build/serializers.py:580 build/serializers.py:625 part/models.py:2719 #: part/models.py:2853 msgid "BOM Item" msgstr "" -#: build/serializers.py:571 +#: build/serializers.py:590 msgid "Build output" msgstr "" -#: build/serializers.py:579 +#: build/serializers.py:598 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:620 +#: build/serializers.py:639 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:635 stock/serializers.py:767 +#: build/serializers.py:654 stock/serializers.py:767 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:693 order/serializers.py:1073 +#: build/serializers.py:712 order/serializers.py:1073 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:699 +#: build/serializers.py:718 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:706 +#: build/serializers.py:725 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:711 +#: build/serializers.py:730 msgid "This stock item has already been allocated to this build output" msgstr "" -#: build/serializers.py:734 order/serializers.py:1319 +#: build/serializers.py:753 order/serializers.py:1319 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:785 +#: build/serializers.py:804 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:793 +#: build/serializers.py:812 msgid "Exclude Location" msgstr "" -#: build/serializers.py:794 +#: build/serializers.py:813 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:799 +#: build/serializers.py:818 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:800 +#: build/serializers.py:819 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:805 +#: build/serializers.py:824 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:806 +#: build/serializers.py:825 msgid "Allow allocation of substitute parts" msgstr "" @@ -5520,7 +5528,7 @@ msgstr "" msgid "Unknown database" msgstr "" -#: part/templatetags/inventree_extras.py:222 +#: part/templatetags/inventree_extras.py:229 #, python-brace-format msgid "{title} v{version}" msgstr "" diff --git a/InvenTree/locale/fr/LC_MESSAGES/django.po b/InvenTree/locale/fr/LC_MESSAGES/django.po index 4fc541b2b8..fedbd229c1 100644 --- a/InvenTree/locale/fr/LC_MESSAGES/django.po +++ b/InvenTree/locale/fr/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 21:57+0000\n" -"PO-Revision-Date: 2022-08-08 13:03\n" +"POT-Creation-Date: 2022-08-10 11:38+0000\n" +"PO-Revision-Date: 2022-08-10 13:22\n" "Last-Translator: \n" "Language-Team: French\n" "Language: fr_FR\n" @@ -121,44 +121,44 @@ msgstr "" msgid "Supplied URL is not a valid image file" msgstr "" -#: InvenTree/helpers.py:584 +#: InvenTree/helpers.py:598 #, python-brace-format msgid "Duplicate serial: {sn}" msgstr "Dupliquer le numéro : {sn}" -#: InvenTree/helpers.py:591 order/models.py:320 order/models.py:472 +#: InvenTree/helpers.py:605 order/models.py:320 order/models.py:472 msgid "Invalid quantity provided" msgstr "Quantité fournie invalide" -#: InvenTree/helpers.py:594 +#: InvenTree/helpers.py:608 msgid "Empty serial number string" msgstr "Chaîne de numéro de série vide" -#: InvenTree/helpers.py:626 +#: InvenTree/helpers.py:640 #, python-brace-format msgid "Invalid group range: {g}" msgstr "Plage de groupe invalide : {g}" -#: InvenTree/helpers.py:629 +#: InvenTree/helpers.py:643 #, python-brace-format msgid "Invalid group: {g}" msgstr "Groupe invalide : {g}" -#: InvenTree/helpers.py:657 +#: InvenTree/helpers.py:671 #, python-brace-format msgid "Invalid group sequence: {g}" msgstr "Séquence de groupe invalide : {g}" -#: InvenTree/helpers.py:665 +#: InvenTree/helpers.py:679 #, python-brace-format msgid "Invalid/no group {group}" msgstr "Invalide/aucun groupe {group}" -#: InvenTree/helpers.py:671 +#: InvenTree/helpers.py:685 msgid "No serial numbers found" msgstr "Aucun numéro de série trouvé" -#: InvenTree/helpers.py:675 +#: InvenTree/helpers.py:689 #, python-brace-format msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "Le nombre de numéros de série uniques ({s}) doit correspondre à la quantité ({q})" @@ -816,7 +816,7 @@ msgstr "Bon de commande de référence" msgid "SalesOrder to which this build is allocated" msgstr "Commande de vente à laquelle cette construction est allouée" -#: build/models.py:213 build/serializers.py:784 +#: build/models.py:213 build/serializers.py:803 #: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873 msgid "Source Location" msgstr "Emplacement d'origine" @@ -942,42 +942,42 @@ msgstr "L'ordre de production a déjà été réalisé" msgid "Build output does not match Build Order" msgstr "L'ordre de production de correspond pas à l'ordre de commande" -#: build/models.py:1143 +#: build/models.py:1171 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "L'élément de construction doit spécifier une sortie de construction, la pièce maîtresse étant marquée comme objet traçable" -#: build/models.py:1152 +#: build/models.py:1180 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "La quantité allouée ({q}) ne doit pas excéder la quantité disponible ({a})" -#: build/models.py:1162 order/models.py:1379 +#: build/models.py:1190 order/models.py:1379 msgid "Stock item is over-allocated" msgstr "L'article de stock est suralloué" -#: build/models.py:1168 order/models.py:1382 +#: build/models.py:1196 order/models.py:1382 msgid "Allocation quantity must be greater than zero" msgstr "La quantité allouée doit être supérieure à zéro" -#: build/models.py:1174 +#: build/models.py:1202 msgid "Quantity must be 1 for serialized stock" msgstr "La quantité doit être de 1 pour stock sérialisé" -#: build/models.py:1231 +#: build/models.py:1259 msgid "Selected stock item not found in BOM" msgstr "L'article du stock sélectionné n'a pas été trouvé dans la BOM" -#: build/models.py:1300 stock/templates/stock/item_base.html:177 +#: build/models.py:1328 stock/templates/stock/item_base.html:177 #: templates/InvenTree/search.html:137 templates/js/translated/build.js:2455 #: templates/navbar.html:38 msgid "Build" msgstr "Assemblage" -#: build/models.py:1301 +#: build/models.py:1329 msgid "Build to allocate parts" msgstr "Construction à laquelle allouer des pièces" -#: build/models.py:1317 build/serializers.py:629 order/serializers.py:1015 +#: build/models.py:1345 build/serializers.py:648 order/serializers.py:1015 #: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 #: stock/serializers.py:880 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 @@ -992,11 +992,11 @@ msgstr "Construction à laquelle allouer des pièces" msgid "Stock Item" msgstr "Article en stock" -#: build/models.py:1318 +#: build/models.py:1346 msgid "Source stock item" msgstr "Stock d'origine de l'article" -#: build/models.py:1330 build/serializers.py:193 +#: build/models.py:1358 build/serializers.py:193 #: build/templates/build/build_base.html:82 #: build/templates/build/detail.html:34 common/models.py:1678 #: company/templates/company/supplier_part.html:279 order/models.py:897 @@ -1033,19 +1033,19 @@ msgstr "Stock d'origine de l'article" msgid "Quantity" msgstr "Quantité" -#: build/models.py:1331 +#: build/models.py:1359 msgid "Stock quantity to allocate to build" msgstr "Quantité de stock à allouer à la construction" -#: build/models.py:1339 +#: build/models.py:1367 msgid "Install into" msgstr "Installer dans" -#: build/models.py:1340 +#: build/models.py:1368 msgid "Destination stock item" msgstr "Stock de destination de l'article" -#: build/serializers.py:138 build/serializers.py:658 +#: build/serializers.py:138 build/serializers.py:677 #: templates/js/translated/build.js:1166 msgid "Build Output" msgstr "Sortie d'assemblage" @@ -1070,7 +1070,7 @@ msgstr "Cet ordre de production n'est pas complètement attribué" msgid "Enter quantity for build output" msgstr "Entrer la quantité désiré pour la fabrication" -#: build/serializers.py:208 build/serializers.py:649 order/models.py:318 +#: build/serializers.py:208 build/serializers.py:668 order/models.py:318 #: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 #: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 #: stock/serializers.py:302 @@ -1164,117 +1164,125 @@ msgstr "Supprimer les sorties incomplètes" msgid "Delete any build outputs which have not been completed" msgstr "Supprimer toutes les sorties de construction qui n'ont pas été complétées" -#: build/serializers.py:480 -msgid "Accept Overallocated" -msgstr "Accepter la surallocation" +#: build/serializers.py:485 +msgid "Accept as consumed by this build order" +msgstr "" -#: build/serializers.py:481 -msgid "Accept stock items which have been overallocated to this build order" -msgstr "Accepter les articles en stock qui ont été suralloués à cette commande de construction" +#: build/serializers.py:486 +msgid "Deallocate before completing this build order" +msgstr "" -#: build/serializers.py:491 +#: build/serializers.py:494 +msgid "Overallocated Stock" +msgstr "" + +#: build/serializers.py:496 +msgid "How do you want to handle extra stock items assigned to the build order" +msgstr "" + +#: build/serializers.py:506 msgid "Some stock items have been overallocated" msgstr "Certains articles en stock ont été suralloués" -#: build/serializers.py:496 +#: build/serializers.py:511 msgid "Accept Unallocated" msgstr "Accepter les non-alloués" -#: build/serializers.py:497 +#: build/serializers.py:512 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "Accepter les articles de stock qui n'ont pas été complètement alloués à cette ordre de production" -#: build/serializers.py:507 templates/js/translated/build.js:195 +#: build/serializers.py:522 templates/js/translated/build.js:195 msgid "Required stock has not been fully allocated" msgstr "Le stock requis n'a pas encore été totalement alloué" -#: build/serializers.py:512 +#: build/serializers.py:527 msgid "Accept Incomplete" msgstr "Accepter les incomplèts" -#: build/serializers.py:513 +#: build/serializers.py:528 msgid "Accept that the required number of build outputs have not been completed" msgstr "Accepter que tous les ordres de production n'aient pas encore été achevés" -#: build/serializers.py:523 templates/js/translated/build.js:199 +#: build/serializers.py:538 templates/js/translated/build.js:199 msgid "Required build quantity has not been completed" msgstr "La quantité nécessaire n'a pas encore été complétée" -#: build/serializers.py:532 +#: build/serializers.py:547 msgid "Build order has incomplete outputs" msgstr "L'ordre de production a des sorties incomplètes" -#: build/serializers.py:535 build/templates/build/build_base.html:95 +#: build/serializers.py:550 build/templates/build/build_base.html:95 msgid "No build outputs have been created for this build order" msgstr "Aucune sortie de construction n'a été créée pour cet ordre de construction" -#: build/serializers.py:561 build/serializers.py:606 part/models.py:2719 +#: build/serializers.py:580 build/serializers.py:625 part/models.py:2719 #: part/models.py:2853 msgid "BOM Item" msgstr "Article de la nomenclature" -#: build/serializers.py:571 +#: build/serializers.py:590 msgid "Build output" msgstr "Sortie d'assemblage" -#: build/serializers.py:579 +#: build/serializers.py:598 msgid "Build output must point to the same build" msgstr "La sortie de la construction doit pointer vers la même version" -#: build/serializers.py:620 +#: build/serializers.py:639 msgid "bom_item.part must point to the same part as the build order" msgstr "bom_item.part doit pointer sur la même pièce que l'ordre de construction" -#: build/serializers.py:635 stock/serializers.py:767 +#: build/serializers.py:654 stock/serializers.py:767 msgid "Item must be in stock" msgstr "L'article doit être en stock" -#: build/serializers.py:693 order/serializers.py:1073 +#: build/serializers.py:712 order/serializers.py:1073 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "Quantité disponible ({q}) dépassée" -#: build/serializers.py:699 +#: build/serializers.py:718 msgid "Build output must be specified for allocation of tracked parts" msgstr "La sortie de construction doit être spécifiée pour l'allocation des pièces tracées" -#: build/serializers.py:706 +#: build/serializers.py:725 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "La sortie de la compilation ne peut pas être spécifiée pour l'allocation des pièces non suivies" -#: build/serializers.py:711 +#: build/serializers.py:730 msgid "This stock item has already been allocated to this build output" msgstr "Cet article de stock a déjà été alloué à cette sortie de construction" -#: build/serializers.py:734 order/serializers.py:1319 +#: build/serializers.py:753 order/serializers.py:1319 msgid "Allocation items must be provided" msgstr "Les éléments d'allocation doivent être fournis" -#: build/serializers.py:785 +#: build/serializers.py:804 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "Emplacement de stock où les pièces doivent être fournies (laisser vide pour les prendre à partir de n'importe quel endroit)" -#: build/serializers.py:793 +#: build/serializers.py:812 msgid "Exclude Location" msgstr "Emplacements exclus" -#: build/serializers.py:794 +#: build/serializers.py:813 msgid "Exclude stock items from this selected location" msgstr "Exclure les articles en stock de cet emplacement sélectionné" -#: build/serializers.py:799 +#: build/serializers.py:818 msgid "Interchangeable Stock" msgstr "Stock interchangeable" -#: build/serializers.py:800 +#: build/serializers.py:819 msgid "Stock items in multiple locations can be used interchangeably" msgstr "Les articles en stock à plusieurs emplacements peuvent être utilisés de manière interchangeable" -#: build/serializers.py:805 +#: build/serializers.py:824 msgid "Substitute Stock" msgstr "Stock de substitution" -#: build/serializers.py:806 +#: build/serializers.py:825 msgid "Allow allocation of substitute parts" msgstr "Autoriser l'allocation des pièces de remplacement" @@ -5520,7 +5528,7 @@ msgstr "" msgid "Unknown database" msgstr "" -#: part/templatetags/inventree_extras.py:222 +#: part/templatetags/inventree_extras.py:229 #, python-brace-format msgid "{title} v{version}" msgstr "" diff --git a/InvenTree/locale/he/LC_MESSAGES/django.po b/InvenTree/locale/he/LC_MESSAGES/django.po index 55c0fce256..cc1afec550 100644 --- a/InvenTree/locale/he/LC_MESSAGES/django.po +++ b/InvenTree/locale/he/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 21:57+0000\n" -"PO-Revision-Date: 2022-08-08 13:04\n" +"POT-Creation-Date: 2022-08-10 11:38+0000\n" +"PO-Revision-Date: 2022-08-10 13:23\n" "Last-Translator: \n" "Language-Team: Hebrew\n" "Language: he_IL\n" @@ -121,44 +121,44 @@ msgstr "" msgid "Supplied URL is not a valid image file" msgstr "" -#: InvenTree/helpers.py:584 +#: InvenTree/helpers.py:598 #, python-brace-format msgid "Duplicate serial: {sn}" msgstr "" -#: InvenTree/helpers.py:591 order/models.py:320 order/models.py:472 +#: InvenTree/helpers.py:605 order/models.py:320 order/models.py:472 msgid "Invalid quantity provided" msgstr "" -#: InvenTree/helpers.py:594 +#: InvenTree/helpers.py:608 msgid "Empty serial number string" msgstr "" -#: InvenTree/helpers.py:626 +#: InvenTree/helpers.py:640 #, python-brace-format msgid "Invalid group range: {g}" msgstr "" -#: InvenTree/helpers.py:629 +#: InvenTree/helpers.py:643 #, python-brace-format msgid "Invalid group: {g}" msgstr "קבוצה שגויה: {g}" -#: InvenTree/helpers.py:657 +#: InvenTree/helpers.py:671 #, python-brace-format msgid "Invalid group sequence: {g}" msgstr "" -#: InvenTree/helpers.py:665 +#: InvenTree/helpers.py:679 #, python-brace-format msgid "Invalid/no group {group}" msgstr "קבוצה שגויה / לא נמצאה {group}" -#: InvenTree/helpers.py:671 +#: InvenTree/helpers.py:685 msgid "No serial numbers found" msgstr "מספרים סידוריים לא נמצאו" -#: InvenTree/helpers.py:675 +#: InvenTree/helpers.py:689 #, python-brace-format msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "" @@ -816,7 +816,7 @@ msgstr "" msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:213 build/serializers.py:784 +#: build/models.py:213 build/serializers.py:803 #: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873 msgid "Source Location" msgstr "" @@ -942,42 +942,42 @@ msgstr "" msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:1143 +#: build/models.py:1171 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "" -#: build/models.py:1152 +#: build/models.py:1180 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "" -#: build/models.py:1162 order/models.py:1379 +#: build/models.py:1190 order/models.py:1379 msgid "Stock item is over-allocated" msgstr "" -#: build/models.py:1168 order/models.py:1382 +#: build/models.py:1196 order/models.py:1382 msgid "Allocation quantity must be greater than zero" msgstr "" -#: build/models.py:1174 +#: build/models.py:1202 msgid "Quantity must be 1 for serialized stock" msgstr "" -#: build/models.py:1231 +#: build/models.py:1259 msgid "Selected stock item not found in BOM" msgstr "" -#: build/models.py:1300 stock/templates/stock/item_base.html:177 +#: build/models.py:1328 stock/templates/stock/item_base.html:177 #: templates/InvenTree/search.html:137 templates/js/translated/build.js:2455 #: templates/navbar.html:38 msgid "Build" msgstr "" -#: build/models.py:1301 +#: build/models.py:1329 msgid "Build to allocate parts" msgstr "" -#: build/models.py:1317 build/serializers.py:629 order/serializers.py:1015 +#: build/models.py:1345 build/serializers.py:648 order/serializers.py:1015 #: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 #: stock/serializers.py:880 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 @@ -992,11 +992,11 @@ msgstr "" msgid "Stock Item" msgstr "" -#: build/models.py:1318 +#: build/models.py:1346 msgid "Source stock item" msgstr "" -#: build/models.py:1330 build/serializers.py:193 +#: build/models.py:1358 build/serializers.py:193 #: build/templates/build/build_base.html:82 #: build/templates/build/detail.html:34 common/models.py:1678 #: company/templates/company/supplier_part.html:279 order/models.py:897 @@ -1033,19 +1033,19 @@ msgstr "" msgid "Quantity" msgstr "כמות" -#: build/models.py:1331 +#: build/models.py:1359 msgid "Stock quantity to allocate to build" msgstr "" -#: build/models.py:1339 +#: build/models.py:1367 msgid "Install into" msgstr "" -#: build/models.py:1340 +#: build/models.py:1368 msgid "Destination stock item" msgstr "" -#: build/serializers.py:138 build/serializers.py:658 +#: build/serializers.py:138 build/serializers.py:677 #: templates/js/translated/build.js:1166 msgid "Build Output" msgstr "" @@ -1070,7 +1070,7 @@ msgstr "" msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:208 build/serializers.py:649 order/models.py:318 +#: build/serializers.py:208 build/serializers.py:668 order/models.py:318 #: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 #: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 #: stock/serializers.py:302 @@ -1164,117 +1164,125 @@ msgstr "" msgid "Delete any build outputs which have not been completed" msgstr "" -#: build/serializers.py:480 -msgid "Accept Overallocated" +#: build/serializers.py:485 +msgid "Accept as consumed by this build order" msgstr "" -#: build/serializers.py:481 -msgid "Accept stock items which have been overallocated to this build order" +#: build/serializers.py:486 +msgid "Deallocate before completing this build order" msgstr "" -#: build/serializers.py:491 -msgid "Some stock items have been overallocated" +#: build/serializers.py:494 +msgid "Overallocated Stock" msgstr "" #: build/serializers.py:496 +msgid "How do you want to handle extra stock items assigned to the build order" +msgstr "" + +#: build/serializers.py:506 +msgid "Some stock items have been overallocated" +msgstr "" + +#: build/serializers.py:511 msgid "Accept Unallocated" msgstr "" -#: build/serializers.py:497 +#: build/serializers.py:512 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:507 templates/js/translated/build.js:195 +#: build/serializers.py:522 templates/js/translated/build.js:195 msgid "Required stock has not been fully allocated" msgstr "" -#: build/serializers.py:512 +#: build/serializers.py:527 msgid "Accept Incomplete" msgstr "" -#: build/serializers.py:513 +#: build/serializers.py:528 msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:523 templates/js/translated/build.js:199 +#: build/serializers.py:538 templates/js/translated/build.js:199 msgid "Required build quantity has not been completed" msgstr "" -#: build/serializers.py:532 +#: build/serializers.py:547 msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:535 build/templates/build/build_base.html:95 +#: build/serializers.py:550 build/templates/build/build_base.html:95 msgid "No build outputs have been created for this build order" msgstr "" -#: build/serializers.py:561 build/serializers.py:606 part/models.py:2719 +#: build/serializers.py:580 build/serializers.py:625 part/models.py:2719 #: part/models.py:2853 msgid "BOM Item" msgstr "" -#: build/serializers.py:571 +#: build/serializers.py:590 msgid "Build output" msgstr "" -#: build/serializers.py:579 +#: build/serializers.py:598 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:620 +#: build/serializers.py:639 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:635 stock/serializers.py:767 +#: build/serializers.py:654 stock/serializers.py:767 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:693 order/serializers.py:1073 +#: build/serializers.py:712 order/serializers.py:1073 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:699 +#: build/serializers.py:718 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:706 +#: build/serializers.py:725 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:711 +#: build/serializers.py:730 msgid "This stock item has already been allocated to this build output" msgstr "" -#: build/serializers.py:734 order/serializers.py:1319 +#: build/serializers.py:753 order/serializers.py:1319 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:785 +#: build/serializers.py:804 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:793 +#: build/serializers.py:812 msgid "Exclude Location" msgstr "" -#: build/serializers.py:794 +#: build/serializers.py:813 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:799 +#: build/serializers.py:818 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:800 +#: build/serializers.py:819 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:805 +#: build/serializers.py:824 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:806 +#: build/serializers.py:825 msgid "Allow allocation of substitute parts" msgstr "" @@ -5520,7 +5528,7 @@ msgstr "" msgid "Unknown database" msgstr "" -#: part/templatetags/inventree_extras.py:222 +#: part/templatetags/inventree_extras.py:229 #, python-brace-format msgid "{title} v{version}" msgstr "" diff --git a/InvenTree/locale/hu/LC_MESSAGES/django.po b/InvenTree/locale/hu/LC_MESSAGES/django.po index 838fa7ce54..f07bc7ba36 100644 --- a/InvenTree/locale/hu/LC_MESSAGES/django.po +++ b/InvenTree/locale/hu/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 21:57+0000\n" -"PO-Revision-Date: 2022-08-08 13:04\n" +"POT-Creation-Date: 2022-08-10 11:38+0000\n" +"PO-Revision-Date: 2022-08-10 13:23\n" "Last-Translator: \n" "Language-Team: Hungarian\n" "Language: hu_HU\n" @@ -121,44 +121,44 @@ msgstr "A kiszolgáló üres választ adott" msgid "Supplied URL is not a valid image file" msgstr "A megadott URL nem egy érvényes kép fájl" -#: InvenTree/helpers.py:584 +#: InvenTree/helpers.py:598 #, python-brace-format msgid "Duplicate serial: {sn}" msgstr "Duplikált sorozatszám: {sn}" -#: InvenTree/helpers.py:591 order/models.py:320 order/models.py:472 +#: InvenTree/helpers.py:605 order/models.py:320 order/models.py:472 msgid "Invalid quantity provided" msgstr "Nem megfelelő mennyiség" -#: InvenTree/helpers.py:594 +#: InvenTree/helpers.py:608 msgid "Empty serial number string" msgstr "Üres sorozatszám" -#: InvenTree/helpers.py:626 +#: InvenTree/helpers.py:640 #, python-brace-format msgid "Invalid group range: {g}" msgstr "Érvénytelen csoport tartomány: {g}" -#: InvenTree/helpers.py:629 +#: InvenTree/helpers.py:643 #, python-brace-format msgid "Invalid group: {g}" msgstr "Érvénytelen csoport: {g}" -#: InvenTree/helpers.py:657 +#: InvenTree/helpers.py:671 #, python-brace-format msgid "Invalid group sequence: {g}" msgstr "Érvénytelen csoport szekvencia: {g}" -#: InvenTree/helpers.py:665 +#: InvenTree/helpers.py:679 #, python-brace-format msgid "Invalid/no group {group}" msgstr "Érvénytelen vagy nemlétező csoport {group}" -#: InvenTree/helpers.py:671 +#: InvenTree/helpers.py:685 msgid "No serial numbers found" msgstr "Nem található sorozatszám" -#: InvenTree/helpers.py:675 +#: InvenTree/helpers.py:689 #, python-brace-format msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "A megadott számú egyedi sorozatszám ({s}) meg kell egyezzen a darabszámmal ({q})" @@ -816,7 +816,7 @@ msgstr "Vevői rendelés azonosító" msgid "SalesOrder to which this build is allocated" msgstr "Vevői rendelés amihez ez a gyártás hozzá van rendelve" -#: build/models.py:213 build/serializers.py:784 +#: build/models.py:213 build/serializers.py:803 #: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873 msgid "Source Location" msgstr "Forrás hely" @@ -942,42 +942,42 @@ msgstr "Gyártási kimenet már kész" msgid "Build output does not match Build Order" msgstr "Gyártási kimenet nem egyezik a gyártási utasítással" -#: build/models.py:1143 +#: build/models.py:1171 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "Gyártási tételnek meg kell adnia a gyártási kimenetet, mivel a fő darab egyedi követésre kötelezett" -#: build/models.py:1152 +#: build/models.py:1180 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "A lefoglalt mennyiség ({q}) nem lépheti túl a szabad készletet ({a})" -#: build/models.py:1162 order/models.py:1379 +#: build/models.py:1190 order/models.py:1379 msgid "Stock item is over-allocated" msgstr "Készlet túlfoglalva" -#: build/models.py:1168 order/models.py:1382 +#: build/models.py:1196 order/models.py:1382 msgid "Allocation quantity must be greater than zero" msgstr "Lefoglalt mennyiségnek nullánál többnek kell lennie" -#: build/models.py:1174 +#: build/models.py:1202 msgid "Quantity must be 1 for serialized stock" msgstr "Egyedi követésre kötelezett tételeknél a menyiség 1 kell legyen" -#: build/models.py:1231 +#: build/models.py:1259 msgid "Selected stock item not found in BOM" msgstr "Kiválasztott készlet tétel nem található az alkatrészjegyzékben" -#: build/models.py:1300 stock/templates/stock/item_base.html:177 +#: build/models.py:1328 stock/templates/stock/item_base.html:177 #: templates/InvenTree/search.html:137 templates/js/translated/build.js:2455 #: templates/navbar.html:38 msgid "Build" msgstr "Gyártás" -#: build/models.py:1301 +#: build/models.py:1329 msgid "Build to allocate parts" msgstr "Gyártás amihez készletet foglaljunk" -#: build/models.py:1317 build/serializers.py:629 order/serializers.py:1015 +#: build/models.py:1345 build/serializers.py:648 order/serializers.py:1015 #: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 #: stock/serializers.py:880 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 @@ -992,11 +992,11 @@ msgstr "Gyártás amihez készletet foglaljunk" msgid "Stock Item" msgstr "Készlet tétel" -#: build/models.py:1318 +#: build/models.py:1346 msgid "Source stock item" msgstr "Forrás készlet tétel" -#: build/models.py:1330 build/serializers.py:193 +#: build/models.py:1358 build/serializers.py:193 #: build/templates/build/build_base.html:82 #: build/templates/build/detail.html:34 common/models.py:1678 #: company/templates/company/supplier_part.html:279 order/models.py:897 @@ -1033,19 +1033,19 @@ msgstr "Forrás készlet tétel" msgid "Quantity" msgstr "Mennyiség" -#: build/models.py:1331 +#: build/models.py:1359 msgid "Stock quantity to allocate to build" msgstr "Készlet mennyiség amit foglaljunk a gyártáshoz" -#: build/models.py:1339 +#: build/models.py:1367 msgid "Install into" msgstr "Beépítés ebbe" -#: build/models.py:1340 +#: build/models.py:1368 msgid "Destination stock item" msgstr "Cél készlet tétel" -#: build/serializers.py:138 build/serializers.py:658 +#: build/serializers.py:138 build/serializers.py:677 #: templates/js/translated/build.js:1166 msgid "Build Output" msgstr "Gyártás kimenet" @@ -1070,7 +1070,7 @@ msgstr "Ez a gyártási kimenet nincs teljesen lefoglalva" msgid "Enter quantity for build output" msgstr "Add meg a mennyiséget a gyártás kimenetéhez" -#: build/serializers.py:208 build/serializers.py:649 order/models.py:318 +#: build/serializers.py:208 build/serializers.py:668 order/models.py:318 #: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 #: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 #: stock/serializers.py:302 @@ -1165,117 +1165,125 @@ msgstr "Befejezetlen kimenetek törlése" msgid "Delete any build outputs which have not been completed" msgstr "A nem befejezett gyártási kimenetek törlése" -#: build/serializers.py:480 -msgid "Accept Overallocated" -msgstr "Túlfoglaltak elfogadása" +#: build/serializers.py:485 +msgid "Accept as consumed by this build order" +msgstr "" -#: build/serializers.py:481 -msgid "Accept stock items which have been overallocated to this build order" -msgstr "Túlfoglalt készlet tételek elfogadása ehhez a gyártáshoz" +#: build/serializers.py:486 +msgid "Deallocate before completing this build order" +msgstr "" -#: build/serializers.py:491 +#: build/serializers.py:494 +msgid "Overallocated Stock" +msgstr "" + +#: build/serializers.py:496 +msgid "How do you want to handle extra stock items assigned to the build order" +msgstr "" + +#: build/serializers.py:506 msgid "Some stock items have been overallocated" msgstr "Pár készlet tétel túl lett foglalva" -#: build/serializers.py:496 +#: build/serializers.py:511 msgid "Accept Unallocated" msgstr "Kiosztatlanok elfogadása" -#: build/serializers.py:497 +#: build/serializers.py:512 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "Fogadd el hogy a készlet tételek nincsenek teljesen lefoglalva ehhez a gyártási utastáshoz" -#: build/serializers.py:507 templates/js/translated/build.js:195 +#: build/serializers.py:522 templates/js/translated/build.js:195 msgid "Required stock has not been fully allocated" msgstr "A szükséges készlet nem lett teljesen lefoglalva" -#: build/serializers.py:512 +#: build/serializers.py:527 msgid "Accept Incomplete" msgstr "Befejezetlenek elfogadása" -#: build/serializers.py:513 +#: build/serializers.py:528 msgid "Accept that the required number of build outputs have not been completed" msgstr "Fogadd el hogy a szükséges számú gyártási kimenet nem lett elérve" -#: build/serializers.py:523 templates/js/translated/build.js:199 +#: build/serializers.py:538 templates/js/translated/build.js:199 msgid "Required build quantity has not been completed" msgstr "Szükséges gyártási mennyiség nem lett elérve" -#: build/serializers.py:532 +#: build/serializers.py:547 msgid "Build order has incomplete outputs" msgstr "A gyártási utasítás befejezetlen kimeneteket tartalmaz" -#: build/serializers.py:535 build/templates/build/build_base.html:95 +#: build/serializers.py:550 build/templates/build/build_base.html:95 msgid "No build outputs have been created for this build order" msgstr "Ehhez a gyártási utasításhoz nem készült kimenet" -#: build/serializers.py:561 build/serializers.py:606 part/models.py:2719 +#: build/serializers.py:580 build/serializers.py:625 part/models.py:2719 #: part/models.py:2853 msgid "BOM Item" msgstr "Alkatrészjegyzék tétel" -#: build/serializers.py:571 +#: build/serializers.py:590 msgid "Build output" msgstr "Gyártás kimenet" -#: build/serializers.py:579 +#: build/serializers.py:598 msgid "Build output must point to the same build" msgstr "A gyártási kimenetnek ugyanarra a gyártásra kell mutatnia" -#: build/serializers.py:620 +#: build/serializers.py:639 msgid "bom_item.part must point to the same part as the build order" msgstr "bom_item.part ugyanarra az alkatrészre kell mutasson mint a gyártási utasítás" -#: build/serializers.py:635 stock/serializers.py:767 +#: build/serializers.py:654 stock/serializers.py:767 msgid "Item must be in stock" msgstr "A tételnek kell legyen készlete" -#: build/serializers.py:693 order/serializers.py:1073 +#: build/serializers.py:712 order/serializers.py:1073 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "Rendelkezésre álló mennyiség ({q}) túllépve" -#: build/serializers.py:699 +#: build/serializers.py:718 msgid "Build output must be specified for allocation of tracked parts" msgstr "Gyártási kimenetet meg kell adni a követésre kötelezett alkatrészek lefoglalásához" -#: build/serializers.py:706 +#: build/serializers.py:725 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "Gyártási kimenetet nem lehet megadni a követésre kötelezett alkatrészek lefoglalásához" -#: build/serializers.py:711 +#: build/serializers.py:730 msgid "This stock item has already been allocated to this build output" msgstr "Ez a készlet tétel már le lett foglalva ehhez a gyártási kimenethez" -#: build/serializers.py:734 order/serializers.py:1319 +#: build/serializers.py:753 order/serializers.py:1319 msgid "Allocation items must be provided" msgstr "A lefoglalandó tételeket meg kell adni" -#: build/serializers.py:785 +#: build/serializers.py:804 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "Készlet hely ahonnan az alkatrészek származnak (hagyd üresen ha bárhonnan)" -#: build/serializers.py:793 +#: build/serializers.py:812 msgid "Exclude Location" msgstr "Hely kizárása" -#: build/serializers.py:794 +#: build/serializers.py:813 msgid "Exclude stock items from this selected location" msgstr "Készlet tételek kizárása erről a kiválasztott helyről" -#: build/serializers.py:799 +#: build/serializers.py:818 msgid "Interchangeable Stock" msgstr "Felcserélhető készlet" -#: build/serializers.py:800 +#: build/serializers.py:819 msgid "Stock items in multiple locations can be used interchangeably" msgstr "A különböző helyeken lévő készlet egyenrangúan felhasználható" -#: build/serializers.py:805 +#: build/serializers.py:824 msgid "Substitute Stock" msgstr "Készlet helyettesítés" -#: build/serializers.py:806 +#: build/serializers.py:825 msgid "Allow allocation of substitute parts" msgstr "Helyettesítő alkatrészek foglalásának engedélyezése" @@ -5521,7 +5529,7 @@ msgstr "Új változat létrehozása a '%(full_name)s' sablonból." msgid "Unknown database" msgstr "Ismeretlen adatbázis" -#: part/templatetags/inventree_extras.py:222 +#: part/templatetags/inventree_extras.py:229 #, python-brace-format msgid "{title} v{version}" msgstr "{title} v{version}" diff --git a/InvenTree/locale/id/LC_MESSAGES/django.po b/InvenTree/locale/id/LC_MESSAGES/django.po index dfde3a10cb..ba32310449 100644 --- a/InvenTree/locale/id/LC_MESSAGES/django.po +++ b/InvenTree/locale/id/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 21:57+0000\n" -"PO-Revision-Date: 2022-08-08 13:03\n" +"POT-Creation-Date: 2022-08-10 11:38+0000\n" +"PO-Revision-Date: 2022-08-10 13:22\n" "Last-Translator: \n" "Language-Team: Indonesian\n" "Language: id_ID\n" @@ -121,44 +121,44 @@ msgstr "" msgid "Supplied URL is not a valid image file" msgstr "" -#: InvenTree/helpers.py:584 +#: InvenTree/helpers.py:598 #, python-brace-format msgid "Duplicate serial: {sn}" msgstr "" -#: InvenTree/helpers.py:591 order/models.py:320 order/models.py:472 +#: InvenTree/helpers.py:605 order/models.py:320 order/models.py:472 msgid "Invalid quantity provided" msgstr "" -#: InvenTree/helpers.py:594 +#: InvenTree/helpers.py:608 msgid "Empty serial number string" msgstr "" -#: InvenTree/helpers.py:626 +#: InvenTree/helpers.py:640 #, python-brace-format msgid "Invalid group range: {g}" msgstr "" -#: InvenTree/helpers.py:629 +#: InvenTree/helpers.py:643 #, python-brace-format msgid "Invalid group: {g}" msgstr "" -#: InvenTree/helpers.py:657 +#: InvenTree/helpers.py:671 #, python-brace-format msgid "Invalid group sequence: {g}" msgstr "" -#: InvenTree/helpers.py:665 +#: InvenTree/helpers.py:679 #, python-brace-format msgid "Invalid/no group {group}" msgstr "" -#: InvenTree/helpers.py:671 +#: InvenTree/helpers.py:685 msgid "No serial numbers found" msgstr "" -#: InvenTree/helpers.py:675 +#: InvenTree/helpers.py:689 #, python-brace-format msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "" @@ -816,7 +816,7 @@ msgstr "" msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:213 build/serializers.py:784 +#: build/models.py:213 build/serializers.py:803 #: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873 msgid "Source Location" msgstr "" @@ -942,42 +942,42 @@ msgstr "" msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:1143 +#: build/models.py:1171 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "" -#: build/models.py:1152 +#: build/models.py:1180 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "" -#: build/models.py:1162 order/models.py:1379 +#: build/models.py:1190 order/models.py:1379 msgid "Stock item is over-allocated" msgstr "" -#: build/models.py:1168 order/models.py:1382 +#: build/models.py:1196 order/models.py:1382 msgid "Allocation quantity must be greater than zero" msgstr "" -#: build/models.py:1174 +#: build/models.py:1202 msgid "Quantity must be 1 for serialized stock" msgstr "" -#: build/models.py:1231 +#: build/models.py:1259 msgid "Selected stock item not found in BOM" msgstr "" -#: build/models.py:1300 stock/templates/stock/item_base.html:177 +#: build/models.py:1328 stock/templates/stock/item_base.html:177 #: templates/InvenTree/search.html:137 templates/js/translated/build.js:2455 #: templates/navbar.html:38 msgid "Build" msgstr "" -#: build/models.py:1301 +#: build/models.py:1329 msgid "Build to allocate parts" msgstr "" -#: build/models.py:1317 build/serializers.py:629 order/serializers.py:1015 +#: build/models.py:1345 build/serializers.py:648 order/serializers.py:1015 #: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 #: stock/serializers.py:880 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 @@ -992,11 +992,11 @@ msgstr "" msgid "Stock Item" msgstr "" -#: build/models.py:1318 +#: build/models.py:1346 msgid "Source stock item" msgstr "" -#: build/models.py:1330 build/serializers.py:193 +#: build/models.py:1358 build/serializers.py:193 #: build/templates/build/build_base.html:82 #: build/templates/build/detail.html:34 common/models.py:1678 #: company/templates/company/supplier_part.html:279 order/models.py:897 @@ -1033,19 +1033,19 @@ msgstr "" msgid "Quantity" msgstr "" -#: build/models.py:1331 +#: build/models.py:1359 msgid "Stock quantity to allocate to build" msgstr "" -#: build/models.py:1339 +#: build/models.py:1367 msgid "Install into" msgstr "" -#: build/models.py:1340 +#: build/models.py:1368 msgid "Destination stock item" msgstr "" -#: build/serializers.py:138 build/serializers.py:658 +#: build/serializers.py:138 build/serializers.py:677 #: templates/js/translated/build.js:1166 msgid "Build Output" msgstr "" @@ -1070,7 +1070,7 @@ msgstr "" msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:208 build/serializers.py:649 order/models.py:318 +#: build/serializers.py:208 build/serializers.py:668 order/models.py:318 #: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 #: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 #: stock/serializers.py:302 @@ -1164,117 +1164,125 @@ msgstr "" msgid "Delete any build outputs which have not been completed" msgstr "" -#: build/serializers.py:480 -msgid "Accept Overallocated" +#: build/serializers.py:485 +msgid "Accept as consumed by this build order" msgstr "" -#: build/serializers.py:481 -msgid "Accept stock items which have been overallocated to this build order" +#: build/serializers.py:486 +msgid "Deallocate before completing this build order" msgstr "" -#: build/serializers.py:491 -msgid "Some stock items have been overallocated" +#: build/serializers.py:494 +msgid "Overallocated Stock" msgstr "" #: build/serializers.py:496 +msgid "How do you want to handle extra stock items assigned to the build order" +msgstr "" + +#: build/serializers.py:506 +msgid "Some stock items have been overallocated" +msgstr "" + +#: build/serializers.py:511 msgid "Accept Unallocated" msgstr "" -#: build/serializers.py:497 +#: build/serializers.py:512 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:507 templates/js/translated/build.js:195 +#: build/serializers.py:522 templates/js/translated/build.js:195 msgid "Required stock has not been fully allocated" msgstr "" -#: build/serializers.py:512 +#: build/serializers.py:527 msgid "Accept Incomplete" msgstr "" -#: build/serializers.py:513 +#: build/serializers.py:528 msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:523 templates/js/translated/build.js:199 +#: build/serializers.py:538 templates/js/translated/build.js:199 msgid "Required build quantity has not been completed" msgstr "" -#: build/serializers.py:532 +#: build/serializers.py:547 msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:535 build/templates/build/build_base.html:95 +#: build/serializers.py:550 build/templates/build/build_base.html:95 msgid "No build outputs have been created for this build order" msgstr "" -#: build/serializers.py:561 build/serializers.py:606 part/models.py:2719 +#: build/serializers.py:580 build/serializers.py:625 part/models.py:2719 #: part/models.py:2853 msgid "BOM Item" msgstr "" -#: build/serializers.py:571 +#: build/serializers.py:590 msgid "Build output" msgstr "" -#: build/serializers.py:579 +#: build/serializers.py:598 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:620 +#: build/serializers.py:639 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:635 stock/serializers.py:767 +#: build/serializers.py:654 stock/serializers.py:767 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:693 order/serializers.py:1073 +#: build/serializers.py:712 order/serializers.py:1073 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:699 +#: build/serializers.py:718 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:706 +#: build/serializers.py:725 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:711 +#: build/serializers.py:730 msgid "This stock item has already been allocated to this build output" msgstr "" -#: build/serializers.py:734 order/serializers.py:1319 +#: build/serializers.py:753 order/serializers.py:1319 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:785 +#: build/serializers.py:804 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:793 +#: build/serializers.py:812 msgid "Exclude Location" msgstr "" -#: build/serializers.py:794 +#: build/serializers.py:813 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:799 +#: build/serializers.py:818 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:800 +#: build/serializers.py:819 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:805 +#: build/serializers.py:824 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:806 +#: build/serializers.py:825 msgid "Allow allocation of substitute parts" msgstr "" @@ -5520,7 +5528,7 @@ msgstr "" msgid "Unknown database" msgstr "" -#: part/templatetags/inventree_extras.py:222 +#: part/templatetags/inventree_extras.py:229 #, python-brace-format msgid "{title} v{version}" msgstr "" diff --git a/InvenTree/locale/it/LC_MESSAGES/django.po b/InvenTree/locale/it/LC_MESSAGES/django.po index 6647bf3400..da85e3d8c5 100644 --- a/InvenTree/locale/it/LC_MESSAGES/django.po +++ b/InvenTree/locale/it/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 21:57+0000\n" -"PO-Revision-Date: 2022-08-08 13:04\n" +"POT-Creation-Date: 2022-08-10 11:38+0000\n" +"PO-Revision-Date: 2022-08-10 13:22\n" "Last-Translator: \n" "Language-Team: Italian\n" "Language: it_IT\n" @@ -121,44 +121,44 @@ msgstr "" msgid "Supplied URL is not a valid image file" msgstr "L'URL fornito non è un file immagine valido" -#: InvenTree/helpers.py:584 +#: InvenTree/helpers.py:598 #, python-brace-format msgid "Duplicate serial: {sn}" msgstr "Seriale duplicato: {sn}" -#: InvenTree/helpers.py:591 order/models.py:320 order/models.py:472 +#: InvenTree/helpers.py:605 order/models.py:320 order/models.py:472 msgid "Invalid quantity provided" msgstr "Quantità inserita non valida" -#: InvenTree/helpers.py:594 +#: InvenTree/helpers.py:608 msgid "Empty serial number string" msgstr "Numero seriale vuoto" -#: InvenTree/helpers.py:626 +#: InvenTree/helpers.py:640 #, python-brace-format msgid "Invalid group range: {g}" msgstr "Range gruppo: {g}" -#: InvenTree/helpers.py:629 +#: InvenTree/helpers.py:643 #, python-brace-format msgid "Invalid group: {g}" msgstr "Gruppo non valido: {g}" -#: InvenTree/helpers.py:657 +#: InvenTree/helpers.py:671 #, python-brace-format msgid "Invalid group sequence: {g}" msgstr "Sequenza gruppo non valida: {g}" -#: InvenTree/helpers.py:665 +#: InvenTree/helpers.py:679 #, python-brace-format msgid "Invalid/no group {group}" msgstr "Gruppo {group} invalido o inesistente" -#: InvenTree/helpers.py:671 +#: InvenTree/helpers.py:685 msgid "No serial numbers found" msgstr "Nessun numero di serie trovato" -#: InvenTree/helpers.py:675 +#: InvenTree/helpers.py:689 #, python-brace-format msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "Il numero dei numeri seriali univoci ({s}) deve essere uguale alla quantità ({q})" @@ -816,7 +816,7 @@ msgstr "Numero di riferimento ordine di vendita" msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:213 build/serializers.py:784 +#: build/models.py:213 build/serializers.py:803 #: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873 msgid "Source Location" msgstr "Posizione Di Origine" @@ -942,42 +942,42 @@ msgstr "" msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:1143 +#: build/models.py:1171 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "" -#: build/models.py:1152 +#: build/models.py:1180 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "La quantità assegnata ({q}) non deve essere maggiore della quantità disponibile ({a})" -#: build/models.py:1162 order/models.py:1379 +#: build/models.py:1190 order/models.py:1379 msgid "Stock item is over-allocated" msgstr "L'articolo in giacenza è sovrallocato" -#: build/models.py:1168 order/models.py:1382 +#: build/models.py:1196 order/models.py:1382 msgid "Allocation quantity must be greater than zero" msgstr "La quantità di assegnazione deve essere maggiore di zero" -#: build/models.py:1174 +#: build/models.py:1202 msgid "Quantity must be 1 for serialized stock" msgstr "La quantità deve essere 1 per lo stock serializzato" -#: build/models.py:1231 +#: build/models.py:1259 msgid "Selected stock item not found in BOM" msgstr "Articolo in giacenza selezionato non trovato nel BOM" -#: build/models.py:1300 stock/templates/stock/item_base.html:177 +#: build/models.py:1328 stock/templates/stock/item_base.html:177 #: templates/InvenTree/search.html:137 templates/js/translated/build.js:2455 #: templates/navbar.html:38 msgid "Build" msgstr "Produzione" -#: build/models.py:1301 +#: build/models.py:1329 msgid "Build to allocate parts" msgstr "" -#: build/models.py:1317 build/serializers.py:629 order/serializers.py:1015 +#: build/models.py:1345 build/serializers.py:648 order/serializers.py:1015 #: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 #: stock/serializers.py:880 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 @@ -992,11 +992,11 @@ msgstr "" msgid "Stock Item" msgstr "Articoli in magazzino" -#: build/models.py:1318 +#: build/models.py:1346 msgid "Source stock item" msgstr "Origine giacenza articolo" -#: build/models.py:1330 build/serializers.py:193 +#: build/models.py:1358 build/serializers.py:193 #: build/templates/build/build_base.html:82 #: build/templates/build/detail.html:34 common/models.py:1678 #: company/templates/company/supplier_part.html:279 order/models.py:897 @@ -1033,19 +1033,19 @@ msgstr "Origine giacenza articolo" msgid "Quantity" msgstr "Quantità" -#: build/models.py:1331 +#: build/models.py:1359 msgid "Stock quantity to allocate to build" msgstr "" -#: build/models.py:1339 +#: build/models.py:1367 msgid "Install into" msgstr "Installa in" -#: build/models.py:1340 +#: build/models.py:1368 msgid "Destination stock item" msgstr "Destinazione articolo in giacenza" -#: build/serializers.py:138 build/serializers.py:658 +#: build/serializers.py:138 build/serializers.py:677 #: templates/js/translated/build.js:1166 msgid "Build Output" msgstr "" @@ -1070,7 +1070,7 @@ msgstr "" msgid "Enter quantity for build output" msgstr "Inserisci la quantità per l'output di compilazione" -#: build/serializers.py:208 build/serializers.py:649 order/models.py:318 +#: build/serializers.py:208 build/serializers.py:668 order/models.py:318 #: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 #: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 #: stock/serializers.py:302 @@ -1164,117 +1164,125 @@ msgstr "" msgid "Delete any build outputs which have not been completed" msgstr "" -#: build/serializers.py:480 -msgid "Accept Overallocated" +#: build/serializers.py:485 +msgid "Accept as consumed by this build order" msgstr "" -#: build/serializers.py:481 -msgid "Accept stock items which have been overallocated to this build order" +#: build/serializers.py:486 +msgid "Deallocate before completing this build order" msgstr "" -#: build/serializers.py:491 -msgid "Some stock items have been overallocated" +#: build/serializers.py:494 +msgid "Overallocated Stock" msgstr "" #: build/serializers.py:496 +msgid "How do you want to handle extra stock items assigned to the build order" +msgstr "" + +#: build/serializers.py:506 +msgid "Some stock items have been overallocated" +msgstr "" + +#: build/serializers.py:511 msgid "Accept Unallocated" msgstr "" -#: build/serializers.py:497 +#: build/serializers.py:512 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:507 templates/js/translated/build.js:195 +#: build/serializers.py:522 templates/js/translated/build.js:195 msgid "Required stock has not been fully allocated" msgstr "" -#: build/serializers.py:512 +#: build/serializers.py:527 msgid "Accept Incomplete" msgstr "" -#: build/serializers.py:513 +#: build/serializers.py:528 msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:523 templates/js/translated/build.js:199 +#: build/serializers.py:538 templates/js/translated/build.js:199 msgid "Required build quantity has not been completed" msgstr "" -#: build/serializers.py:532 +#: build/serializers.py:547 msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:535 build/templates/build/build_base.html:95 +#: build/serializers.py:550 build/templates/build/build_base.html:95 msgid "No build outputs have been created for this build order" msgstr "" -#: build/serializers.py:561 build/serializers.py:606 part/models.py:2719 +#: build/serializers.py:580 build/serializers.py:625 part/models.py:2719 #: part/models.py:2853 msgid "BOM Item" msgstr "Distinta base (Bom)" -#: build/serializers.py:571 +#: build/serializers.py:590 msgid "Build output" msgstr "" -#: build/serializers.py:579 +#: build/serializers.py:598 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:620 +#: build/serializers.py:639 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:635 stock/serializers.py:767 +#: build/serializers.py:654 stock/serializers.py:767 msgid "Item must be in stock" msgstr "L'articolo deve essere disponibile" -#: build/serializers.py:693 order/serializers.py:1073 +#: build/serializers.py:712 order/serializers.py:1073 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "Quantità disponibile ({q}) superata" -#: build/serializers.py:699 +#: build/serializers.py:718 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:706 +#: build/serializers.py:725 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:711 +#: build/serializers.py:730 msgid "This stock item has already been allocated to this build output" msgstr "" -#: build/serializers.py:734 order/serializers.py:1319 +#: build/serializers.py:753 order/serializers.py:1319 msgid "Allocation items must be provided" msgstr "Deve essere indicata l'allocazione dell'articolo" -#: build/serializers.py:785 +#: build/serializers.py:804 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:793 +#: build/serializers.py:812 msgid "Exclude Location" msgstr "" -#: build/serializers.py:794 +#: build/serializers.py:813 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:799 +#: build/serializers.py:818 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:800 +#: build/serializers.py:819 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:805 +#: build/serializers.py:824 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:806 +#: build/serializers.py:825 msgid "Allow allocation of substitute parts" msgstr "" @@ -5520,7 +5528,7 @@ msgstr "" msgid "Unknown database" msgstr "Database sconosciuto" -#: part/templatetags/inventree_extras.py:222 +#: part/templatetags/inventree_extras.py:229 #, python-brace-format msgid "{title} v{version}" msgstr "" diff --git a/InvenTree/locale/ja/LC_MESSAGES/django.po b/InvenTree/locale/ja/LC_MESSAGES/django.po index 0c374bbec5..9b35c9e59d 100644 --- a/InvenTree/locale/ja/LC_MESSAGES/django.po +++ b/InvenTree/locale/ja/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 21:57+0000\n" -"PO-Revision-Date: 2022-08-08 13:03\n" +"POT-Creation-Date: 2022-08-10 11:38+0000\n" +"PO-Revision-Date: 2022-08-10 13:22\n" "Last-Translator: \n" "Language-Team: Japanese\n" "Language: ja_JP\n" @@ -121,44 +121,44 @@ msgstr "" msgid "Supplied URL is not a valid image file" msgstr "" -#: InvenTree/helpers.py:584 +#: InvenTree/helpers.py:598 #, python-brace-format msgid "Duplicate serial: {sn}" msgstr "重複したシリアル番号: {sn}" -#: InvenTree/helpers.py:591 order/models.py:320 order/models.py:472 +#: InvenTree/helpers.py:605 order/models.py:320 order/models.py:472 msgid "Invalid quantity provided" msgstr "数量コードが無効です" -#: InvenTree/helpers.py:594 +#: InvenTree/helpers.py:608 msgid "Empty serial number string" msgstr "シリアル番号は空です" -#: InvenTree/helpers.py:626 +#: InvenTree/helpers.py:640 #, python-brace-format msgid "Invalid group range: {g}" msgstr "" -#: InvenTree/helpers.py:629 +#: InvenTree/helpers.py:643 #, python-brace-format msgid "Invalid group: {g}" msgstr "無効なグループ: {g}" -#: InvenTree/helpers.py:657 +#: InvenTree/helpers.py:671 #, python-brace-format msgid "Invalid group sequence: {g}" msgstr "" -#: InvenTree/helpers.py:665 +#: InvenTree/helpers.py:679 #, python-brace-format msgid "Invalid/no group {group}" msgstr "{group} は無効なグループか、存在しません。" -#: InvenTree/helpers.py:671 +#: InvenTree/helpers.py:685 msgid "No serial numbers found" msgstr "シリアル番号が見つかりません" -#: InvenTree/helpers.py:675 +#: InvenTree/helpers.py:689 #, python-brace-format msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "" @@ -816,7 +816,7 @@ msgstr "" msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:213 build/serializers.py:784 +#: build/models.py:213 build/serializers.py:803 #: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873 msgid "Source Location" msgstr "" @@ -942,42 +942,42 @@ msgstr "" msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:1143 +#: build/models.py:1171 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "" -#: build/models.py:1152 +#: build/models.py:1180 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "" -#: build/models.py:1162 order/models.py:1379 +#: build/models.py:1190 order/models.py:1379 msgid "Stock item is over-allocated" msgstr "" -#: build/models.py:1168 order/models.py:1382 +#: build/models.py:1196 order/models.py:1382 msgid "Allocation quantity must be greater than zero" msgstr "" -#: build/models.py:1174 +#: build/models.py:1202 msgid "Quantity must be 1 for serialized stock" msgstr "" -#: build/models.py:1231 +#: build/models.py:1259 msgid "Selected stock item not found in BOM" msgstr "" -#: build/models.py:1300 stock/templates/stock/item_base.html:177 +#: build/models.py:1328 stock/templates/stock/item_base.html:177 #: templates/InvenTree/search.html:137 templates/js/translated/build.js:2455 #: templates/navbar.html:38 msgid "Build" msgstr "" -#: build/models.py:1301 +#: build/models.py:1329 msgid "Build to allocate parts" msgstr "パーツを割り当てるためにビルドする" -#: build/models.py:1317 build/serializers.py:629 order/serializers.py:1015 +#: build/models.py:1345 build/serializers.py:648 order/serializers.py:1015 #: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 #: stock/serializers.py:880 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 @@ -992,11 +992,11 @@ msgstr "パーツを割り当てるためにビルドする" msgid "Stock Item" msgstr "在庫商品" -#: build/models.py:1318 +#: build/models.py:1346 msgid "Source stock item" msgstr "" -#: build/models.py:1330 build/serializers.py:193 +#: build/models.py:1358 build/serializers.py:193 #: build/templates/build/build_base.html:82 #: build/templates/build/detail.html:34 common/models.py:1678 #: company/templates/company/supplier_part.html:279 order/models.py:897 @@ -1033,19 +1033,19 @@ msgstr "" msgid "Quantity" msgstr "数量" -#: build/models.py:1331 +#: build/models.py:1359 msgid "Stock quantity to allocate to build" msgstr "" -#: build/models.py:1339 +#: build/models.py:1367 msgid "Install into" msgstr "" -#: build/models.py:1340 +#: build/models.py:1368 msgid "Destination stock item" msgstr "" -#: build/serializers.py:138 build/serializers.py:658 +#: build/serializers.py:138 build/serializers.py:677 #: templates/js/translated/build.js:1166 msgid "Build Output" msgstr "" @@ -1070,7 +1070,7 @@ msgstr "" msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:208 build/serializers.py:649 order/models.py:318 +#: build/serializers.py:208 build/serializers.py:668 order/models.py:318 #: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 #: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 #: stock/serializers.py:302 @@ -1164,117 +1164,125 @@ msgstr "" msgid "Delete any build outputs which have not been completed" msgstr "" -#: build/serializers.py:480 -msgid "Accept Overallocated" +#: build/serializers.py:485 +msgid "Accept as consumed by this build order" msgstr "" -#: build/serializers.py:481 -msgid "Accept stock items which have been overallocated to this build order" +#: build/serializers.py:486 +msgid "Deallocate before completing this build order" msgstr "" -#: build/serializers.py:491 -msgid "Some stock items have been overallocated" +#: build/serializers.py:494 +msgid "Overallocated Stock" msgstr "" #: build/serializers.py:496 +msgid "How do you want to handle extra stock items assigned to the build order" +msgstr "" + +#: build/serializers.py:506 +msgid "Some stock items have been overallocated" +msgstr "" + +#: build/serializers.py:511 msgid "Accept Unallocated" msgstr "" -#: build/serializers.py:497 +#: build/serializers.py:512 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:507 templates/js/translated/build.js:195 +#: build/serializers.py:522 templates/js/translated/build.js:195 msgid "Required stock has not been fully allocated" msgstr "" -#: build/serializers.py:512 +#: build/serializers.py:527 msgid "Accept Incomplete" msgstr "" -#: build/serializers.py:513 +#: build/serializers.py:528 msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:523 templates/js/translated/build.js:199 +#: build/serializers.py:538 templates/js/translated/build.js:199 msgid "Required build quantity has not been completed" msgstr "" -#: build/serializers.py:532 +#: build/serializers.py:547 msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:535 build/templates/build/build_base.html:95 +#: build/serializers.py:550 build/templates/build/build_base.html:95 msgid "No build outputs have been created for this build order" msgstr "" -#: build/serializers.py:561 build/serializers.py:606 part/models.py:2719 +#: build/serializers.py:580 build/serializers.py:625 part/models.py:2719 #: part/models.py:2853 msgid "BOM Item" msgstr "" -#: build/serializers.py:571 +#: build/serializers.py:590 msgid "Build output" msgstr "" -#: build/serializers.py:579 +#: build/serializers.py:598 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:620 +#: build/serializers.py:639 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:635 stock/serializers.py:767 +#: build/serializers.py:654 stock/serializers.py:767 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:693 order/serializers.py:1073 +#: build/serializers.py:712 order/serializers.py:1073 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:699 +#: build/serializers.py:718 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:706 +#: build/serializers.py:725 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:711 +#: build/serializers.py:730 msgid "This stock item has already been allocated to this build output" msgstr "" -#: build/serializers.py:734 order/serializers.py:1319 +#: build/serializers.py:753 order/serializers.py:1319 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:785 +#: build/serializers.py:804 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:793 +#: build/serializers.py:812 msgid "Exclude Location" msgstr "" -#: build/serializers.py:794 +#: build/serializers.py:813 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:799 +#: build/serializers.py:818 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:800 +#: build/serializers.py:819 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:805 +#: build/serializers.py:824 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:806 +#: build/serializers.py:825 msgid "Allow allocation of substitute parts" msgstr "" @@ -5520,7 +5528,7 @@ msgstr "" msgid "Unknown database" msgstr "" -#: part/templatetags/inventree_extras.py:222 +#: part/templatetags/inventree_extras.py:229 #, python-brace-format msgid "{title} v{version}" msgstr "" diff --git a/InvenTree/locale/ko/LC_MESSAGES/django.po b/InvenTree/locale/ko/LC_MESSAGES/django.po index c3a95168be..bada1d66a3 100644 --- a/InvenTree/locale/ko/LC_MESSAGES/django.po +++ b/InvenTree/locale/ko/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 21:57+0000\n" -"PO-Revision-Date: 2022-08-08 13:03\n" +"POT-Creation-Date: 2022-08-10 11:38+0000\n" +"PO-Revision-Date: 2022-08-10 13:22\n" "Last-Translator: \n" "Language-Team: Korean\n" "Language: ko_KR\n" @@ -121,44 +121,44 @@ msgstr "" msgid "Supplied URL is not a valid image file" msgstr "" -#: InvenTree/helpers.py:584 +#: InvenTree/helpers.py:598 #, python-brace-format msgid "Duplicate serial: {sn}" msgstr "" -#: InvenTree/helpers.py:591 order/models.py:320 order/models.py:472 +#: InvenTree/helpers.py:605 order/models.py:320 order/models.py:472 msgid "Invalid quantity provided" msgstr "" -#: InvenTree/helpers.py:594 +#: InvenTree/helpers.py:608 msgid "Empty serial number string" msgstr "" -#: InvenTree/helpers.py:626 +#: InvenTree/helpers.py:640 #, python-brace-format msgid "Invalid group range: {g}" msgstr "" -#: InvenTree/helpers.py:629 +#: InvenTree/helpers.py:643 #, python-brace-format msgid "Invalid group: {g}" msgstr "" -#: InvenTree/helpers.py:657 +#: InvenTree/helpers.py:671 #, python-brace-format msgid "Invalid group sequence: {g}" msgstr "" -#: InvenTree/helpers.py:665 +#: InvenTree/helpers.py:679 #, python-brace-format msgid "Invalid/no group {group}" msgstr "" -#: InvenTree/helpers.py:671 +#: InvenTree/helpers.py:685 msgid "No serial numbers found" msgstr "" -#: InvenTree/helpers.py:675 +#: InvenTree/helpers.py:689 #, python-brace-format msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "" @@ -816,7 +816,7 @@ msgstr "" msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:213 build/serializers.py:784 +#: build/models.py:213 build/serializers.py:803 #: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873 msgid "Source Location" msgstr "" @@ -942,42 +942,42 @@ msgstr "" msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:1143 +#: build/models.py:1171 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "" -#: build/models.py:1152 +#: build/models.py:1180 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "" -#: build/models.py:1162 order/models.py:1379 +#: build/models.py:1190 order/models.py:1379 msgid "Stock item is over-allocated" msgstr "" -#: build/models.py:1168 order/models.py:1382 +#: build/models.py:1196 order/models.py:1382 msgid "Allocation quantity must be greater than zero" msgstr "" -#: build/models.py:1174 +#: build/models.py:1202 msgid "Quantity must be 1 for serialized stock" msgstr "" -#: build/models.py:1231 +#: build/models.py:1259 msgid "Selected stock item not found in BOM" msgstr "" -#: build/models.py:1300 stock/templates/stock/item_base.html:177 +#: build/models.py:1328 stock/templates/stock/item_base.html:177 #: templates/InvenTree/search.html:137 templates/js/translated/build.js:2455 #: templates/navbar.html:38 msgid "Build" msgstr "" -#: build/models.py:1301 +#: build/models.py:1329 msgid "Build to allocate parts" msgstr "" -#: build/models.py:1317 build/serializers.py:629 order/serializers.py:1015 +#: build/models.py:1345 build/serializers.py:648 order/serializers.py:1015 #: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 #: stock/serializers.py:880 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 @@ -992,11 +992,11 @@ msgstr "" msgid "Stock Item" msgstr "" -#: build/models.py:1318 +#: build/models.py:1346 msgid "Source stock item" msgstr "" -#: build/models.py:1330 build/serializers.py:193 +#: build/models.py:1358 build/serializers.py:193 #: build/templates/build/build_base.html:82 #: build/templates/build/detail.html:34 common/models.py:1678 #: company/templates/company/supplier_part.html:279 order/models.py:897 @@ -1033,19 +1033,19 @@ msgstr "" msgid "Quantity" msgstr "수량" -#: build/models.py:1331 +#: build/models.py:1359 msgid "Stock quantity to allocate to build" msgstr "" -#: build/models.py:1339 +#: build/models.py:1367 msgid "Install into" msgstr "" -#: build/models.py:1340 +#: build/models.py:1368 msgid "Destination stock item" msgstr "" -#: build/serializers.py:138 build/serializers.py:658 +#: build/serializers.py:138 build/serializers.py:677 #: templates/js/translated/build.js:1166 msgid "Build Output" msgstr "" @@ -1070,7 +1070,7 @@ msgstr "" msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:208 build/serializers.py:649 order/models.py:318 +#: build/serializers.py:208 build/serializers.py:668 order/models.py:318 #: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 #: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 #: stock/serializers.py:302 @@ -1164,117 +1164,125 @@ msgstr "" msgid "Delete any build outputs which have not been completed" msgstr "" -#: build/serializers.py:480 -msgid "Accept Overallocated" +#: build/serializers.py:485 +msgid "Accept as consumed by this build order" msgstr "" -#: build/serializers.py:481 -msgid "Accept stock items which have been overallocated to this build order" +#: build/serializers.py:486 +msgid "Deallocate before completing this build order" msgstr "" -#: build/serializers.py:491 -msgid "Some stock items have been overallocated" +#: build/serializers.py:494 +msgid "Overallocated Stock" msgstr "" #: build/serializers.py:496 +msgid "How do you want to handle extra stock items assigned to the build order" +msgstr "" + +#: build/serializers.py:506 +msgid "Some stock items have been overallocated" +msgstr "" + +#: build/serializers.py:511 msgid "Accept Unallocated" msgstr "" -#: build/serializers.py:497 +#: build/serializers.py:512 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:507 templates/js/translated/build.js:195 +#: build/serializers.py:522 templates/js/translated/build.js:195 msgid "Required stock has not been fully allocated" msgstr "" -#: build/serializers.py:512 +#: build/serializers.py:527 msgid "Accept Incomplete" msgstr "" -#: build/serializers.py:513 +#: build/serializers.py:528 msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:523 templates/js/translated/build.js:199 +#: build/serializers.py:538 templates/js/translated/build.js:199 msgid "Required build quantity has not been completed" msgstr "" -#: build/serializers.py:532 +#: build/serializers.py:547 msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:535 build/templates/build/build_base.html:95 +#: build/serializers.py:550 build/templates/build/build_base.html:95 msgid "No build outputs have been created for this build order" msgstr "" -#: build/serializers.py:561 build/serializers.py:606 part/models.py:2719 +#: build/serializers.py:580 build/serializers.py:625 part/models.py:2719 #: part/models.py:2853 msgid "BOM Item" msgstr "" -#: build/serializers.py:571 +#: build/serializers.py:590 msgid "Build output" msgstr "" -#: build/serializers.py:579 +#: build/serializers.py:598 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:620 +#: build/serializers.py:639 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:635 stock/serializers.py:767 +#: build/serializers.py:654 stock/serializers.py:767 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:693 order/serializers.py:1073 +#: build/serializers.py:712 order/serializers.py:1073 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:699 +#: build/serializers.py:718 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:706 +#: build/serializers.py:725 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:711 +#: build/serializers.py:730 msgid "This stock item has already been allocated to this build output" msgstr "" -#: build/serializers.py:734 order/serializers.py:1319 +#: build/serializers.py:753 order/serializers.py:1319 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:785 +#: build/serializers.py:804 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:793 +#: build/serializers.py:812 msgid "Exclude Location" msgstr "" -#: build/serializers.py:794 +#: build/serializers.py:813 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:799 +#: build/serializers.py:818 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:800 +#: build/serializers.py:819 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:805 +#: build/serializers.py:824 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:806 +#: build/serializers.py:825 msgid "Allow allocation of substitute parts" msgstr "" @@ -5520,7 +5528,7 @@ msgstr "" msgid "Unknown database" msgstr "" -#: part/templatetags/inventree_extras.py:222 +#: part/templatetags/inventree_extras.py:229 #, python-brace-format msgid "{title} v{version}" msgstr "" diff --git a/InvenTree/locale/nl/LC_MESSAGES/django.po b/InvenTree/locale/nl/LC_MESSAGES/django.po index bfc943cc4f..210fb8c4fc 100644 --- a/InvenTree/locale/nl/LC_MESSAGES/django.po +++ b/InvenTree/locale/nl/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 21:57+0000\n" -"PO-Revision-Date: 2022-08-08 13:03\n" +"POT-Creation-Date: 2022-08-10 11:38+0000\n" +"PO-Revision-Date: 2022-08-10 13:22\n" "Last-Translator: \n" "Language-Team: Dutch\n" "Language: nl_NL\n" @@ -121,44 +121,44 @@ msgstr "Externe server heeft lege reactie teruggegeven" msgid "Supplied URL is not a valid image file" msgstr "Opgegeven URL is geen geldig afbeeldingsbestand" -#: InvenTree/helpers.py:584 +#: InvenTree/helpers.py:598 #, python-brace-format msgid "Duplicate serial: {sn}" msgstr "Duplicaat serienummer: {sn}" -#: InvenTree/helpers.py:591 order/models.py:320 order/models.py:472 +#: InvenTree/helpers.py:605 order/models.py:320 order/models.py:472 msgid "Invalid quantity provided" msgstr "Ongeldige hoeveelheid ingevoerd" -#: InvenTree/helpers.py:594 +#: InvenTree/helpers.py:608 msgid "Empty serial number string" msgstr "Leeg serienummer" -#: InvenTree/helpers.py:626 +#: InvenTree/helpers.py:640 #, python-brace-format msgid "Invalid group range: {g}" msgstr "Ongeldig groepsbereik: {g}" -#: InvenTree/helpers.py:629 +#: InvenTree/helpers.py:643 #, python-brace-format msgid "Invalid group: {g}" msgstr "Ongeldige groep: {g}" -#: InvenTree/helpers.py:657 +#: InvenTree/helpers.py:671 #, python-brace-format msgid "Invalid group sequence: {g}" msgstr "Ongeldig groepsbereik: {g}" -#: InvenTree/helpers.py:665 +#: InvenTree/helpers.py:679 #, python-brace-format msgid "Invalid/no group {group}" msgstr "Ongeldige/geen groep {group}" -#: InvenTree/helpers.py:671 +#: InvenTree/helpers.py:685 msgid "No serial numbers found" msgstr "Geen serienummers gevonden" -#: InvenTree/helpers.py:675 +#: InvenTree/helpers.py:689 #, python-brace-format msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "Hoeveelheid van unieke serienummers ({s}) moet overeenkomen met de hoeveelheid ({q})" @@ -816,7 +816,7 @@ msgstr "Verkooporder Referentie" msgid "SalesOrder to which this build is allocated" msgstr "Verkooporder waar deze productie aan is toegewezen" -#: build/models.py:213 build/serializers.py:784 +#: build/models.py:213 build/serializers.py:803 #: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873 msgid "Source Location" msgstr "Bronlocatie" @@ -942,42 +942,42 @@ msgstr "Productie uitvoer is al voltooid" msgid "Build output does not match Build Order" msgstr "Productuitvoer komt niet overeen met de Productieorder" -#: build/models.py:1143 +#: build/models.py:1171 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "Productieartikel moet een productieuitvoer specificeren, omdat het hoofdonderdeel gemarkeerd is als traceerbaar" -#: build/models.py:1152 +#: build/models.py:1180 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "Toegewezen hoeveelheid ({q}) mag de beschikbare voorraad ({a}) niet overschrijden" -#: build/models.py:1162 order/models.py:1379 +#: build/models.py:1190 order/models.py:1379 msgid "Stock item is over-allocated" msgstr "Voorraad item is te veel toegewezen" -#: build/models.py:1168 order/models.py:1382 +#: build/models.py:1196 order/models.py:1382 msgid "Allocation quantity must be greater than zero" msgstr "Toewijzing hoeveelheid moet groter zijn dan nul" -#: build/models.py:1174 +#: build/models.py:1202 msgid "Quantity must be 1 for serialized stock" msgstr "Hoeveelheid moet 1 zijn voor geserialiseerde voorraad" -#: build/models.py:1231 +#: build/models.py:1259 msgid "Selected stock item not found in BOM" msgstr "Geselecteerd voorraadartikel niet gevonden in stuklijst" -#: build/models.py:1300 stock/templates/stock/item_base.html:177 +#: build/models.py:1328 stock/templates/stock/item_base.html:177 #: templates/InvenTree/search.html:137 templates/js/translated/build.js:2455 #: templates/navbar.html:38 msgid "Build" msgstr "Product" -#: build/models.py:1301 +#: build/models.py:1329 msgid "Build to allocate parts" msgstr "Product om onderdelen toe te wijzen" -#: build/models.py:1317 build/serializers.py:629 order/serializers.py:1015 +#: build/models.py:1345 build/serializers.py:648 order/serializers.py:1015 #: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 #: stock/serializers.py:880 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 @@ -992,11 +992,11 @@ msgstr "Product om onderdelen toe te wijzen" msgid "Stock Item" msgstr "Voorraadartikel" -#: build/models.py:1318 +#: build/models.py:1346 msgid "Source stock item" msgstr "Bron voorraadartikel" -#: build/models.py:1330 build/serializers.py:193 +#: build/models.py:1358 build/serializers.py:193 #: build/templates/build/build_base.html:82 #: build/templates/build/detail.html:34 common/models.py:1678 #: company/templates/company/supplier_part.html:279 order/models.py:897 @@ -1033,19 +1033,19 @@ msgstr "Bron voorraadartikel" msgid "Quantity" msgstr "Hoeveelheid" -#: build/models.py:1331 +#: build/models.py:1359 msgid "Stock quantity to allocate to build" msgstr "Voorraad hoeveelheid toe te wijzen aan productie" -#: build/models.py:1339 +#: build/models.py:1367 msgid "Install into" msgstr "Installeren in" -#: build/models.py:1340 +#: build/models.py:1368 msgid "Destination stock item" msgstr "Bestemming voorraadartikel" -#: build/serializers.py:138 build/serializers.py:658 +#: build/serializers.py:138 build/serializers.py:677 #: templates/js/translated/build.js:1166 msgid "Build Output" msgstr "Productieuitvoer" @@ -1070,7 +1070,7 @@ msgstr "Deze productieuitvoer is niet volledig toegewezen" msgid "Enter quantity for build output" msgstr "Voer hoeveelheid in voor productie uitvoer" -#: build/serializers.py:208 build/serializers.py:649 order/models.py:318 +#: build/serializers.py:208 build/serializers.py:668 order/models.py:318 #: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 #: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 #: stock/serializers.py:302 @@ -1164,117 +1164,125 @@ msgstr "Verwijder Incomplete Uitvoeren" msgid "Delete any build outputs which have not been completed" msgstr "Verwijder alle productieuitvoeren die niet zijn voltooid" -#: build/serializers.py:480 -msgid "Accept Overallocated" +#: build/serializers.py:485 +msgid "Accept as consumed by this build order" msgstr "" -#: build/serializers.py:481 -msgid "Accept stock items which have been overallocated to this build order" -msgstr "Accepteer voorraadartikelen die teveel zijn toegewezen aan deze productieorder" +#: build/serializers.py:486 +msgid "Deallocate before completing this build order" +msgstr "" -#: build/serializers.py:491 -msgid "Some stock items have been overallocated" +#: build/serializers.py:494 +msgid "Overallocated Stock" msgstr "" #: build/serializers.py:496 +msgid "How do you want to handle extra stock items assigned to the build order" +msgstr "" + +#: build/serializers.py:506 +msgid "Some stock items have been overallocated" +msgstr "" + +#: build/serializers.py:511 msgid "Accept Unallocated" msgstr "Accepteer Niet-toegewezen" -#: build/serializers.py:497 +#: build/serializers.py:512 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "Accepteer dat voorraadartikelen niet volledig zijn toegewezen aan deze productieorder" -#: build/serializers.py:507 templates/js/translated/build.js:195 +#: build/serializers.py:522 templates/js/translated/build.js:195 msgid "Required stock has not been fully allocated" msgstr "Vereiste voorraad is niet volledig toegewezen" -#: build/serializers.py:512 +#: build/serializers.py:527 msgid "Accept Incomplete" msgstr "Accepteer Onvolledig" -#: build/serializers.py:513 +#: build/serializers.py:528 msgid "Accept that the required number of build outputs have not been completed" msgstr "Accepteer dat het vereist aantal productieuitvoeren niet is voltooid" -#: build/serializers.py:523 templates/js/translated/build.js:199 +#: build/serializers.py:538 templates/js/translated/build.js:199 msgid "Required build quantity has not been completed" msgstr "Vereiste productiehoeveelheid is voltooid" -#: build/serializers.py:532 +#: build/serializers.py:547 msgid "Build order has incomplete outputs" msgstr "Productieorder heeft onvolledige uitvoeren" -#: build/serializers.py:535 build/templates/build/build_base.html:95 +#: build/serializers.py:550 build/templates/build/build_base.html:95 msgid "No build outputs have been created for this build order" msgstr "Er zijn geen productuitvoeren aangemaakt voor deze productieorder" -#: build/serializers.py:561 build/serializers.py:606 part/models.py:2719 +#: build/serializers.py:580 build/serializers.py:625 part/models.py:2719 #: part/models.py:2853 msgid "BOM Item" msgstr "Stuklijstartikel" -#: build/serializers.py:571 +#: build/serializers.py:590 msgid "Build output" msgstr "Productieuitvoer" -#: build/serializers.py:579 +#: build/serializers.py:598 msgid "Build output must point to the same build" msgstr "Productieuitvoer moet naar dezelfde productie wijzen" -#: build/serializers.py:620 +#: build/serializers.py:639 msgid "bom_item.part must point to the same part as the build order" msgstr "bom_item.part moet naar hetzelfde onderdeel wijzen als de productieorder" -#: build/serializers.py:635 stock/serializers.py:767 +#: build/serializers.py:654 stock/serializers.py:767 msgid "Item must be in stock" msgstr "Artikel moet op voorraad zijn" -#: build/serializers.py:693 order/serializers.py:1073 +#: build/serializers.py:712 order/serializers.py:1073 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "Beschikbare hoeveelheid ({q}) overschreden" -#: build/serializers.py:699 +#: build/serializers.py:718 msgid "Build output must be specified for allocation of tracked parts" msgstr "Productieuitvoer moet worden opgegeven voor de toewijzing van gevolgde onderdelen" -#: build/serializers.py:706 +#: build/serializers.py:725 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "Productieuitvoer kan niet worden gespecificeerd voor de toewijzing van niet gevolgde onderdelen" -#: build/serializers.py:711 +#: build/serializers.py:730 msgid "This stock item has already been allocated to this build output" msgstr "Dit voorraadartikel is al toegewezen aan deze productieoutput" -#: build/serializers.py:734 order/serializers.py:1319 +#: build/serializers.py:753 order/serializers.py:1319 msgid "Allocation items must be provided" msgstr "Allocaties voor artikelen moeten worden opgegeven" -#: build/serializers.py:785 +#: build/serializers.py:804 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "Voorraadlocatie waar onderdelen afkomstig zijn (laat leeg om van elke locatie te nemen)" -#: build/serializers.py:793 +#: build/serializers.py:812 msgid "Exclude Location" msgstr "Locatie uitsluiten" -#: build/serializers.py:794 +#: build/serializers.py:813 msgid "Exclude stock items from this selected location" msgstr "Voorraadartikelen van deze geselecteerde locatie uitsluiten" -#: build/serializers.py:799 +#: build/serializers.py:818 msgid "Interchangeable Stock" msgstr "Uitwisselbare voorraad" -#: build/serializers.py:800 +#: build/serializers.py:819 msgid "Stock items in multiple locations can be used interchangeably" msgstr "Voorraadartikelen op meerdere locaties kunnen uitwisselbaar worden gebruikt" -#: build/serializers.py:805 +#: build/serializers.py:824 msgid "Substitute Stock" msgstr "Vervangende Voorraad" -#: build/serializers.py:806 +#: build/serializers.py:825 msgid "Allow allocation of substitute parts" msgstr "Toewijzing van vervangende onderdelen toestaan" @@ -3545,7 +3553,7 @@ msgstr "Order uitgegeven op datum" #: order/models.py:280 msgid "Target Delivery Date" -msgstr "Doel Leverdatum" +msgstr "Streefdatum Levering" #: order/models.py:281 msgid "Expected date for order delivery. Order will be overdue after this date." @@ -3819,7 +3827,7 @@ msgstr "Order is niet open" #: order/serializers.py:318 msgid "Purchase price currency" -msgstr "Inkoopprijs valuta" +msgstr "Valuta Inkoopprijs" #: order/serializers.py:337 msgid "Supplier part must be specified" @@ -3847,7 +3855,7 @@ msgstr "Artikelregel komt niet overeen met inkooporder" #: order/serializers.py:429 order/serializers.py:533 msgid "Select destination location for received items" -msgstr "Selecteer bestemmingslocatie voor ontvangen items" +msgstr "Selecteer bestemmingslocatie voor ontvangen artikelen" #: order/serializers.py:448 templates/js/translated/order.js:1248 msgid "Enter batch code for incoming stock items" @@ -3859,11 +3867,11 @@ msgstr "Voer serienummers in voor inkomende voorraadartikelen" #: order/serializers.py:469 msgid "Barcode Hash" -msgstr "Streepjescode Hash" +msgstr "Hash van Streepjescode" #: order/serializers.py:470 msgid "Unique identifier field" -msgstr "Unieke identificatieveld" +msgstr "Uniek identificatieveld" #: order/serializers.py:484 msgid "Barcode is already in use" @@ -3887,7 +3895,7 @@ msgstr "Geleverde streepjescodewaarden moeten uniek zijn" #: order/serializers.py:883 msgid "Sale price currency" -msgstr "Verkoopprijs valuta" +msgstr "Valuta verkoopprijs" #: order/serializers.py:964 msgid "No shipment details provided" @@ -4038,7 +4046,7 @@ msgstr "Bewerk Inkooporder" #: part/templates/part/import_wizard/ajax_match_references.html:12 #: part/templates/part/import_wizard/match_references.html:12 msgid "Errors exist in the submitted data" -msgstr "Er zijn fouten in de ingevoerde gegevens" +msgstr "Er zijn fouten in de ingediende gegevens" #: order/templates/order/order_wizard/match_parts.html:21 #: part/templates/part/import_wizard/match_references.html:21 @@ -4116,7 +4124,7 @@ msgstr "Extra Regels" #: order/templates/order/sales_order_detail.html:47 #: order/templates/order/sales_order_detail.html:280 msgid "Add Extra Line" -msgstr "Voeg Extra Regel Toe" +msgstr "Extra Regel Toevoegen" #: order/templates/order/purchase_order_detail.html:72 msgid "Received Items" @@ -4142,12 +4150,12 @@ msgstr "Print verkooporderrapport" #: order/templates/order/sales_order_base.html:47 msgid "Print packing list" -msgstr "Druk pakbon af" +msgstr "Pakbon afdrukken" #: order/templates/order/sales_order_base.html:60 #: templates/js/translated/order.js:229 msgid "Complete Shipments" -msgstr "Voltooi Verzendingen" +msgstr "Verzendingen Voltooien" #: order/templates/order/sales_order_base.html:67 #: order/templates/order/sales_order_base.html:258 @@ -4194,7 +4202,7 @@ msgstr "Nieuwe Verzending" #: order/views.py:104 msgid "Match Supplier Parts" -msgstr "Vergelijk Leveranciersonderdelen" +msgstr "Leveranciersonderdelen Vergelijken" #: order/views.py:377 msgid "Sales order not found" @@ -5520,7 +5528,7 @@ msgstr "" msgid "Unknown database" msgstr "" -#: part/templatetags/inventree_extras.py:222 +#: part/templatetags/inventree_extras.py:229 #, python-brace-format msgid "{title} v{version}" msgstr "" @@ -6007,7 +6015,7 @@ msgstr "" #: stock/models.py:684 msgid "Source Purchase Order" -msgstr "Bron Inkooporder" +msgstr "Inkooporder Bron" #: stock/models.py:687 msgid "Purchase order for this stock item" diff --git a/InvenTree/locale/no/LC_MESSAGES/django.po b/InvenTree/locale/no/LC_MESSAGES/django.po index 432863233e..8565e6977e 100644 --- a/InvenTree/locale/no/LC_MESSAGES/django.po +++ b/InvenTree/locale/no/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 21:57+0000\n" -"PO-Revision-Date: 2022-08-08 13:03\n" +"POT-Creation-Date: 2022-08-10 11:38+0000\n" +"PO-Revision-Date: 2022-08-10 13:22\n" "Last-Translator: \n" "Language-Team: Norwegian\n" "Language: no_NO\n" @@ -121,44 +121,44 @@ msgstr "Ekstern server returnerte tomt svar" msgid "Supplied URL is not a valid image file" msgstr "Angitt URL er ikke en gyldig bildefil" -#: InvenTree/helpers.py:584 +#: InvenTree/helpers.py:598 #, python-brace-format msgid "Duplicate serial: {sn}" msgstr "Dupliser serie: {sn}" -#: InvenTree/helpers.py:591 order/models.py:320 order/models.py:472 +#: InvenTree/helpers.py:605 order/models.py:320 order/models.py:472 msgid "Invalid quantity provided" msgstr "Ugyldig mengde oppgitt" -#: InvenTree/helpers.py:594 +#: InvenTree/helpers.py:608 msgid "Empty serial number string" msgstr "Tom serienummerstreng" -#: InvenTree/helpers.py:626 +#: InvenTree/helpers.py:640 #, python-brace-format msgid "Invalid group range: {g}" msgstr "Ugyldig gruppeserie: {g}" -#: InvenTree/helpers.py:629 +#: InvenTree/helpers.py:643 #, python-brace-format msgid "Invalid group: {g}" msgstr "Ugyldig gruppe: {g}" -#: InvenTree/helpers.py:657 +#: InvenTree/helpers.py:671 #, python-brace-format msgid "Invalid group sequence: {g}" msgstr "Ugyldig gruppesekvense: {g}" -#: InvenTree/helpers.py:665 +#: InvenTree/helpers.py:679 #, python-brace-format msgid "Invalid/no group {group}" msgstr "Ugyldig/ingen gruppe {group}" -#: InvenTree/helpers.py:671 +#: InvenTree/helpers.py:685 msgid "No serial numbers found" msgstr "Ingen serienummer funnet" -#: InvenTree/helpers.py:675 +#: InvenTree/helpers.py:689 #, python-brace-format msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "Antall unike serienumre ({s}) må samsvare med antall ({q})" @@ -816,7 +816,7 @@ msgstr "Salg order referanse" msgid "SalesOrder to which this build is allocated" msgstr "Salgorder som denne build er tildelt til" -#: build/models.py:213 build/serializers.py:784 +#: build/models.py:213 build/serializers.py:803 #: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873 msgid "Source Location" msgstr "Kilde plassering" @@ -942,42 +942,42 @@ msgstr "Prosjekt utdata er allerede utfylt" msgid "Build output does not match Build Order" msgstr "Prosjekt utdata samsvarer ikke Prosjekt Order" -#: build/models.py:1143 +#: build/models.py:1171 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "Prosjektvare må spesifisere en prosjekt utdata, siden hovedvaren er markert som sporbar" -#: build/models.py:1152 +#: build/models.py:1180 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "" -#: build/models.py:1162 order/models.py:1379 +#: build/models.py:1190 order/models.py:1379 msgid "Stock item is over-allocated" msgstr "Lagervare er overtildelt" -#: build/models.py:1168 order/models.py:1382 +#: build/models.py:1196 order/models.py:1382 msgid "Allocation quantity must be greater than zero" msgstr "Tildeling antallet må være større enn null" -#: build/models.py:1174 +#: build/models.py:1202 msgid "Quantity must be 1 for serialized stock" msgstr "Mengden må væew 1 for serialisert lagervare" -#: build/models.py:1231 +#: build/models.py:1259 msgid "Selected stock item not found in BOM" msgstr "Valgt lagevare ikke funnet i BOM" -#: build/models.py:1300 stock/templates/stock/item_base.html:177 +#: build/models.py:1328 stock/templates/stock/item_base.html:177 #: templates/InvenTree/search.html:137 templates/js/translated/build.js:2455 #: templates/navbar.html:38 msgid "Build" msgstr "Prosjekt" -#: build/models.py:1301 +#: build/models.py:1329 msgid "Build to allocate parts" msgstr "Bygge for å tildele deler" -#: build/models.py:1317 build/serializers.py:629 order/serializers.py:1015 +#: build/models.py:1345 build/serializers.py:648 order/serializers.py:1015 #: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 #: stock/serializers.py:880 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 @@ -992,11 +992,11 @@ msgstr "Bygge for å tildele deler" msgid "Stock Item" msgstr "Lagervare" -#: build/models.py:1318 +#: build/models.py:1346 msgid "Source stock item" msgstr "Kilde lagervare" -#: build/models.py:1330 build/serializers.py:193 +#: build/models.py:1358 build/serializers.py:193 #: build/templates/build/build_base.html:82 #: build/templates/build/detail.html:34 common/models.py:1678 #: company/templates/company/supplier_part.html:279 order/models.py:897 @@ -1033,19 +1033,19 @@ msgstr "Kilde lagervare" msgid "Quantity" msgstr "Antall" -#: build/models.py:1331 +#: build/models.py:1359 msgid "Stock quantity to allocate to build" msgstr "" -#: build/models.py:1339 +#: build/models.py:1367 msgid "Install into" msgstr "Installerings informasjon" -#: build/models.py:1340 +#: build/models.py:1368 msgid "Destination stock item" msgstr "Målets lagervare" -#: build/serializers.py:138 build/serializers.py:658 +#: build/serializers.py:138 build/serializers.py:677 #: templates/js/translated/build.js:1166 msgid "Build Output" msgstr "" @@ -1070,7 +1070,7 @@ msgstr "" msgid "Enter quantity for build output" msgstr "Angi antall for build utgang" -#: build/serializers.py:208 build/serializers.py:649 order/models.py:318 +#: build/serializers.py:208 build/serializers.py:668 order/models.py:318 #: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 #: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 #: stock/serializers.py:302 @@ -1164,117 +1164,125 @@ msgstr "" msgid "Delete any build outputs which have not been completed" msgstr "" -#: build/serializers.py:480 -msgid "Accept Overallocated" +#: build/serializers.py:485 +msgid "Accept as consumed by this build order" msgstr "" -#: build/serializers.py:481 -msgid "Accept stock items which have been overallocated to this build order" +#: build/serializers.py:486 +msgid "Deallocate before completing this build order" msgstr "" -#: build/serializers.py:491 -msgid "Some stock items have been overallocated" +#: build/serializers.py:494 +msgid "Overallocated Stock" msgstr "" #: build/serializers.py:496 +msgid "How do you want to handle extra stock items assigned to the build order" +msgstr "" + +#: build/serializers.py:506 +msgid "Some stock items have been overallocated" +msgstr "" + +#: build/serializers.py:511 msgid "Accept Unallocated" msgstr "" -#: build/serializers.py:497 +#: build/serializers.py:512 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:507 templates/js/translated/build.js:195 +#: build/serializers.py:522 templates/js/translated/build.js:195 msgid "Required stock has not been fully allocated" msgstr "Påkrevd varer er ikke fullt tildelt" -#: build/serializers.py:512 +#: build/serializers.py:527 msgid "Accept Incomplete" msgstr "" -#: build/serializers.py:513 +#: build/serializers.py:528 msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:523 templates/js/translated/build.js:199 +#: build/serializers.py:538 templates/js/translated/build.js:199 msgid "Required build quantity has not been completed" msgstr "" -#: build/serializers.py:532 +#: build/serializers.py:547 msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:535 build/templates/build/build_base.html:95 +#: build/serializers.py:550 build/templates/build/build_base.html:95 msgid "No build outputs have been created for this build order" msgstr "" -#: build/serializers.py:561 build/serializers.py:606 part/models.py:2719 +#: build/serializers.py:580 build/serializers.py:625 part/models.py:2719 #: part/models.py:2853 msgid "BOM Item" msgstr "BOM varer" -#: build/serializers.py:571 +#: build/serializers.py:590 msgid "Build output" msgstr "" -#: build/serializers.py:579 +#: build/serializers.py:598 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:620 +#: build/serializers.py:639 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:635 stock/serializers.py:767 +#: build/serializers.py:654 stock/serializers.py:767 msgid "Item must be in stock" msgstr "Varen må være på lager" -#: build/serializers.py:693 order/serializers.py:1073 +#: build/serializers.py:712 order/serializers.py:1073 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "Tilgjengelig mengde ({q}) overskredet" -#: build/serializers.py:699 +#: build/serializers.py:718 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:706 +#: build/serializers.py:725 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:711 +#: build/serializers.py:730 msgid "This stock item has already been allocated to this build output" msgstr "" -#: build/serializers.py:734 order/serializers.py:1319 +#: build/serializers.py:753 order/serializers.py:1319 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:785 +#: build/serializers.py:804 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:793 +#: build/serializers.py:812 msgid "Exclude Location" msgstr "" -#: build/serializers.py:794 +#: build/serializers.py:813 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:799 +#: build/serializers.py:818 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:800 +#: build/serializers.py:819 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:805 +#: build/serializers.py:824 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:806 +#: build/serializers.py:825 msgid "Allow allocation of substitute parts" msgstr "" @@ -5520,7 +5528,7 @@ msgstr "" msgid "Unknown database" msgstr "" -#: part/templatetags/inventree_extras.py:222 +#: part/templatetags/inventree_extras.py:229 #, python-brace-format msgid "{title} v{version}" msgstr "" diff --git a/InvenTree/locale/pl/LC_MESSAGES/django.po b/InvenTree/locale/pl/LC_MESSAGES/django.po index 0aaaa58fad..92f1a0e70f 100644 --- a/InvenTree/locale/pl/LC_MESSAGES/django.po +++ b/InvenTree/locale/pl/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 21:57+0000\n" -"PO-Revision-Date: 2022-08-08 13:03\n" +"POT-Creation-Date: 2022-08-10 11:38+0000\n" +"PO-Revision-Date: 2022-08-10 13:22\n" "Last-Translator: \n" "Language-Team: Polish\n" "Language: pl_PL\n" @@ -121,44 +121,44 @@ msgstr "" msgid "Supplied URL is not a valid image file" msgstr "" -#: InvenTree/helpers.py:584 +#: InvenTree/helpers.py:598 #, python-brace-format msgid "Duplicate serial: {sn}" msgstr "Powtórzony numer seryjny: {sn}" -#: InvenTree/helpers.py:591 order/models.py:320 order/models.py:472 +#: InvenTree/helpers.py:605 order/models.py:320 order/models.py:472 msgid "Invalid quantity provided" msgstr "Podano nieprawidłową ilość" -#: InvenTree/helpers.py:594 +#: InvenTree/helpers.py:608 msgid "Empty serial number string" msgstr "Pusty ciąg numeru seryjnego" -#: InvenTree/helpers.py:626 +#: InvenTree/helpers.py:640 #, python-brace-format msgid "Invalid group range: {g}" msgstr "Nieprawidłowy zakres grupy: {g}" -#: InvenTree/helpers.py:629 +#: InvenTree/helpers.py:643 #, python-brace-format msgid "Invalid group: {g}" msgstr "Nieprawidłowa grupa: {g}" -#: InvenTree/helpers.py:657 +#: InvenTree/helpers.py:671 #, python-brace-format msgid "Invalid group sequence: {g}" msgstr "Nieprawidłowa sekwencja grupy: {g}" -#: InvenTree/helpers.py:665 +#: InvenTree/helpers.py:679 #, python-brace-format msgid "Invalid/no group {group}" msgstr "Nieprawidłowa/Brak grupy {group}" -#: InvenTree/helpers.py:671 +#: InvenTree/helpers.py:685 msgid "No serial numbers found" msgstr "Nie znaleziono numerów seryjnych" -#: InvenTree/helpers.py:675 +#: InvenTree/helpers.py:689 #, python-brace-format msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "Liczba unikalnych numerów seryjnych ({s}) musi odpowiadać ilości ({q})" @@ -816,7 +816,7 @@ msgstr "Odwołanie do zamówienia sprzedaży" msgid "SalesOrder to which this build is allocated" msgstr "Zamówienie sprzedaży, do którego budowa jest przypisana" -#: build/models.py:213 build/serializers.py:784 +#: build/models.py:213 build/serializers.py:803 #: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873 msgid "Source Location" msgstr "Lokalizacja źródła" @@ -942,42 +942,42 @@ msgstr "Budowanie wyjścia jest już ukończone" msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:1143 +#: build/models.py:1171 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "" -#: build/models.py:1152 +#: build/models.py:1180 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "" -#: build/models.py:1162 order/models.py:1379 +#: build/models.py:1190 order/models.py:1379 msgid "Stock item is over-allocated" msgstr "" -#: build/models.py:1168 order/models.py:1382 +#: build/models.py:1196 order/models.py:1382 msgid "Allocation quantity must be greater than zero" msgstr "Alokowana ilość musi być większa niż zero" -#: build/models.py:1174 +#: build/models.py:1202 msgid "Quantity must be 1 for serialized stock" msgstr "" -#: build/models.py:1231 +#: build/models.py:1259 msgid "Selected stock item not found in BOM" msgstr "Nie znaleziono wybranego elementu magazynowego w BOM" -#: build/models.py:1300 stock/templates/stock/item_base.html:177 +#: build/models.py:1328 stock/templates/stock/item_base.html:177 #: templates/InvenTree/search.html:137 templates/js/translated/build.js:2455 #: templates/navbar.html:38 msgid "Build" msgstr "Budowa" -#: build/models.py:1301 +#: build/models.py:1329 msgid "Build to allocate parts" msgstr "" -#: build/models.py:1317 build/serializers.py:629 order/serializers.py:1015 +#: build/models.py:1345 build/serializers.py:648 order/serializers.py:1015 #: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 #: stock/serializers.py:880 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 @@ -992,11 +992,11 @@ msgstr "" msgid "Stock Item" msgstr "Element magazynowy" -#: build/models.py:1318 +#: build/models.py:1346 msgid "Source stock item" msgstr "Lokalizacja magazynowania przedmiotu" -#: build/models.py:1330 build/serializers.py:193 +#: build/models.py:1358 build/serializers.py:193 #: build/templates/build/build_base.html:82 #: build/templates/build/detail.html:34 common/models.py:1678 #: company/templates/company/supplier_part.html:279 order/models.py:897 @@ -1033,19 +1033,19 @@ msgstr "Lokalizacja magazynowania przedmiotu" msgid "Quantity" msgstr "Ilość" -#: build/models.py:1331 +#: build/models.py:1359 msgid "Stock quantity to allocate to build" msgstr "" -#: build/models.py:1339 +#: build/models.py:1367 msgid "Install into" msgstr "Zainstaluj do" -#: build/models.py:1340 +#: build/models.py:1368 msgid "Destination stock item" msgstr "Docelowa lokalizacja magazynowa przedmiotu" -#: build/serializers.py:138 build/serializers.py:658 +#: build/serializers.py:138 build/serializers.py:677 #: templates/js/translated/build.js:1166 msgid "Build Output" msgstr "" @@ -1070,7 +1070,7 @@ msgstr "" msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:208 build/serializers.py:649 order/models.py:318 +#: build/serializers.py:208 build/serializers.py:668 order/models.py:318 #: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 #: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 #: stock/serializers.py:302 @@ -1164,117 +1164,125 @@ msgstr "" msgid "Delete any build outputs which have not been completed" msgstr "" -#: build/serializers.py:480 -msgid "Accept Overallocated" +#: build/serializers.py:485 +msgid "Accept as consumed by this build order" msgstr "" -#: build/serializers.py:481 -msgid "Accept stock items which have been overallocated to this build order" +#: build/serializers.py:486 +msgid "Deallocate before completing this build order" msgstr "" -#: build/serializers.py:491 -msgid "Some stock items have been overallocated" +#: build/serializers.py:494 +msgid "Overallocated Stock" msgstr "" #: build/serializers.py:496 +msgid "How do you want to handle extra stock items assigned to the build order" +msgstr "" + +#: build/serializers.py:506 +msgid "Some stock items have been overallocated" +msgstr "" + +#: build/serializers.py:511 msgid "Accept Unallocated" msgstr "" -#: build/serializers.py:497 +#: build/serializers.py:512 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:507 templates/js/translated/build.js:195 +#: build/serializers.py:522 templates/js/translated/build.js:195 msgid "Required stock has not been fully allocated" msgstr "" -#: build/serializers.py:512 +#: build/serializers.py:527 msgid "Accept Incomplete" msgstr "Akceptuj niekompletne" -#: build/serializers.py:513 +#: build/serializers.py:528 msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:523 templates/js/translated/build.js:199 +#: build/serializers.py:538 templates/js/translated/build.js:199 msgid "Required build quantity has not been completed" msgstr "" -#: build/serializers.py:532 +#: build/serializers.py:547 msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:535 build/templates/build/build_base.html:95 +#: build/serializers.py:550 build/templates/build/build_base.html:95 msgid "No build outputs have been created for this build order" msgstr "" -#: build/serializers.py:561 build/serializers.py:606 part/models.py:2719 +#: build/serializers.py:580 build/serializers.py:625 part/models.py:2719 #: part/models.py:2853 msgid "BOM Item" msgstr "Element BOM" -#: build/serializers.py:571 +#: build/serializers.py:590 msgid "Build output" msgstr "" -#: build/serializers.py:579 +#: build/serializers.py:598 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:620 +#: build/serializers.py:639 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:635 stock/serializers.py:767 +#: build/serializers.py:654 stock/serializers.py:767 msgid "Item must be in stock" msgstr "Towar musi znajdować się w magazynie" -#: build/serializers.py:693 order/serializers.py:1073 +#: build/serializers.py:712 order/serializers.py:1073 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:699 +#: build/serializers.py:718 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:706 +#: build/serializers.py:725 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:711 +#: build/serializers.py:730 msgid "This stock item has already been allocated to this build output" msgstr "" -#: build/serializers.py:734 order/serializers.py:1319 +#: build/serializers.py:753 order/serializers.py:1319 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:785 +#: build/serializers.py:804 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "Magazyn, z którego mają być pozyskane elementy (pozostaw puste, aby pobrać z dowolnej lokalizacji)" -#: build/serializers.py:793 +#: build/serializers.py:812 msgid "Exclude Location" msgstr "Wyklucz lokalizację" -#: build/serializers.py:794 +#: build/serializers.py:813 msgid "Exclude stock items from this selected location" msgstr "Wyklucz produkty magazynowe z wybranej lokalizacji" -#: build/serializers.py:799 +#: build/serializers.py:818 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:800 +#: build/serializers.py:819 msgid "Stock items in multiple locations can be used interchangeably" msgstr "Towary magazynowe w wielu lokalizacjach mogą być stosowane zamiennie" -#: build/serializers.py:805 +#: build/serializers.py:824 msgid "Substitute Stock" msgstr "Zastępczy magazyn" -#: build/serializers.py:806 +#: build/serializers.py:825 msgid "Allow allocation of substitute parts" msgstr "" @@ -5520,7 +5528,7 @@ msgstr "" msgid "Unknown database" msgstr "Nieznana baza danych" -#: part/templatetags/inventree_extras.py:222 +#: part/templatetags/inventree_extras.py:229 #, python-brace-format msgid "{title} v{version}" msgstr "" diff --git a/InvenTree/locale/pt/LC_MESSAGES/django.po b/InvenTree/locale/pt/LC_MESSAGES/django.po index 9a3be100c5..56f8148da9 100644 --- a/InvenTree/locale/pt/LC_MESSAGES/django.po +++ b/InvenTree/locale/pt/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 21:57+0000\n" -"PO-Revision-Date: 2022-08-08 13:03\n" +"POT-Creation-Date: 2022-08-10 11:38+0000\n" +"PO-Revision-Date: 2022-08-10 13:22\n" "Last-Translator: \n" "Language-Team: Portuguese, Brazilian\n" "Language: pt_BR\n" @@ -121,44 +121,44 @@ msgstr "" msgid "Supplied URL is not a valid image file" msgstr "" -#: InvenTree/helpers.py:584 +#: InvenTree/helpers.py:598 #, python-brace-format msgid "Duplicate serial: {sn}" msgstr "Numero serial duplicado: {sn}" -#: InvenTree/helpers.py:591 order/models.py:320 order/models.py:472 +#: InvenTree/helpers.py:605 order/models.py:320 order/models.py:472 msgid "Invalid quantity provided" msgstr "Quantidade invalida" -#: InvenTree/helpers.py:594 +#: InvenTree/helpers.py:608 msgid "Empty serial number string" msgstr "Numero serial em branco" -#: InvenTree/helpers.py:626 +#: InvenTree/helpers.py:640 #, python-brace-format msgid "Invalid group range: {g}" msgstr "Numero de grupo invalido:{g}" -#: InvenTree/helpers.py:629 +#: InvenTree/helpers.py:643 #, python-brace-format msgid "Invalid group: {g}" msgstr "Grupo invalido:{g}" -#: InvenTree/helpers.py:657 +#: InvenTree/helpers.py:671 #, python-brace-format msgid "Invalid group sequence: {g}" msgstr "Sequencia de grupo invalida:{g}" -#: InvenTree/helpers.py:665 +#: InvenTree/helpers.py:679 #, python-brace-format msgid "Invalid/no group {group}" msgstr "Invalido/sem grupo {group}" -#: InvenTree/helpers.py:671 +#: InvenTree/helpers.py:685 msgid "No serial numbers found" msgstr "Nenhum numero serial encontrado" -#: InvenTree/helpers.py:675 +#: InvenTree/helpers.py:689 #, python-brace-format msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "Numero de numeros seriais ({s}) precisa bater com quantidade ({q})" @@ -816,7 +816,7 @@ msgstr "" msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:213 build/serializers.py:784 +#: build/models.py:213 build/serializers.py:803 #: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873 msgid "Source Location" msgstr "" @@ -942,42 +942,42 @@ msgstr "" msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:1143 +#: build/models.py:1171 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "" -#: build/models.py:1152 +#: build/models.py:1180 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "" -#: build/models.py:1162 order/models.py:1379 +#: build/models.py:1190 order/models.py:1379 msgid "Stock item is over-allocated" msgstr "" -#: build/models.py:1168 order/models.py:1382 +#: build/models.py:1196 order/models.py:1382 msgid "Allocation quantity must be greater than zero" msgstr "" -#: build/models.py:1174 +#: build/models.py:1202 msgid "Quantity must be 1 for serialized stock" msgstr "" -#: build/models.py:1231 +#: build/models.py:1259 msgid "Selected stock item not found in BOM" msgstr "" -#: build/models.py:1300 stock/templates/stock/item_base.html:177 +#: build/models.py:1328 stock/templates/stock/item_base.html:177 #: templates/InvenTree/search.html:137 templates/js/translated/build.js:2455 #: templates/navbar.html:38 msgid "Build" msgstr "" -#: build/models.py:1301 +#: build/models.py:1329 msgid "Build to allocate parts" msgstr "" -#: build/models.py:1317 build/serializers.py:629 order/serializers.py:1015 +#: build/models.py:1345 build/serializers.py:648 order/serializers.py:1015 #: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 #: stock/serializers.py:880 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 @@ -992,11 +992,11 @@ msgstr "" msgid "Stock Item" msgstr "" -#: build/models.py:1318 +#: build/models.py:1346 msgid "Source stock item" msgstr "" -#: build/models.py:1330 build/serializers.py:193 +#: build/models.py:1358 build/serializers.py:193 #: build/templates/build/build_base.html:82 #: build/templates/build/detail.html:34 common/models.py:1678 #: company/templates/company/supplier_part.html:279 order/models.py:897 @@ -1033,19 +1033,19 @@ msgstr "" msgid "Quantity" msgstr "" -#: build/models.py:1331 +#: build/models.py:1359 msgid "Stock quantity to allocate to build" msgstr "" -#: build/models.py:1339 +#: build/models.py:1367 msgid "Install into" msgstr "" -#: build/models.py:1340 +#: build/models.py:1368 msgid "Destination stock item" msgstr "" -#: build/serializers.py:138 build/serializers.py:658 +#: build/serializers.py:138 build/serializers.py:677 #: templates/js/translated/build.js:1166 msgid "Build Output" msgstr "" @@ -1070,7 +1070,7 @@ msgstr "" msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:208 build/serializers.py:649 order/models.py:318 +#: build/serializers.py:208 build/serializers.py:668 order/models.py:318 #: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 #: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 #: stock/serializers.py:302 @@ -1164,117 +1164,125 @@ msgstr "" msgid "Delete any build outputs which have not been completed" msgstr "" -#: build/serializers.py:480 -msgid "Accept Overallocated" +#: build/serializers.py:485 +msgid "Accept as consumed by this build order" msgstr "" -#: build/serializers.py:481 -msgid "Accept stock items which have been overallocated to this build order" +#: build/serializers.py:486 +msgid "Deallocate before completing this build order" msgstr "" -#: build/serializers.py:491 -msgid "Some stock items have been overallocated" +#: build/serializers.py:494 +msgid "Overallocated Stock" msgstr "" #: build/serializers.py:496 +msgid "How do you want to handle extra stock items assigned to the build order" +msgstr "" + +#: build/serializers.py:506 +msgid "Some stock items have been overallocated" +msgstr "" + +#: build/serializers.py:511 msgid "Accept Unallocated" msgstr "" -#: build/serializers.py:497 +#: build/serializers.py:512 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:507 templates/js/translated/build.js:195 +#: build/serializers.py:522 templates/js/translated/build.js:195 msgid "Required stock has not been fully allocated" msgstr "" -#: build/serializers.py:512 +#: build/serializers.py:527 msgid "Accept Incomplete" msgstr "" -#: build/serializers.py:513 +#: build/serializers.py:528 msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:523 templates/js/translated/build.js:199 +#: build/serializers.py:538 templates/js/translated/build.js:199 msgid "Required build quantity has not been completed" msgstr "" -#: build/serializers.py:532 +#: build/serializers.py:547 msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:535 build/templates/build/build_base.html:95 +#: build/serializers.py:550 build/templates/build/build_base.html:95 msgid "No build outputs have been created for this build order" msgstr "" -#: build/serializers.py:561 build/serializers.py:606 part/models.py:2719 +#: build/serializers.py:580 build/serializers.py:625 part/models.py:2719 #: part/models.py:2853 msgid "BOM Item" msgstr "" -#: build/serializers.py:571 +#: build/serializers.py:590 msgid "Build output" msgstr "" -#: build/serializers.py:579 +#: build/serializers.py:598 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:620 +#: build/serializers.py:639 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:635 stock/serializers.py:767 +#: build/serializers.py:654 stock/serializers.py:767 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:693 order/serializers.py:1073 +#: build/serializers.py:712 order/serializers.py:1073 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:699 +#: build/serializers.py:718 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:706 +#: build/serializers.py:725 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:711 +#: build/serializers.py:730 msgid "This stock item has already been allocated to this build output" msgstr "" -#: build/serializers.py:734 order/serializers.py:1319 +#: build/serializers.py:753 order/serializers.py:1319 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:785 +#: build/serializers.py:804 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:793 +#: build/serializers.py:812 msgid "Exclude Location" msgstr "" -#: build/serializers.py:794 +#: build/serializers.py:813 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:799 +#: build/serializers.py:818 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:800 +#: build/serializers.py:819 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:805 +#: build/serializers.py:824 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:806 +#: build/serializers.py:825 msgid "Allow allocation of substitute parts" msgstr "" @@ -5520,7 +5528,7 @@ msgstr "" msgid "Unknown database" msgstr "" -#: part/templatetags/inventree_extras.py:222 +#: part/templatetags/inventree_extras.py:229 #, python-brace-format msgid "{title} v{version}" msgstr "" diff --git a/InvenTree/locale/pt_br/LC_MESSAGES/django.po b/InvenTree/locale/pt_br/LC_MESSAGES/django.po index 6af15e7092..40e397065c 100644 --- a/InvenTree/locale/pt_br/LC_MESSAGES/django.po +++ b/InvenTree/locale/pt_br/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 12:49+0000\n" +"POT-Creation-Date: 2022-08-09 06:07+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -18,7 +18,7 @@ msgstr "" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n > 1);\n" -#: InvenTree/api.py:52 +#: InvenTree/api.py:54 msgid "API endpoint not found" msgstr "" @@ -122,44 +122,44 @@ msgstr "" msgid "Supplied URL is not a valid image file" msgstr "" -#: InvenTree/helpers.py:584 +#: InvenTree/helpers.py:598 #, python-brace-format msgid "Duplicate serial: {sn}" msgstr "" -#: InvenTree/helpers.py:591 order/models.py:320 order/models.py:472 +#: InvenTree/helpers.py:605 order/models.py:320 order/models.py:472 msgid "Invalid quantity provided" msgstr "" -#: InvenTree/helpers.py:594 +#: InvenTree/helpers.py:608 msgid "Empty serial number string" msgstr "" -#: InvenTree/helpers.py:626 +#: InvenTree/helpers.py:640 #, python-brace-format msgid "Invalid group range: {g}" msgstr "" -#: InvenTree/helpers.py:629 +#: InvenTree/helpers.py:643 #, python-brace-format msgid "Invalid group: {g}" msgstr "" -#: InvenTree/helpers.py:657 +#: InvenTree/helpers.py:671 #, python-brace-format msgid "Invalid group sequence: {g}" msgstr "" -#: InvenTree/helpers.py:665 +#: InvenTree/helpers.py:679 #, python-brace-format msgid "Invalid/no group {group}" msgstr "" -#: InvenTree/helpers.py:671 +#: InvenTree/helpers.py:685 msgid "No serial numbers found" msgstr "" -#: InvenTree/helpers.py:675 +#: InvenTree/helpers.py:689 #, python-brace-format msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "" @@ -5517,11 +5517,11 @@ msgstr "" msgid "Create a new variant of template '%(full_name)s'." msgstr "" -#: part/templatetags/inventree_extras.py:157 +#: part/templatetags/inventree_extras.py:177 msgid "Unknown database" msgstr "" -#: part/templatetags/inventree_extras.py:202 +#: part/templatetags/inventree_extras.py:229 #, python-brace-format msgid "{title} v{version}" msgstr "" diff --git a/InvenTree/locale/ru/LC_MESSAGES/django.po b/InvenTree/locale/ru/LC_MESSAGES/django.po index 895aec9754..ed2fca4c7e 100644 --- a/InvenTree/locale/ru/LC_MESSAGES/django.po +++ b/InvenTree/locale/ru/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 21:57+0000\n" -"PO-Revision-Date: 2022-08-08 13:03\n" +"POT-Creation-Date: 2022-08-10 11:38+0000\n" +"PO-Revision-Date: 2022-08-10 13:22\n" "Last-Translator: \n" "Language-Team: Russian\n" "Language: ru_RU\n" @@ -121,44 +121,44 @@ msgstr "" msgid "Supplied URL is not a valid image file" msgstr "" -#: InvenTree/helpers.py:584 +#: InvenTree/helpers.py:598 #, python-brace-format msgid "Duplicate serial: {sn}" msgstr "Повторяющийся серийный номер: {sn}" -#: InvenTree/helpers.py:591 order/models.py:320 order/models.py:472 +#: InvenTree/helpers.py:605 order/models.py:320 order/models.py:472 msgid "Invalid quantity provided" msgstr "недопустимое количество" -#: InvenTree/helpers.py:594 +#: InvenTree/helpers.py:608 msgid "Empty serial number string" msgstr "Пустая строка серийного номера" -#: InvenTree/helpers.py:626 +#: InvenTree/helpers.py:640 #, python-brace-format msgid "Invalid group range: {g}" msgstr "" -#: InvenTree/helpers.py:629 +#: InvenTree/helpers.py:643 #, python-brace-format msgid "Invalid group: {g}" msgstr "Некорректный идентификатор группы {g}" -#: InvenTree/helpers.py:657 +#: InvenTree/helpers.py:671 #, python-brace-format msgid "Invalid group sequence: {g}" msgstr "" -#: InvenTree/helpers.py:665 +#: InvenTree/helpers.py:679 #, python-brace-format msgid "Invalid/no group {group}" msgstr "Недопустимая/несуществующая группа {group}" -#: InvenTree/helpers.py:671 +#: InvenTree/helpers.py:685 msgid "No serial numbers found" msgstr "Серийных номеров не найдено" -#: InvenTree/helpers.py:675 +#: InvenTree/helpers.py:689 #, python-brace-format msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "" @@ -816,7 +816,7 @@ msgstr "Отсылка на заказ" msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:213 build/serializers.py:784 +#: build/models.py:213 build/serializers.py:803 #: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873 msgid "Source Location" msgstr "Расположение источника" @@ -942,42 +942,42 @@ msgstr "Вывод сборки уже завершен" msgid "Build output does not match Build Order" msgstr "Вывод сборки не совпадает с порядком сборки" -#: build/models.py:1143 +#: build/models.py:1171 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "Элемент сборки должен указать вывод сборки, так как основная часть помечена как отслеживаемая" -#: build/models.py:1152 +#: build/models.py:1180 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "" -#: build/models.py:1162 order/models.py:1379 +#: build/models.py:1190 order/models.py:1379 msgid "Stock item is over-allocated" msgstr "Предмет на складе перераспределен" -#: build/models.py:1168 order/models.py:1382 +#: build/models.py:1196 order/models.py:1382 msgid "Allocation quantity must be greater than zero" msgstr "Выделенное количество должно быть больше нуля" -#: build/models.py:1174 +#: build/models.py:1202 msgid "Quantity must be 1 for serialized stock" msgstr "Количество должно быть 1 для сериализованных запасов" -#: build/models.py:1231 +#: build/models.py:1259 msgid "Selected stock item not found in BOM" msgstr "Выбранная единица хранения не найдена в BOM" -#: build/models.py:1300 stock/templates/stock/item_base.html:177 +#: build/models.py:1328 stock/templates/stock/item_base.html:177 #: templates/InvenTree/search.html:137 templates/js/translated/build.js:2455 #: templates/navbar.html:38 msgid "Build" msgstr "Сборка" -#: build/models.py:1301 +#: build/models.py:1329 msgid "Build to allocate parts" msgstr "" -#: build/models.py:1317 build/serializers.py:629 order/serializers.py:1015 +#: build/models.py:1345 build/serializers.py:648 order/serializers.py:1015 #: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 #: stock/serializers.py:880 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 @@ -992,11 +992,11 @@ msgstr "" msgid "Stock Item" msgstr "Предметы на складе" -#: build/models.py:1318 +#: build/models.py:1346 msgid "Source stock item" msgstr "Исходный складской предмет" -#: build/models.py:1330 build/serializers.py:193 +#: build/models.py:1358 build/serializers.py:193 #: build/templates/build/build_base.html:82 #: build/templates/build/detail.html:34 common/models.py:1678 #: company/templates/company/supplier_part.html:279 order/models.py:897 @@ -1033,19 +1033,19 @@ msgstr "Исходный складской предмет" msgid "Quantity" msgstr "Количество" -#: build/models.py:1331 +#: build/models.py:1359 msgid "Stock quantity to allocate to build" msgstr "" -#: build/models.py:1339 +#: build/models.py:1367 msgid "Install into" msgstr "" -#: build/models.py:1340 +#: build/models.py:1368 msgid "Destination stock item" msgstr "" -#: build/serializers.py:138 build/serializers.py:658 +#: build/serializers.py:138 build/serializers.py:677 #: templates/js/translated/build.js:1166 msgid "Build Output" msgstr "" @@ -1070,7 +1070,7 @@ msgstr "" msgid "Enter quantity for build output" msgstr "Введите количество для вывода сборки" -#: build/serializers.py:208 build/serializers.py:649 order/models.py:318 +#: build/serializers.py:208 build/serializers.py:668 order/models.py:318 #: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 #: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 #: stock/serializers.py:302 @@ -1164,117 +1164,125 @@ msgstr "" msgid "Delete any build outputs which have not been completed" msgstr "" -#: build/serializers.py:480 -msgid "Accept Overallocated" +#: build/serializers.py:485 +msgid "Accept as consumed by this build order" msgstr "" -#: build/serializers.py:481 -msgid "Accept stock items which have been overallocated to this build order" +#: build/serializers.py:486 +msgid "Deallocate before completing this build order" msgstr "" -#: build/serializers.py:491 -msgid "Some stock items have been overallocated" +#: build/serializers.py:494 +msgid "Overallocated Stock" msgstr "" #: build/serializers.py:496 +msgid "How do you want to handle extra stock items assigned to the build order" +msgstr "" + +#: build/serializers.py:506 +msgid "Some stock items have been overallocated" +msgstr "" + +#: build/serializers.py:511 msgid "Accept Unallocated" msgstr "" -#: build/serializers.py:497 +#: build/serializers.py:512 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:507 templates/js/translated/build.js:195 +#: build/serializers.py:522 templates/js/translated/build.js:195 msgid "Required stock has not been fully allocated" msgstr "" -#: build/serializers.py:512 +#: build/serializers.py:527 msgid "Accept Incomplete" msgstr "" -#: build/serializers.py:513 +#: build/serializers.py:528 msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:523 templates/js/translated/build.js:199 +#: build/serializers.py:538 templates/js/translated/build.js:199 msgid "Required build quantity has not been completed" msgstr "" -#: build/serializers.py:532 +#: build/serializers.py:547 msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:535 build/templates/build/build_base.html:95 +#: build/serializers.py:550 build/templates/build/build_base.html:95 msgid "No build outputs have been created for this build order" msgstr "" -#: build/serializers.py:561 build/serializers.py:606 part/models.py:2719 +#: build/serializers.py:580 build/serializers.py:625 part/models.py:2719 #: part/models.py:2853 msgid "BOM Item" msgstr "BOM Компонент" -#: build/serializers.py:571 +#: build/serializers.py:590 msgid "Build output" msgstr "" -#: build/serializers.py:579 +#: build/serializers.py:598 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:620 +#: build/serializers.py:639 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:635 stock/serializers.py:767 +#: build/serializers.py:654 stock/serializers.py:767 msgid "Item must be in stock" msgstr "Компонент должен быть в наличии" -#: build/serializers.py:693 order/serializers.py:1073 +#: build/serializers.py:712 order/serializers.py:1073 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "Превышено доступное количество ({q})" -#: build/serializers.py:699 +#: build/serializers.py:718 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:706 +#: build/serializers.py:725 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:711 +#: build/serializers.py:730 msgid "This stock item has already been allocated to this build output" msgstr "" -#: build/serializers.py:734 order/serializers.py:1319 +#: build/serializers.py:753 order/serializers.py:1319 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:785 +#: build/serializers.py:804 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:793 +#: build/serializers.py:812 msgid "Exclude Location" msgstr "" -#: build/serializers.py:794 +#: build/serializers.py:813 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:799 +#: build/serializers.py:818 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:800 +#: build/serializers.py:819 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:805 +#: build/serializers.py:824 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:806 +#: build/serializers.py:825 msgid "Allow allocation of substitute parts" msgstr "" @@ -5520,7 +5528,7 @@ msgstr "Создать новую разновидность из шаблона msgid "Unknown database" msgstr "Неизвестная база данных" -#: part/templatetags/inventree_extras.py:222 +#: part/templatetags/inventree_extras.py:229 #, python-brace-format msgid "{title} v{version}" msgstr "" diff --git a/InvenTree/locale/sv/LC_MESSAGES/django.po b/InvenTree/locale/sv/LC_MESSAGES/django.po index 7b49ae95e6..32bf7ce87b 100644 --- a/InvenTree/locale/sv/LC_MESSAGES/django.po +++ b/InvenTree/locale/sv/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 21:57+0000\n" -"PO-Revision-Date: 2022-08-08 13:03\n" +"POT-Creation-Date: 2022-08-10 11:38+0000\n" +"PO-Revision-Date: 2022-08-10 13:22\n" "Last-Translator: \n" "Language-Team: Swedish\n" "Language: sv_SE\n" @@ -121,44 +121,44 @@ msgstr "" msgid "Supplied URL is not a valid image file" msgstr "" -#: InvenTree/helpers.py:584 +#: InvenTree/helpers.py:598 #, python-brace-format msgid "Duplicate serial: {sn}" msgstr "Serienummret finns redan: {sn}" -#: InvenTree/helpers.py:591 order/models.py:320 order/models.py:472 +#: InvenTree/helpers.py:605 order/models.py:320 order/models.py:472 msgid "Invalid quantity provided" msgstr "Ogiltigt antal angivet" -#: InvenTree/helpers.py:594 +#: InvenTree/helpers.py:608 msgid "Empty serial number string" msgstr "Tom serienummersträng" -#: InvenTree/helpers.py:626 +#: InvenTree/helpers.py:640 #, python-brace-format msgid "Invalid group range: {g}" msgstr "Ogiltigt gruppområde: {g}" -#: InvenTree/helpers.py:629 +#: InvenTree/helpers.py:643 #, python-brace-format msgid "Invalid group: {g}" msgstr "Ogiltig grupp: {g}" -#: InvenTree/helpers.py:657 +#: InvenTree/helpers.py:671 #, python-brace-format msgid "Invalid group sequence: {g}" msgstr "Ogiltig gruppsekvens: {g}" -#: InvenTree/helpers.py:665 +#: InvenTree/helpers.py:679 #, python-brace-format msgid "Invalid/no group {group}" msgstr "" -#: InvenTree/helpers.py:671 +#: InvenTree/helpers.py:685 msgid "No serial numbers found" msgstr "Inga serienummer hittades" -#: InvenTree/helpers.py:675 +#: InvenTree/helpers.py:689 #, python-brace-format msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "" @@ -816,7 +816,7 @@ msgstr "Försäljningsorderreferens" msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:213 build/serializers.py:784 +#: build/models.py:213 build/serializers.py:803 #: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873 msgid "Source Location" msgstr "" @@ -942,42 +942,42 @@ msgstr "" msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:1143 +#: build/models.py:1171 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "" -#: build/models.py:1152 +#: build/models.py:1180 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "" -#: build/models.py:1162 order/models.py:1379 +#: build/models.py:1190 order/models.py:1379 msgid "Stock item is over-allocated" msgstr "" -#: build/models.py:1168 order/models.py:1382 +#: build/models.py:1196 order/models.py:1382 msgid "Allocation quantity must be greater than zero" msgstr "" -#: build/models.py:1174 +#: build/models.py:1202 msgid "Quantity must be 1 for serialized stock" msgstr "" -#: build/models.py:1231 +#: build/models.py:1259 msgid "Selected stock item not found in BOM" msgstr "" -#: build/models.py:1300 stock/templates/stock/item_base.html:177 +#: build/models.py:1328 stock/templates/stock/item_base.html:177 #: templates/InvenTree/search.html:137 templates/js/translated/build.js:2455 #: templates/navbar.html:38 msgid "Build" msgstr "Bygg" -#: build/models.py:1301 +#: build/models.py:1329 msgid "Build to allocate parts" msgstr "" -#: build/models.py:1317 build/serializers.py:629 order/serializers.py:1015 +#: build/models.py:1345 build/serializers.py:648 order/serializers.py:1015 #: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 #: stock/serializers.py:880 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 @@ -992,11 +992,11 @@ msgstr "" msgid "Stock Item" msgstr "Artikel i lager" -#: build/models.py:1318 +#: build/models.py:1346 msgid "Source stock item" msgstr "" -#: build/models.py:1330 build/serializers.py:193 +#: build/models.py:1358 build/serializers.py:193 #: build/templates/build/build_base.html:82 #: build/templates/build/detail.html:34 common/models.py:1678 #: company/templates/company/supplier_part.html:279 order/models.py:897 @@ -1033,19 +1033,19 @@ msgstr "" msgid "Quantity" msgstr "Antal" -#: build/models.py:1331 +#: build/models.py:1359 msgid "Stock quantity to allocate to build" msgstr "" -#: build/models.py:1339 +#: build/models.py:1367 msgid "Install into" msgstr "" -#: build/models.py:1340 +#: build/models.py:1368 msgid "Destination stock item" msgstr "" -#: build/serializers.py:138 build/serializers.py:658 +#: build/serializers.py:138 build/serializers.py:677 #: templates/js/translated/build.js:1166 msgid "Build Output" msgstr "" @@ -1070,7 +1070,7 @@ msgstr "" msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:208 build/serializers.py:649 order/models.py:318 +#: build/serializers.py:208 build/serializers.py:668 order/models.py:318 #: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 #: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 #: stock/serializers.py:302 @@ -1164,117 +1164,125 @@ msgstr "" msgid "Delete any build outputs which have not been completed" msgstr "" -#: build/serializers.py:480 -msgid "Accept Overallocated" +#: build/serializers.py:485 +msgid "Accept as consumed by this build order" msgstr "" -#: build/serializers.py:481 -msgid "Accept stock items which have been overallocated to this build order" +#: build/serializers.py:486 +msgid "Deallocate before completing this build order" msgstr "" -#: build/serializers.py:491 -msgid "Some stock items have been overallocated" +#: build/serializers.py:494 +msgid "Overallocated Stock" msgstr "" #: build/serializers.py:496 +msgid "How do you want to handle extra stock items assigned to the build order" +msgstr "" + +#: build/serializers.py:506 +msgid "Some stock items have been overallocated" +msgstr "" + +#: build/serializers.py:511 msgid "Accept Unallocated" msgstr "" -#: build/serializers.py:497 +#: build/serializers.py:512 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:507 templates/js/translated/build.js:195 +#: build/serializers.py:522 templates/js/translated/build.js:195 msgid "Required stock has not been fully allocated" msgstr "" -#: build/serializers.py:512 +#: build/serializers.py:527 msgid "Accept Incomplete" msgstr "Acceptera ofullständig" -#: build/serializers.py:513 +#: build/serializers.py:528 msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:523 templates/js/translated/build.js:199 +#: build/serializers.py:538 templates/js/translated/build.js:199 msgid "Required build quantity has not been completed" msgstr "" -#: build/serializers.py:532 +#: build/serializers.py:547 msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:535 build/templates/build/build_base.html:95 +#: build/serializers.py:550 build/templates/build/build_base.html:95 msgid "No build outputs have been created for this build order" msgstr "" -#: build/serializers.py:561 build/serializers.py:606 part/models.py:2719 +#: build/serializers.py:580 build/serializers.py:625 part/models.py:2719 #: part/models.py:2853 msgid "BOM Item" msgstr "" -#: build/serializers.py:571 +#: build/serializers.py:590 msgid "Build output" msgstr "" -#: build/serializers.py:579 +#: build/serializers.py:598 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:620 +#: build/serializers.py:639 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:635 stock/serializers.py:767 +#: build/serializers.py:654 stock/serializers.py:767 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:693 order/serializers.py:1073 +#: build/serializers.py:712 order/serializers.py:1073 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:699 +#: build/serializers.py:718 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:706 +#: build/serializers.py:725 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:711 +#: build/serializers.py:730 msgid "This stock item has already been allocated to this build output" msgstr "" -#: build/serializers.py:734 order/serializers.py:1319 +#: build/serializers.py:753 order/serializers.py:1319 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:785 +#: build/serializers.py:804 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:793 +#: build/serializers.py:812 msgid "Exclude Location" msgstr "" -#: build/serializers.py:794 +#: build/serializers.py:813 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:799 +#: build/serializers.py:818 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:800 +#: build/serializers.py:819 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:805 +#: build/serializers.py:824 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:806 +#: build/serializers.py:825 msgid "Allow allocation of substitute parts" msgstr "" @@ -5520,7 +5528,7 @@ msgstr "" msgid "Unknown database" msgstr "" -#: part/templatetags/inventree_extras.py:222 +#: part/templatetags/inventree_extras.py:229 #, python-brace-format msgid "{title} v{version}" msgstr "" diff --git a/InvenTree/locale/th/LC_MESSAGES/django.po b/InvenTree/locale/th/LC_MESSAGES/django.po index 1933f91ed8..b93f7f6d61 100644 --- a/InvenTree/locale/th/LC_MESSAGES/django.po +++ b/InvenTree/locale/th/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 21:57+0000\n" -"PO-Revision-Date: 2022-08-08 13:04\n" +"POT-Creation-Date: 2022-08-10 11:38+0000\n" +"PO-Revision-Date: 2022-08-10 13:23\n" "Last-Translator: \n" "Language-Team: Thai\n" "Language: th_TH\n" @@ -121,44 +121,44 @@ msgstr "" msgid "Supplied URL is not a valid image file" msgstr "" -#: InvenTree/helpers.py:584 +#: InvenTree/helpers.py:598 #, python-brace-format msgid "Duplicate serial: {sn}" msgstr "" -#: InvenTree/helpers.py:591 order/models.py:320 order/models.py:472 +#: InvenTree/helpers.py:605 order/models.py:320 order/models.py:472 msgid "Invalid quantity provided" msgstr "" -#: InvenTree/helpers.py:594 +#: InvenTree/helpers.py:608 msgid "Empty serial number string" msgstr "" -#: InvenTree/helpers.py:626 +#: InvenTree/helpers.py:640 #, python-brace-format msgid "Invalid group range: {g}" msgstr "" -#: InvenTree/helpers.py:629 +#: InvenTree/helpers.py:643 #, python-brace-format msgid "Invalid group: {g}" msgstr "" -#: InvenTree/helpers.py:657 +#: InvenTree/helpers.py:671 #, python-brace-format msgid "Invalid group sequence: {g}" msgstr "" -#: InvenTree/helpers.py:665 +#: InvenTree/helpers.py:679 #, python-brace-format msgid "Invalid/no group {group}" msgstr "" -#: InvenTree/helpers.py:671 +#: InvenTree/helpers.py:685 msgid "No serial numbers found" msgstr "" -#: InvenTree/helpers.py:675 +#: InvenTree/helpers.py:689 #, python-brace-format msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "" @@ -816,7 +816,7 @@ msgstr "" msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:213 build/serializers.py:784 +#: build/models.py:213 build/serializers.py:803 #: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873 msgid "Source Location" msgstr "" @@ -942,42 +942,42 @@ msgstr "" msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:1143 +#: build/models.py:1171 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "" -#: build/models.py:1152 +#: build/models.py:1180 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "" -#: build/models.py:1162 order/models.py:1379 +#: build/models.py:1190 order/models.py:1379 msgid "Stock item is over-allocated" msgstr "" -#: build/models.py:1168 order/models.py:1382 +#: build/models.py:1196 order/models.py:1382 msgid "Allocation quantity must be greater than zero" msgstr "" -#: build/models.py:1174 +#: build/models.py:1202 msgid "Quantity must be 1 for serialized stock" msgstr "" -#: build/models.py:1231 +#: build/models.py:1259 msgid "Selected stock item not found in BOM" msgstr "" -#: build/models.py:1300 stock/templates/stock/item_base.html:177 +#: build/models.py:1328 stock/templates/stock/item_base.html:177 #: templates/InvenTree/search.html:137 templates/js/translated/build.js:2455 #: templates/navbar.html:38 msgid "Build" msgstr "" -#: build/models.py:1301 +#: build/models.py:1329 msgid "Build to allocate parts" msgstr "" -#: build/models.py:1317 build/serializers.py:629 order/serializers.py:1015 +#: build/models.py:1345 build/serializers.py:648 order/serializers.py:1015 #: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 #: stock/serializers.py:880 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 @@ -992,11 +992,11 @@ msgstr "" msgid "Stock Item" msgstr "" -#: build/models.py:1318 +#: build/models.py:1346 msgid "Source stock item" msgstr "" -#: build/models.py:1330 build/serializers.py:193 +#: build/models.py:1358 build/serializers.py:193 #: build/templates/build/build_base.html:82 #: build/templates/build/detail.html:34 common/models.py:1678 #: company/templates/company/supplier_part.html:279 order/models.py:897 @@ -1033,19 +1033,19 @@ msgstr "" msgid "Quantity" msgstr "" -#: build/models.py:1331 +#: build/models.py:1359 msgid "Stock quantity to allocate to build" msgstr "" -#: build/models.py:1339 +#: build/models.py:1367 msgid "Install into" msgstr "" -#: build/models.py:1340 +#: build/models.py:1368 msgid "Destination stock item" msgstr "" -#: build/serializers.py:138 build/serializers.py:658 +#: build/serializers.py:138 build/serializers.py:677 #: templates/js/translated/build.js:1166 msgid "Build Output" msgstr "" @@ -1070,7 +1070,7 @@ msgstr "" msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:208 build/serializers.py:649 order/models.py:318 +#: build/serializers.py:208 build/serializers.py:668 order/models.py:318 #: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 #: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 #: stock/serializers.py:302 @@ -1164,117 +1164,125 @@ msgstr "" msgid "Delete any build outputs which have not been completed" msgstr "" -#: build/serializers.py:480 -msgid "Accept Overallocated" +#: build/serializers.py:485 +msgid "Accept as consumed by this build order" msgstr "" -#: build/serializers.py:481 -msgid "Accept stock items which have been overallocated to this build order" +#: build/serializers.py:486 +msgid "Deallocate before completing this build order" msgstr "" -#: build/serializers.py:491 -msgid "Some stock items have been overallocated" +#: build/serializers.py:494 +msgid "Overallocated Stock" msgstr "" #: build/serializers.py:496 +msgid "How do you want to handle extra stock items assigned to the build order" +msgstr "" + +#: build/serializers.py:506 +msgid "Some stock items have been overallocated" +msgstr "" + +#: build/serializers.py:511 msgid "Accept Unallocated" msgstr "" -#: build/serializers.py:497 +#: build/serializers.py:512 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:507 templates/js/translated/build.js:195 +#: build/serializers.py:522 templates/js/translated/build.js:195 msgid "Required stock has not been fully allocated" msgstr "" -#: build/serializers.py:512 +#: build/serializers.py:527 msgid "Accept Incomplete" msgstr "" -#: build/serializers.py:513 +#: build/serializers.py:528 msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:523 templates/js/translated/build.js:199 +#: build/serializers.py:538 templates/js/translated/build.js:199 msgid "Required build quantity has not been completed" msgstr "" -#: build/serializers.py:532 +#: build/serializers.py:547 msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:535 build/templates/build/build_base.html:95 +#: build/serializers.py:550 build/templates/build/build_base.html:95 msgid "No build outputs have been created for this build order" msgstr "" -#: build/serializers.py:561 build/serializers.py:606 part/models.py:2719 +#: build/serializers.py:580 build/serializers.py:625 part/models.py:2719 #: part/models.py:2853 msgid "BOM Item" msgstr "" -#: build/serializers.py:571 +#: build/serializers.py:590 msgid "Build output" msgstr "" -#: build/serializers.py:579 +#: build/serializers.py:598 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:620 +#: build/serializers.py:639 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:635 stock/serializers.py:767 +#: build/serializers.py:654 stock/serializers.py:767 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:693 order/serializers.py:1073 +#: build/serializers.py:712 order/serializers.py:1073 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:699 +#: build/serializers.py:718 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:706 +#: build/serializers.py:725 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:711 +#: build/serializers.py:730 msgid "This stock item has already been allocated to this build output" msgstr "" -#: build/serializers.py:734 order/serializers.py:1319 +#: build/serializers.py:753 order/serializers.py:1319 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:785 +#: build/serializers.py:804 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:793 +#: build/serializers.py:812 msgid "Exclude Location" msgstr "" -#: build/serializers.py:794 +#: build/serializers.py:813 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:799 +#: build/serializers.py:818 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:800 +#: build/serializers.py:819 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:805 +#: build/serializers.py:824 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:806 +#: build/serializers.py:825 msgid "Allow allocation of substitute parts" msgstr "" @@ -5520,7 +5528,7 @@ msgstr "" msgid "Unknown database" msgstr "" -#: part/templatetags/inventree_extras.py:222 +#: part/templatetags/inventree_extras.py:229 #, python-brace-format msgid "{title} v{version}" msgstr "" diff --git a/InvenTree/locale/tr/LC_MESSAGES/django.po b/InvenTree/locale/tr/LC_MESSAGES/django.po index a94406bf5f..6e3c9dc31a 100644 --- a/InvenTree/locale/tr/LC_MESSAGES/django.po +++ b/InvenTree/locale/tr/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 21:57+0000\n" -"PO-Revision-Date: 2022-08-08 13:03\n" +"POT-Creation-Date: 2022-08-10 11:38+0000\n" +"PO-Revision-Date: 2022-08-10 13:22\n" "Last-Translator: \n" "Language-Team: Turkish\n" "Language: tr_TR\n" @@ -121,44 +121,44 @@ msgstr "" msgid "Supplied URL is not a valid image file" msgstr "Sağlanan URL geçerli bir resim dosyası değil" -#: InvenTree/helpers.py:584 +#: InvenTree/helpers.py:598 #, python-brace-format msgid "Duplicate serial: {sn}" msgstr "Tekrarlanan seri no:{sn}" -#: InvenTree/helpers.py:591 order/models.py:320 order/models.py:472 +#: InvenTree/helpers.py:605 order/models.py:320 order/models.py:472 msgid "Invalid quantity provided" msgstr "Geçersiz veri sağlandı" -#: InvenTree/helpers.py:594 +#: InvenTree/helpers.py:608 msgid "Empty serial number string" msgstr "Boş seri numarası dizesi" -#: InvenTree/helpers.py:626 +#: InvenTree/helpers.py:640 #, python-brace-format msgid "Invalid group range: {g}" msgstr "" -#: InvenTree/helpers.py:629 +#: InvenTree/helpers.py:643 #, python-brace-format msgid "Invalid group: {g}" msgstr "Geçersiz grup: {g}" -#: InvenTree/helpers.py:657 +#: InvenTree/helpers.py:671 #, python-brace-format msgid "Invalid group sequence: {g}" msgstr "" -#: InvenTree/helpers.py:665 +#: InvenTree/helpers.py:679 #, python-brace-format msgid "Invalid/no group {group}" msgstr "Geçersiz grup: {group}" -#: InvenTree/helpers.py:671 +#: InvenTree/helpers.py:685 msgid "No serial numbers found" msgstr "Seri numarası bulunamadı" -#: InvenTree/helpers.py:675 +#: InvenTree/helpers.py:689 #, python-brace-format msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "" @@ -816,7 +816,7 @@ msgstr "Satış Emri Referansı" msgid "SalesOrder to which this build is allocated" msgstr "Bu yapım işinin tahsis edildiği satış emri" -#: build/models.py:213 build/serializers.py:784 +#: build/models.py:213 build/serializers.py:803 #: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873 msgid "Source Location" msgstr "Kaynak Konum" @@ -942,42 +942,42 @@ msgstr "Yapım işi çıktısı zaten tamamlanmış" msgid "Build output does not match Build Order" msgstr "Yapım işi çıktısı, yapım işi emri ile eşleşmiyor" -#: build/models.py:1143 +#: build/models.py:1171 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "Ana parça izlenebilir olarak işaretlendiğinden, yapım işi çıktısı için bir yapım işi ögesi belirtmelidir" -#: build/models.py:1152 +#: build/models.py:1180 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "" -#: build/models.py:1162 order/models.py:1379 +#: build/models.py:1190 order/models.py:1379 msgid "Stock item is over-allocated" msgstr "Stok kalemi fazladan tahsis edilmiş" -#: build/models.py:1168 order/models.py:1382 +#: build/models.py:1196 order/models.py:1382 msgid "Allocation quantity must be greater than zero" msgstr "Tahsis edilen miktar sıfırdan büyük olmalıdır" -#: build/models.py:1174 +#: build/models.py:1202 msgid "Quantity must be 1 for serialized stock" msgstr "Seri numaralı stok için miktar bir olmalı" -#: build/models.py:1231 +#: build/models.py:1259 msgid "Selected stock item not found in BOM" msgstr "" -#: build/models.py:1300 stock/templates/stock/item_base.html:177 +#: build/models.py:1328 stock/templates/stock/item_base.html:177 #: templates/InvenTree/search.html:137 templates/js/translated/build.js:2455 #: templates/navbar.html:38 msgid "Build" msgstr "Yapım İşi" -#: build/models.py:1301 +#: build/models.py:1329 msgid "Build to allocate parts" msgstr "Yapım işi için tahsis edilen parçalar" -#: build/models.py:1317 build/serializers.py:629 order/serializers.py:1015 +#: build/models.py:1345 build/serializers.py:648 order/serializers.py:1015 #: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 #: stock/serializers.py:880 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 @@ -992,11 +992,11 @@ msgstr "Yapım işi için tahsis edilen parçalar" msgid "Stock Item" msgstr "Stok Kalemi" -#: build/models.py:1318 +#: build/models.py:1346 msgid "Source stock item" msgstr "Kaynak stok kalemi" -#: build/models.py:1330 build/serializers.py:193 +#: build/models.py:1358 build/serializers.py:193 #: build/templates/build/build_base.html:82 #: build/templates/build/detail.html:34 common/models.py:1678 #: company/templates/company/supplier_part.html:279 order/models.py:897 @@ -1033,19 +1033,19 @@ msgstr "Kaynak stok kalemi" msgid "Quantity" msgstr "Miktar" -#: build/models.py:1331 +#: build/models.py:1359 msgid "Stock quantity to allocate to build" msgstr "Yapım işi için tahsis edilen stok miktarı" -#: build/models.py:1339 +#: build/models.py:1367 msgid "Install into" msgstr "Kurulduğu yer" -#: build/models.py:1340 +#: build/models.py:1368 msgid "Destination stock item" msgstr "Hedef stok kalemi" -#: build/serializers.py:138 build/serializers.py:658 +#: build/serializers.py:138 build/serializers.py:677 #: templates/js/translated/build.js:1166 msgid "Build Output" msgstr "" @@ -1070,7 +1070,7 @@ msgstr "" msgid "Enter quantity for build output" msgstr "Yapım işi çıktısı için miktarını girin" -#: build/serializers.py:208 build/serializers.py:649 order/models.py:318 +#: build/serializers.py:208 build/serializers.py:668 order/models.py:318 #: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 #: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 #: stock/serializers.py:302 @@ -1164,117 +1164,125 @@ msgstr "" msgid "Delete any build outputs which have not been completed" msgstr "" -#: build/serializers.py:480 -msgid "Accept Overallocated" +#: build/serializers.py:485 +msgid "Accept as consumed by this build order" msgstr "" -#: build/serializers.py:481 -msgid "Accept stock items which have been overallocated to this build order" +#: build/serializers.py:486 +msgid "Deallocate before completing this build order" msgstr "" -#: build/serializers.py:491 -msgid "Some stock items have been overallocated" +#: build/serializers.py:494 +msgid "Overallocated Stock" msgstr "" #: build/serializers.py:496 +msgid "How do you want to handle extra stock items assigned to the build order" +msgstr "" + +#: build/serializers.py:506 +msgid "Some stock items have been overallocated" +msgstr "" + +#: build/serializers.py:511 msgid "Accept Unallocated" msgstr "" -#: build/serializers.py:497 +#: build/serializers.py:512 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:507 templates/js/translated/build.js:195 +#: build/serializers.py:522 templates/js/translated/build.js:195 msgid "Required stock has not been fully allocated" msgstr "Gerekli stok tamamen tahsis edilemedi" -#: build/serializers.py:512 +#: build/serializers.py:527 msgid "Accept Incomplete" msgstr "" -#: build/serializers.py:513 +#: build/serializers.py:528 msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:523 templates/js/translated/build.js:199 +#: build/serializers.py:538 templates/js/translated/build.js:199 msgid "Required build quantity has not been completed" msgstr "Gerekli yapım işi miktarı tamamlanmadı" -#: build/serializers.py:532 +#: build/serializers.py:547 msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:535 build/templates/build/build_base.html:95 +#: build/serializers.py:550 build/templates/build/build_base.html:95 msgid "No build outputs have been created for this build order" msgstr "" -#: build/serializers.py:561 build/serializers.py:606 part/models.py:2719 +#: build/serializers.py:580 build/serializers.py:625 part/models.py:2719 #: part/models.py:2853 msgid "BOM Item" msgstr "" -#: build/serializers.py:571 +#: build/serializers.py:590 msgid "Build output" msgstr "" -#: build/serializers.py:579 +#: build/serializers.py:598 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:620 +#: build/serializers.py:639 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:635 stock/serializers.py:767 +#: build/serializers.py:654 stock/serializers.py:767 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:693 order/serializers.py:1073 +#: build/serializers.py:712 order/serializers.py:1073 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:699 +#: build/serializers.py:718 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:706 +#: build/serializers.py:725 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:711 +#: build/serializers.py:730 msgid "This stock item has already been allocated to this build output" msgstr "" -#: build/serializers.py:734 order/serializers.py:1319 +#: build/serializers.py:753 order/serializers.py:1319 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:785 +#: build/serializers.py:804 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:793 +#: build/serializers.py:812 msgid "Exclude Location" msgstr "" -#: build/serializers.py:794 +#: build/serializers.py:813 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:799 +#: build/serializers.py:818 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:800 +#: build/serializers.py:819 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:805 +#: build/serializers.py:824 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:806 +#: build/serializers.py:825 msgid "Allow allocation of substitute parts" msgstr "" @@ -5520,7 +5528,7 @@ msgstr "" msgid "Unknown database" msgstr "" -#: part/templatetags/inventree_extras.py:222 +#: part/templatetags/inventree_extras.py:229 #, python-brace-format msgid "{title} v{version}" msgstr "" diff --git a/InvenTree/locale/vi/LC_MESSAGES/django.po b/InvenTree/locale/vi/LC_MESSAGES/django.po index 3b02bec27b..1a4a72dd74 100644 --- a/InvenTree/locale/vi/LC_MESSAGES/django.po +++ b/InvenTree/locale/vi/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 21:57+0000\n" -"PO-Revision-Date: 2022-08-08 13:03\n" +"POT-Creation-Date: 2022-08-10 11:38+0000\n" +"PO-Revision-Date: 2022-08-10 13:22\n" "Last-Translator: \n" "Language-Team: Vietnamese\n" "Language: vi_VN\n" @@ -121,44 +121,44 @@ msgstr "" msgid "Supplied URL is not a valid image file" msgstr "" -#: InvenTree/helpers.py:584 +#: InvenTree/helpers.py:598 #, python-brace-format msgid "Duplicate serial: {sn}" msgstr "" -#: InvenTree/helpers.py:591 order/models.py:320 order/models.py:472 +#: InvenTree/helpers.py:605 order/models.py:320 order/models.py:472 msgid "Invalid quantity provided" msgstr "" -#: InvenTree/helpers.py:594 +#: InvenTree/helpers.py:608 msgid "Empty serial number string" msgstr "" -#: InvenTree/helpers.py:626 +#: InvenTree/helpers.py:640 #, python-brace-format msgid "Invalid group range: {g}" msgstr "" -#: InvenTree/helpers.py:629 +#: InvenTree/helpers.py:643 #, python-brace-format msgid "Invalid group: {g}" msgstr "" -#: InvenTree/helpers.py:657 +#: InvenTree/helpers.py:671 #, python-brace-format msgid "Invalid group sequence: {g}" msgstr "" -#: InvenTree/helpers.py:665 +#: InvenTree/helpers.py:679 #, python-brace-format msgid "Invalid/no group {group}" msgstr "" -#: InvenTree/helpers.py:671 +#: InvenTree/helpers.py:685 msgid "No serial numbers found" msgstr "" -#: InvenTree/helpers.py:675 +#: InvenTree/helpers.py:689 #, python-brace-format msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "" @@ -816,7 +816,7 @@ msgstr "" msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:213 build/serializers.py:784 +#: build/models.py:213 build/serializers.py:803 #: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873 msgid "Source Location" msgstr "" @@ -942,42 +942,42 @@ msgstr "" msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:1143 +#: build/models.py:1171 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "" -#: build/models.py:1152 +#: build/models.py:1180 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "" -#: build/models.py:1162 order/models.py:1379 +#: build/models.py:1190 order/models.py:1379 msgid "Stock item is over-allocated" msgstr "" -#: build/models.py:1168 order/models.py:1382 +#: build/models.py:1196 order/models.py:1382 msgid "Allocation quantity must be greater than zero" msgstr "" -#: build/models.py:1174 +#: build/models.py:1202 msgid "Quantity must be 1 for serialized stock" msgstr "" -#: build/models.py:1231 +#: build/models.py:1259 msgid "Selected stock item not found in BOM" msgstr "" -#: build/models.py:1300 stock/templates/stock/item_base.html:177 +#: build/models.py:1328 stock/templates/stock/item_base.html:177 #: templates/InvenTree/search.html:137 templates/js/translated/build.js:2455 #: templates/navbar.html:38 msgid "Build" msgstr "" -#: build/models.py:1301 +#: build/models.py:1329 msgid "Build to allocate parts" msgstr "" -#: build/models.py:1317 build/serializers.py:629 order/serializers.py:1015 +#: build/models.py:1345 build/serializers.py:648 order/serializers.py:1015 #: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 #: stock/serializers.py:880 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 @@ -992,11 +992,11 @@ msgstr "" msgid "Stock Item" msgstr "" -#: build/models.py:1318 +#: build/models.py:1346 msgid "Source stock item" msgstr "" -#: build/models.py:1330 build/serializers.py:193 +#: build/models.py:1358 build/serializers.py:193 #: build/templates/build/build_base.html:82 #: build/templates/build/detail.html:34 common/models.py:1678 #: company/templates/company/supplier_part.html:279 order/models.py:897 @@ -1033,19 +1033,19 @@ msgstr "" msgid "Quantity" msgstr "" -#: build/models.py:1331 +#: build/models.py:1359 msgid "Stock quantity to allocate to build" msgstr "" -#: build/models.py:1339 +#: build/models.py:1367 msgid "Install into" msgstr "" -#: build/models.py:1340 +#: build/models.py:1368 msgid "Destination stock item" msgstr "" -#: build/serializers.py:138 build/serializers.py:658 +#: build/serializers.py:138 build/serializers.py:677 #: templates/js/translated/build.js:1166 msgid "Build Output" msgstr "" @@ -1070,7 +1070,7 @@ msgstr "" msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:208 build/serializers.py:649 order/models.py:318 +#: build/serializers.py:208 build/serializers.py:668 order/models.py:318 #: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 #: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 #: stock/serializers.py:302 @@ -1164,117 +1164,125 @@ msgstr "" msgid "Delete any build outputs which have not been completed" msgstr "" -#: build/serializers.py:480 -msgid "Accept Overallocated" +#: build/serializers.py:485 +msgid "Accept as consumed by this build order" msgstr "" -#: build/serializers.py:481 -msgid "Accept stock items which have been overallocated to this build order" +#: build/serializers.py:486 +msgid "Deallocate before completing this build order" msgstr "" -#: build/serializers.py:491 -msgid "Some stock items have been overallocated" +#: build/serializers.py:494 +msgid "Overallocated Stock" msgstr "" #: build/serializers.py:496 +msgid "How do you want to handle extra stock items assigned to the build order" +msgstr "" + +#: build/serializers.py:506 +msgid "Some stock items have been overallocated" +msgstr "" + +#: build/serializers.py:511 msgid "Accept Unallocated" msgstr "" -#: build/serializers.py:497 +#: build/serializers.py:512 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:507 templates/js/translated/build.js:195 +#: build/serializers.py:522 templates/js/translated/build.js:195 msgid "Required stock has not been fully allocated" msgstr "" -#: build/serializers.py:512 +#: build/serializers.py:527 msgid "Accept Incomplete" msgstr "" -#: build/serializers.py:513 +#: build/serializers.py:528 msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:523 templates/js/translated/build.js:199 +#: build/serializers.py:538 templates/js/translated/build.js:199 msgid "Required build quantity has not been completed" msgstr "" -#: build/serializers.py:532 +#: build/serializers.py:547 msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:535 build/templates/build/build_base.html:95 +#: build/serializers.py:550 build/templates/build/build_base.html:95 msgid "No build outputs have been created for this build order" msgstr "" -#: build/serializers.py:561 build/serializers.py:606 part/models.py:2719 +#: build/serializers.py:580 build/serializers.py:625 part/models.py:2719 #: part/models.py:2853 msgid "BOM Item" msgstr "" -#: build/serializers.py:571 +#: build/serializers.py:590 msgid "Build output" msgstr "" -#: build/serializers.py:579 +#: build/serializers.py:598 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:620 +#: build/serializers.py:639 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:635 stock/serializers.py:767 +#: build/serializers.py:654 stock/serializers.py:767 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:693 order/serializers.py:1073 +#: build/serializers.py:712 order/serializers.py:1073 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:699 +#: build/serializers.py:718 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:706 +#: build/serializers.py:725 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:711 +#: build/serializers.py:730 msgid "This stock item has already been allocated to this build output" msgstr "" -#: build/serializers.py:734 order/serializers.py:1319 +#: build/serializers.py:753 order/serializers.py:1319 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:785 +#: build/serializers.py:804 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:793 +#: build/serializers.py:812 msgid "Exclude Location" msgstr "" -#: build/serializers.py:794 +#: build/serializers.py:813 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:799 +#: build/serializers.py:818 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:800 +#: build/serializers.py:819 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:805 +#: build/serializers.py:824 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:806 +#: build/serializers.py:825 msgid "Allow allocation of substitute parts" msgstr "" @@ -5520,7 +5528,7 @@ msgstr "" msgid "Unknown database" msgstr "" -#: part/templatetags/inventree_extras.py:222 +#: part/templatetags/inventree_extras.py:229 #, python-brace-format msgid "{title} v{version}" msgstr "" diff --git a/InvenTree/locale/zh/LC_MESSAGES/django.po b/InvenTree/locale/zh/LC_MESSAGES/django.po index e42c5afe31..a2bcd543fc 100644 --- a/InvenTree/locale/zh/LC_MESSAGES/django.po +++ b/InvenTree/locale/zh/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-07 21:57+0000\n" -"PO-Revision-Date: 2022-08-08 13:03\n" +"POT-Creation-Date: 2022-08-10 11:38+0000\n" +"PO-Revision-Date: 2022-08-10 13:22\n" "Last-Translator: \n" "Language-Team: Chinese Simplified\n" "Language: zh_CN\n" @@ -121,44 +121,44 @@ msgstr "" msgid "Supplied URL is not a valid image file" msgstr "提供的 URL 不是一个有效的图片文件" -#: InvenTree/helpers.py:584 +#: InvenTree/helpers.py:598 #, python-brace-format msgid "Duplicate serial: {sn}" msgstr "重复的序列号: {sn}" -#: InvenTree/helpers.py:591 order/models.py:320 order/models.py:472 +#: InvenTree/helpers.py:605 order/models.py:320 order/models.py:472 msgid "Invalid quantity provided" msgstr "提供的数量无效" -#: InvenTree/helpers.py:594 +#: InvenTree/helpers.py:608 msgid "Empty serial number string" msgstr "空序列号字符串" -#: InvenTree/helpers.py:626 +#: InvenTree/helpers.py:640 #, python-brace-format msgid "Invalid group range: {g}" msgstr "无效的组范围: {g}" -#: InvenTree/helpers.py:629 +#: InvenTree/helpers.py:643 #, python-brace-format msgid "Invalid group: {g}" msgstr "无效的群组: {g}" -#: InvenTree/helpers.py:657 +#: InvenTree/helpers.py:671 #, python-brace-format msgid "Invalid group sequence: {g}" msgstr "无效的组序列: {g}" -#: InvenTree/helpers.py:665 +#: InvenTree/helpers.py:679 #, python-brace-format msgid "Invalid/no group {group}" msgstr "无效的群组: {group}" -#: InvenTree/helpers.py:671 +#: InvenTree/helpers.py:685 msgid "No serial numbers found" msgstr "未找到序列号" -#: InvenTree/helpers.py:675 +#: InvenTree/helpers.py:689 #, python-brace-format msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "唯一序列号 ({s}) 必须匹配数量 ({q})" @@ -816,7 +816,7 @@ msgstr "相关销售订单" msgid "SalesOrder to which this build is allocated" msgstr "此次生产匹配的销售订单" -#: build/models.py:213 build/serializers.py:784 +#: build/models.py:213 build/serializers.py:803 #: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873 msgid "Source Location" msgstr "来源地点" @@ -942,42 +942,42 @@ msgstr "生产产出已完成" msgid "Build output does not match Build Order" msgstr "生产产出与订单不匹配" -#: build/models.py:1143 +#: build/models.py:1171 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "生产项必须指定生产产出,因为主部件已经被标记为可追踪的" -#: build/models.py:1152 +#: build/models.py:1180 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "分配数量 ({q}) 不得超过可用库存数量 ({a})" -#: build/models.py:1162 order/models.py:1379 +#: build/models.py:1190 order/models.py:1379 msgid "Stock item is over-allocated" msgstr "库存物品分配过度!" -#: build/models.py:1168 order/models.py:1382 +#: build/models.py:1196 order/models.py:1382 msgid "Allocation quantity must be greater than zero" msgstr "分配数量必须大于0" -#: build/models.py:1174 +#: build/models.py:1202 msgid "Quantity must be 1 for serialized stock" msgstr "序列化库存的数量必须是 1" -#: build/models.py:1231 +#: build/models.py:1259 msgid "Selected stock item not found in BOM" msgstr "在BOM中找不到选定的库存项" -#: build/models.py:1300 stock/templates/stock/item_base.html:177 +#: build/models.py:1328 stock/templates/stock/item_base.html:177 #: templates/InvenTree/search.html:137 templates/js/translated/build.js:2455 #: templates/navbar.html:38 msgid "Build" msgstr "生产" -#: build/models.py:1301 +#: build/models.py:1329 msgid "Build to allocate parts" msgstr "生产以分配部件" -#: build/models.py:1317 build/serializers.py:629 order/serializers.py:1015 +#: build/models.py:1345 build/serializers.py:648 order/serializers.py:1015 #: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 #: stock/serializers.py:880 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 @@ -992,11 +992,11 @@ msgstr "生产以分配部件" msgid "Stock Item" msgstr "库存项" -#: build/models.py:1318 +#: build/models.py:1346 msgid "Source stock item" msgstr "源库存项" -#: build/models.py:1330 build/serializers.py:193 +#: build/models.py:1358 build/serializers.py:193 #: build/templates/build/build_base.html:82 #: build/templates/build/detail.html:34 common/models.py:1678 #: company/templates/company/supplier_part.html:279 order/models.py:897 @@ -1033,19 +1033,19 @@ msgstr "源库存项" msgid "Quantity" msgstr "数量" -#: build/models.py:1331 +#: build/models.py:1359 msgid "Stock quantity to allocate to build" msgstr "分配到生产的数量" -#: build/models.py:1339 +#: build/models.py:1367 msgid "Install into" msgstr "安装到" -#: build/models.py:1340 +#: build/models.py:1368 msgid "Destination stock item" msgstr "目标库存项" -#: build/serializers.py:138 build/serializers.py:658 +#: build/serializers.py:138 build/serializers.py:677 #: templates/js/translated/build.js:1166 msgid "Build Output" msgstr "生产产出" @@ -1070,7 +1070,7 @@ msgstr "生产产出未被完成分配" msgid "Enter quantity for build output" msgstr "输入生产产出数量" -#: build/serializers.py:208 build/serializers.py:649 order/models.py:318 +#: build/serializers.py:208 build/serializers.py:668 order/models.py:318 #: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 #: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 #: stock/serializers.py:302 @@ -1164,117 +1164,125 @@ msgstr "移除未完成的产出" msgid "Delete any build outputs which have not been completed" msgstr "删除所有未完成的生产产出" -#: build/serializers.py:480 -msgid "Accept Overallocated" -msgstr "接受过度分配" +#: build/serializers.py:485 +msgid "Accept as consumed by this build order" +msgstr "" -#: build/serializers.py:481 -msgid "Accept stock items which have been overallocated to this build order" -msgstr "接受已经被过度分配至此生产订单的库存项" +#: build/serializers.py:486 +msgid "Deallocate before completing this build order" +msgstr "" -#: build/serializers.py:491 +#: build/serializers.py:494 +msgid "Overallocated Stock" +msgstr "" + +#: build/serializers.py:496 +msgid "How do you want to handle extra stock items assigned to the build order" +msgstr "" + +#: build/serializers.py:506 msgid "Some stock items have been overallocated" msgstr "一些库存项已被过度分配" -#: build/serializers.py:496 +#: build/serializers.py:511 msgid "Accept Unallocated" msgstr "接受未分配的" -#: build/serializers.py:497 +#: build/serializers.py:512 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "接受库存项未被完成分配至此生产订单" -#: build/serializers.py:507 templates/js/translated/build.js:195 +#: build/serializers.py:522 templates/js/translated/build.js:195 msgid "Required stock has not been fully allocated" msgstr "所需库存尚未完全分配" -#: build/serializers.py:512 +#: build/serializers.py:527 msgid "Accept Incomplete" msgstr "接受未完成" -#: build/serializers.py:513 +#: build/serializers.py:528 msgid "Accept that the required number of build outputs have not been completed" msgstr "接受所需的生产产出未完成" -#: build/serializers.py:523 templates/js/translated/build.js:199 +#: build/serializers.py:538 templates/js/translated/build.js:199 msgid "Required build quantity has not been completed" msgstr "所需生产数量尚未完成" -#: build/serializers.py:532 +#: build/serializers.py:547 msgid "Build order has incomplete outputs" msgstr "生产订单有未完成的产出" -#: build/serializers.py:535 build/templates/build/build_base.html:95 +#: build/serializers.py:550 build/templates/build/build_base.html:95 msgid "No build outputs have been created for this build order" msgstr "针对此生产订单,尚未创建生产产出" -#: build/serializers.py:561 build/serializers.py:606 part/models.py:2719 +#: build/serializers.py:580 build/serializers.py:625 part/models.py:2719 #: part/models.py:2853 msgid "BOM Item" msgstr "BOM项" -#: build/serializers.py:571 +#: build/serializers.py:590 msgid "Build output" msgstr "生产产出" -#: build/serializers.py:579 +#: build/serializers.py:598 msgid "Build output must point to the same build" msgstr "生产产出必须指向相同的生产" -#: build/serializers.py:620 +#: build/serializers.py:639 msgid "bom_item.part must point to the same part as the build order" msgstr "bom_item.part 必须与生产订单指向相同的部件" -#: build/serializers.py:635 stock/serializers.py:767 +#: build/serializers.py:654 stock/serializers.py:767 msgid "Item must be in stock" msgstr "项目必须在库存中" -#: build/serializers.py:693 order/serializers.py:1073 +#: build/serializers.py:712 order/serializers.py:1073 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "可用量 ({q}) 超出了限制" -#: build/serializers.py:699 +#: build/serializers.py:718 msgid "Build output must be specified for allocation of tracked parts" msgstr "对于被追踪的部件的分配,必须指定生产产出" -#: build/serializers.py:706 +#: build/serializers.py:725 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "对于未被追踪的部件,无法指定生产产出" -#: build/serializers.py:711 +#: build/serializers.py:730 msgid "This stock item has already been allocated to this build output" msgstr "此库存项已被分配至此生产产出" -#: build/serializers.py:734 order/serializers.py:1319 +#: build/serializers.py:753 order/serializers.py:1319 msgid "Allocation items must be provided" msgstr "必须提供分配的项" -#: build/serializers.py:785 +#: build/serializers.py:804 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "部件来源的仓储地点(留空则可来源于任何仓储地点)" -#: build/serializers.py:793 +#: build/serializers.py:812 msgid "Exclude Location" msgstr "排除地点" -#: build/serializers.py:794 +#: build/serializers.py:813 msgid "Exclude stock items from this selected location" msgstr "从该选定的仓储地点排除库存项" -#: build/serializers.py:799 +#: build/serializers.py:818 msgid "Interchangeable Stock" msgstr "可互换的库存" -#: build/serializers.py:800 +#: build/serializers.py:819 msgid "Stock items in multiple locations can be used interchangeably" msgstr "多处地点的库存项可以互换使用" -#: build/serializers.py:805 +#: build/serializers.py:824 msgid "Substitute Stock" msgstr "可替换的库存" -#: build/serializers.py:806 +#: build/serializers.py:825 msgid "Allow allocation of substitute parts" msgstr "允许分配可替换的部件" @@ -5520,7 +5528,7 @@ msgstr "" msgid "Unknown database" msgstr "" -#: part/templatetags/inventree_extras.py:222 +#: part/templatetags/inventree_extras.py:229 #, python-brace-format msgid "{title} v{version}" msgstr "" From 1010a6296f65b20e8dc6c5880dcc0fec5df5fe1f Mon Sep 17 00:00:00 2001 From: Matthias Mair Date: Thu, 11 Aug 2022 04:02:06 +0200 Subject: [PATCH 09/60] Plugin meta detection improvements (#3516) * refactor entrypoint into helpers * Add lookup by metadata This is geared towards plugins packaged in pkgs that differ in name from their top module * Make module lookup predictable in changing pkg-envs --- InvenTree/plugin/helpers.py | 36 ++++++++++++++++++++++++++++++++++++ InvenTree/plugin/plugin.py | 12 +++++++++--- InvenTree/plugin/registry.py | 8 ++++---- 3 files changed, 49 insertions(+), 7 deletions(-) diff --git a/InvenTree/plugin/helpers.py b/InvenTree/plugin/helpers.py index 89edb1a571..723543caea 100644 --- a/InvenTree/plugin/helpers.py +++ b/InvenTree/plugin/helpers.py @@ -7,6 +7,9 @@ import pkgutil import subprocess import sysconfig import traceback +from importlib.metadata import (PackageNotFoundError, distributions, + entry_points) +from importlib.util import find_spec from django import template from django.conf import settings @@ -92,6 +95,11 @@ def handle_error(error, do_raise: bool = True, do_log: bool = True, log_name: st if settings.TESTING_ENV and package_name != 'integration.broken_sample' and isinstance(error, IntegrityError): raise error # pragma: no cover raise IntegrationPluginError(package_name, str(error)) + + +def get_entrypoints(): + """Returns list for entrypoints for InvenTree plugins.""" + return entry_points().get('inventree_plugins', []) # endregion @@ -223,6 +231,34 @@ def get_plugins(pkg, baseclass, path=None): plugins.append(plugin) return plugins + + +def get_module_meta(mdl_name): + """Return distribution for module. + + Modified form source: https://stackoverflow.com/a/60975978/17860466 + """ + # Get spec for module + spec = find_spec(mdl_name) + + # Try to get specific package for the module + result = None + for dist in distributions(): + try: + relative = pathlib.Path(spec.origin).relative_to(dist.locate_file('')) + except ValueError: + pass + else: + if relative in dist.files: + result = dist + + # Check if a distribution was found + # A no should not be possible here as a call can only be made on a discovered module but better save then sorry + if not result: + raise PackageNotFoundError(mdl_name) + + # Return metadata + return result.metadata # endregion diff --git a/InvenTree/plugin/plugin.py b/InvenTree/plugin/plugin.py index b59b42bc3b..2bf849c56e 100644 --- a/InvenTree/plugin/plugin.py +++ b/InvenTree/plugin/plugin.py @@ -6,7 +6,7 @@ import os import pathlib import warnings from datetime import datetime -from importlib.metadata import metadata +from importlib.metadata import PackageNotFoundError, metadata from django.conf import settings from django.db.utils import OperationalError, ProgrammingError @@ -14,7 +14,7 @@ from django.urls.base import reverse from django.utils.text import slugify from django.utils.translation import gettext_lazy as _ -from plugin.helpers import GitStatus, get_git_log +from plugin.helpers import GitStatus, get_git_log, get_module_meta logger = logging.getLogger("inventree") @@ -294,7 +294,13 @@ class InvenTreePlugin(MixinBase, MetaBase): @classmethod def _get_package_metadata(cls): """Get package metadata for plugin.""" - meta = metadata(cls.__name__) + + # Try simple metadata lookup + try: + meta = metadata(cls.__name__) + # Simpel lookup did not work - get data from module + except PackageNotFoundError: + meta = get_module_meta(cls.__module__) return { 'author': meta['Author-email'], diff --git a/InvenTree/plugin/registry.py b/InvenTree/plugin/registry.py index f60972accb..5d05cb4ecc 100644 --- a/InvenTree/plugin/registry.py +++ b/InvenTree/plugin/registry.py @@ -8,7 +8,7 @@ import importlib import logging import os import subprocess -from importlib import metadata, reload +from importlib import reload from pathlib import Path from typing import OrderedDict @@ -24,8 +24,8 @@ from maintenance_mode.core import (get_maintenance_mode, maintenance_mode_on, from InvenTree.config import get_setting -from .helpers import (IntegrationPluginError, get_plugins, handle_error, - log_error) +from .helpers import (IntegrationPluginError, get_entrypoints, get_plugins, + handle_error, log_error) from .plugin import InvenTreePlugin logger = logging.getLogger('inventree') @@ -266,7 +266,7 @@ class PluginsRegistry: # Check if not running in testing mode and apps should be loaded from hooks if (not settings.PLUGIN_TESTING) or (settings.PLUGIN_TESTING and settings.PLUGIN_TESTING_SETUP): # Collect plugins from setup entry points - for entry in metadata.entry_points().get('inventree_plugins', []): # pragma: no cover + for entry in get_entrypoints(): # pragma: no cover try: plugin = entry.load() plugin.is_package = True From 427404b3bafaec50a17836c864be3f89baaef58c Mon Sep 17 00:00:00 2001 From: Oliver Date: Thu, 11 Aug 2022 12:46:33 +1000 Subject: [PATCH 10/60] Allow builds to be completed without any outputs (#3518) * Remove form validation error if no build outputs are created * Remove check before launching build-complete form --- InvenTree/build/serializers.py | 3 --- InvenTree/build/templates/build/build_base.html | 12 ------------ 2 files changed, 15 deletions(-) diff --git a/InvenTree/build/serializers.py b/InvenTree/build/serializers.py index 309e63071e..6c8c49c5bf 100644 --- a/InvenTree/build/serializers.py +++ b/InvenTree/build/serializers.py @@ -546,9 +546,6 @@ class BuildCompleteSerializer(serializers.Serializer): if build.incomplete_count > 0: raise ValidationError(_("Build order has incomplete outputs")) - if not build.has_build_outputs(): - raise ValidationError(_("No build outputs have been created for this build order")) - return data def save(self): diff --git a/InvenTree/build/templates/build/build_base.html b/InvenTree/build/templates/build/build_base.html index 19dc2daeee..8c051d7f67 100644 --- a/InvenTree/build/templates/build/build_base.html +++ b/InvenTree/build/templates/build/build_base.html @@ -224,23 +224,11 @@ src="{% static 'img/blank_image.png' %}" }); $("#build-complete").on('click', function() { - - {% if build.incomplete_count > 0 %} - showAlertDialog( - '{% trans "Incomplete Outputs" %}', - '{% trans "Build Order cannot be completed as incomplete build outputs remain" %}', - { - alert_style: 'danger', - } - ); - {% else %} - completeBuildOrder({{ build.pk }}, { overallocated: {% if build.has_overallocated_parts %}true{% else %}false{% endif %}, allocated: {% if build.are_untracked_parts_allocated %}true{% else %}false{% endif %}, completed: {% if build.remaining == 0 %}true{% else %}false{% endif %}, }); - {% endif %} }); {% if report_enabled %} From 00dbf00eb9ed0b22d7716669f441155ebb0580d2 Mon Sep 17 00:00:00 2001 From: Matthias Mair Date: Mon, 15 Aug 2022 00:20:03 +0200 Subject: [PATCH 11/60] [FR] Tie github actions to specific commit hashes (#3532) * [FR] Tie github actions to specific commit hashes Fixes #3530 * udpate action versions --- .github/workflows/check_translations.yaml | 3 +- .github/workflows/docker.yaml | 21 ++++----- .github/workflows/qc_checks.yaml | 55 ++++++++++++----------- .github/workflows/release.yml | 30 +++++++------ .github/workflows/stale.yml | 21 ++++----- .github/workflows/translations.yml | 14 +++--- .github/workflows/update.yml | 9 ++-- .github/workflows/welcome.yml | 24 +++++----- 8 files changed, 91 insertions(+), 86 deletions(-) diff --git a/.github/workflows/check_translations.yaml b/.github/workflows/check_translations.yaml index eb02ceff09..e4f318948c 100644 --- a/.github/workflows/check_translations.yaml +++ b/.github/workflows/check_translations.yaml @@ -21,10 +21,9 @@ jobs: INVENTREE_MEDIA_ROOT: ./media INVENTREE_STATIC_ROOT: ./static - steps: - name: Checkout Code - uses: actions/checkout@v2 + uses: actions/checkout@7884fcad6b5d53d10323aee724dc68d8b9096a2e # pin@v2 - name: Install Dependencies run: | sudo apt-get update diff --git a/.github/workflows/docker.yaml b/.github/workflows/docker.yaml index d94ab3b876..db20856281 100644 --- a/.github/workflows/docker.yaml +++ b/.github/workflows/docker.yaml @@ -15,7 +15,7 @@ name: Docker on: release: - types: [published] + types: [ published ] push: branches: @@ -33,7 +33,7 @@ jobs: steps: - name: Check out repo - uses: actions/checkout@v2 + uses: actions/checkout@7884fcad6b5d53d10323aee724dc68d8b9096a2e # pin@v2 - name: Version Check run: | pip install requests @@ -66,30 +66,30 @@ jobs: test -f data/secret_key.txt - name: Set up QEMU if: github.event_name != 'pull_request' - uses: docker/setup-qemu-action@v1 + uses: docker/setup-qemu-action@27d0a4f181a40b142cce983c5393082c365d1480 # pin@v1 - name: Set up Docker Buildx if: github.event_name != 'pull_request' - uses: docker/setup-buildx-action@v1 + uses: docker/setup-buildx-action@f211e3e9ded2d9377c8cadc4489a4e38014bc4c9 # pin@v1 - name: Set up cosign if: github.event_name != 'pull_request' - uses: sigstore/cosign-installer@48866aa521d8bf870604709cd43ec2f602d03ff2 + uses: sigstore/cosign-installer@09a077b27eb1310dcfb21981bee195b30ce09de0 # pin@v2.5.0 - name: Login to Dockerhub if: github.event_name != 'pull_request' - uses: docker/login-action@v1 + uses: docker/login-action@dd4fa0671be5250ee6f50aedf4cb05514abda2c7 # pin@v1 with: username: ${{ secrets.DOCKER_USERNAME }} password: ${{ secrets.DOCKER_PASSWORD }} - name: Extract Docker metadata if: github.event_name != 'pull_request' id: meta - uses: docker/metadata-action@69f6fc9d46f2f8bf0d5491e4aabe0bb8c6a4678a + uses: docker/metadata-action@69f6fc9d46f2f8bf0d5491e4aabe0bb8c6a4678a # pin@v4.0.1 with: images: | inventree/inventree - name: Build and Push id: build-and-push if: github.event_name != 'pull_request' - uses: docker/build-push-action@v2 + uses: docker/build-push-action@ac9327eae2b366085ac7f6a2d02df8aa8ead720a # pin@v2 with: context: . platforms: linux/amd64,linux/arm64,linux/arm/v7 @@ -103,9 +103,10 @@ jobs: if: github.event_name != 'pull_request' env: COSIGN_EXPERIMENTAL: "true" - run: cosign sign ${{ steps.meta.outputs.tags }}@${{ steps.build-and-push.outputs.digest }} + run: cosign sign ${{ steps.meta.outputs.tags }}@${{ + steps.build-and-push.outputs.digest }} - name: Push to Stable Branch - uses: ad-m/github-push-action@master + uses: ad-m/github-push-action@9a46ba8d86d3171233e861a4351b1278a2805c83 # pin@master if: env.stable_release == 'true' && github.event_name != 'pull_request' with: github_token: ${{ secrets.GITHUB_TOKEN }} diff --git a/.github/workflows/qc_checks.yaml b/.github/workflows/qc_checks.yaml index 64261f5b6a..4c4b311e35 100644 --- a/.github/workflows/qc_checks.yaml +++ b/.github/workflows/qc_checks.yaml @@ -15,7 +15,6 @@ env: python_version: 3.9 node_version: 16 # The OS version must be set per job - server_start_sleep: 60 GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} @@ -30,7 +29,7 @@ jobs: runs-on: ubuntu-20.04 steps: - - uses: actions/checkout@v1 + - uses: actions/checkout@50fbc622fc4ef5163becd7fab6573eac35f8462e # pin@v1 - name: Enviroment Setup uses: ./.github/actions/setup with: @@ -45,7 +44,7 @@ jobs: needs: pep_style steps: - - uses: actions/checkout@v1 + - uses: actions/checkout@50fbc622fc4ef5163becd7fab6573eac35f8462e # pin@v1 - name: Enviroment Setup uses: ./.github/actions/setup with: @@ -67,7 +66,7 @@ jobs: needs: pep_style steps: - - uses: actions/checkout@v1 + - uses: actions/checkout@50fbc622fc4ef5163becd7fab6573eac35f8462e # pin@v1 - name: Enviroment Setup uses: ./.github/actions/setup with: @@ -83,18 +82,18 @@ jobs: needs: pep_style steps: - - uses: actions/checkout@v2 - - name: Set up Python ${{ env.python_version }} - uses: actions/setup-python@v2 - with: - python-version: ${{ env.python_version }} - cache: 'pip' - - name: Run pre-commit Checks - uses: pre-commit/action@v2.0.3 - - name: Check Version - run: | - pip install requests - python3 ci/version_check.py + - uses: actions/checkout@7884fcad6b5d53d10323aee724dc68d8b9096a2e # pin@v2 + - name: Set up Python ${{ env.python_version }} + uses: actions/setup-python@7f80679172b057fc5e90d70d197929d454754a5a # pin@v2 + with: + python-version: ${{ env.python_version }} + cache: 'pip' + - name: Run pre-commit Checks + uses: pre-commit/action@9b88afc9cd57fd75b655d5c71bd38146d07135fe # pin@v2.0.3 + - name: Check Version + run: | + pip install requests + python3 ci/version_check.py python: name: Tests - inventree-python @@ -114,7 +113,7 @@ jobs: INVENTREE_PYTHON_TEST_PASSWORD: testpassword steps: - - uses: actions/checkout@v1 + - uses: actions/checkout@50fbc622fc4ef5163becd7fab6573eac35f8462e # pin@v1 - name: Enviroment Setup uses: ./.github/actions/setup with: @@ -122,7 +121,8 @@ jobs: dev-install: true update: true - name: Download Python Code For `${{ env.wrapper_name }}` - run: git clone --depth 1 https://github.com/inventree/${{ env.wrapper_name }} ./${{ env.wrapper_name }} + run: git clone --depth 1 https://github.com/inventree/${{ env.wrapper_name }} + ./${{ env.wrapper_name }} - name: Start InvenTree Server run: | invoke delete-data -f @@ -143,7 +143,7 @@ jobs: continue-on-error: true steps: - - uses: actions/checkout@v1 + - uses: actions/checkout@50fbc622fc4ef5163becd7fab6573eac35f8462e # pin@v1 - name: Enviroment Setup uses: ./.github/actions/setup with: @@ -155,8 +155,8 @@ jobs: name: Tests - DB [SQLite] + Coverage runs-on: ubuntu-20.04 - needs: ['javascript', 'html', 'pre-commit'] - continue-on-error: true # continue if a step fails so that coverage gets pushed + needs: [ 'javascript', 'html', 'pre-commit' ] + continue-on-error: true # continue if a step fails so that coverage gets pushed env: INVENTREE_DB_NAME: ./inventree.sqlite @@ -164,7 +164,7 @@ jobs: INVENTREE_PLUGINS_ENABLED: true steps: - - uses: actions/checkout@v1 + - uses: actions/checkout@50fbc622fc4ef5163becd7fab6573eac35f8462e # pin@v1 - name: Enviroment Setup uses: ./.github/actions/setup with: @@ -186,7 +186,7 @@ jobs: name: Tests - DB [PostgreSQL] runs-on: ubuntu-20.04 - needs: ['javascript', 'html', 'pre-commit'] + needs: [ 'javascript', 'html', 'pre-commit' ] if: github.event_name == 'push' env: @@ -214,7 +214,7 @@ jobs: - 6379:6379 steps: - - uses: actions/checkout@v1 + - uses: actions/checkout@50fbc622fc4ef5163becd7fab6573eac35f8462e # pin@v1 - name: Enviroment Setup uses: ./.github/actions/setup with: @@ -231,7 +231,7 @@ jobs: name: Tests - DB [MySQL] runs-on: ubuntu-20.04 - needs: ['javascript', 'html', 'pre-commit'] + needs: [ 'javascript', 'html', 'pre-commit' ] if: github.event_name == 'push' env: @@ -253,12 +253,13 @@ jobs: MYSQL_USER: inventree MYSQL_PASSWORD: password MYSQL_ROOT_PASSWORD: password - options: --health-cmd="mysqladmin ping" --health-interval=5s --health-timeout=2s --health-retries=3 + options: --health-cmd="mysqladmin ping" --health-interval=5s --health-timeout=2s + --health-retries=3 ports: - 3306:3306 steps: - - uses: actions/checkout@v1 + - uses: actions/checkout@50fbc622fc4ef5163becd7fab6573eac35f8462e # pin@v1 - name: Enviroment Setup uses: ./.github/actions/setup with: diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index 49d858702a..c96dce47ca 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -3,15 +3,17 @@ name: Publish release notes on: release: - types: [published] + types: [ published ] jobs: tweet: runs-on: ubuntu-latest steps: - - uses: Eomm/why-don-t-you-tweet@v1 + - uses: Eomm/why-don-t-you-tweet@f61f2a86c30c46528c1398a1abb1f64aa0988f69 # pin@v1 with: - tweet-message: "InvenTree release ${{ github.event.release.tag_name }} is out now! Release notes: ${{ github.event.release.html_url }} #opensource #inventree" + tweet-message: "InvenTree release ${{ github.event.release.tag_name }} is out + now! Release notes: ${{ github.event.release.html_url }} #opensource + #inventree" env: TWITTER_CONSUMER_API_KEY: ${{ secrets.TWITTER_CONSUMER_API_KEY }} TWITTER_CONSUMER_API_SECRET: ${{ secrets.TWITTER_CONSUMER_API_SECRET }} @@ -19,14 +21,14 @@ jobs: TWITTER_ACCESS_TOKEN_SECRET: ${{ secrets.TWITTER_ACCESS_TOKEN_SECRET }} reddit: - runs-on: ubuntu-latest - steps: - - uses: bluwy/release-for-reddit-action@v1 - with: - username: ${{ secrets.REDDIT_USERNAME }} - password: ${{ secrets.REDDIT_PASSWORD }} - app-id: ${{ secrets.REDDIT_APP_ID }} - app-secret: ${{ secrets.REDDIT_APP_SECRET }} - subreddit: InvenTree - title: "InvenTree version ${{ github.event.release.tag_name }} released" - comment: "${{ github.event.release.body }}" + runs-on: ubuntu-latest + steps: + - uses: bluwy/release-for-reddit-action@4d948192aff856da22f19f9806b00b46ca384547 # pin@v1 + with: + username: ${{ secrets.REDDIT_USERNAME }} + password: ${{ secrets.REDDIT_PASSWORD }} + app-id: ${{ secrets.REDDIT_APP_ID }} + app-secret: ${{ secrets.REDDIT_APP_SECRET }} + subreddit: InvenTree + title: "InvenTree version ${{ github.event.release.tag_name }} released" + comment: "${{ github.event.release.body }}" diff --git a/.github/workflows/stale.yml b/.github/workflows/stale.yml index 4f21c1e8be..1e5137b7e7 100644 --- a/.github/workflows/stale.yml +++ b/.github/workflows/stale.yml @@ -3,7 +3,7 @@ name: Mark stale issues and pull requests on: schedule: - - cron: '24 11 * * *' + - cron: '24 11 * * *' jobs: stale: @@ -14,12 +14,13 @@ jobs: pull-requests: write steps: - - uses: actions/stale@v3 - with: - repo-token: ${{ secrets.GITHUB_TOKEN }} - stale-issue-message: 'This issue seems stale. Please react to show this is still important.' - stale-pr-message: 'This PR seems stale. Please react to show this is still important.' - stale-issue-label: 'inactive' - stale-pr-label: 'inactive' - start-date: '2022-01-01' - exempt-all-milestones: true + - uses: actions/stale@98ed4cb500039dbcccf4bd9bedada4d0187f2757 # pin@v3 + with: + repo-token: ${{ secrets.GITHUB_TOKEN }} + stale-issue-message: 'This issue seems stale. Please react to show this is still + important.' + stale-pr-message: 'This PR seems stale. Please react to show this is still important.' + stale-issue-label: 'inactive' + stale-pr-label: 'inactive' + start-date: '2022-01-01' + exempt-all-milestones: true diff --git a/.github/workflows/translations.yml b/.github/workflows/translations.yml index 59f9b3cba9..eec0b8e49a 100644 --- a/.github/workflows/translations.yml +++ b/.github/workflows/translations.yml @@ -20,17 +20,17 @@ jobs: steps: - name: Checkout Code - uses: actions/checkout@v2 + uses: actions/checkout@7884fcad6b5d53d10323aee724dc68d8b9096a2e # pin@v2 - name: Set up Python 3.9 - uses: actions/setup-python@v1 + uses: actions/setup-python@152ba7c4dd6521b8e9c93f72d362ce03bf6c4f20 # pin@v1 with: python-version: 3.9 - name: Install Dependencies run: | - sudo apt-get update - sudo apt-get install -y gettext - pip3 install invoke - invoke install + sudo apt-get update + sudo apt-get install -y gettext + pip3 install invoke + invoke install - name: Make Translations run: | invoke translate @@ -42,7 +42,7 @@ jobs: git add "*.po" git commit -m "updated translation base" - name: Push changes - uses: ad-m/github-push-action@master + uses: ad-m/github-push-action@9a46ba8d86d3171233e861a4351b1278a2805c83 # pin@master with: github_token: ${{ secrets.GITHUB_TOKEN }} branch: l10 diff --git a/.github/workflows/update.yml b/.github/workflows/update.yml index 55c38068a8..e6320ab732 100644 --- a/.github/workflows/update.yml +++ b/.github/workflows/update.yml @@ -1,7 +1,7 @@ name: Update dependency files regularly on: - workflow_dispatch: + workflow_dispatch: null schedule: - cron: "0 0 * * *" @@ -9,14 +9,15 @@ jobs: build: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@7884fcad6b5d53d10323aee724dc68d8b9096a2e # pin@v2 - name: Setup run: pip install -r requirements-dev.txt - name: Update requirements.txt run: pip-compile --output-file=requirements.txt requirements.in -U - name: Update requirements-dev.txt - run: pip-compile --generate-hashes --output-file=requirements-dev.txt requirements-dev.in -U - - uses: stefanzweifel/git-auto-commit-action@v4 + run: pip-compile --generate-hashes --output-file=requirements-dev.txt + requirements-dev.in -U + - uses: stefanzweifel/git-auto-commit-action@49620cd3ed21ee620a48530e81dba0d139c9cb80 # pin@v4 with: commit_message: "[Bot] Updated dependency" branch: dep-update diff --git a/.github/workflows/welcome.yml b/.github/workflows/welcome.yml index 5be20aefe7..a6eaa45ee4 100644 --- a/.github/workflows/welcome.yml +++ b/.github/workflows/welcome.yml @@ -2,9 +2,9 @@ name: Welcome on: pull_request: - types: [opened] + types: [ opened ] issues: - types: [opened] + types: [ opened ] jobs: run: @@ -13,13 +13,13 @@ jobs: pull-requests: write steps: - - uses: actions/first-interaction@v1 - with: - repo-token: ${{ secrets.GITHUB_TOKEN }} - issue-message: | - Welcome to InvenTree! Please check the [contributing docs](https://inventree.readthedocs.io/en/latest/contribute/) on how to help. - If you experience setup / install issues please read all [install docs]( https://inventree.readthedocs.io/en/latest/start/intro/). - pr-message: | - This is your first PR, welcome! - Please check [Contributing](https://github.com/inventree/InvenTree/blob/master/CONTRIBUTING.md) to make sure your submission fits our general code-style and workflow. - Make sure to document why this PR is needed and to link connected issues so we can review it faster. + - uses: actions/first-interaction@bd33205aa5c96838e10fd65df0d01efd613677c1 # pin@v1 + with: + repo-token: ${{ secrets.GITHUB_TOKEN }} + issue-message: | + Welcome to InvenTree! Please check the [contributing docs](https://inventree.readthedocs.io/en/latest/contribute/) on how to help. + If you experience setup / install issues please read all [install docs]( https://inventree.readthedocs.io/en/latest/start/intro/). + pr-message: | + This is your first PR, welcome! + Please check [Contributing](https://github.com/inventree/InvenTree/blob/master/CONTRIBUTING.md) to make sure your submission fits our general code-style and workflow. + Make sure to document why this PR is needed and to link connected issues so we can review it faster. From 87e7112326357ea8dbe3d31eb461d0ba1ea9f991 Mon Sep 17 00:00:00 2001 From: Oliver Date: Mon, 15 Aug 2022 11:27:27 +1000 Subject: [PATCH 12/60] Fix weasyprint version (#3539) * Pin weasyprint version - Revert to 54.3 - Fixes https://github.com/inventree/InvenTree/issues/3528 * Simplify label printing for multiple pages * Simplify PDF generation for multiple report outputs * Add content wrapper div for base label template - Allows more extensibility --- InvenTree/label/api.py | 14 +++++--------- InvenTree/label/templates/label/label_base.html | 17 ++++++++++++++--- InvenTree/report/api.py | 15 +++++---------- requirements.in | 1 + requirements.txt | 6 ++++-- 5 files changed, 29 insertions(+), 24 deletions(-) diff --git a/InvenTree/label/api.py b/InvenTree/label/api.py index 68c4205178..64bea60db3 100644 --- a/InvenTree/label/api.py +++ b/InvenTree/label/api.py @@ -158,16 +158,12 @@ class LabelPrintMixin: pages = [] - if len(outputs) > 1: - # If more than one output is generated, merge them into a single file - for output in outputs: - doc = output.get_document() - for page in doc.pages: - pages.append(page) + for output in outputs: + doc = output.get_document() + for page in doc.pages: + pages.append(page) - pdf = outputs[0].get_document().copy(pages).write_pdf() - else: - pdf = outputs[0].get_document().write_pdf() + pdf = outputs[0].get_document().copy(pages).write_pdf() inline = common.models.InvenTreeUserSetting.get_setting('LABEL_INLINE', user=request.user) diff --git a/InvenTree/label/templates/label/label_base.html b/InvenTree/label/templates/label/label_base.html index 363a7d3144..4fe5644559 100644 --- a/InvenTree/label/templates/label/label_base.html +++ b/InvenTree/label/templates/label/label_base.html @@ -15,6 +15,8 @@ margin: 0mm; color: #000; background-color: #FFF; + page-break-before: always; + page-break-after: always; } img { @@ -22,14 +24,23 @@ image-rendering: pixelated; } + .content { + width: 100%; + break-after: always; + position: relative; + } + {% block style %} + /* User-defined styles can go here */ {% endblock %} - {% block content %} - - {% endblock %} +
+ {% block content %} + + {% endblock %} +
diff --git a/InvenTree/report/api.py b/InvenTree/report/api.py index c97026361d..738c7b859b 100644 --- a/InvenTree/report/api.py +++ b/InvenTree/report/api.py @@ -233,17 +233,12 @@ class ReportPrintMixin: pages = [] try: + for output in outputs: + doc = output.get_document() + for page in doc.pages: + pages.append(page) - if len(outputs) > 1: - # If more than one output is generated, merge them into a single file - for output in outputs: - doc = output.get_document() - for page in doc.pages: - pages.append(page) - - pdf = outputs[0].get_document().copy(pages).write_pdf() - else: - pdf = outputs[0].get_document().write_pdf() + pdf = outputs[0].get_document().copy(pages).write_pdf() except TemplateDoesNotExist as e: diff --git a/requirements.in b/requirements.in index d02436ded1..f977f9542a 100644 --- a/requirements.in +++ b/requirements.in @@ -33,6 +33,7 @@ rapidfuzz==0.7.6 # Fuzzy string matching sentry-sdk # Error reporting (optional) setuptools # Standard depenedency tablib[xls,xlsx,yaml] # Support for XLS and XLSX formats +weasyprint==54.3 # PDF generation # Fixed sub-dependencies py-moneyed<2.0 # For django-money # FIXED 2022-06-18 as we need `moneyed.localization` diff --git a/requirements.txt b/requirements.txt index a5a09cc441..5c77832177 100644 --- a/requirements.txt +++ b/requirements.txt @@ -230,8 +230,10 @@ urllib3==1.26.11 # sentry-sdk wcwidth==0.2.5 # via blessed -weasyprint==56.1 - # via django-weasyprint +weasyprint==54.3 + # via + # -r requirements.in + # django-weasyprint webencodings==0.5.1 # via # bleach From 956701a5847fbe2ac26f4fdc8e4d51f730544c04 Mon Sep 17 00:00:00 2001 From: Oliver Date: Mon, 15 Aug 2022 12:22:56 +1000 Subject: [PATCH 13/60] New Crowdin updates (#3519) * updated translation base * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- InvenTree/locale/cs/LC_MESSAGES/django.po | 99 +++++++-------- InvenTree/locale/de/LC_MESSAGES/django.po | 69 +++++----- InvenTree/locale/el/LC_MESSAGES/django.po | 69 +++++----- InvenTree/locale/en/LC_MESSAGES/django.po | 125 ++++++++++--------- InvenTree/locale/es/LC_MESSAGES/django.po | 69 +++++----- InvenTree/locale/es_MX/LC_MESSAGES/django.po | 125 ++++++++++--------- InvenTree/locale/fa/LC_MESSAGES/django.po | 69 +++++----- InvenTree/locale/fr/LC_MESSAGES/django.po | 69 +++++----- InvenTree/locale/he/LC_MESSAGES/django.po | 69 +++++----- InvenTree/locale/hu/LC_MESSAGES/django.po | 69 +++++----- InvenTree/locale/id/LC_MESSAGES/django.po | 69 +++++----- InvenTree/locale/it/LC_MESSAGES/django.po | 69 +++++----- InvenTree/locale/ja/LC_MESSAGES/django.po | 69 +++++----- InvenTree/locale/ko/LC_MESSAGES/django.po | 69 +++++----- InvenTree/locale/nl/LC_MESSAGES/django.po | 69 +++++----- InvenTree/locale/no/LC_MESSAGES/django.po | 69 +++++----- InvenTree/locale/pl/LC_MESSAGES/django.po | 69 +++++----- InvenTree/locale/pt/LC_MESSAGES/django.po | 69 +++++----- InvenTree/locale/pt_br/LC_MESSAGES/django.po | 125 ++++++++++--------- InvenTree/locale/ru/LC_MESSAGES/django.po | 69 +++++----- InvenTree/locale/sv/LC_MESSAGES/django.po | 69 +++++----- InvenTree/locale/th/LC_MESSAGES/django.po | 69 +++++----- InvenTree/locale/tr/LC_MESSAGES/django.po | 69 +++++----- InvenTree/locale/vi/LC_MESSAGES/django.po | 69 +++++----- InvenTree/locale/zh/LC_MESSAGES/django.po | 69 +++++----- 25 files changed, 911 insertions(+), 1012 deletions(-) diff --git a/InvenTree/locale/cs/LC_MESSAGES/django.po b/InvenTree/locale/cs/LC_MESSAGES/django.po index 3175e03df5..0ec5776182 100644 --- a/InvenTree/locale/cs/LC_MESSAGES/django.po +++ b/InvenTree/locale/cs/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-10 11:38+0000\n" -"PO-Revision-Date: 2022-08-10 13:23\n" +"POT-Creation-Date: 2022-08-11 02:47+0000\n" +"PO-Revision-Date: 2022-08-14 21:43\n" "Last-Translator: \n" "Language-Team: Czech\n" "Language: cs_CZ\n" @@ -23,7 +23,7 @@ msgstr "API endpoint nebyl nalezen" #: InvenTree/exceptions.py:68 msgid "Error details can be found in the admin panel" -msgstr "" +msgstr "Podrobnosti o chybě lze nalézt v panelu administrace" #: InvenTree/fields.py:109 msgid "Enter date" @@ -91,7 +91,7 @@ msgstr "Pokaždé musíte zadat stejný email." #: InvenTree/helpers.py:173 msgid "Connection error" -msgstr "" +msgstr "Chyba spojení" #: InvenTree/helpers.py:177 InvenTree/helpers.py:182 msgid "Server responded with invalid status code" @@ -107,11 +107,11 @@ msgstr "" #: InvenTree/helpers.py:190 msgid "Image size is too large" -msgstr "" +msgstr "Velikost obrázku je příliš velká" #: InvenTree/helpers.py:202 msgid "Image download exceeded maximum size" -msgstr "" +msgstr "Stahování obrázku překročilo maximální velikost" #: InvenTree/helpers.py:207 msgid "Remote server returned empty response" @@ -321,11 +321,11 @@ msgstr "nadřazený" #: InvenTree/models.py:560 InvenTree/models.py:561 #: templates/js/translated/part.js:1939 templates/js/translated/stock.js:2421 msgid "Path" -msgstr "" +msgstr "Cesta" #: InvenTree/models.py:670 msgid "Server Error" -msgstr "" +msgstr "Chyba serveru" #: InvenTree/models.py:671 msgid "An error has been logged by the server." @@ -388,7 +388,7 @@ msgstr "Duplicitní sloupec: '{col}'" #: InvenTree/serializers.py:602 #: templates/InvenTree/settings/mixins/urls.html:14 msgid "URL" -msgstr "" +msgstr "URL" #: InvenTree/serializers.py:603 msgid "URL of remote image file" @@ -464,11 +464,11 @@ msgstr "Polština" #: InvenTree/settings.py:625 msgid "Portuguese" -msgstr "" +msgstr "Portugalština" #: InvenTree/settings.py:626 msgid "Portuguese (Brazilian)" -msgstr "" +msgstr "Portugalština (Brazilská)" #: InvenTree/settings.py:627 msgid "Russian" @@ -543,7 +543,7 @@ msgstr "Odesláno" #: InvenTree/status_codes.py:179 msgid "OK" -msgstr "" +msgstr "OK" #: InvenTree/status_codes.py:180 msgid "Attention needed" @@ -611,11 +611,11 @@ msgstr "" #: InvenTree/status_codes.py:276 msgid "Removed component item" -msgstr "" +msgstr "Odstraněná komponenta" #: InvenTree/status_codes.py:278 msgid "Split from parent item" -msgstr "" +msgstr "Rozdělit od nadřazené položky" #: InvenTree/status_codes.py:279 msgid "Split child item" @@ -631,7 +631,7 @@ msgstr "" #: InvenTree/status_codes.py:285 templates/js/translated/table_filters.js:221 msgid "Sent to customer" -msgstr "" +msgstr "Odesláno zákazníkovi" #: InvenTree/status_codes.py:286 msgid "Returned from customer" @@ -659,7 +659,7 @@ msgstr "" #: InvenTree/validators.py:18 msgid "Not a valid currency code" -msgstr "" +msgstr "Neplatný kód měny" #: InvenTree/validators.py:45 msgid "Invalid character in part name" @@ -816,7 +816,7 @@ msgstr "" msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:213 build/serializers.py:803 +#: build/models.py:213 build/serializers.py:800 #: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873 msgid "Source Location" msgstr "" @@ -977,7 +977,7 @@ msgstr "" msgid "Build to allocate parts" msgstr "" -#: build/models.py:1345 build/serializers.py:648 order/serializers.py:1015 +#: build/models.py:1345 build/serializers.py:645 order/serializers.py:1015 #: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 #: stock/serializers.py:880 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 @@ -1045,7 +1045,7 @@ msgstr "" msgid "Destination stock item" msgstr "" -#: build/serializers.py:138 build/serializers.py:677 +#: build/serializers.py:138 build/serializers.py:674 #: templates/js/translated/build.js:1166 msgid "Build Output" msgstr "" @@ -1070,7 +1070,7 @@ msgstr "" msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:208 build/serializers.py:668 order/models.py:318 +#: build/serializers.py:208 build/serializers.py:665 order/models.py:318 #: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 #: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 #: stock/serializers.py:302 @@ -1212,77 +1212,73 @@ msgstr "" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:550 build/templates/build/build_base.html:95 -msgid "No build outputs have been created for this build order" -msgstr "" - -#: build/serializers.py:580 build/serializers.py:625 part/models.py:2719 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2719 #: part/models.py:2853 msgid "BOM Item" msgstr "" -#: build/serializers.py:590 +#: build/serializers.py:587 msgid "Build output" msgstr "" -#: build/serializers.py:598 +#: build/serializers.py:595 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:639 +#: build/serializers.py:636 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:654 stock/serializers.py:767 +#: build/serializers.py:651 stock/serializers.py:767 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:712 order/serializers.py:1073 +#: build/serializers.py:709 order/serializers.py:1073 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:718 +#: build/serializers.py:715 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:725 +#: build/serializers.py:722 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:730 +#: build/serializers.py:727 msgid "This stock item has already been allocated to this build output" msgstr "" -#: build/serializers.py:753 order/serializers.py:1319 +#: build/serializers.py:750 order/serializers.py:1319 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:804 +#: build/serializers.py:801 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:812 +#: build/serializers.py:809 msgid "Exclude Location" msgstr "" -#: build/serializers.py:813 +#: build/serializers.py:810 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:818 +#: build/serializers.py:815 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:819 +#: build/serializers.py:816 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:824 +#: build/serializers.py:821 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:825 +#: build/serializers.py:822 msgid "Allow allocation of substitute parts" msgstr "" @@ -1334,6 +1330,10 @@ msgstr "" msgid "Build Description" msgstr "" +#: build/templates/build/build_base.html:95 +msgid "No build outputs have been created for this build order" +msgstr "" + #: build/templates/build/build_base.html:101 #, python-format msgid "This Build Order is allocated to Sales Order %(link)s" @@ -1412,16 +1412,7 @@ msgstr "" msgid "Issued By" msgstr "" -#: build/templates/build/build_base.html:230 -#: build/templates/build/sidebar.html:12 -msgid "Incomplete Outputs" -msgstr "" - -#: build/templates/build/build_base.html:231 -msgid "Build Order cannot be completed as incomplete build outputs remain" -msgstr "" - -#: build/templates/build/build_base.html:257 +#: build/templates/build/build_base.html:245 msgid "Delete Build Order" msgstr "" @@ -1617,6 +1608,10 @@ msgstr "" msgid "Build Order Details" msgstr "" +#: build/templates/build/sidebar.html:12 +msgid "Incomplete Outputs" +msgstr "" + #: build/templates/build/sidebar.html:15 msgid "Completed Outputs" msgstr "" @@ -1720,7 +1715,7 @@ msgstr "" #: common/models.py:833 company/models.py:93 company/models.py:94 msgid "Company name" -msgstr "" +msgstr "Jméno společnosti" #: common/models.py:834 msgid "Internal company name" diff --git a/InvenTree/locale/de/LC_MESSAGES/django.po b/InvenTree/locale/de/LC_MESSAGES/django.po index 0f89801511..22169f5e11 100644 --- a/InvenTree/locale/de/LC_MESSAGES/django.po +++ b/InvenTree/locale/de/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-10 11:38+0000\n" -"PO-Revision-Date: 2022-08-10 13:23\n" +"POT-Creation-Date: 2022-08-11 02:47+0000\n" +"PO-Revision-Date: 2022-08-11 13:49\n" "Last-Translator: \n" "Language-Team: German\n" "Language: de_DE\n" @@ -816,7 +816,7 @@ msgstr "Auftrag Referenz" msgid "SalesOrder to which this build is allocated" msgstr "Bestellung, die diesem Bauauftrag zugewiesen ist" -#: build/models.py:213 build/serializers.py:803 +#: build/models.py:213 build/serializers.py:800 #: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873 msgid "Source Location" msgstr "Quell-Lagerort" @@ -977,7 +977,7 @@ msgstr "Bauauftrag" msgid "Build to allocate parts" msgstr "Bauauftrag starten um Teile zuzuweisen" -#: build/models.py:1345 build/serializers.py:648 order/serializers.py:1015 +#: build/models.py:1345 build/serializers.py:645 order/serializers.py:1015 #: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 #: stock/serializers.py:880 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 @@ -1045,7 +1045,7 @@ msgstr "Installiere in" msgid "Destination stock item" msgstr "Ziel-Lagerartikel" -#: build/serializers.py:138 build/serializers.py:677 +#: build/serializers.py:138 build/serializers.py:674 #: templates/js/translated/build.js:1166 msgid "Build Output" msgstr "Endprodukt" @@ -1070,7 +1070,7 @@ msgstr "Dieses Endprodukt ist nicht vollständig zugewiesen" msgid "Enter quantity for build output" msgstr "Menge der Endprodukte angeben" -#: build/serializers.py:208 build/serializers.py:668 order/models.py:318 +#: build/serializers.py:208 build/serializers.py:665 order/models.py:318 #: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 #: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 #: stock/serializers.py:302 @@ -1212,77 +1212,73 @@ msgstr "Benötigte Teil-Anzahl wurde noch nicht fertiggestellt" msgid "Build order has incomplete outputs" msgstr "Bauauftrag hat unvollständige Aufbauten" -#: build/serializers.py:550 build/templates/build/build_base.html:95 -msgid "No build outputs have been created for this build order" -msgstr "Es wurden keine Endprodukte für diesen Bauauftrag erstellt" - -#: build/serializers.py:580 build/serializers.py:625 part/models.py:2719 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2719 #: part/models.py:2853 msgid "BOM Item" msgstr "Stücklisten-Position" -#: build/serializers.py:590 +#: build/serializers.py:587 msgid "Build output" msgstr "Endprodukt" -#: build/serializers.py:598 +#: build/serializers.py:595 msgid "Build output must point to the same build" msgstr "Endprodukt muss auf den gleichen Bauauftrag verweisen" -#: build/serializers.py:639 +#: build/serializers.py:636 msgid "bom_item.part must point to the same part as the build order" msgstr "bom_item.part muss auf dasselbe Teil verweisen wie der Bauauftrag" -#: build/serializers.py:654 stock/serializers.py:767 +#: build/serializers.py:651 stock/serializers.py:767 msgid "Item must be in stock" msgstr "Teil muss auf Lager sein" -#: build/serializers.py:712 order/serializers.py:1073 +#: build/serializers.py:709 order/serializers.py:1073 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "Verfügbare Menge ({q}) überschritten" -#: build/serializers.py:718 +#: build/serializers.py:715 msgid "Build output must be specified for allocation of tracked parts" msgstr "Für Zuweisung von verfolgten Teilen muss ein Endprodukt angegeben sein" -#: build/serializers.py:725 +#: build/serializers.py:722 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "Endprodukt kann bei Zuweisung nicht-verfolgter Teile nicht angegeben werden" -#: build/serializers.py:730 +#: build/serializers.py:727 msgid "This stock item has already been allocated to this build output" msgstr "Dieser Lagerbestand wurde bereits diesem Endprodukt zugewiesen" -#: build/serializers.py:753 order/serializers.py:1319 +#: build/serializers.py:750 order/serializers.py:1319 msgid "Allocation items must be provided" msgstr "Zuweisungen müssen angegeben werden" -#: build/serializers.py:804 +#: build/serializers.py:801 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "Lagerort, von dem Teile bezogen werden sollen (leer lassen, um sie von jedem Lagerort zu nehmen)" -#: build/serializers.py:812 +#: build/serializers.py:809 msgid "Exclude Location" msgstr "Lagerort ausschließen" -#: build/serializers.py:813 +#: build/serializers.py:810 msgid "Exclude stock items from this selected location" msgstr "Lagerartikel vom ausgewählten Ort ausschließen" -#: build/serializers.py:818 +#: build/serializers.py:815 msgid "Interchangeable Stock" msgstr "Wechselbares Lagerbestand" -#: build/serializers.py:819 +#: build/serializers.py:816 msgid "Stock items in multiple locations can be used interchangeably" msgstr "Lagerartikel an mehreren Standorten können austauschbar verwendet werden" -#: build/serializers.py:824 +#: build/serializers.py:821 msgid "Substitute Stock" msgstr "Ersatzbestand" -#: build/serializers.py:825 +#: build/serializers.py:822 msgid "Allow allocation of substitute parts" msgstr "Zuordnung von Ersatzteilen erlauben" @@ -1334,6 +1330,10 @@ msgstr "Bauauftrag fertigstellen" msgid "Build Description" msgstr "Baubeschreibung" +#: build/templates/build/build_base.html:95 +msgid "No build outputs have been created for this build order" +msgstr "Es wurden keine Endprodukte für diesen Bauauftrag erstellt" + #: build/templates/build/build_base.html:101 #, python-format msgid "This Build Order is allocated to Sales Order %(link)s" @@ -1412,16 +1412,7 @@ msgstr "Auftrag" msgid "Issued By" msgstr "Aufgegeben von" -#: build/templates/build/build_base.html:230 -#: build/templates/build/sidebar.html:12 -msgid "Incomplete Outputs" -msgstr "Unfertige Endprodukte" - -#: build/templates/build/build_base.html:231 -msgid "Build Order cannot be completed as incomplete build outputs remain" -msgstr "Bauauftrag kann nicht abgeschlossen werden, da es noch unvollständige Endprodukte gibt" - -#: build/templates/build/build_base.html:257 +#: build/templates/build/build_base.html:245 msgid "Delete Build Order" msgstr "Bauauftrag löschen" @@ -1617,6 +1608,10 @@ msgstr "Bauaufträge ausdrucken" msgid "Build Order Details" msgstr "Bauauftragdetails" +#: build/templates/build/sidebar.html:12 +msgid "Incomplete Outputs" +msgstr "Unfertige Endprodukte" + #: build/templates/build/sidebar.html:15 msgid "Completed Outputs" msgstr "Fertiggestellte Endprodukte" diff --git a/InvenTree/locale/el/LC_MESSAGES/django.po b/InvenTree/locale/el/LC_MESSAGES/django.po index 471b09711b..5fd55fca41 100644 --- a/InvenTree/locale/el/LC_MESSAGES/django.po +++ b/InvenTree/locale/el/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-10 11:38+0000\n" -"PO-Revision-Date: 2022-08-10 13:23\n" +"POT-Creation-Date: 2022-08-11 02:47+0000\n" +"PO-Revision-Date: 2022-08-11 13:49\n" "Last-Translator: \n" "Language-Team: Greek\n" "Language: el_GR\n" @@ -816,7 +816,7 @@ msgstr "" msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:213 build/serializers.py:803 +#: build/models.py:213 build/serializers.py:800 #: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873 msgid "Source Location" msgstr "" @@ -977,7 +977,7 @@ msgstr "" msgid "Build to allocate parts" msgstr "" -#: build/models.py:1345 build/serializers.py:648 order/serializers.py:1015 +#: build/models.py:1345 build/serializers.py:645 order/serializers.py:1015 #: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 #: stock/serializers.py:880 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 @@ -1045,7 +1045,7 @@ msgstr "" msgid "Destination stock item" msgstr "" -#: build/serializers.py:138 build/serializers.py:677 +#: build/serializers.py:138 build/serializers.py:674 #: templates/js/translated/build.js:1166 msgid "Build Output" msgstr "" @@ -1070,7 +1070,7 @@ msgstr "" msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:208 build/serializers.py:668 order/models.py:318 +#: build/serializers.py:208 build/serializers.py:665 order/models.py:318 #: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 #: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 #: stock/serializers.py:302 @@ -1212,77 +1212,73 @@ msgstr "" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:550 build/templates/build/build_base.html:95 -msgid "No build outputs have been created for this build order" -msgstr "" - -#: build/serializers.py:580 build/serializers.py:625 part/models.py:2719 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2719 #: part/models.py:2853 msgid "BOM Item" msgstr "" -#: build/serializers.py:590 +#: build/serializers.py:587 msgid "Build output" msgstr "" -#: build/serializers.py:598 +#: build/serializers.py:595 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:639 +#: build/serializers.py:636 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:654 stock/serializers.py:767 +#: build/serializers.py:651 stock/serializers.py:767 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:712 order/serializers.py:1073 +#: build/serializers.py:709 order/serializers.py:1073 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:718 +#: build/serializers.py:715 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:725 +#: build/serializers.py:722 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:730 +#: build/serializers.py:727 msgid "This stock item has already been allocated to this build output" msgstr "" -#: build/serializers.py:753 order/serializers.py:1319 +#: build/serializers.py:750 order/serializers.py:1319 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:804 +#: build/serializers.py:801 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:812 +#: build/serializers.py:809 msgid "Exclude Location" msgstr "" -#: build/serializers.py:813 +#: build/serializers.py:810 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:818 +#: build/serializers.py:815 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:819 +#: build/serializers.py:816 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:824 +#: build/serializers.py:821 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:825 +#: build/serializers.py:822 msgid "Allow allocation of substitute parts" msgstr "" @@ -1334,6 +1330,10 @@ msgstr "" msgid "Build Description" msgstr "" +#: build/templates/build/build_base.html:95 +msgid "No build outputs have been created for this build order" +msgstr "" + #: build/templates/build/build_base.html:101 #, python-format msgid "This Build Order is allocated to Sales Order %(link)s" @@ -1412,16 +1412,7 @@ msgstr "" msgid "Issued By" msgstr "" -#: build/templates/build/build_base.html:230 -#: build/templates/build/sidebar.html:12 -msgid "Incomplete Outputs" -msgstr "" - -#: build/templates/build/build_base.html:231 -msgid "Build Order cannot be completed as incomplete build outputs remain" -msgstr "" - -#: build/templates/build/build_base.html:257 +#: build/templates/build/build_base.html:245 msgid "Delete Build Order" msgstr "" @@ -1617,6 +1608,10 @@ msgstr "" msgid "Build Order Details" msgstr "" +#: build/templates/build/sidebar.html:12 +msgid "Incomplete Outputs" +msgstr "" + #: build/templates/build/sidebar.html:15 msgid "Completed Outputs" msgstr "" diff --git a/InvenTree/locale/en/LC_MESSAGES/django.po b/InvenTree/locale/en/LC_MESSAGES/django.po index b58048382b..c606e14f18 100644 --- a/InvenTree/locale/en/LC_MESSAGES/django.po +++ b/InvenTree/locale/en/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-09 06:07+0000\n" +"POT-Creation-Date: 2022-08-11 02:47+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -817,7 +817,7 @@ msgstr "" msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:213 build/serializers.py:784 +#: build/models.py:213 build/serializers.py:800 #: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873 msgid "Source Location" msgstr "" @@ -943,42 +943,42 @@ msgstr "" msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:1143 +#: build/models.py:1171 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "" -#: build/models.py:1152 +#: build/models.py:1180 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "" -#: build/models.py:1162 order/models.py:1379 +#: build/models.py:1190 order/models.py:1379 msgid "Stock item is over-allocated" msgstr "" -#: build/models.py:1168 order/models.py:1382 +#: build/models.py:1196 order/models.py:1382 msgid "Allocation quantity must be greater than zero" msgstr "" -#: build/models.py:1174 +#: build/models.py:1202 msgid "Quantity must be 1 for serialized stock" msgstr "" -#: build/models.py:1231 +#: build/models.py:1259 msgid "Selected stock item not found in BOM" msgstr "" -#: build/models.py:1300 stock/templates/stock/item_base.html:177 +#: build/models.py:1328 stock/templates/stock/item_base.html:177 #: templates/InvenTree/search.html:137 templates/js/translated/build.js:2455 #: templates/navbar.html:38 msgid "Build" msgstr "" -#: build/models.py:1301 +#: build/models.py:1329 msgid "Build to allocate parts" msgstr "" -#: build/models.py:1317 build/serializers.py:629 order/serializers.py:1015 +#: build/models.py:1345 build/serializers.py:645 order/serializers.py:1015 #: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 #: stock/serializers.py:880 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 @@ -993,11 +993,11 @@ msgstr "" msgid "Stock Item" msgstr "" -#: build/models.py:1318 +#: build/models.py:1346 msgid "Source stock item" msgstr "" -#: build/models.py:1330 build/serializers.py:193 +#: build/models.py:1358 build/serializers.py:193 #: build/templates/build/build_base.html:82 #: build/templates/build/detail.html:34 common/models.py:1678 #: company/templates/company/supplier_part.html:279 order/models.py:897 @@ -1034,19 +1034,19 @@ msgstr "" msgid "Quantity" msgstr "" -#: build/models.py:1331 +#: build/models.py:1359 msgid "Stock quantity to allocate to build" msgstr "" -#: build/models.py:1339 +#: build/models.py:1367 msgid "Install into" msgstr "" -#: build/models.py:1340 +#: build/models.py:1368 msgid "Destination stock item" msgstr "" -#: build/serializers.py:138 build/serializers.py:658 +#: build/serializers.py:138 build/serializers.py:674 #: templates/js/translated/build.js:1166 msgid "Build Output" msgstr "" @@ -1071,7 +1071,7 @@ msgstr "" msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:208 build/serializers.py:649 order/models.py:318 +#: build/serializers.py:208 build/serializers.py:665 order/models.py:318 #: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 #: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 #: stock/serializers.py:302 @@ -1165,117 +1165,121 @@ msgstr "" msgid "Delete any build outputs which have not been completed" msgstr "" -#: build/serializers.py:480 -msgid "Accept Overallocated" +#: build/serializers.py:485 +msgid "Accept as consumed by this build order" msgstr "" -#: build/serializers.py:481 -msgid "Accept stock items which have been overallocated to this build order" +#: build/serializers.py:486 +msgid "Deallocate before completing this build order" msgstr "" -#: build/serializers.py:491 -msgid "Some stock items have been overallocated" +#: build/serializers.py:494 +msgid "Overallocated Stock" msgstr "" #: build/serializers.py:496 +msgid "How do you want to handle extra stock items assigned to the build order" +msgstr "" + +#: build/serializers.py:506 +msgid "Some stock items have been overallocated" +msgstr "" + +#: build/serializers.py:511 msgid "Accept Unallocated" msgstr "" -#: build/serializers.py:497 +#: build/serializers.py:512 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:507 templates/js/translated/build.js:195 +#: build/serializers.py:522 templates/js/translated/build.js:195 msgid "Required stock has not been fully allocated" msgstr "" -#: build/serializers.py:512 +#: build/serializers.py:527 msgid "Accept Incomplete" msgstr "" -#: build/serializers.py:513 +#: build/serializers.py:528 msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:523 templates/js/translated/build.js:199 +#: build/serializers.py:538 templates/js/translated/build.js:199 msgid "Required build quantity has not been completed" msgstr "" -#: build/serializers.py:532 +#: build/serializers.py:547 msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:535 build/templates/build/build_base.html:95 -msgid "No build outputs have been created for this build order" -msgstr "" - -#: build/serializers.py:561 build/serializers.py:606 part/models.py:2719 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2719 #: part/models.py:2853 msgid "BOM Item" msgstr "" -#: build/serializers.py:571 +#: build/serializers.py:587 msgid "Build output" msgstr "" -#: build/serializers.py:579 +#: build/serializers.py:595 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:620 +#: build/serializers.py:636 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:635 stock/serializers.py:767 +#: build/serializers.py:651 stock/serializers.py:767 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:693 order/serializers.py:1073 +#: build/serializers.py:709 order/serializers.py:1073 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:699 +#: build/serializers.py:715 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:706 +#: build/serializers.py:722 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:711 +#: build/serializers.py:727 msgid "This stock item has already been allocated to this build output" msgstr "" -#: build/serializers.py:734 order/serializers.py:1319 +#: build/serializers.py:750 order/serializers.py:1319 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:785 +#: build/serializers.py:801 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:793 +#: build/serializers.py:809 msgid "Exclude Location" msgstr "" -#: build/serializers.py:794 +#: build/serializers.py:810 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:799 +#: build/serializers.py:815 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:800 +#: build/serializers.py:816 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:805 +#: build/serializers.py:821 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:806 +#: build/serializers.py:822 msgid "Allow allocation of substitute parts" msgstr "" @@ -1327,6 +1331,10 @@ msgstr "" msgid "Build Description" msgstr "" +#: build/templates/build/build_base.html:95 +msgid "No build outputs have been created for this build order" +msgstr "" + #: build/templates/build/build_base.html:101 #, python-format msgid "This Build Order is allocated to Sales Order %(link)s" @@ -1405,16 +1413,7 @@ msgstr "" msgid "Issued By" msgstr "" -#: build/templates/build/build_base.html:230 -#: build/templates/build/sidebar.html:12 -msgid "Incomplete Outputs" -msgstr "" - -#: build/templates/build/build_base.html:231 -msgid "Build Order cannot be completed as incomplete build outputs remain" -msgstr "" - -#: build/templates/build/build_base.html:257 +#: build/templates/build/build_base.html:245 msgid "Delete Build Order" msgstr "" @@ -1610,6 +1609,10 @@ msgstr "" msgid "Build Order Details" msgstr "" +#: build/templates/build/sidebar.html:12 +msgid "Incomplete Outputs" +msgstr "" + #: build/templates/build/sidebar.html:15 msgid "Completed Outputs" msgstr "" diff --git a/InvenTree/locale/es/LC_MESSAGES/django.po b/InvenTree/locale/es/LC_MESSAGES/django.po index 4c858dd9d8..3cf74169cb 100644 --- a/InvenTree/locale/es/LC_MESSAGES/django.po +++ b/InvenTree/locale/es/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-10 11:38+0000\n" -"PO-Revision-Date: 2022-08-10 13:22\n" +"POT-Creation-Date: 2022-08-11 02:47+0000\n" +"PO-Revision-Date: 2022-08-11 13:49\n" "Last-Translator: \n" "Language-Team: Spanish\n" "Language: es_ES\n" @@ -816,7 +816,7 @@ msgstr "" msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:213 build/serializers.py:803 +#: build/models.py:213 build/serializers.py:800 #: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873 msgid "Source Location" msgstr "" @@ -977,7 +977,7 @@ msgstr "" msgid "Build to allocate parts" msgstr "" -#: build/models.py:1345 build/serializers.py:648 order/serializers.py:1015 +#: build/models.py:1345 build/serializers.py:645 order/serializers.py:1015 #: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 #: stock/serializers.py:880 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 @@ -1045,7 +1045,7 @@ msgstr "" msgid "Destination stock item" msgstr "" -#: build/serializers.py:138 build/serializers.py:677 +#: build/serializers.py:138 build/serializers.py:674 #: templates/js/translated/build.js:1166 msgid "Build Output" msgstr "" @@ -1070,7 +1070,7 @@ msgstr "" msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:208 build/serializers.py:668 order/models.py:318 +#: build/serializers.py:208 build/serializers.py:665 order/models.py:318 #: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 #: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 #: stock/serializers.py:302 @@ -1212,77 +1212,73 @@ msgstr "" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:550 build/templates/build/build_base.html:95 -msgid "No build outputs have been created for this build order" -msgstr "" - -#: build/serializers.py:580 build/serializers.py:625 part/models.py:2719 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2719 #: part/models.py:2853 msgid "BOM Item" msgstr "" -#: build/serializers.py:590 +#: build/serializers.py:587 msgid "Build output" msgstr "" -#: build/serializers.py:598 +#: build/serializers.py:595 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:639 +#: build/serializers.py:636 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:654 stock/serializers.py:767 +#: build/serializers.py:651 stock/serializers.py:767 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:712 order/serializers.py:1073 +#: build/serializers.py:709 order/serializers.py:1073 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:718 +#: build/serializers.py:715 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:725 +#: build/serializers.py:722 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:730 +#: build/serializers.py:727 msgid "This stock item has already been allocated to this build output" msgstr "" -#: build/serializers.py:753 order/serializers.py:1319 +#: build/serializers.py:750 order/serializers.py:1319 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:804 +#: build/serializers.py:801 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:812 +#: build/serializers.py:809 msgid "Exclude Location" msgstr "" -#: build/serializers.py:813 +#: build/serializers.py:810 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:818 +#: build/serializers.py:815 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:819 +#: build/serializers.py:816 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:824 +#: build/serializers.py:821 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:825 +#: build/serializers.py:822 msgid "Allow allocation of substitute parts" msgstr "" @@ -1334,6 +1330,10 @@ msgstr "" msgid "Build Description" msgstr "" +#: build/templates/build/build_base.html:95 +msgid "No build outputs have been created for this build order" +msgstr "" + #: build/templates/build/build_base.html:101 #, python-format msgid "This Build Order is allocated to Sales Order %(link)s" @@ -1412,16 +1412,7 @@ msgstr "" msgid "Issued By" msgstr "" -#: build/templates/build/build_base.html:230 -#: build/templates/build/sidebar.html:12 -msgid "Incomplete Outputs" -msgstr "" - -#: build/templates/build/build_base.html:231 -msgid "Build Order cannot be completed as incomplete build outputs remain" -msgstr "" - -#: build/templates/build/build_base.html:257 +#: build/templates/build/build_base.html:245 msgid "Delete Build Order" msgstr "" @@ -1617,6 +1608,10 @@ msgstr "" msgid "Build Order Details" msgstr "" +#: build/templates/build/sidebar.html:12 +msgid "Incomplete Outputs" +msgstr "" + #: build/templates/build/sidebar.html:15 msgid "Completed Outputs" msgstr "" diff --git a/InvenTree/locale/es_MX/LC_MESSAGES/django.po b/InvenTree/locale/es_MX/LC_MESSAGES/django.po index b58048382b..c606e14f18 100644 --- a/InvenTree/locale/es_MX/LC_MESSAGES/django.po +++ b/InvenTree/locale/es_MX/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-09 06:07+0000\n" +"POT-Creation-Date: 2022-08-11 02:47+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -817,7 +817,7 @@ msgstr "" msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:213 build/serializers.py:784 +#: build/models.py:213 build/serializers.py:800 #: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873 msgid "Source Location" msgstr "" @@ -943,42 +943,42 @@ msgstr "" msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:1143 +#: build/models.py:1171 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "" -#: build/models.py:1152 +#: build/models.py:1180 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "" -#: build/models.py:1162 order/models.py:1379 +#: build/models.py:1190 order/models.py:1379 msgid "Stock item is over-allocated" msgstr "" -#: build/models.py:1168 order/models.py:1382 +#: build/models.py:1196 order/models.py:1382 msgid "Allocation quantity must be greater than zero" msgstr "" -#: build/models.py:1174 +#: build/models.py:1202 msgid "Quantity must be 1 for serialized stock" msgstr "" -#: build/models.py:1231 +#: build/models.py:1259 msgid "Selected stock item not found in BOM" msgstr "" -#: build/models.py:1300 stock/templates/stock/item_base.html:177 +#: build/models.py:1328 stock/templates/stock/item_base.html:177 #: templates/InvenTree/search.html:137 templates/js/translated/build.js:2455 #: templates/navbar.html:38 msgid "Build" msgstr "" -#: build/models.py:1301 +#: build/models.py:1329 msgid "Build to allocate parts" msgstr "" -#: build/models.py:1317 build/serializers.py:629 order/serializers.py:1015 +#: build/models.py:1345 build/serializers.py:645 order/serializers.py:1015 #: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 #: stock/serializers.py:880 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 @@ -993,11 +993,11 @@ msgstr "" msgid "Stock Item" msgstr "" -#: build/models.py:1318 +#: build/models.py:1346 msgid "Source stock item" msgstr "" -#: build/models.py:1330 build/serializers.py:193 +#: build/models.py:1358 build/serializers.py:193 #: build/templates/build/build_base.html:82 #: build/templates/build/detail.html:34 common/models.py:1678 #: company/templates/company/supplier_part.html:279 order/models.py:897 @@ -1034,19 +1034,19 @@ msgstr "" msgid "Quantity" msgstr "" -#: build/models.py:1331 +#: build/models.py:1359 msgid "Stock quantity to allocate to build" msgstr "" -#: build/models.py:1339 +#: build/models.py:1367 msgid "Install into" msgstr "" -#: build/models.py:1340 +#: build/models.py:1368 msgid "Destination stock item" msgstr "" -#: build/serializers.py:138 build/serializers.py:658 +#: build/serializers.py:138 build/serializers.py:674 #: templates/js/translated/build.js:1166 msgid "Build Output" msgstr "" @@ -1071,7 +1071,7 @@ msgstr "" msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:208 build/serializers.py:649 order/models.py:318 +#: build/serializers.py:208 build/serializers.py:665 order/models.py:318 #: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 #: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 #: stock/serializers.py:302 @@ -1165,117 +1165,121 @@ msgstr "" msgid "Delete any build outputs which have not been completed" msgstr "" -#: build/serializers.py:480 -msgid "Accept Overallocated" +#: build/serializers.py:485 +msgid "Accept as consumed by this build order" msgstr "" -#: build/serializers.py:481 -msgid "Accept stock items which have been overallocated to this build order" +#: build/serializers.py:486 +msgid "Deallocate before completing this build order" msgstr "" -#: build/serializers.py:491 -msgid "Some stock items have been overallocated" +#: build/serializers.py:494 +msgid "Overallocated Stock" msgstr "" #: build/serializers.py:496 +msgid "How do you want to handle extra stock items assigned to the build order" +msgstr "" + +#: build/serializers.py:506 +msgid "Some stock items have been overallocated" +msgstr "" + +#: build/serializers.py:511 msgid "Accept Unallocated" msgstr "" -#: build/serializers.py:497 +#: build/serializers.py:512 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:507 templates/js/translated/build.js:195 +#: build/serializers.py:522 templates/js/translated/build.js:195 msgid "Required stock has not been fully allocated" msgstr "" -#: build/serializers.py:512 +#: build/serializers.py:527 msgid "Accept Incomplete" msgstr "" -#: build/serializers.py:513 +#: build/serializers.py:528 msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:523 templates/js/translated/build.js:199 +#: build/serializers.py:538 templates/js/translated/build.js:199 msgid "Required build quantity has not been completed" msgstr "" -#: build/serializers.py:532 +#: build/serializers.py:547 msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:535 build/templates/build/build_base.html:95 -msgid "No build outputs have been created for this build order" -msgstr "" - -#: build/serializers.py:561 build/serializers.py:606 part/models.py:2719 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2719 #: part/models.py:2853 msgid "BOM Item" msgstr "" -#: build/serializers.py:571 +#: build/serializers.py:587 msgid "Build output" msgstr "" -#: build/serializers.py:579 +#: build/serializers.py:595 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:620 +#: build/serializers.py:636 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:635 stock/serializers.py:767 +#: build/serializers.py:651 stock/serializers.py:767 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:693 order/serializers.py:1073 +#: build/serializers.py:709 order/serializers.py:1073 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:699 +#: build/serializers.py:715 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:706 +#: build/serializers.py:722 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:711 +#: build/serializers.py:727 msgid "This stock item has already been allocated to this build output" msgstr "" -#: build/serializers.py:734 order/serializers.py:1319 +#: build/serializers.py:750 order/serializers.py:1319 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:785 +#: build/serializers.py:801 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:793 +#: build/serializers.py:809 msgid "Exclude Location" msgstr "" -#: build/serializers.py:794 +#: build/serializers.py:810 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:799 +#: build/serializers.py:815 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:800 +#: build/serializers.py:816 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:805 +#: build/serializers.py:821 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:806 +#: build/serializers.py:822 msgid "Allow allocation of substitute parts" msgstr "" @@ -1327,6 +1331,10 @@ msgstr "" msgid "Build Description" msgstr "" +#: build/templates/build/build_base.html:95 +msgid "No build outputs have been created for this build order" +msgstr "" + #: build/templates/build/build_base.html:101 #, python-format msgid "This Build Order is allocated to Sales Order %(link)s" @@ -1405,16 +1413,7 @@ msgstr "" msgid "Issued By" msgstr "" -#: build/templates/build/build_base.html:230 -#: build/templates/build/sidebar.html:12 -msgid "Incomplete Outputs" -msgstr "" - -#: build/templates/build/build_base.html:231 -msgid "Build Order cannot be completed as incomplete build outputs remain" -msgstr "" - -#: build/templates/build/build_base.html:257 +#: build/templates/build/build_base.html:245 msgid "Delete Build Order" msgstr "" @@ -1610,6 +1609,10 @@ msgstr "" msgid "Build Order Details" msgstr "" +#: build/templates/build/sidebar.html:12 +msgid "Incomplete Outputs" +msgstr "" + #: build/templates/build/sidebar.html:15 msgid "Completed Outputs" msgstr "" diff --git a/InvenTree/locale/fa/LC_MESSAGES/django.po b/InvenTree/locale/fa/LC_MESSAGES/django.po index 8aec6e43c7..74875782ba 100644 --- a/InvenTree/locale/fa/LC_MESSAGES/django.po +++ b/InvenTree/locale/fa/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-10 11:38+0000\n" -"PO-Revision-Date: 2022-08-10 13:22\n" +"POT-Creation-Date: 2022-08-11 02:47+0000\n" +"PO-Revision-Date: 2022-08-11 13:49\n" "Last-Translator: \n" "Language-Team: Persian\n" "Language: fa_IR\n" @@ -816,7 +816,7 @@ msgstr "" msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:213 build/serializers.py:803 +#: build/models.py:213 build/serializers.py:800 #: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873 msgid "Source Location" msgstr "" @@ -977,7 +977,7 @@ msgstr "" msgid "Build to allocate parts" msgstr "" -#: build/models.py:1345 build/serializers.py:648 order/serializers.py:1015 +#: build/models.py:1345 build/serializers.py:645 order/serializers.py:1015 #: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 #: stock/serializers.py:880 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 @@ -1045,7 +1045,7 @@ msgstr "" msgid "Destination stock item" msgstr "" -#: build/serializers.py:138 build/serializers.py:677 +#: build/serializers.py:138 build/serializers.py:674 #: templates/js/translated/build.js:1166 msgid "Build Output" msgstr "" @@ -1070,7 +1070,7 @@ msgstr "" msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:208 build/serializers.py:668 order/models.py:318 +#: build/serializers.py:208 build/serializers.py:665 order/models.py:318 #: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 #: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 #: stock/serializers.py:302 @@ -1212,77 +1212,73 @@ msgstr "" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:550 build/templates/build/build_base.html:95 -msgid "No build outputs have been created for this build order" -msgstr "" - -#: build/serializers.py:580 build/serializers.py:625 part/models.py:2719 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2719 #: part/models.py:2853 msgid "BOM Item" msgstr "" -#: build/serializers.py:590 +#: build/serializers.py:587 msgid "Build output" msgstr "" -#: build/serializers.py:598 +#: build/serializers.py:595 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:639 +#: build/serializers.py:636 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:654 stock/serializers.py:767 +#: build/serializers.py:651 stock/serializers.py:767 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:712 order/serializers.py:1073 +#: build/serializers.py:709 order/serializers.py:1073 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:718 +#: build/serializers.py:715 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:725 +#: build/serializers.py:722 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:730 +#: build/serializers.py:727 msgid "This stock item has already been allocated to this build output" msgstr "" -#: build/serializers.py:753 order/serializers.py:1319 +#: build/serializers.py:750 order/serializers.py:1319 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:804 +#: build/serializers.py:801 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:812 +#: build/serializers.py:809 msgid "Exclude Location" msgstr "" -#: build/serializers.py:813 +#: build/serializers.py:810 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:818 +#: build/serializers.py:815 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:819 +#: build/serializers.py:816 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:824 +#: build/serializers.py:821 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:825 +#: build/serializers.py:822 msgid "Allow allocation of substitute parts" msgstr "" @@ -1334,6 +1330,10 @@ msgstr "" msgid "Build Description" msgstr "" +#: build/templates/build/build_base.html:95 +msgid "No build outputs have been created for this build order" +msgstr "" + #: build/templates/build/build_base.html:101 #, python-format msgid "This Build Order is allocated to Sales Order %(link)s" @@ -1412,16 +1412,7 @@ msgstr "" msgid "Issued By" msgstr "" -#: build/templates/build/build_base.html:230 -#: build/templates/build/sidebar.html:12 -msgid "Incomplete Outputs" -msgstr "" - -#: build/templates/build/build_base.html:231 -msgid "Build Order cannot be completed as incomplete build outputs remain" -msgstr "" - -#: build/templates/build/build_base.html:257 +#: build/templates/build/build_base.html:245 msgid "Delete Build Order" msgstr "" @@ -1617,6 +1608,10 @@ msgstr "" msgid "Build Order Details" msgstr "" +#: build/templates/build/sidebar.html:12 +msgid "Incomplete Outputs" +msgstr "" + #: build/templates/build/sidebar.html:15 msgid "Completed Outputs" msgstr "" diff --git a/InvenTree/locale/fr/LC_MESSAGES/django.po b/InvenTree/locale/fr/LC_MESSAGES/django.po index fedbd229c1..80ed8f0069 100644 --- a/InvenTree/locale/fr/LC_MESSAGES/django.po +++ b/InvenTree/locale/fr/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-10 11:38+0000\n" -"PO-Revision-Date: 2022-08-10 13:22\n" +"POT-Creation-Date: 2022-08-11 02:47+0000\n" +"PO-Revision-Date: 2022-08-11 13:49\n" "Last-Translator: \n" "Language-Team: French\n" "Language: fr_FR\n" @@ -816,7 +816,7 @@ msgstr "Bon de commande de référence" msgid "SalesOrder to which this build is allocated" msgstr "Commande de vente à laquelle cette construction est allouée" -#: build/models.py:213 build/serializers.py:803 +#: build/models.py:213 build/serializers.py:800 #: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873 msgid "Source Location" msgstr "Emplacement d'origine" @@ -977,7 +977,7 @@ msgstr "Assemblage" msgid "Build to allocate parts" msgstr "Construction à laquelle allouer des pièces" -#: build/models.py:1345 build/serializers.py:648 order/serializers.py:1015 +#: build/models.py:1345 build/serializers.py:645 order/serializers.py:1015 #: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 #: stock/serializers.py:880 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 @@ -1045,7 +1045,7 @@ msgstr "Installer dans" msgid "Destination stock item" msgstr "Stock de destination de l'article" -#: build/serializers.py:138 build/serializers.py:677 +#: build/serializers.py:138 build/serializers.py:674 #: templates/js/translated/build.js:1166 msgid "Build Output" msgstr "Sortie d'assemblage" @@ -1070,7 +1070,7 @@ msgstr "Cet ordre de production n'est pas complètement attribué" msgid "Enter quantity for build output" msgstr "Entrer la quantité désiré pour la fabrication" -#: build/serializers.py:208 build/serializers.py:668 order/models.py:318 +#: build/serializers.py:208 build/serializers.py:665 order/models.py:318 #: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 #: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 #: stock/serializers.py:302 @@ -1212,77 +1212,73 @@ msgstr "La quantité nécessaire n'a pas encore été complétée" msgid "Build order has incomplete outputs" msgstr "L'ordre de production a des sorties incomplètes" -#: build/serializers.py:550 build/templates/build/build_base.html:95 -msgid "No build outputs have been created for this build order" -msgstr "Aucune sortie de construction n'a été créée pour cet ordre de construction" - -#: build/serializers.py:580 build/serializers.py:625 part/models.py:2719 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2719 #: part/models.py:2853 msgid "BOM Item" msgstr "Article de la nomenclature" -#: build/serializers.py:590 +#: build/serializers.py:587 msgid "Build output" msgstr "Sortie d'assemblage" -#: build/serializers.py:598 +#: build/serializers.py:595 msgid "Build output must point to the same build" msgstr "La sortie de la construction doit pointer vers la même version" -#: build/serializers.py:639 +#: build/serializers.py:636 msgid "bom_item.part must point to the same part as the build order" msgstr "bom_item.part doit pointer sur la même pièce que l'ordre de construction" -#: build/serializers.py:654 stock/serializers.py:767 +#: build/serializers.py:651 stock/serializers.py:767 msgid "Item must be in stock" msgstr "L'article doit être en stock" -#: build/serializers.py:712 order/serializers.py:1073 +#: build/serializers.py:709 order/serializers.py:1073 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "Quantité disponible ({q}) dépassée" -#: build/serializers.py:718 +#: build/serializers.py:715 msgid "Build output must be specified for allocation of tracked parts" msgstr "La sortie de construction doit être spécifiée pour l'allocation des pièces tracées" -#: build/serializers.py:725 +#: build/serializers.py:722 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "La sortie de la compilation ne peut pas être spécifiée pour l'allocation des pièces non suivies" -#: build/serializers.py:730 +#: build/serializers.py:727 msgid "This stock item has already been allocated to this build output" msgstr "Cet article de stock a déjà été alloué à cette sortie de construction" -#: build/serializers.py:753 order/serializers.py:1319 +#: build/serializers.py:750 order/serializers.py:1319 msgid "Allocation items must be provided" msgstr "Les éléments d'allocation doivent être fournis" -#: build/serializers.py:804 +#: build/serializers.py:801 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "Emplacement de stock où les pièces doivent être fournies (laisser vide pour les prendre à partir de n'importe quel endroit)" -#: build/serializers.py:812 +#: build/serializers.py:809 msgid "Exclude Location" msgstr "Emplacements exclus" -#: build/serializers.py:813 +#: build/serializers.py:810 msgid "Exclude stock items from this selected location" msgstr "Exclure les articles en stock de cet emplacement sélectionné" -#: build/serializers.py:818 +#: build/serializers.py:815 msgid "Interchangeable Stock" msgstr "Stock interchangeable" -#: build/serializers.py:819 +#: build/serializers.py:816 msgid "Stock items in multiple locations can be used interchangeably" msgstr "Les articles en stock à plusieurs emplacements peuvent être utilisés de manière interchangeable" -#: build/serializers.py:824 +#: build/serializers.py:821 msgid "Substitute Stock" msgstr "Stock de substitution" -#: build/serializers.py:825 +#: build/serializers.py:822 msgid "Allow allocation of substitute parts" msgstr "Autoriser l'allocation des pièces de remplacement" @@ -1334,6 +1330,10 @@ msgstr "Compléter l'assemblage" msgid "Build Description" msgstr "Description de la construction" +#: build/templates/build/build_base.html:95 +msgid "No build outputs have been created for this build order" +msgstr "Aucune sortie de construction n'a été créée pour cet ordre de construction" + #: build/templates/build/build_base.html:101 #, python-format msgid "This Build Order is allocated to Sales Order %(link)s" @@ -1412,16 +1412,7 @@ msgstr "Commandes" msgid "Issued By" msgstr "Émis par" -#: build/templates/build/build_base.html:230 -#: build/templates/build/sidebar.html:12 -msgid "Incomplete Outputs" -msgstr "Sorties incomplètes" - -#: build/templates/build/build_base.html:231 -msgid "Build Order cannot be completed as incomplete build outputs remain" -msgstr "L'ordre de fabrication ne peut pas être achevé car il reste des outputs en suspens" - -#: build/templates/build/build_base.html:257 +#: build/templates/build/build_base.html:245 msgid "Delete Build Order" msgstr "Supprimer l'ordre de construction" @@ -1617,6 +1608,10 @@ msgstr "Imprimer les commandes de construction" msgid "Build Order Details" msgstr "Détails de la commande de construction" +#: build/templates/build/sidebar.html:12 +msgid "Incomplete Outputs" +msgstr "Sorties incomplètes" + #: build/templates/build/sidebar.html:15 msgid "Completed Outputs" msgstr "Sorties de Construction terminées" diff --git a/InvenTree/locale/he/LC_MESSAGES/django.po b/InvenTree/locale/he/LC_MESSAGES/django.po index cc1afec550..68e514d8ad 100644 --- a/InvenTree/locale/he/LC_MESSAGES/django.po +++ b/InvenTree/locale/he/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-10 11:38+0000\n" -"PO-Revision-Date: 2022-08-10 13:23\n" +"POT-Creation-Date: 2022-08-11 02:47+0000\n" +"PO-Revision-Date: 2022-08-11 13:49\n" "Last-Translator: \n" "Language-Team: Hebrew\n" "Language: he_IL\n" @@ -816,7 +816,7 @@ msgstr "" msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:213 build/serializers.py:803 +#: build/models.py:213 build/serializers.py:800 #: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873 msgid "Source Location" msgstr "" @@ -977,7 +977,7 @@ msgstr "" msgid "Build to allocate parts" msgstr "" -#: build/models.py:1345 build/serializers.py:648 order/serializers.py:1015 +#: build/models.py:1345 build/serializers.py:645 order/serializers.py:1015 #: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 #: stock/serializers.py:880 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 @@ -1045,7 +1045,7 @@ msgstr "" msgid "Destination stock item" msgstr "" -#: build/serializers.py:138 build/serializers.py:677 +#: build/serializers.py:138 build/serializers.py:674 #: templates/js/translated/build.js:1166 msgid "Build Output" msgstr "" @@ -1070,7 +1070,7 @@ msgstr "" msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:208 build/serializers.py:668 order/models.py:318 +#: build/serializers.py:208 build/serializers.py:665 order/models.py:318 #: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 #: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 #: stock/serializers.py:302 @@ -1212,77 +1212,73 @@ msgstr "" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:550 build/templates/build/build_base.html:95 -msgid "No build outputs have been created for this build order" -msgstr "" - -#: build/serializers.py:580 build/serializers.py:625 part/models.py:2719 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2719 #: part/models.py:2853 msgid "BOM Item" msgstr "" -#: build/serializers.py:590 +#: build/serializers.py:587 msgid "Build output" msgstr "" -#: build/serializers.py:598 +#: build/serializers.py:595 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:639 +#: build/serializers.py:636 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:654 stock/serializers.py:767 +#: build/serializers.py:651 stock/serializers.py:767 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:712 order/serializers.py:1073 +#: build/serializers.py:709 order/serializers.py:1073 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:718 +#: build/serializers.py:715 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:725 +#: build/serializers.py:722 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:730 +#: build/serializers.py:727 msgid "This stock item has already been allocated to this build output" msgstr "" -#: build/serializers.py:753 order/serializers.py:1319 +#: build/serializers.py:750 order/serializers.py:1319 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:804 +#: build/serializers.py:801 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:812 +#: build/serializers.py:809 msgid "Exclude Location" msgstr "" -#: build/serializers.py:813 +#: build/serializers.py:810 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:818 +#: build/serializers.py:815 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:819 +#: build/serializers.py:816 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:824 +#: build/serializers.py:821 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:825 +#: build/serializers.py:822 msgid "Allow allocation of substitute parts" msgstr "" @@ -1334,6 +1330,10 @@ msgstr "" msgid "Build Description" msgstr "" +#: build/templates/build/build_base.html:95 +msgid "No build outputs have been created for this build order" +msgstr "" + #: build/templates/build/build_base.html:101 #, python-format msgid "This Build Order is allocated to Sales Order %(link)s" @@ -1412,16 +1412,7 @@ msgstr "" msgid "Issued By" msgstr "" -#: build/templates/build/build_base.html:230 -#: build/templates/build/sidebar.html:12 -msgid "Incomplete Outputs" -msgstr "" - -#: build/templates/build/build_base.html:231 -msgid "Build Order cannot be completed as incomplete build outputs remain" -msgstr "" - -#: build/templates/build/build_base.html:257 +#: build/templates/build/build_base.html:245 msgid "Delete Build Order" msgstr "" @@ -1617,6 +1608,10 @@ msgstr "" msgid "Build Order Details" msgstr "" +#: build/templates/build/sidebar.html:12 +msgid "Incomplete Outputs" +msgstr "" + #: build/templates/build/sidebar.html:15 msgid "Completed Outputs" msgstr "" diff --git a/InvenTree/locale/hu/LC_MESSAGES/django.po b/InvenTree/locale/hu/LC_MESSAGES/django.po index f07bc7ba36..2f53b977cb 100644 --- a/InvenTree/locale/hu/LC_MESSAGES/django.po +++ b/InvenTree/locale/hu/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-10 11:38+0000\n" -"PO-Revision-Date: 2022-08-10 13:23\n" +"POT-Creation-Date: 2022-08-11 02:47+0000\n" +"PO-Revision-Date: 2022-08-11 13:49\n" "Last-Translator: \n" "Language-Team: Hungarian\n" "Language: hu_HU\n" @@ -816,7 +816,7 @@ msgstr "Vevői rendelés azonosító" msgid "SalesOrder to which this build is allocated" msgstr "Vevői rendelés amihez ez a gyártás hozzá van rendelve" -#: build/models.py:213 build/serializers.py:803 +#: build/models.py:213 build/serializers.py:800 #: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873 msgid "Source Location" msgstr "Forrás hely" @@ -977,7 +977,7 @@ msgstr "Gyártás" msgid "Build to allocate parts" msgstr "Gyártás amihez készletet foglaljunk" -#: build/models.py:1345 build/serializers.py:648 order/serializers.py:1015 +#: build/models.py:1345 build/serializers.py:645 order/serializers.py:1015 #: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 #: stock/serializers.py:880 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 @@ -1045,7 +1045,7 @@ msgstr "Beépítés ebbe" msgid "Destination stock item" msgstr "Cél készlet tétel" -#: build/serializers.py:138 build/serializers.py:677 +#: build/serializers.py:138 build/serializers.py:674 #: templates/js/translated/build.js:1166 msgid "Build Output" msgstr "Gyártás kimenet" @@ -1070,7 +1070,7 @@ msgstr "Ez a gyártási kimenet nincs teljesen lefoglalva" msgid "Enter quantity for build output" msgstr "Add meg a mennyiséget a gyártás kimenetéhez" -#: build/serializers.py:208 build/serializers.py:668 order/models.py:318 +#: build/serializers.py:208 build/serializers.py:665 order/models.py:318 #: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 #: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 #: stock/serializers.py:302 @@ -1213,77 +1213,73 @@ msgstr "Szükséges gyártási mennyiség nem lett elérve" msgid "Build order has incomplete outputs" msgstr "A gyártási utasítás befejezetlen kimeneteket tartalmaz" -#: build/serializers.py:550 build/templates/build/build_base.html:95 -msgid "No build outputs have been created for this build order" -msgstr "Ehhez a gyártási utasításhoz nem készült kimenet" - -#: build/serializers.py:580 build/serializers.py:625 part/models.py:2719 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2719 #: part/models.py:2853 msgid "BOM Item" msgstr "Alkatrészjegyzék tétel" -#: build/serializers.py:590 +#: build/serializers.py:587 msgid "Build output" msgstr "Gyártás kimenet" -#: build/serializers.py:598 +#: build/serializers.py:595 msgid "Build output must point to the same build" msgstr "A gyártási kimenetnek ugyanarra a gyártásra kell mutatnia" -#: build/serializers.py:639 +#: build/serializers.py:636 msgid "bom_item.part must point to the same part as the build order" msgstr "bom_item.part ugyanarra az alkatrészre kell mutasson mint a gyártási utasítás" -#: build/serializers.py:654 stock/serializers.py:767 +#: build/serializers.py:651 stock/serializers.py:767 msgid "Item must be in stock" msgstr "A tételnek kell legyen készlete" -#: build/serializers.py:712 order/serializers.py:1073 +#: build/serializers.py:709 order/serializers.py:1073 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "Rendelkezésre álló mennyiség ({q}) túllépve" -#: build/serializers.py:718 +#: build/serializers.py:715 msgid "Build output must be specified for allocation of tracked parts" msgstr "Gyártási kimenetet meg kell adni a követésre kötelezett alkatrészek lefoglalásához" -#: build/serializers.py:725 +#: build/serializers.py:722 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "Gyártási kimenetet nem lehet megadni a követésre kötelezett alkatrészek lefoglalásához" -#: build/serializers.py:730 +#: build/serializers.py:727 msgid "This stock item has already been allocated to this build output" msgstr "Ez a készlet tétel már le lett foglalva ehhez a gyártási kimenethez" -#: build/serializers.py:753 order/serializers.py:1319 +#: build/serializers.py:750 order/serializers.py:1319 msgid "Allocation items must be provided" msgstr "A lefoglalandó tételeket meg kell adni" -#: build/serializers.py:804 +#: build/serializers.py:801 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "Készlet hely ahonnan az alkatrészek származnak (hagyd üresen ha bárhonnan)" -#: build/serializers.py:812 +#: build/serializers.py:809 msgid "Exclude Location" msgstr "Hely kizárása" -#: build/serializers.py:813 +#: build/serializers.py:810 msgid "Exclude stock items from this selected location" msgstr "Készlet tételek kizárása erről a kiválasztott helyről" -#: build/serializers.py:818 +#: build/serializers.py:815 msgid "Interchangeable Stock" msgstr "Felcserélhető készlet" -#: build/serializers.py:819 +#: build/serializers.py:816 msgid "Stock items in multiple locations can be used interchangeably" msgstr "A különböző helyeken lévő készlet egyenrangúan felhasználható" -#: build/serializers.py:824 +#: build/serializers.py:821 msgid "Substitute Stock" msgstr "Készlet helyettesítés" -#: build/serializers.py:825 +#: build/serializers.py:822 msgid "Allow allocation of substitute parts" msgstr "Helyettesítő alkatrészek foglalásának engedélyezése" @@ -1335,6 +1331,10 @@ msgstr "Gyártás befejezése" msgid "Build Description" msgstr "Gyártás leírása" +#: build/templates/build/build_base.html:95 +msgid "No build outputs have been created for this build order" +msgstr "Ehhez a gyártási utasításhoz nem készült kimenet" + #: build/templates/build/build_base.html:101 #, python-format msgid "This Build Order is allocated to Sales Order %(link)s" @@ -1413,16 +1413,7 @@ msgstr "Vevői rendelés" msgid "Issued By" msgstr "Kiállította" -#: build/templates/build/build_base.html:230 -#: build/templates/build/sidebar.html:12 -msgid "Incomplete Outputs" -msgstr "Befejezetlen kimenetek" - -#: build/templates/build/build_base.html:231 -msgid "Build Order cannot be completed as incomplete build outputs remain" -msgstr "Gyártási utasítás nem teljesíthető mivel befejezetlen kimenetek maradnak" - -#: build/templates/build/build_base.html:257 +#: build/templates/build/build_base.html:245 msgid "Delete Build Order" msgstr "Gyártási utasítás törlése" @@ -1618,6 +1609,10 @@ msgstr "Gyártási utasítások nyomtatása" msgid "Build Order Details" msgstr "Gyártási utasítás részletei" +#: build/templates/build/sidebar.html:12 +msgid "Incomplete Outputs" +msgstr "Befejezetlen kimenetek" + #: build/templates/build/sidebar.html:15 msgid "Completed Outputs" msgstr "Befejezett kimenetek" diff --git a/InvenTree/locale/id/LC_MESSAGES/django.po b/InvenTree/locale/id/LC_MESSAGES/django.po index ba32310449..d346876046 100644 --- a/InvenTree/locale/id/LC_MESSAGES/django.po +++ b/InvenTree/locale/id/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-10 11:38+0000\n" -"PO-Revision-Date: 2022-08-10 13:22\n" +"POT-Creation-Date: 2022-08-11 02:47+0000\n" +"PO-Revision-Date: 2022-08-11 13:49\n" "Last-Translator: \n" "Language-Team: Indonesian\n" "Language: id_ID\n" @@ -816,7 +816,7 @@ msgstr "" msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:213 build/serializers.py:803 +#: build/models.py:213 build/serializers.py:800 #: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873 msgid "Source Location" msgstr "" @@ -977,7 +977,7 @@ msgstr "" msgid "Build to allocate parts" msgstr "" -#: build/models.py:1345 build/serializers.py:648 order/serializers.py:1015 +#: build/models.py:1345 build/serializers.py:645 order/serializers.py:1015 #: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 #: stock/serializers.py:880 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 @@ -1045,7 +1045,7 @@ msgstr "" msgid "Destination stock item" msgstr "" -#: build/serializers.py:138 build/serializers.py:677 +#: build/serializers.py:138 build/serializers.py:674 #: templates/js/translated/build.js:1166 msgid "Build Output" msgstr "" @@ -1070,7 +1070,7 @@ msgstr "" msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:208 build/serializers.py:668 order/models.py:318 +#: build/serializers.py:208 build/serializers.py:665 order/models.py:318 #: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 #: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 #: stock/serializers.py:302 @@ -1212,77 +1212,73 @@ msgstr "" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:550 build/templates/build/build_base.html:95 -msgid "No build outputs have been created for this build order" -msgstr "" - -#: build/serializers.py:580 build/serializers.py:625 part/models.py:2719 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2719 #: part/models.py:2853 msgid "BOM Item" msgstr "" -#: build/serializers.py:590 +#: build/serializers.py:587 msgid "Build output" msgstr "" -#: build/serializers.py:598 +#: build/serializers.py:595 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:639 +#: build/serializers.py:636 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:654 stock/serializers.py:767 +#: build/serializers.py:651 stock/serializers.py:767 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:712 order/serializers.py:1073 +#: build/serializers.py:709 order/serializers.py:1073 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:718 +#: build/serializers.py:715 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:725 +#: build/serializers.py:722 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:730 +#: build/serializers.py:727 msgid "This stock item has already been allocated to this build output" msgstr "" -#: build/serializers.py:753 order/serializers.py:1319 +#: build/serializers.py:750 order/serializers.py:1319 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:804 +#: build/serializers.py:801 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:812 +#: build/serializers.py:809 msgid "Exclude Location" msgstr "" -#: build/serializers.py:813 +#: build/serializers.py:810 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:818 +#: build/serializers.py:815 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:819 +#: build/serializers.py:816 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:824 +#: build/serializers.py:821 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:825 +#: build/serializers.py:822 msgid "Allow allocation of substitute parts" msgstr "" @@ -1334,6 +1330,10 @@ msgstr "" msgid "Build Description" msgstr "" +#: build/templates/build/build_base.html:95 +msgid "No build outputs have been created for this build order" +msgstr "" + #: build/templates/build/build_base.html:101 #, python-format msgid "This Build Order is allocated to Sales Order %(link)s" @@ -1412,16 +1412,7 @@ msgstr "" msgid "Issued By" msgstr "" -#: build/templates/build/build_base.html:230 -#: build/templates/build/sidebar.html:12 -msgid "Incomplete Outputs" -msgstr "" - -#: build/templates/build/build_base.html:231 -msgid "Build Order cannot be completed as incomplete build outputs remain" -msgstr "" - -#: build/templates/build/build_base.html:257 +#: build/templates/build/build_base.html:245 msgid "Delete Build Order" msgstr "" @@ -1617,6 +1608,10 @@ msgstr "" msgid "Build Order Details" msgstr "" +#: build/templates/build/sidebar.html:12 +msgid "Incomplete Outputs" +msgstr "" + #: build/templates/build/sidebar.html:15 msgid "Completed Outputs" msgstr "" diff --git a/InvenTree/locale/it/LC_MESSAGES/django.po b/InvenTree/locale/it/LC_MESSAGES/django.po index da85e3d8c5..cff2ead383 100644 --- a/InvenTree/locale/it/LC_MESSAGES/django.po +++ b/InvenTree/locale/it/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-10 11:38+0000\n" -"PO-Revision-Date: 2022-08-10 13:22\n" +"POT-Creation-Date: 2022-08-11 02:47+0000\n" +"PO-Revision-Date: 2022-08-11 13:49\n" "Last-Translator: \n" "Language-Team: Italian\n" "Language: it_IT\n" @@ -816,7 +816,7 @@ msgstr "Numero di riferimento ordine di vendita" msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:213 build/serializers.py:803 +#: build/models.py:213 build/serializers.py:800 #: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873 msgid "Source Location" msgstr "Posizione Di Origine" @@ -977,7 +977,7 @@ msgstr "Produzione" msgid "Build to allocate parts" msgstr "" -#: build/models.py:1345 build/serializers.py:648 order/serializers.py:1015 +#: build/models.py:1345 build/serializers.py:645 order/serializers.py:1015 #: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 #: stock/serializers.py:880 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 @@ -1045,7 +1045,7 @@ msgstr "Installa in" msgid "Destination stock item" msgstr "Destinazione articolo in giacenza" -#: build/serializers.py:138 build/serializers.py:677 +#: build/serializers.py:138 build/serializers.py:674 #: templates/js/translated/build.js:1166 msgid "Build Output" msgstr "" @@ -1070,7 +1070,7 @@ msgstr "" msgid "Enter quantity for build output" msgstr "Inserisci la quantità per l'output di compilazione" -#: build/serializers.py:208 build/serializers.py:668 order/models.py:318 +#: build/serializers.py:208 build/serializers.py:665 order/models.py:318 #: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 #: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 #: stock/serializers.py:302 @@ -1212,77 +1212,73 @@ msgstr "" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:550 build/templates/build/build_base.html:95 -msgid "No build outputs have been created for this build order" -msgstr "" - -#: build/serializers.py:580 build/serializers.py:625 part/models.py:2719 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2719 #: part/models.py:2853 msgid "BOM Item" msgstr "Distinta base (Bom)" -#: build/serializers.py:590 +#: build/serializers.py:587 msgid "Build output" msgstr "" -#: build/serializers.py:598 +#: build/serializers.py:595 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:639 +#: build/serializers.py:636 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:654 stock/serializers.py:767 +#: build/serializers.py:651 stock/serializers.py:767 msgid "Item must be in stock" msgstr "L'articolo deve essere disponibile" -#: build/serializers.py:712 order/serializers.py:1073 +#: build/serializers.py:709 order/serializers.py:1073 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "Quantità disponibile ({q}) superata" -#: build/serializers.py:718 +#: build/serializers.py:715 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:725 +#: build/serializers.py:722 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:730 +#: build/serializers.py:727 msgid "This stock item has already been allocated to this build output" msgstr "" -#: build/serializers.py:753 order/serializers.py:1319 +#: build/serializers.py:750 order/serializers.py:1319 msgid "Allocation items must be provided" msgstr "Deve essere indicata l'allocazione dell'articolo" -#: build/serializers.py:804 +#: build/serializers.py:801 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:812 +#: build/serializers.py:809 msgid "Exclude Location" msgstr "" -#: build/serializers.py:813 +#: build/serializers.py:810 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:818 +#: build/serializers.py:815 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:819 +#: build/serializers.py:816 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:824 +#: build/serializers.py:821 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:825 +#: build/serializers.py:822 msgid "Allow allocation of substitute parts" msgstr "" @@ -1334,6 +1330,10 @@ msgstr "" msgid "Build Description" msgstr "" +#: build/templates/build/build_base.html:95 +msgid "No build outputs have been created for this build order" +msgstr "" + #: build/templates/build/build_base.html:101 #, python-format msgid "This Build Order is allocated to Sales Order %(link)s" @@ -1412,16 +1412,7 @@ msgstr "Ordini di Vendita" msgid "Issued By" msgstr "Inviato da" -#: build/templates/build/build_base.html:230 -#: build/templates/build/sidebar.html:12 -msgid "Incomplete Outputs" -msgstr "Output Incompleti" - -#: build/templates/build/build_base.html:231 -msgid "Build Order cannot be completed as incomplete build outputs remain" -msgstr "" - -#: build/templates/build/build_base.html:257 +#: build/templates/build/build_base.html:245 msgid "Delete Build Order" msgstr "Elimina Ordine Build" @@ -1617,6 +1608,10 @@ msgstr "" msgid "Build Order Details" msgstr "" +#: build/templates/build/sidebar.html:12 +msgid "Incomplete Outputs" +msgstr "Output Incompleti" + #: build/templates/build/sidebar.html:15 msgid "Completed Outputs" msgstr "" diff --git a/InvenTree/locale/ja/LC_MESSAGES/django.po b/InvenTree/locale/ja/LC_MESSAGES/django.po index 9b35c9e59d..bf6c8328e3 100644 --- a/InvenTree/locale/ja/LC_MESSAGES/django.po +++ b/InvenTree/locale/ja/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-10 11:38+0000\n" -"PO-Revision-Date: 2022-08-10 13:22\n" +"POT-Creation-Date: 2022-08-11 02:47+0000\n" +"PO-Revision-Date: 2022-08-11 13:49\n" "Last-Translator: \n" "Language-Team: Japanese\n" "Language: ja_JP\n" @@ -816,7 +816,7 @@ msgstr "" msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:213 build/serializers.py:803 +#: build/models.py:213 build/serializers.py:800 #: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873 msgid "Source Location" msgstr "" @@ -977,7 +977,7 @@ msgstr "" msgid "Build to allocate parts" msgstr "パーツを割り当てるためにビルドする" -#: build/models.py:1345 build/serializers.py:648 order/serializers.py:1015 +#: build/models.py:1345 build/serializers.py:645 order/serializers.py:1015 #: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 #: stock/serializers.py:880 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 @@ -1045,7 +1045,7 @@ msgstr "" msgid "Destination stock item" msgstr "" -#: build/serializers.py:138 build/serializers.py:677 +#: build/serializers.py:138 build/serializers.py:674 #: templates/js/translated/build.js:1166 msgid "Build Output" msgstr "" @@ -1070,7 +1070,7 @@ msgstr "" msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:208 build/serializers.py:668 order/models.py:318 +#: build/serializers.py:208 build/serializers.py:665 order/models.py:318 #: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 #: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 #: stock/serializers.py:302 @@ -1212,77 +1212,73 @@ msgstr "" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:550 build/templates/build/build_base.html:95 -msgid "No build outputs have been created for this build order" -msgstr "" - -#: build/serializers.py:580 build/serializers.py:625 part/models.py:2719 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2719 #: part/models.py:2853 msgid "BOM Item" msgstr "" -#: build/serializers.py:590 +#: build/serializers.py:587 msgid "Build output" msgstr "" -#: build/serializers.py:598 +#: build/serializers.py:595 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:639 +#: build/serializers.py:636 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:654 stock/serializers.py:767 +#: build/serializers.py:651 stock/serializers.py:767 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:712 order/serializers.py:1073 +#: build/serializers.py:709 order/serializers.py:1073 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:718 +#: build/serializers.py:715 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:725 +#: build/serializers.py:722 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:730 +#: build/serializers.py:727 msgid "This stock item has already been allocated to this build output" msgstr "" -#: build/serializers.py:753 order/serializers.py:1319 +#: build/serializers.py:750 order/serializers.py:1319 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:804 +#: build/serializers.py:801 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:812 +#: build/serializers.py:809 msgid "Exclude Location" msgstr "" -#: build/serializers.py:813 +#: build/serializers.py:810 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:818 +#: build/serializers.py:815 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:819 +#: build/serializers.py:816 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:824 +#: build/serializers.py:821 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:825 +#: build/serializers.py:822 msgid "Allow allocation of substitute parts" msgstr "" @@ -1334,6 +1330,10 @@ msgstr "" msgid "Build Description" msgstr "" +#: build/templates/build/build_base.html:95 +msgid "No build outputs have been created for this build order" +msgstr "" + #: build/templates/build/build_base.html:101 #, python-format msgid "This Build Order is allocated to Sales Order %(link)s" @@ -1412,16 +1412,7 @@ msgstr "" msgid "Issued By" msgstr "" -#: build/templates/build/build_base.html:230 -#: build/templates/build/sidebar.html:12 -msgid "Incomplete Outputs" -msgstr "" - -#: build/templates/build/build_base.html:231 -msgid "Build Order cannot be completed as incomplete build outputs remain" -msgstr "" - -#: build/templates/build/build_base.html:257 +#: build/templates/build/build_base.html:245 msgid "Delete Build Order" msgstr "" @@ -1617,6 +1608,10 @@ msgstr "" msgid "Build Order Details" msgstr "" +#: build/templates/build/sidebar.html:12 +msgid "Incomplete Outputs" +msgstr "" + #: build/templates/build/sidebar.html:15 msgid "Completed Outputs" msgstr "" diff --git a/InvenTree/locale/ko/LC_MESSAGES/django.po b/InvenTree/locale/ko/LC_MESSAGES/django.po index bada1d66a3..f2caec51b5 100644 --- a/InvenTree/locale/ko/LC_MESSAGES/django.po +++ b/InvenTree/locale/ko/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-10 11:38+0000\n" -"PO-Revision-Date: 2022-08-10 13:22\n" +"POT-Creation-Date: 2022-08-11 02:47+0000\n" +"PO-Revision-Date: 2022-08-11 13:49\n" "Last-Translator: \n" "Language-Team: Korean\n" "Language: ko_KR\n" @@ -816,7 +816,7 @@ msgstr "" msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:213 build/serializers.py:803 +#: build/models.py:213 build/serializers.py:800 #: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873 msgid "Source Location" msgstr "" @@ -977,7 +977,7 @@ msgstr "" msgid "Build to allocate parts" msgstr "" -#: build/models.py:1345 build/serializers.py:648 order/serializers.py:1015 +#: build/models.py:1345 build/serializers.py:645 order/serializers.py:1015 #: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 #: stock/serializers.py:880 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 @@ -1045,7 +1045,7 @@ msgstr "" msgid "Destination stock item" msgstr "" -#: build/serializers.py:138 build/serializers.py:677 +#: build/serializers.py:138 build/serializers.py:674 #: templates/js/translated/build.js:1166 msgid "Build Output" msgstr "" @@ -1070,7 +1070,7 @@ msgstr "" msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:208 build/serializers.py:668 order/models.py:318 +#: build/serializers.py:208 build/serializers.py:665 order/models.py:318 #: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 #: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 #: stock/serializers.py:302 @@ -1212,77 +1212,73 @@ msgstr "" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:550 build/templates/build/build_base.html:95 -msgid "No build outputs have been created for this build order" -msgstr "" - -#: build/serializers.py:580 build/serializers.py:625 part/models.py:2719 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2719 #: part/models.py:2853 msgid "BOM Item" msgstr "" -#: build/serializers.py:590 +#: build/serializers.py:587 msgid "Build output" msgstr "" -#: build/serializers.py:598 +#: build/serializers.py:595 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:639 +#: build/serializers.py:636 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:654 stock/serializers.py:767 +#: build/serializers.py:651 stock/serializers.py:767 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:712 order/serializers.py:1073 +#: build/serializers.py:709 order/serializers.py:1073 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:718 +#: build/serializers.py:715 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:725 +#: build/serializers.py:722 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:730 +#: build/serializers.py:727 msgid "This stock item has already been allocated to this build output" msgstr "" -#: build/serializers.py:753 order/serializers.py:1319 +#: build/serializers.py:750 order/serializers.py:1319 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:804 +#: build/serializers.py:801 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:812 +#: build/serializers.py:809 msgid "Exclude Location" msgstr "" -#: build/serializers.py:813 +#: build/serializers.py:810 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:818 +#: build/serializers.py:815 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:819 +#: build/serializers.py:816 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:824 +#: build/serializers.py:821 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:825 +#: build/serializers.py:822 msgid "Allow allocation of substitute parts" msgstr "" @@ -1334,6 +1330,10 @@ msgstr "" msgid "Build Description" msgstr "" +#: build/templates/build/build_base.html:95 +msgid "No build outputs have been created for this build order" +msgstr "" + #: build/templates/build/build_base.html:101 #, python-format msgid "This Build Order is allocated to Sales Order %(link)s" @@ -1412,16 +1412,7 @@ msgstr "" msgid "Issued By" msgstr "" -#: build/templates/build/build_base.html:230 -#: build/templates/build/sidebar.html:12 -msgid "Incomplete Outputs" -msgstr "" - -#: build/templates/build/build_base.html:231 -msgid "Build Order cannot be completed as incomplete build outputs remain" -msgstr "" - -#: build/templates/build/build_base.html:257 +#: build/templates/build/build_base.html:245 msgid "Delete Build Order" msgstr "" @@ -1617,6 +1608,10 @@ msgstr "" msgid "Build Order Details" msgstr "" +#: build/templates/build/sidebar.html:12 +msgid "Incomplete Outputs" +msgstr "" + #: build/templates/build/sidebar.html:15 msgid "Completed Outputs" msgstr "" diff --git a/InvenTree/locale/nl/LC_MESSAGES/django.po b/InvenTree/locale/nl/LC_MESSAGES/django.po index 210fb8c4fc..2550efa39d 100644 --- a/InvenTree/locale/nl/LC_MESSAGES/django.po +++ b/InvenTree/locale/nl/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-10 11:38+0000\n" -"PO-Revision-Date: 2022-08-10 13:22\n" +"POT-Creation-Date: 2022-08-11 02:47+0000\n" +"PO-Revision-Date: 2022-08-11 13:49\n" "Last-Translator: \n" "Language-Team: Dutch\n" "Language: nl_NL\n" @@ -816,7 +816,7 @@ msgstr "Verkooporder Referentie" msgid "SalesOrder to which this build is allocated" msgstr "Verkooporder waar deze productie aan is toegewezen" -#: build/models.py:213 build/serializers.py:803 +#: build/models.py:213 build/serializers.py:800 #: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873 msgid "Source Location" msgstr "Bronlocatie" @@ -977,7 +977,7 @@ msgstr "Product" msgid "Build to allocate parts" msgstr "Product om onderdelen toe te wijzen" -#: build/models.py:1345 build/serializers.py:648 order/serializers.py:1015 +#: build/models.py:1345 build/serializers.py:645 order/serializers.py:1015 #: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 #: stock/serializers.py:880 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 @@ -1045,7 +1045,7 @@ msgstr "Installeren in" msgid "Destination stock item" msgstr "Bestemming voorraadartikel" -#: build/serializers.py:138 build/serializers.py:677 +#: build/serializers.py:138 build/serializers.py:674 #: templates/js/translated/build.js:1166 msgid "Build Output" msgstr "Productieuitvoer" @@ -1070,7 +1070,7 @@ msgstr "Deze productieuitvoer is niet volledig toegewezen" msgid "Enter quantity for build output" msgstr "Voer hoeveelheid in voor productie uitvoer" -#: build/serializers.py:208 build/serializers.py:668 order/models.py:318 +#: build/serializers.py:208 build/serializers.py:665 order/models.py:318 #: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 #: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 #: stock/serializers.py:302 @@ -1212,77 +1212,73 @@ msgstr "Vereiste productiehoeveelheid is voltooid" msgid "Build order has incomplete outputs" msgstr "Productieorder heeft onvolledige uitvoeren" -#: build/serializers.py:550 build/templates/build/build_base.html:95 -msgid "No build outputs have been created for this build order" -msgstr "Er zijn geen productuitvoeren aangemaakt voor deze productieorder" - -#: build/serializers.py:580 build/serializers.py:625 part/models.py:2719 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2719 #: part/models.py:2853 msgid "BOM Item" msgstr "Stuklijstartikel" -#: build/serializers.py:590 +#: build/serializers.py:587 msgid "Build output" msgstr "Productieuitvoer" -#: build/serializers.py:598 +#: build/serializers.py:595 msgid "Build output must point to the same build" msgstr "Productieuitvoer moet naar dezelfde productie wijzen" -#: build/serializers.py:639 +#: build/serializers.py:636 msgid "bom_item.part must point to the same part as the build order" msgstr "bom_item.part moet naar hetzelfde onderdeel wijzen als de productieorder" -#: build/serializers.py:654 stock/serializers.py:767 +#: build/serializers.py:651 stock/serializers.py:767 msgid "Item must be in stock" msgstr "Artikel moet op voorraad zijn" -#: build/serializers.py:712 order/serializers.py:1073 +#: build/serializers.py:709 order/serializers.py:1073 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "Beschikbare hoeveelheid ({q}) overschreden" -#: build/serializers.py:718 +#: build/serializers.py:715 msgid "Build output must be specified for allocation of tracked parts" msgstr "Productieuitvoer moet worden opgegeven voor de toewijzing van gevolgde onderdelen" -#: build/serializers.py:725 +#: build/serializers.py:722 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "Productieuitvoer kan niet worden gespecificeerd voor de toewijzing van niet gevolgde onderdelen" -#: build/serializers.py:730 +#: build/serializers.py:727 msgid "This stock item has already been allocated to this build output" msgstr "Dit voorraadartikel is al toegewezen aan deze productieoutput" -#: build/serializers.py:753 order/serializers.py:1319 +#: build/serializers.py:750 order/serializers.py:1319 msgid "Allocation items must be provided" msgstr "Allocaties voor artikelen moeten worden opgegeven" -#: build/serializers.py:804 +#: build/serializers.py:801 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "Voorraadlocatie waar onderdelen afkomstig zijn (laat leeg om van elke locatie te nemen)" -#: build/serializers.py:812 +#: build/serializers.py:809 msgid "Exclude Location" msgstr "Locatie uitsluiten" -#: build/serializers.py:813 +#: build/serializers.py:810 msgid "Exclude stock items from this selected location" msgstr "Voorraadartikelen van deze geselecteerde locatie uitsluiten" -#: build/serializers.py:818 +#: build/serializers.py:815 msgid "Interchangeable Stock" msgstr "Uitwisselbare voorraad" -#: build/serializers.py:819 +#: build/serializers.py:816 msgid "Stock items in multiple locations can be used interchangeably" msgstr "Voorraadartikelen op meerdere locaties kunnen uitwisselbaar worden gebruikt" -#: build/serializers.py:824 +#: build/serializers.py:821 msgid "Substitute Stock" msgstr "Vervangende Voorraad" -#: build/serializers.py:825 +#: build/serializers.py:822 msgid "Allow allocation of substitute parts" msgstr "Toewijzing van vervangende onderdelen toestaan" @@ -1334,6 +1330,10 @@ msgstr "Voltooi Productie" msgid "Build Description" msgstr "Productiebeschrijving" +#: build/templates/build/build_base.html:95 +msgid "No build outputs have been created for this build order" +msgstr "Er zijn geen productuitvoeren aangemaakt voor deze productieorder" + #: build/templates/build/build_base.html:101 #, python-format msgid "This Build Order is allocated to Sales Order %(link)s" @@ -1412,16 +1412,7 @@ msgstr "Verkooporder" msgid "Issued By" msgstr "Uitgegeven door" -#: build/templates/build/build_base.html:230 -#: build/templates/build/sidebar.html:12 -msgid "Incomplete Outputs" -msgstr "Onvolledige Productieuitvoeren" - -#: build/templates/build/build_base.html:231 -msgid "Build Order cannot be completed as incomplete build outputs remain" -msgstr "Productieorder kan niet worden voltooid omdat er onvoltooide productieuitvoeren openstaan" - -#: build/templates/build/build_base.html:257 +#: build/templates/build/build_base.html:245 msgid "Delete Build Order" msgstr "Verwijder Productieorder" @@ -1617,6 +1608,10 @@ msgstr "Print Productieorders" msgid "Build Order Details" msgstr "Productieorderdetails" +#: build/templates/build/sidebar.html:12 +msgid "Incomplete Outputs" +msgstr "Onvolledige Productieuitvoeren" + #: build/templates/build/sidebar.html:15 msgid "Completed Outputs" msgstr "Voltooide Uitvoeren" diff --git a/InvenTree/locale/no/LC_MESSAGES/django.po b/InvenTree/locale/no/LC_MESSAGES/django.po index 8565e6977e..6768d3f52f 100644 --- a/InvenTree/locale/no/LC_MESSAGES/django.po +++ b/InvenTree/locale/no/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-10 11:38+0000\n" -"PO-Revision-Date: 2022-08-10 13:22\n" +"POT-Creation-Date: 2022-08-11 02:47+0000\n" +"PO-Revision-Date: 2022-08-11 13:49\n" "Last-Translator: \n" "Language-Team: Norwegian\n" "Language: no_NO\n" @@ -816,7 +816,7 @@ msgstr "Salg order referanse" msgid "SalesOrder to which this build is allocated" msgstr "Salgorder som denne build er tildelt til" -#: build/models.py:213 build/serializers.py:803 +#: build/models.py:213 build/serializers.py:800 #: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873 msgid "Source Location" msgstr "Kilde plassering" @@ -977,7 +977,7 @@ msgstr "Prosjekt" msgid "Build to allocate parts" msgstr "Bygge for å tildele deler" -#: build/models.py:1345 build/serializers.py:648 order/serializers.py:1015 +#: build/models.py:1345 build/serializers.py:645 order/serializers.py:1015 #: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 #: stock/serializers.py:880 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 @@ -1045,7 +1045,7 @@ msgstr "Installerings informasjon" msgid "Destination stock item" msgstr "Målets lagervare" -#: build/serializers.py:138 build/serializers.py:677 +#: build/serializers.py:138 build/serializers.py:674 #: templates/js/translated/build.js:1166 msgid "Build Output" msgstr "" @@ -1070,7 +1070,7 @@ msgstr "" msgid "Enter quantity for build output" msgstr "Angi antall for build utgang" -#: build/serializers.py:208 build/serializers.py:668 order/models.py:318 +#: build/serializers.py:208 build/serializers.py:665 order/models.py:318 #: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 #: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 #: stock/serializers.py:302 @@ -1212,77 +1212,73 @@ msgstr "" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:550 build/templates/build/build_base.html:95 -msgid "No build outputs have been created for this build order" -msgstr "" - -#: build/serializers.py:580 build/serializers.py:625 part/models.py:2719 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2719 #: part/models.py:2853 msgid "BOM Item" msgstr "BOM varer" -#: build/serializers.py:590 +#: build/serializers.py:587 msgid "Build output" msgstr "" -#: build/serializers.py:598 +#: build/serializers.py:595 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:639 +#: build/serializers.py:636 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:654 stock/serializers.py:767 +#: build/serializers.py:651 stock/serializers.py:767 msgid "Item must be in stock" msgstr "Varen må være på lager" -#: build/serializers.py:712 order/serializers.py:1073 +#: build/serializers.py:709 order/serializers.py:1073 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "Tilgjengelig mengde ({q}) overskredet" -#: build/serializers.py:718 +#: build/serializers.py:715 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:725 +#: build/serializers.py:722 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:730 +#: build/serializers.py:727 msgid "This stock item has already been allocated to this build output" msgstr "" -#: build/serializers.py:753 order/serializers.py:1319 +#: build/serializers.py:750 order/serializers.py:1319 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:804 +#: build/serializers.py:801 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:812 +#: build/serializers.py:809 msgid "Exclude Location" msgstr "" -#: build/serializers.py:813 +#: build/serializers.py:810 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:818 +#: build/serializers.py:815 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:819 +#: build/serializers.py:816 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:824 +#: build/serializers.py:821 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:825 +#: build/serializers.py:822 msgid "Allow allocation of substitute parts" msgstr "" @@ -1334,6 +1330,10 @@ msgstr "" msgid "Build Description" msgstr "" +#: build/templates/build/build_base.html:95 +msgid "No build outputs have been created for this build order" +msgstr "" + #: build/templates/build/build_base.html:101 #, python-format msgid "This Build Order is allocated to Sales Order %(link)s" @@ -1412,16 +1412,7 @@ msgstr "Salgsorder" msgid "Issued By" msgstr "Utstedt av" -#: build/templates/build/build_base.html:230 -#: build/templates/build/sidebar.html:12 -msgid "Incomplete Outputs" -msgstr "" - -#: build/templates/build/build_base.html:231 -msgid "Build Order cannot be completed as incomplete build outputs remain" -msgstr "" - -#: build/templates/build/build_base.html:257 +#: build/templates/build/build_base.html:245 msgid "Delete Build Order" msgstr "" @@ -1617,6 +1608,10 @@ msgstr "" msgid "Build Order Details" msgstr "" +#: build/templates/build/sidebar.html:12 +msgid "Incomplete Outputs" +msgstr "" + #: build/templates/build/sidebar.html:15 msgid "Completed Outputs" msgstr "" diff --git a/InvenTree/locale/pl/LC_MESSAGES/django.po b/InvenTree/locale/pl/LC_MESSAGES/django.po index 92f1a0e70f..78a212bda2 100644 --- a/InvenTree/locale/pl/LC_MESSAGES/django.po +++ b/InvenTree/locale/pl/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-10 11:38+0000\n" -"PO-Revision-Date: 2022-08-10 13:22\n" +"POT-Creation-Date: 2022-08-11 02:47+0000\n" +"PO-Revision-Date: 2022-08-11 13:49\n" "Last-Translator: \n" "Language-Team: Polish\n" "Language: pl_PL\n" @@ -816,7 +816,7 @@ msgstr "Odwołanie do zamówienia sprzedaży" msgid "SalesOrder to which this build is allocated" msgstr "Zamówienie sprzedaży, do którego budowa jest przypisana" -#: build/models.py:213 build/serializers.py:803 +#: build/models.py:213 build/serializers.py:800 #: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873 msgid "Source Location" msgstr "Lokalizacja źródła" @@ -977,7 +977,7 @@ msgstr "Budowa" msgid "Build to allocate parts" msgstr "" -#: build/models.py:1345 build/serializers.py:648 order/serializers.py:1015 +#: build/models.py:1345 build/serializers.py:645 order/serializers.py:1015 #: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 #: stock/serializers.py:880 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 @@ -1045,7 +1045,7 @@ msgstr "Zainstaluj do" msgid "Destination stock item" msgstr "Docelowa lokalizacja magazynowa przedmiotu" -#: build/serializers.py:138 build/serializers.py:677 +#: build/serializers.py:138 build/serializers.py:674 #: templates/js/translated/build.js:1166 msgid "Build Output" msgstr "" @@ -1070,7 +1070,7 @@ msgstr "" msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:208 build/serializers.py:668 order/models.py:318 +#: build/serializers.py:208 build/serializers.py:665 order/models.py:318 #: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 #: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 #: stock/serializers.py:302 @@ -1212,77 +1212,73 @@ msgstr "" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:550 build/templates/build/build_base.html:95 -msgid "No build outputs have been created for this build order" -msgstr "" - -#: build/serializers.py:580 build/serializers.py:625 part/models.py:2719 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2719 #: part/models.py:2853 msgid "BOM Item" msgstr "Element BOM" -#: build/serializers.py:590 +#: build/serializers.py:587 msgid "Build output" msgstr "" -#: build/serializers.py:598 +#: build/serializers.py:595 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:639 +#: build/serializers.py:636 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:654 stock/serializers.py:767 +#: build/serializers.py:651 stock/serializers.py:767 msgid "Item must be in stock" msgstr "Towar musi znajdować się w magazynie" -#: build/serializers.py:712 order/serializers.py:1073 +#: build/serializers.py:709 order/serializers.py:1073 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:718 +#: build/serializers.py:715 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:725 +#: build/serializers.py:722 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:730 +#: build/serializers.py:727 msgid "This stock item has already been allocated to this build output" msgstr "" -#: build/serializers.py:753 order/serializers.py:1319 +#: build/serializers.py:750 order/serializers.py:1319 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:804 +#: build/serializers.py:801 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "Magazyn, z którego mają być pozyskane elementy (pozostaw puste, aby pobrać z dowolnej lokalizacji)" -#: build/serializers.py:812 +#: build/serializers.py:809 msgid "Exclude Location" msgstr "Wyklucz lokalizację" -#: build/serializers.py:813 +#: build/serializers.py:810 msgid "Exclude stock items from this selected location" msgstr "Wyklucz produkty magazynowe z wybranej lokalizacji" -#: build/serializers.py:818 +#: build/serializers.py:815 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:819 +#: build/serializers.py:816 msgid "Stock items in multiple locations can be used interchangeably" msgstr "Towary magazynowe w wielu lokalizacjach mogą być stosowane zamiennie" -#: build/serializers.py:824 +#: build/serializers.py:821 msgid "Substitute Stock" msgstr "Zastępczy magazyn" -#: build/serializers.py:825 +#: build/serializers.py:822 msgid "Allow allocation of substitute parts" msgstr "" @@ -1334,6 +1330,10 @@ msgstr "" msgid "Build Description" msgstr "" +#: build/templates/build/build_base.html:95 +msgid "No build outputs have been created for this build order" +msgstr "" + #: build/templates/build/build_base.html:101 #, python-format msgid "This Build Order is allocated to Sales Order %(link)s" @@ -1412,16 +1412,7 @@ msgstr "Zamówienie zakupu" msgid "Issued By" msgstr "Dodane przez" -#: build/templates/build/build_base.html:230 -#: build/templates/build/sidebar.html:12 -msgid "Incomplete Outputs" -msgstr "" - -#: build/templates/build/build_base.html:231 -msgid "Build Order cannot be completed as incomplete build outputs remain" -msgstr "" - -#: build/templates/build/build_base.html:257 +#: build/templates/build/build_base.html:245 msgid "Delete Build Order" msgstr "" @@ -1617,6 +1608,10 @@ msgstr "Wydrukuj zlecenia budowy" msgid "Build Order Details" msgstr "" +#: build/templates/build/sidebar.html:12 +msgid "Incomplete Outputs" +msgstr "" + #: build/templates/build/sidebar.html:15 msgid "Completed Outputs" msgstr "" diff --git a/InvenTree/locale/pt/LC_MESSAGES/django.po b/InvenTree/locale/pt/LC_MESSAGES/django.po index 56f8148da9..f7e3c19ab5 100644 --- a/InvenTree/locale/pt/LC_MESSAGES/django.po +++ b/InvenTree/locale/pt/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-10 11:38+0000\n" -"PO-Revision-Date: 2022-08-10 13:22\n" +"POT-Creation-Date: 2022-08-11 02:47+0000\n" +"PO-Revision-Date: 2022-08-11 13:49\n" "Last-Translator: \n" "Language-Team: Portuguese, Brazilian\n" "Language: pt_BR\n" @@ -816,7 +816,7 @@ msgstr "" msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:213 build/serializers.py:803 +#: build/models.py:213 build/serializers.py:800 #: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873 msgid "Source Location" msgstr "" @@ -977,7 +977,7 @@ msgstr "" msgid "Build to allocate parts" msgstr "" -#: build/models.py:1345 build/serializers.py:648 order/serializers.py:1015 +#: build/models.py:1345 build/serializers.py:645 order/serializers.py:1015 #: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 #: stock/serializers.py:880 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 @@ -1045,7 +1045,7 @@ msgstr "" msgid "Destination stock item" msgstr "" -#: build/serializers.py:138 build/serializers.py:677 +#: build/serializers.py:138 build/serializers.py:674 #: templates/js/translated/build.js:1166 msgid "Build Output" msgstr "" @@ -1070,7 +1070,7 @@ msgstr "" msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:208 build/serializers.py:668 order/models.py:318 +#: build/serializers.py:208 build/serializers.py:665 order/models.py:318 #: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 #: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 #: stock/serializers.py:302 @@ -1212,77 +1212,73 @@ msgstr "" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:550 build/templates/build/build_base.html:95 -msgid "No build outputs have been created for this build order" -msgstr "" - -#: build/serializers.py:580 build/serializers.py:625 part/models.py:2719 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2719 #: part/models.py:2853 msgid "BOM Item" msgstr "" -#: build/serializers.py:590 +#: build/serializers.py:587 msgid "Build output" msgstr "" -#: build/serializers.py:598 +#: build/serializers.py:595 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:639 +#: build/serializers.py:636 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:654 stock/serializers.py:767 +#: build/serializers.py:651 stock/serializers.py:767 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:712 order/serializers.py:1073 +#: build/serializers.py:709 order/serializers.py:1073 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:718 +#: build/serializers.py:715 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:725 +#: build/serializers.py:722 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:730 +#: build/serializers.py:727 msgid "This stock item has already been allocated to this build output" msgstr "" -#: build/serializers.py:753 order/serializers.py:1319 +#: build/serializers.py:750 order/serializers.py:1319 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:804 +#: build/serializers.py:801 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:812 +#: build/serializers.py:809 msgid "Exclude Location" msgstr "" -#: build/serializers.py:813 +#: build/serializers.py:810 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:818 +#: build/serializers.py:815 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:819 +#: build/serializers.py:816 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:824 +#: build/serializers.py:821 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:825 +#: build/serializers.py:822 msgid "Allow allocation of substitute parts" msgstr "" @@ -1334,6 +1330,10 @@ msgstr "" msgid "Build Description" msgstr "" +#: build/templates/build/build_base.html:95 +msgid "No build outputs have been created for this build order" +msgstr "" + #: build/templates/build/build_base.html:101 #, python-format msgid "This Build Order is allocated to Sales Order %(link)s" @@ -1412,16 +1412,7 @@ msgstr "" msgid "Issued By" msgstr "" -#: build/templates/build/build_base.html:230 -#: build/templates/build/sidebar.html:12 -msgid "Incomplete Outputs" -msgstr "" - -#: build/templates/build/build_base.html:231 -msgid "Build Order cannot be completed as incomplete build outputs remain" -msgstr "" - -#: build/templates/build/build_base.html:257 +#: build/templates/build/build_base.html:245 msgid "Delete Build Order" msgstr "" @@ -1617,6 +1608,10 @@ msgstr "" msgid "Build Order Details" msgstr "" +#: build/templates/build/sidebar.html:12 +msgid "Incomplete Outputs" +msgstr "" + #: build/templates/build/sidebar.html:15 msgid "Completed Outputs" msgstr "" diff --git a/InvenTree/locale/pt_br/LC_MESSAGES/django.po b/InvenTree/locale/pt_br/LC_MESSAGES/django.po index 40e397065c..b9309f0062 100644 --- a/InvenTree/locale/pt_br/LC_MESSAGES/django.po +++ b/InvenTree/locale/pt_br/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-09 06:07+0000\n" +"POT-Creation-Date: 2022-08-11 02:47+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -817,7 +817,7 @@ msgstr "" msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:213 build/serializers.py:784 +#: build/models.py:213 build/serializers.py:800 #: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873 msgid "Source Location" msgstr "" @@ -943,42 +943,42 @@ msgstr "" msgid "Build output does not match Build Order" msgstr "" -#: build/models.py:1143 +#: build/models.py:1171 msgid "Build item must specify a build output, as master part is marked as trackable" msgstr "" -#: build/models.py:1152 +#: build/models.py:1180 #, python-brace-format msgid "Allocated quantity ({q}) must not exceed available stock quantity ({a})" msgstr "" -#: build/models.py:1162 order/models.py:1379 +#: build/models.py:1190 order/models.py:1379 msgid "Stock item is over-allocated" msgstr "" -#: build/models.py:1168 order/models.py:1382 +#: build/models.py:1196 order/models.py:1382 msgid "Allocation quantity must be greater than zero" msgstr "" -#: build/models.py:1174 +#: build/models.py:1202 msgid "Quantity must be 1 for serialized stock" msgstr "" -#: build/models.py:1231 +#: build/models.py:1259 msgid "Selected stock item not found in BOM" msgstr "" -#: build/models.py:1300 stock/templates/stock/item_base.html:177 +#: build/models.py:1328 stock/templates/stock/item_base.html:177 #: templates/InvenTree/search.html:137 templates/js/translated/build.js:2455 #: templates/navbar.html:38 msgid "Build" msgstr "" -#: build/models.py:1301 +#: build/models.py:1329 msgid "Build to allocate parts" msgstr "" -#: build/models.py:1317 build/serializers.py:629 order/serializers.py:1015 +#: build/models.py:1345 build/serializers.py:645 order/serializers.py:1015 #: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 #: stock/serializers.py:880 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 @@ -993,11 +993,11 @@ msgstr "" msgid "Stock Item" msgstr "" -#: build/models.py:1318 +#: build/models.py:1346 msgid "Source stock item" msgstr "" -#: build/models.py:1330 build/serializers.py:193 +#: build/models.py:1358 build/serializers.py:193 #: build/templates/build/build_base.html:82 #: build/templates/build/detail.html:34 common/models.py:1678 #: company/templates/company/supplier_part.html:279 order/models.py:897 @@ -1034,19 +1034,19 @@ msgstr "" msgid "Quantity" msgstr "" -#: build/models.py:1331 +#: build/models.py:1359 msgid "Stock quantity to allocate to build" msgstr "" -#: build/models.py:1339 +#: build/models.py:1367 msgid "Install into" msgstr "" -#: build/models.py:1340 +#: build/models.py:1368 msgid "Destination stock item" msgstr "" -#: build/serializers.py:138 build/serializers.py:658 +#: build/serializers.py:138 build/serializers.py:674 #: templates/js/translated/build.js:1166 msgid "Build Output" msgstr "" @@ -1071,7 +1071,7 @@ msgstr "" msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:208 build/serializers.py:649 order/models.py:318 +#: build/serializers.py:208 build/serializers.py:665 order/models.py:318 #: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 #: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 #: stock/serializers.py:302 @@ -1165,117 +1165,121 @@ msgstr "" msgid "Delete any build outputs which have not been completed" msgstr "" -#: build/serializers.py:480 -msgid "Accept Overallocated" +#: build/serializers.py:485 +msgid "Accept as consumed by this build order" msgstr "" -#: build/serializers.py:481 -msgid "Accept stock items which have been overallocated to this build order" +#: build/serializers.py:486 +msgid "Deallocate before completing this build order" msgstr "" -#: build/serializers.py:491 -msgid "Some stock items have been overallocated" +#: build/serializers.py:494 +msgid "Overallocated Stock" msgstr "" #: build/serializers.py:496 +msgid "How do you want to handle extra stock items assigned to the build order" +msgstr "" + +#: build/serializers.py:506 +msgid "Some stock items have been overallocated" +msgstr "" + +#: build/serializers.py:511 msgid "Accept Unallocated" msgstr "" -#: build/serializers.py:497 +#: build/serializers.py:512 msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:507 templates/js/translated/build.js:195 +#: build/serializers.py:522 templates/js/translated/build.js:195 msgid "Required stock has not been fully allocated" msgstr "" -#: build/serializers.py:512 +#: build/serializers.py:527 msgid "Accept Incomplete" msgstr "" -#: build/serializers.py:513 +#: build/serializers.py:528 msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:523 templates/js/translated/build.js:199 +#: build/serializers.py:538 templates/js/translated/build.js:199 msgid "Required build quantity has not been completed" msgstr "" -#: build/serializers.py:532 +#: build/serializers.py:547 msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:535 build/templates/build/build_base.html:95 -msgid "No build outputs have been created for this build order" -msgstr "" - -#: build/serializers.py:561 build/serializers.py:606 part/models.py:2719 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2719 #: part/models.py:2853 msgid "BOM Item" msgstr "" -#: build/serializers.py:571 +#: build/serializers.py:587 msgid "Build output" msgstr "" -#: build/serializers.py:579 +#: build/serializers.py:595 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:620 +#: build/serializers.py:636 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:635 stock/serializers.py:767 +#: build/serializers.py:651 stock/serializers.py:767 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:693 order/serializers.py:1073 +#: build/serializers.py:709 order/serializers.py:1073 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:699 +#: build/serializers.py:715 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:706 +#: build/serializers.py:722 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:711 +#: build/serializers.py:727 msgid "This stock item has already been allocated to this build output" msgstr "" -#: build/serializers.py:734 order/serializers.py:1319 +#: build/serializers.py:750 order/serializers.py:1319 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:785 +#: build/serializers.py:801 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:793 +#: build/serializers.py:809 msgid "Exclude Location" msgstr "" -#: build/serializers.py:794 +#: build/serializers.py:810 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:799 +#: build/serializers.py:815 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:800 +#: build/serializers.py:816 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:805 +#: build/serializers.py:821 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:806 +#: build/serializers.py:822 msgid "Allow allocation of substitute parts" msgstr "" @@ -1327,6 +1331,10 @@ msgstr "" msgid "Build Description" msgstr "" +#: build/templates/build/build_base.html:95 +msgid "No build outputs have been created for this build order" +msgstr "" + #: build/templates/build/build_base.html:101 #, python-format msgid "This Build Order is allocated to Sales Order %(link)s" @@ -1405,16 +1413,7 @@ msgstr "" msgid "Issued By" msgstr "" -#: build/templates/build/build_base.html:230 -#: build/templates/build/sidebar.html:12 -msgid "Incomplete Outputs" -msgstr "" - -#: build/templates/build/build_base.html:231 -msgid "Build Order cannot be completed as incomplete build outputs remain" -msgstr "" - -#: build/templates/build/build_base.html:257 +#: build/templates/build/build_base.html:245 msgid "Delete Build Order" msgstr "" @@ -1610,6 +1609,10 @@ msgstr "" msgid "Build Order Details" msgstr "" +#: build/templates/build/sidebar.html:12 +msgid "Incomplete Outputs" +msgstr "" + #: build/templates/build/sidebar.html:15 msgid "Completed Outputs" msgstr "" diff --git a/InvenTree/locale/ru/LC_MESSAGES/django.po b/InvenTree/locale/ru/LC_MESSAGES/django.po index ed2fca4c7e..065fc226d6 100644 --- a/InvenTree/locale/ru/LC_MESSAGES/django.po +++ b/InvenTree/locale/ru/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-10 11:38+0000\n" -"PO-Revision-Date: 2022-08-10 13:22\n" +"POT-Creation-Date: 2022-08-11 02:47+0000\n" +"PO-Revision-Date: 2022-08-11 13:49\n" "Last-Translator: \n" "Language-Team: Russian\n" "Language: ru_RU\n" @@ -816,7 +816,7 @@ msgstr "Отсылка на заказ" msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:213 build/serializers.py:803 +#: build/models.py:213 build/serializers.py:800 #: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873 msgid "Source Location" msgstr "Расположение источника" @@ -977,7 +977,7 @@ msgstr "Сборка" msgid "Build to allocate parts" msgstr "" -#: build/models.py:1345 build/serializers.py:648 order/serializers.py:1015 +#: build/models.py:1345 build/serializers.py:645 order/serializers.py:1015 #: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 #: stock/serializers.py:880 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 @@ -1045,7 +1045,7 @@ msgstr "" msgid "Destination stock item" msgstr "" -#: build/serializers.py:138 build/serializers.py:677 +#: build/serializers.py:138 build/serializers.py:674 #: templates/js/translated/build.js:1166 msgid "Build Output" msgstr "" @@ -1070,7 +1070,7 @@ msgstr "" msgid "Enter quantity for build output" msgstr "Введите количество для вывода сборки" -#: build/serializers.py:208 build/serializers.py:668 order/models.py:318 +#: build/serializers.py:208 build/serializers.py:665 order/models.py:318 #: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 #: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 #: stock/serializers.py:302 @@ -1212,77 +1212,73 @@ msgstr "" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:550 build/templates/build/build_base.html:95 -msgid "No build outputs have been created for this build order" -msgstr "" - -#: build/serializers.py:580 build/serializers.py:625 part/models.py:2719 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2719 #: part/models.py:2853 msgid "BOM Item" msgstr "BOM Компонент" -#: build/serializers.py:590 +#: build/serializers.py:587 msgid "Build output" msgstr "" -#: build/serializers.py:598 +#: build/serializers.py:595 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:639 +#: build/serializers.py:636 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:654 stock/serializers.py:767 +#: build/serializers.py:651 stock/serializers.py:767 msgid "Item must be in stock" msgstr "Компонент должен быть в наличии" -#: build/serializers.py:712 order/serializers.py:1073 +#: build/serializers.py:709 order/serializers.py:1073 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "Превышено доступное количество ({q})" -#: build/serializers.py:718 +#: build/serializers.py:715 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:725 +#: build/serializers.py:722 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:730 +#: build/serializers.py:727 msgid "This stock item has already been allocated to this build output" msgstr "" -#: build/serializers.py:753 order/serializers.py:1319 +#: build/serializers.py:750 order/serializers.py:1319 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:804 +#: build/serializers.py:801 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:812 +#: build/serializers.py:809 msgid "Exclude Location" msgstr "" -#: build/serializers.py:813 +#: build/serializers.py:810 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:818 +#: build/serializers.py:815 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:819 +#: build/serializers.py:816 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:824 +#: build/serializers.py:821 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:825 +#: build/serializers.py:822 msgid "Allow allocation of substitute parts" msgstr "" @@ -1334,6 +1330,10 @@ msgstr "Завершить сборку" msgid "Build Description" msgstr "Описание сборки" +#: build/templates/build/build_base.html:95 +msgid "No build outputs have been created for this build order" +msgstr "" + #: build/templates/build/build_base.html:101 #, python-format msgid "This Build Order is allocated to Sales Order %(link)s" @@ -1412,16 +1412,7 @@ msgstr "Заказ покупателя" msgid "Issued By" msgstr "Выдано" -#: build/templates/build/build_base.html:230 -#: build/templates/build/sidebar.html:12 -msgid "Incomplete Outputs" -msgstr "Незавершенные выходные данные" - -#: build/templates/build/build_base.html:231 -msgid "Build Order cannot be completed as incomplete build outputs remain" -msgstr "" - -#: build/templates/build/build_base.html:257 +#: build/templates/build/build_base.html:245 msgid "Delete Build Order" msgstr "Удалить заказ на сборку" @@ -1617,6 +1608,10 @@ msgstr "Печатать заказ на сборку" msgid "Build Order Details" msgstr "" +#: build/templates/build/sidebar.html:12 +msgid "Incomplete Outputs" +msgstr "Незавершенные выходные данные" + #: build/templates/build/sidebar.html:15 msgid "Completed Outputs" msgstr "" diff --git a/InvenTree/locale/sv/LC_MESSAGES/django.po b/InvenTree/locale/sv/LC_MESSAGES/django.po index 32bf7ce87b..1c8c38700e 100644 --- a/InvenTree/locale/sv/LC_MESSAGES/django.po +++ b/InvenTree/locale/sv/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-10 11:38+0000\n" -"PO-Revision-Date: 2022-08-10 13:22\n" +"POT-Creation-Date: 2022-08-11 02:47+0000\n" +"PO-Revision-Date: 2022-08-11 13:49\n" "Last-Translator: \n" "Language-Team: Swedish\n" "Language: sv_SE\n" @@ -816,7 +816,7 @@ msgstr "Försäljningsorderreferens" msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:213 build/serializers.py:803 +#: build/models.py:213 build/serializers.py:800 #: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873 msgid "Source Location" msgstr "" @@ -977,7 +977,7 @@ msgstr "Bygg" msgid "Build to allocate parts" msgstr "" -#: build/models.py:1345 build/serializers.py:648 order/serializers.py:1015 +#: build/models.py:1345 build/serializers.py:645 order/serializers.py:1015 #: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 #: stock/serializers.py:880 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 @@ -1045,7 +1045,7 @@ msgstr "" msgid "Destination stock item" msgstr "" -#: build/serializers.py:138 build/serializers.py:677 +#: build/serializers.py:138 build/serializers.py:674 #: templates/js/translated/build.js:1166 msgid "Build Output" msgstr "" @@ -1070,7 +1070,7 @@ msgstr "" msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:208 build/serializers.py:668 order/models.py:318 +#: build/serializers.py:208 build/serializers.py:665 order/models.py:318 #: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 #: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 #: stock/serializers.py:302 @@ -1212,77 +1212,73 @@ msgstr "" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:550 build/templates/build/build_base.html:95 -msgid "No build outputs have been created for this build order" -msgstr "" - -#: build/serializers.py:580 build/serializers.py:625 part/models.py:2719 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2719 #: part/models.py:2853 msgid "BOM Item" msgstr "" -#: build/serializers.py:590 +#: build/serializers.py:587 msgid "Build output" msgstr "" -#: build/serializers.py:598 +#: build/serializers.py:595 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:639 +#: build/serializers.py:636 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:654 stock/serializers.py:767 +#: build/serializers.py:651 stock/serializers.py:767 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:712 order/serializers.py:1073 +#: build/serializers.py:709 order/serializers.py:1073 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:718 +#: build/serializers.py:715 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:725 +#: build/serializers.py:722 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:730 +#: build/serializers.py:727 msgid "This stock item has already been allocated to this build output" msgstr "" -#: build/serializers.py:753 order/serializers.py:1319 +#: build/serializers.py:750 order/serializers.py:1319 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:804 +#: build/serializers.py:801 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:812 +#: build/serializers.py:809 msgid "Exclude Location" msgstr "" -#: build/serializers.py:813 +#: build/serializers.py:810 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:818 +#: build/serializers.py:815 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:819 +#: build/serializers.py:816 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:824 +#: build/serializers.py:821 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:825 +#: build/serializers.py:822 msgid "Allow allocation of substitute parts" msgstr "" @@ -1334,6 +1330,10 @@ msgstr "Färdigställ bygget" msgid "Build Description" msgstr "Byggbeskrivning" +#: build/templates/build/build_base.html:95 +msgid "No build outputs have been created for this build order" +msgstr "" + #: build/templates/build/build_base.html:101 #, python-format msgid "This Build Order is allocated to Sales Order %(link)s" @@ -1412,16 +1412,7 @@ msgstr "Försäljningsorder" msgid "Issued By" msgstr "Utfärdad av" -#: build/templates/build/build_base.html:230 -#: build/templates/build/sidebar.html:12 -msgid "Incomplete Outputs" -msgstr "" - -#: build/templates/build/build_base.html:231 -msgid "Build Order cannot be completed as incomplete build outputs remain" -msgstr "" - -#: build/templates/build/build_base.html:257 +#: build/templates/build/build_base.html:245 msgid "Delete Build Order" msgstr "" @@ -1617,6 +1608,10 @@ msgstr "Skriv ut byggorder" msgid "Build Order Details" msgstr "" +#: build/templates/build/sidebar.html:12 +msgid "Incomplete Outputs" +msgstr "" + #: build/templates/build/sidebar.html:15 msgid "Completed Outputs" msgstr "" diff --git a/InvenTree/locale/th/LC_MESSAGES/django.po b/InvenTree/locale/th/LC_MESSAGES/django.po index b93f7f6d61..15ed01d3e4 100644 --- a/InvenTree/locale/th/LC_MESSAGES/django.po +++ b/InvenTree/locale/th/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-10 11:38+0000\n" -"PO-Revision-Date: 2022-08-10 13:23\n" +"POT-Creation-Date: 2022-08-11 02:47+0000\n" +"PO-Revision-Date: 2022-08-11 13:49\n" "Last-Translator: \n" "Language-Team: Thai\n" "Language: th_TH\n" @@ -816,7 +816,7 @@ msgstr "" msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:213 build/serializers.py:803 +#: build/models.py:213 build/serializers.py:800 #: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873 msgid "Source Location" msgstr "" @@ -977,7 +977,7 @@ msgstr "" msgid "Build to allocate parts" msgstr "" -#: build/models.py:1345 build/serializers.py:648 order/serializers.py:1015 +#: build/models.py:1345 build/serializers.py:645 order/serializers.py:1015 #: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 #: stock/serializers.py:880 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 @@ -1045,7 +1045,7 @@ msgstr "" msgid "Destination stock item" msgstr "" -#: build/serializers.py:138 build/serializers.py:677 +#: build/serializers.py:138 build/serializers.py:674 #: templates/js/translated/build.js:1166 msgid "Build Output" msgstr "" @@ -1070,7 +1070,7 @@ msgstr "" msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:208 build/serializers.py:668 order/models.py:318 +#: build/serializers.py:208 build/serializers.py:665 order/models.py:318 #: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 #: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 #: stock/serializers.py:302 @@ -1212,77 +1212,73 @@ msgstr "" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:550 build/templates/build/build_base.html:95 -msgid "No build outputs have been created for this build order" -msgstr "" - -#: build/serializers.py:580 build/serializers.py:625 part/models.py:2719 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2719 #: part/models.py:2853 msgid "BOM Item" msgstr "" -#: build/serializers.py:590 +#: build/serializers.py:587 msgid "Build output" msgstr "" -#: build/serializers.py:598 +#: build/serializers.py:595 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:639 +#: build/serializers.py:636 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:654 stock/serializers.py:767 +#: build/serializers.py:651 stock/serializers.py:767 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:712 order/serializers.py:1073 +#: build/serializers.py:709 order/serializers.py:1073 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:718 +#: build/serializers.py:715 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:725 +#: build/serializers.py:722 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:730 +#: build/serializers.py:727 msgid "This stock item has already been allocated to this build output" msgstr "" -#: build/serializers.py:753 order/serializers.py:1319 +#: build/serializers.py:750 order/serializers.py:1319 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:804 +#: build/serializers.py:801 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:812 +#: build/serializers.py:809 msgid "Exclude Location" msgstr "" -#: build/serializers.py:813 +#: build/serializers.py:810 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:818 +#: build/serializers.py:815 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:819 +#: build/serializers.py:816 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:824 +#: build/serializers.py:821 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:825 +#: build/serializers.py:822 msgid "Allow allocation of substitute parts" msgstr "" @@ -1334,6 +1330,10 @@ msgstr "" msgid "Build Description" msgstr "" +#: build/templates/build/build_base.html:95 +msgid "No build outputs have been created for this build order" +msgstr "" + #: build/templates/build/build_base.html:101 #, python-format msgid "This Build Order is allocated to Sales Order %(link)s" @@ -1412,16 +1412,7 @@ msgstr "" msgid "Issued By" msgstr "" -#: build/templates/build/build_base.html:230 -#: build/templates/build/sidebar.html:12 -msgid "Incomplete Outputs" -msgstr "" - -#: build/templates/build/build_base.html:231 -msgid "Build Order cannot be completed as incomplete build outputs remain" -msgstr "" - -#: build/templates/build/build_base.html:257 +#: build/templates/build/build_base.html:245 msgid "Delete Build Order" msgstr "" @@ -1617,6 +1608,10 @@ msgstr "" msgid "Build Order Details" msgstr "" +#: build/templates/build/sidebar.html:12 +msgid "Incomplete Outputs" +msgstr "" + #: build/templates/build/sidebar.html:15 msgid "Completed Outputs" msgstr "" diff --git a/InvenTree/locale/tr/LC_MESSAGES/django.po b/InvenTree/locale/tr/LC_MESSAGES/django.po index 6e3c9dc31a..1fe17eff29 100644 --- a/InvenTree/locale/tr/LC_MESSAGES/django.po +++ b/InvenTree/locale/tr/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-10 11:38+0000\n" -"PO-Revision-Date: 2022-08-10 13:22\n" +"POT-Creation-Date: 2022-08-11 02:47+0000\n" +"PO-Revision-Date: 2022-08-11 13:49\n" "Last-Translator: \n" "Language-Team: Turkish\n" "Language: tr_TR\n" @@ -816,7 +816,7 @@ msgstr "Satış Emri Referansı" msgid "SalesOrder to which this build is allocated" msgstr "Bu yapım işinin tahsis edildiği satış emri" -#: build/models.py:213 build/serializers.py:803 +#: build/models.py:213 build/serializers.py:800 #: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873 msgid "Source Location" msgstr "Kaynak Konum" @@ -977,7 +977,7 @@ msgstr "Yapım İşi" msgid "Build to allocate parts" msgstr "Yapım işi için tahsis edilen parçalar" -#: build/models.py:1345 build/serializers.py:648 order/serializers.py:1015 +#: build/models.py:1345 build/serializers.py:645 order/serializers.py:1015 #: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 #: stock/serializers.py:880 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 @@ -1045,7 +1045,7 @@ msgstr "Kurulduğu yer" msgid "Destination stock item" msgstr "Hedef stok kalemi" -#: build/serializers.py:138 build/serializers.py:677 +#: build/serializers.py:138 build/serializers.py:674 #: templates/js/translated/build.js:1166 msgid "Build Output" msgstr "" @@ -1070,7 +1070,7 @@ msgstr "" msgid "Enter quantity for build output" msgstr "Yapım işi çıktısı için miktarını girin" -#: build/serializers.py:208 build/serializers.py:668 order/models.py:318 +#: build/serializers.py:208 build/serializers.py:665 order/models.py:318 #: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 #: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 #: stock/serializers.py:302 @@ -1212,77 +1212,73 @@ msgstr "Gerekli yapım işi miktarı tamamlanmadı" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:550 build/templates/build/build_base.html:95 -msgid "No build outputs have been created for this build order" -msgstr "" - -#: build/serializers.py:580 build/serializers.py:625 part/models.py:2719 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2719 #: part/models.py:2853 msgid "BOM Item" msgstr "" -#: build/serializers.py:590 +#: build/serializers.py:587 msgid "Build output" msgstr "" -#: build/serializers.py:598 +#: build/serializers.py:595 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:639 +#: build/serializers.py:636 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:654 stock/serializers.py:767 +#: build/serializers.py:651 stock/serializers.py:767 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:712 order/serializers.py:1073 +#: build/serializers.py:709 order/serializers.py:1073 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:718 +#: build/serializers.py:715 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:725 +#: build/serializers.py:722 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:730 +#: build/serializers.py:727 msgid "This stock item has already been allocated to this build output" msgstr "" -#: build/serializers.py:753 order/serializers.py:1319 +#: build/serializers.py:750 order/serializers.py:1319 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:804 +#: build/serializers.py:801 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:812 +#: build/serializers.py:809 msgid "Exclude Location" msgstr "" -#: build/serializers.py:813 +#: build/serializers.py:810 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:818 +#: build/serializers.py:815 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:819 +#: build/serializers.py:816 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:824 +#: build/serializers.py:821 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:825 +#: build/serializers.py:822 msgid "Allow allocation of substitute parts" msgstr "" @@ -1334,6 +1330,10 @@ msgstr "Tamamlanmış Yapım İşi" msgid "Build Description" msgstr "" +#: build/templates/build/build_base.html:95 +msgid "No build outputs have been created for this build order" +msgstr "" + #: build/templates/build/build_base.html:101 #, python-format msgid "This Build Order is allocated to Sales Order %(link)s" @@ -1412,16 +1412,7 @@ msgstr "Sipariş Emri" msgid "Issued By" msgstr "Veren" -#: build/templates/build/build_base.html:230 -#: build/templates/build/sidebar.html:12 -msgid "Incomplete Outputs" -msgstr "Tamamlanmamış Çıktılar" - -#: build/templates/build/build_base.html:231 -msgid "Build Order cannot be completed as incomplete build outputs remain" -msgstr "Tamamlanmamış yapım işi çıktıları kaldığı için yapım işi emri tamamlanamıyor" - -#: build/templates/build/build_base.html:257 +#: build/templates/build/build_base.html:245 msgid "Delete Build Order" msgstr "Yapım İşi Emrini Sil" @@ -1617,6 +1608,10 @@ msgstr "Yapım İşi Emirlerini Yazdır" msgid "Build Order Details" msgstr "" +#: build/templates/build/sidebar.html:12 +msgid "Incomplete Outputs" +msgstr "Tamamlanmamış Çıktılar" + #: build/templates/build/sidebar.html:15 msgid "Completed Outputs" msgstr "" diff --git a/InvenTree/locale/vi/LC_MESSAGES/django.po b/InvenTree/locale/vi/LC_MESSAGES/django.po index 1a4a72dd74..5b72b1b7f8 100644 --- a/InvenTree/locale/vi/LC_MESSAGES/django.po +++ b/InvenTree/locale/vi/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-10 11:38+0000\n" -"PO-Revision-Date: 2022-08-10 13:22\n" +"POT-Creation-Date: 2022-08-11 02:47+0000\n" +"PO-Revision-Date: 2022-08-11 13:49\n" "Last-Translator: \n" "Language-Team: Vietnamese\n" "Language: vi_VN\n" @@ -816,7 +816,7 @@ msgstr "" msgid "SalesOrder to which this build is allocated" msgstr "" -#: build/models.py:213 build/serializers.py:803 +#: build/models.py:213 build/serializers.py:800 #: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873 msgid "Source Location" msgstr "" @@ -977,7 +977,7 @@ msgstr "" msgid "Build to allocate parts" msgstr "" -#: build/models.py:1345 build/serializers.py:648 order/serializers.py:1015 +#: build/models.py:1345 build/serializers.py:645 order/serializers.py:1015 #: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 #: stock/serializers.py:880 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 @@ -1045,7 +1045,7 @@ msgstr "" msgid "Destination stock item" msgstr "" -#: build/serializers.py:138 build/serializers.py:677 +#: build/serializers.py:138 build/serializers.py:674 #: templates/js/translated/build.js:1166 msgid "Build Output" msgstr "" @@ -1070,7 +1070,7 @@ msgstr "" msgid "Enter quantity for build output" msgstr "" -#: build/serializers.py:208 build/serializers.py:668 order/models.py:318 +#: build/serializers.py:208 build/serializers.py:665 order/models.py:318 #: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 #: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 #: stock/serializers.py:302 @@ -1212,77 +1212,73 @@ msgstr "" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:550 build/templates/build/build_base.html:95 -msgid "No build outputs have been created for this build order" -msgstr "" - -#: build/serializers.py:580 build/serializers.py:625 part/models.py:2719 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2719 #: part/models.py:2853 msgid "BOM Item" msgstr "" -#: build/serializers.py:590 +#: build/serializers.py:587 msgid "Build output" msgstr "" -#: build/serializers.py:598 +#: build/serializers.py:595 msgid "Build output must point to the same build" msgstr "" -#: build/serializers.py:639 +#: build/serializers.py:636 msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:654 stock/serializers.py:767 +#: build/serializers.py:651 stock/serializers.py:767 msgid "Item must be in stock" msgstr "" -#: build/serializers.py:712 order/serializers.py:1073 +#: build/serializers.py:709 order/serializers.py:1073 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "" -#: build/serializers.py:718 +#: build/serializers.py:715 msgid "Build output must be specified for allocation of tracked parts" msgstr "" -#: build/serializers.py:725 +#: build/serializers.py:722 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "" -#: build/serializers.py:730 +#: build/serializers.py:727 msgid "This stock item has already been allocated to this build output" msgstr "" -#: build/serializers.py:753 order/serializers.py:1319 +#: build/serializers.py:750 order/serializers.py:1319 msgid "Allocation items must be provided" msgstr "" -#: build/serializers.py:804 +#: build/serializers.py:801 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "" -#: build/serializers.py:812 +#: build/serializers.py:809 msgid "Exclude Location" msgstr "" -#: build/serializers.py:813 +#: build/serializers.py:810 msgid "Exclude stock items from this selected location" msgstr "" -#: build/serializers.py:818 +#: build/serializers.py:815 msgid "Interchangeable Stock" msgstr "" -#: build/serializers.py:819 +#: build/serializers.py:816 msgid "Stock items in multiple locations can be used interchangeably" msgstr "" -#: build/serializers.py:824 +#: build/serializers.py:821 msgid "Substitute Stock" msgstr "" -#: build/serializers.py:825 +#: build/serializers.py:822 msgid "Allow allocation of substitute parts" msgstr "" @@ -1334,6 +1330,10 @@ msgstr "" msgid "Build Description" msgstr "" +#: build/templates/build/build_base.html:95 +msgid "No build outputs have been created for this build order" +msgstr "" + #: build/templates/build/build_base.html:101 #, python-format msgid "This Build Order is allocated to Sales Order %(link)s" @@ -1412,16 +1412,7 @@ msgstr "" msgid "Issued By" msgstr "" -#: build/templates/build/build_base.html:230 -#: build/templates/build/sidebar.html:12 -msgid "Incomplete Outputs" -msgstr "" - -#: build/templates/build/build_base.html:231 -msgid "Build Order cannot be completed as incomplete build outputs remain" -msgstr "" - -#: build/templates/build/build_base.html:257 +#: build/templates/build/build_base.html:245 msgid "Delete Build Order" msgstr "" @@ -1617,6 +1608,10 @@ msgstr "" msgid "Build Order Details" msgstr "" +#: build/templates/build/sidebar.html:12 +msgid "Incomplete Outputs" +msgstr "" + #: build/templates/build/sidebar.html:15 msgid "Completed Outputs" msgstr "" diff --git a/InvenTree/locale/zh/LC_MESSAGES/django.po b/InvenTree/locale/zh/LC_MESSAGES/django.po index a2bcd543fc..9d3652b5b2 100644 --- a/InvenTree/locale/zh/LC_MESSAGES/django.po +++ b/InvenTree/locale/zh/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-10 11:38+0000\n" -"PO-Revision-Date: 2022-08-10 13:22\n" +"POT-Creation-Date: 2022-08-11 02:47+0000\n" +"PO-Revision-Date: 2022-08-11 13:49\n" "Last-Translator: \n" "Language-Team: Chinese Simplified\n" "Language: zh_CN\n" @@ -816,7 +816,7 @@ msgstr "相关销售订单" msgid "SalesOrder to which this build is allocated" msgstr "此次生产匹配的销售订单" -#: build/models.py:213 build/serializers.py:803 +#: build/models.py:213 build/serializers.py:800 #: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873 msgid "Source Location" msgstr "来源地点" @@ -977,7 +977,7 @@ msgstr "生产" msgid "Build to allocate parts" msgstr "生产以分配部件" -#: build/models.py:1345 build/serializers.py:648 order/serializers.py:1015 +#: build/models.py:1345 build/serializers.py:645 order/serializers.py:1015 #: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 #: stock/serializers.py:880 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 @@ -1045,7 +1045,7 @@ msgstr "安装到" msgid "Destination stock item" msgstr "目标库存项" -#: build/serializers.py:138 build/serializers.py:677 +#: build/serializers.py:138 build/serializers.py:674 #: templates/js/translated/build.js:1166 msgid "Build Output" msgstr "生产产出" @@ -1070,7 +1070,7 @@ msgstr "生产产出未被完成分配" msgid "Enter quantity for build output" msgstr "输入生产产出数量" -#: build/serializers.py:208 build/serializers.py:668 order/models.py:318 +#: build/serializers.py:208 build/serializers.py:665 order/models.py:318 #: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 #: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 #: stock/serializers.py:302 @@ -1212,77 +1212,73 @@ msgstr "所需生产数量尚未完成" msgid "Build order has incomplete outputs" msgstr "生产订单有未完成的产出" -#: build/serializers.py:550 build/templates/build/build_base.html:95 -msgid "No build outputs have been created for this build order" -msgstr "针对此生产订单,尚未创建生产产出" - -#: build/serializers.py:580 build/serializers.py:625 part/models.py:2719 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2719 #: part/models.py:2853 msgid "BOM Item" msgstr "BOM项" -#: build/serializers.py:590 +#: build/serializers.py:587 msgid "Build output" msgstr "生产产出" -#: build/serializers.py:598 +#: build/serializers.py:595 msgid "Build output must point to the same build" msgstr "生产产出必须指向相同的生产" -#: build/serializers.py:639 +#: build/serializers.py:636 msgid "bom_item.part must point to the same part as the build order" msgstr "bom_item.part 必须与生产订单指向相同的部件" -#: build/serializers.py:654 stock/serializers.py:767 +#: build/serializers.py:651 stock/serializers.py:767 msgid "Item must be in stock" msgstr "项目必须在库存中" -#: build/serializers.py:712 order/serializers.py:1073 +#: build/serializers.py:709 order/serializers.py:1073 #, python-brace-format msgid "Available quantity ({q}) exceeded" msgstr "可用量 ({q}) 超出了限制" -#: build/serializers.py:718 +#: build/serializers.py:715 msgid "Build output must be specified for allocation of tracked parts" msgstr "对于被追踪的部件的分配,必须指定生产产出" -#: build/serializers.py:725 +#: build/serializers.py:722 msgid "Build output cannot be specified for allocation of untracked parts" msgstr "对于未被追踪的部件,无法指定生产产出" -#: build/serializers.py:730 +#: build/serializers.py:727 msgid "This stock item has already been allocated to this build output" msgstr "此库存项已被分配至此生产产出" -#: build/serializers.py:753 order/serializers.py:1319 +#: build/serializers.py:750 order/serializers.py:1319 msgid "Allocation items must be provided" msgstr "必须提供分配的项" -#: build/serializers.py:804 +#: build/serializers.py:801 msgid "Stock location where parts are to be sourced (leave blank to take from any location)" msgstr "部件来源的仓储地点(留空则可来源于任何仓储地点)" -#: build/serializers.py:812 +#: build/serializers.py:809 msgid "Exclude Location" msgstr "排除地点" -#: build/serializers.py:813 +#: build/serializers.py:810 msgid "Exclude stock items from this selected location" msgstr "从该选定的仓储地点排除库存项" -#: build/serializers.py:818 +#: build/serializers.py:815 msgid "Interchangeable Stock" msgstr "可互换的库存" -#: build/serializers.py:819 +#: build/serializers.py:816 msgid "Stock items in multiple locations can be used interchangeably" msgstr "多处地点的库存项可以互换使用" -#: build/serializers.py:824 +#: build/serializers.py:821 msgid "Substitute Stock" msgstr "可替换的库存" -#: build/serializers.py:825 +#: build/serializers.py:822 msgid "Allow allocation of substitute parts" msgstr "允许分配可替换的部件" @@ -1334,6 +1330,10 @@ msgstr "生产完成" msgid "Build Description" msgstr "" +#: build/templates/build/build_base.html:95 +msgid "No build outputs have been created for this build order" +msgstr "针对此生产订单,尚未创建生产产出" + #: build/templates/build/build_base.html:101 #, python-format msgid "This Build Order is allocated to Sales Order %(link)s" @@ -1412,16 +1412,7 @@ msgstr "销售订单" msgid "Issued By" msgstr "发布者" -#: build/templates/build/build_base.html:230 -#: build/templates/build/sidebar.html:12 -msgid "Incomplete Outputs" -msgstr "未完成输出" - -#: build/templates/build/build_base.html:231 -msgid "Build Order cannot be completed as incomplete build outputs remain" -msgstr "" - -#: build/templates/build/build_base.html:257 +#: build/templates/build/build_base.html:245 msgid "Delete Build Order" msgstr "删除生产订单" @@ -1617,6 +1608,10 @@ msgstr "打印生产订单" msgid "Build Order Details" msgstr "" +#: build/templates/build/sidebar.html:12 +msgid "Incomplete Outputs" +msgstr "未完成输出" + #: build/templates/build/sidebar.html:15 msgid "Completed Outputs" msgstr "" From b0e91e7068474b291d59133087a0bce8ee47d994 Mon Sep 17 00:00:00 2001 From: Oliver Date: Mon, 15 Aug 2022 22:27:25 +1000 Subject: [PATCH 14/60] Update bleach clean function (#3503) * Update bleach clean function - Invalid tags are stripped out - & > < characters are accepted * Throw an error if any field contains HTML tags * Update unit tests --- InvenTree/InvenTree/mixins.py | 58 +++++++++++++++++++++++++++++++---- InvenTree/part/test_api.py | 51 +++++++++++++++++------------- 2 files changed, 82 insertions(+), 27 deletions(-) diff --git a/InvenTree/InvenTree/mixins.py b/InvenTree/InvenTree/mixins.py index 584b3ac5ed..dfdde392ce 100644 --- a/InvenTree/InvenTree/mixins.py +++ b/InvenTree/InvenTree/mixins.py @@ -1,15 +1,18 @@ """Mixins for (API) views in the whole project.""" +from django.utils.translation import gettext_lazy as _ + from bleach import clean from rest_framework import generics, status +from rest_framework.exceptions import ValidationError from rest_framework.response import Response class CleanMixin(): - """Model mixin class which cleans inputs.""" + """Model mixin class which cleans inputs using the Mozilla bleach tools.""" - # Define a map of fields avaialble for import - SAFE_FIELDS = {} + # Define a list of field names which will *not* be cleaned + SAFE_FIELDS = [] def create(self, request, *args, **kwargs): """Override to clean data before processing it.""" @@ -34,6 +37,42 @@ class CleanMixin(): return Response(serializer.data) + def clean_string(self, field: str, data: str) -> str: + """Clean / sanitize a single input string. + + Note that this function will *allow* orphaned <>& characters, + which would normally be escaped by bleach. + + Nominally, the only thing that will be "cleaned" will be HTML tags + + Ref: https://github.com/mozilla/bleach/issues/192 + """ + + cleaned = clean( + data, + strip=True, + tags=[], + attributes=[], + ) + + # Add escaped characters back in + replacements = { + '>': '>', + '<': '<', + '&': '&', + } + + for o, r in replacements.items(): + cleaned = cleaned.replace(o, r) + + # If the length changed, it means that HTML tags were removed! + if len(cleaned) != len(data): + raise ValidationError({ + field: [_("Remove HTML tags from this value")] + }) + + return cleaned + def clean_data(self, data: dict) -> dict: """Clean / sanitize data. @@ -46,17 +85,24 @@ class CleanMixin(): data (dict): Data that should be sanatized. Returns: - dict: Profided data sanatized; still in the same order. + dict: Provided data sanatized; still in the same order. """ + clean_data = {} + for k, v in data.items(): - if isinstance(v, str): - ret = clean(v) + + if k in self.SAFE_FIELDS: + ret = v + elif isinstance(v, str): + ret = self.clean_string(k, v) elif isinstance(v, dict): ret = self.clean_data(v) else: ret = v + clean_data[k] = ret + return clean_data diff --git a/InvenTree/part/test_api.py b/InvenTree/part/test_api.py index c591c9405d..85c7982b7e 100644 --- a/InvenTree/part/test_api.py +++ b/InvenTree/part/test_api.py @@ -227,31 +227,40 @@ class PartCategoryAPITest(InvenTreeAPITestCase): url = reverse('api-part-category-detail', kwargs={'pk': 1}) - self.patch( - url, - { - 'description': '', - }, - expected_code=200 - ) + # Invalid values containing tags + invalid_values = [ + '', + 'Link', + "Link", + '', + ] - cat = PartCategory.objects.get(pk=1) + for v in invalid_values: + response = self.patch( + url, + { + 'description': v + }, + expected_code=400 + ) - # Image tags have been stripped - self.assertEqual(cat.description, '<img src=# onerror=alert("pwned")>') + # Raw characters should be allowed + allowed = [ + '<< hello', + 'Alpha & Omega', + 'A > B > C', + ] - self.patch( - url, - { - 'description': 'LINK', - }, - expected_code=200, - ) + for val in allowed: + response = self.patch( + url, + { + 'description': val, + }, + expected_code=200, + ) - # Tags must have been bleached out - cat.refresh_from_db() - - self.assertEqual(cat.description, 'LINK<script>alert("h4x0r")</script>') + self.assertEqual(response.data['description'], val) class PartOptionsAPITest(InvenTreeAPITestCase): From e9b8c15c569a6ae35ff7c9f3faee835af895201f Mon Sep 17 00:00:00 2001 From: Matthias Mair Date: Mon, 15 Aug 2022 14:28:34 +0200 Subject: [PATCH 15/60] refactor custom file lookup (#3536) * refactor custom file lookup * Rename function --- InvenTree/InvenTree/config.py | 27 +++++++++++++++++++++++++ InvenTree/InvenTree/settings.py | 36 ++++----------------------------- 2 files changed, 31 insertions(+), 32 deletions(-) diff --git a/InvenTree/InvenTree/config.py b/InvenTree/InvenTree/config.py index 799788a0da..03e0b8c036 100644 --- a/InvenTree/InvenTree/config.py +++ b/InvenTree/InvenTree/config.py @@ -7,6 +7,9 @@ import shutil import string from pathlib import Path +from django.contrib.staticfiles.storage import StaticFilesStorage +from django.core.files.storage import default_storage + import yaml logger = logging.getLogger('inventree') @@ -203,3 +206,27 @@ def get_secret_key(): key_data = secret_key_file.read_text().strip() return key_data + + +def get_custom_file(env_ref: str, conf_ref: str, log_ref: str, lookup_media: bool = False): + """Returns the checked path to a custom file. + + Set lookup_media to True to also search in the media folder. + """ + value = get_setting(env_ref, conf_ref, None) + + if not value: + return None + + static_storage = StaticFilesStorage() + + if static_storage.exists(value): + logger.info(f"Loading {log_ref} from static directory: {value}") + elif lookup_media and default_storage.exists(value): + logger.info(f"Loading {log_ref} from media directory: {value}") + else: + add_dir_str = ' or media' if lookup_media else '' + logger.warning(f"The {log_ref} file '{value}' could not be found in the static{add_dir_str} directories") + value = False + + return value diff --git a/InvenTree/InvenTree/settings.py b/InvenTree/InvenTree/settings.py index 2d4b898f74..f13a74fe83 100644 --- a/InvenTree/InvenTree/settings.py +++ b/InvenTree/InvenTree/settings.py @@ -16,8 +16,6 @@ import sys from pathlib import Path import django.conf.locale -from django.contrib.staticfiles.storage import StaticFilesStorage -from django.core.files.storage import default_storage from django.http import Http404 from django.utils.translation import gettext_lazy as _ @@ -26,7 +24,7 @@ import sentry_sdk from sentry_sdk.integrations.django import DjangoIntegration from . import config -from .config import get_boolean_setting, get_setting +from .config import get_boolean_setting, get_custom_file, get_setting # Determine if we are running in "test" mode e.g. "manage.py test" TESTING = 'test' in sys.argv @@ -818,37 +816,11 @@ PLUGIN_RETRY = CONFIG.get('PLUGIN_RETRY', 5) # how often should plugin loading PLUGIN_FILE_CHECKED = False # Was the plugin file checked? # User interface customization values +CUSTOM_LOGO = get_custom_file('INVENTREE_CUSTOM_LOGO', 'customize.logo', 'custom logo', lookup_media=True) +CUSTOM_SPLASH = get_custom_file('INVENTREE_CUSTOM_SPLASH', 'customize.splash', 'custom splash') + CUSTOMIZE = get_setting('INVENTREE_CUSTOMIZE', 'customize', {}) -static_storage = StaticFilesStorage() - -""" -Check for the existence of a 'custom logo' file: -- Check the 'static' directory -- Check the 'media' directory (legacy) -""" - -CUSTOM_LOGO = get_setting('INVENTREE_CUSTOM_LOGO', 'customize.logo', None) - -if CUSTOM_LOGO: - if static_storage.exists(CUSTOM_LOGO): - logger.info(f"Loading custom logo from static directory: {CUSTOM_LOGO}") - elif default_storage.exists(CUSTOM_LOGO): - logger.info(f"Loading custom logo from media directory: {CUSTOM_LOGO}") - else: - logger.warning(f"The custom logo file '{CUSTOM_LOGO}' could not be found in the static or media directories") - CUSTOM_LOGO = False - -# Check for a custom splash screen -CUSTOM_SPLASH = get_setting('INVENTREE_CUSTOM_SPLASH', 'customize.splash', None) - -if CUSTOM_SPLASH: - if static_storage.exists(CUSTOM_SPLASH): - logger.info(f"Loading custom splash screen from static directory: {CUSTOM_SPLASH}") - else: - logger.warning(f"The custom splash screen '{CUSTOM_SPLASH}' could not be found in the static directory") - CUSTOM_SPLASH = False - if DEBUG: logger.info("InvenTree running with DEBUG enabled") From d102a87effe0fa010251b440f68b2ced16bb4ffb Mon Sep 17 00:00:00 2001 From: Jacob Siverskog Date: Mon, 15 Aug 2022 15:10:59 +0200 Subject: [PATCH 16/60] fix typo in variable name (#3541) this fixes broken e-mail from configuration. --- InvenTree/InvenTree/settings.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/InvenTree/InvenTree/settings.py b/InvenTree/InvenTree/settings.py index f13a74fe83..210024049d 100644 --- a/InvenTree/InvenTree/settings.py +++ b/InvenTree/InvenTree/settings.py @@ -676,7 +676,7 @@ EMAIL_SUBJECT_PREFIX = get_setting('INVENTREE_EMAIL_PREFIX', 'email.prefix', '[I EMAIL_USE_TLS = get_boolean_setting('INVENTREE_EMAIL_TLS', 'email.tls', False) EMAIL_USE_SSL = get_boolean_setting('INVENTREE_EMAIL_SSL', 'email.ssl', False) -DEFUALT_FROM_EMAIL = get_setting('INVENTREE_EMAIL_SENDER', 'email.sender', '') +DEFAULT_FROM_EMAIL = get_setting('INVENTREE_EMAIL_SENDER', 'email.sender', '') EMAIL_USE_LOCALTIME = False EMAIL_TIMEOUT = 60 From 92fb40e8fc74fcf73bb316c4dc570e13d8bd7bed Mon Sep 17 00:00:00 2001 From: Matthias Mair Date: Mon, 15 Aug 2022 23:52:39 +0200 Subject: [PATCH 17/60] moves imports to enable startup without django beeing loaded (#3547) Fixes #3546 --- InvenTree/InvenTree/config.py | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/InvenTree/InvenTree/config.py b/InvenTree/InvenTree/config.py index 03e0b8c036..7ce162bdff 100644 --- a/InvenTree/InvenTree/config.py +++ b/InvenTree/InvenTree/config.py @@ -7,9 +7,6 @@ import shutil import string from pathlib import Path -from django.contrib.staticfiles.storage import StaticFilesStorage -from django.core.files.storage import default_storage - import yaml logger = logging.getLogger('inventree') @@ -213,6 +210,9 @@ def get_custom_file(env_ref: str, conf_ref: str, log_ref: str, lookup_media: boo Set lookup_media to True to also search in the media folder. """ + from django.contrib.staticfiles.storage import StaticFilesStorage + from django.core.files.storage import default_storage + value = get_setting(env_ref, conf_ref, None) if not value: From 8ef5d0a1594aa513124737f9d01c98f47097be1f Mon Sep 17 00:00:00 2001 From: Matthias Mair Date: Mon, 15 Aug 2022 23:55:39 +0200 Subject: [PATCH 18/60] update links to point to our specific projects / workspaces (#3548) --- README.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index bb30d9133f..a0ca4e75e2 100644 --- a/README.md +++ b/README.md @@ -101,9 +101,9 @@ InvenTree is designed to be **extensible**, and provides multiple options for **
DevOps
From 858d48afe7e68f1da28172dd9e08a87bdba1c34c Mon Sep 17 00:00:00 2001 From: miggland Date: Tue, 16 Aug 2022 04:09:00 +0200 Subject: [PATCH 19/60] Fix bug in exporting records (#3545) Introduced in #3392 --- tasks.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/tasks.py b/tasks.py index 54b9210131..7962841e59 100644 --- a/tasks.py +++ b/tasks.py @@ -267,7 +267,7 @@ def export_records(c, filename='data.json', overwrite=False, include_permissions print(f"Exporting database records to file '{filename}'") - if filename.exists() and overwrite is False: + if Path(filename).is_file() and overwrite is False: response = input("Warning: file already exists. Do you want to overwrite? [y/N]: ") response = str(response).strip().lower() From 188ddc3be34bbf65a0995831df802e282c60274f Mon Sep 17 00:00:00 2001 From: Matthias Mair Date: Tue, 16 Aug 2022 05:09:48 +0200 Subject: [PATCH 20/60] Improve plugin testing (#3517) * refactor entrypoint into helpers * Add lookup by metadata This is geared towards plugins packaged in pkgs that differ in name from their top module * Make module lookup predictable in changing pkg-envs * remove no coverage from plugin packages * ignore coverage for production loadin * refactor plugin collection - move assigment out * do not cover fs errors * test custom dir loading * test module meta fetcher * add a bit more safety * do not cover sanity checkers * add folder loading test * ignore again for cleaner diffs for now * ignore safety catch * rename test * Add test for package installs * fix docstring name * depreciate test for now * Fix for out of BASE_DIR paths * ignore catch * remove unneeded complexity * add testing for outside folders * more docstrings and simpler methods * make call simpler --- InvenTree/plugin/apps.py | 2 +- InvenTree/plugin/helpers.py | 7 ++- InvenTree/plugin/mock/__init__.py | 0 InvenTree/plugin/mock/simple.py | 10 +++++ InvenTree/plugin/registry.py | 45 ++++++++++++------- InvenTree/plugin/test_helpers.py | 14 +++++- InvenTree/plugin/test_plugin.py | 72 ++++++++++++++++++++++++++++++- 7 files changed, 130 insertions(+), 20 deletions(-) create mode 100644 InvenTree/plugin/mock/__init__.py create mode 100644 InvenTree/plugin/mock/simple.py diff --git a/InvenTree/plugin/apps.py b/InvenTree/plugin/apps.py index 9fdd43e6c6..bb0c8cfb94 100644 --- a/InvenTree/plugin/apps.py +++ b/InvenTree/plugin/apps.py @@ -43,7 +43,7 @@ class PluginAppConfig(AppConfig): pass # get plugins and init them - registry.collect_plugins() + registry.plugin_modules = registry.collect_plugins() registry.load_plugins() # drop out of maintenance diff --git a/InvenTree/plugin/helpers.py b/InvenTree/plugin/helpers.py index 723543caea..baeb1847ce 100644 --- a/InvenTree/plugin/helpers.py +++ b/InvenTree/plugin/helpers.py @@ -241,12 +241,15 @@ def get_module_meta(mdl_name): # Get spec for module spec = find_spec(mdl_name) + if not spec: # pragma: no cover + raise PackageNotFoundError(mdl_name) + # Try to get specific package for the module result = None for dist in distributions(): try: relative = pathlib.Path(spec.origin).relative_to(dist.locate_file('')) - except ValueError: + except ValueError: # pragma: no cover pass else: if relative in dist.files: @@ -254,7 +257,7 @@ def get_module_meta(mdl_name): # Check if a distribution was found # A no should not be possible here as a call can only be made on a discovered module but better save then sorry - if not result: + if not result: # pragma: no cover raise PackageNotFoundError(mdl_name) # Return metadata diff --git a/InvenTree/plugin/mock/__init__.py b/InvenTree/plugin/mock/__init__.py new file mode 100644 index 0000000000..e69de29bb2 diff --git a/InvenTree/plugin/mock/simple.py b/InvenTree/plugin/mock/simple.py new file mode 100644 index 0000000000..8130aa7eed --- /dev/null +++ b/InvenTree/plugin/mock/simple.py @@ -0,0 +1,10 @@ +"""Very simple sample plugin""" + +from plugin import InvenTreePlugin + + +class SimplePlugin(InvenTreePlugin): + """A very simple plugin.""" + + NAME = 'SimplePlugin' + SLUG = "simple" diff --git a/InvenTree/plugin/registry.py b/InvenTree/plugin/registry.py index 5d05cb4ecc..ec0b13410c 100644 --- a/InvenTree/plugin/registry.py +++ b/InvenTree/plugin/registry.py @@ -4,6 +4,7 @@ - Manages setup and teardown of plugin class instances """ +import imp import importlib import logging import os @@ -200,7 +201,7 @@ class PluginsRegistry: if settings.TESTING: custom_dirs = os.getenv('INVENTREE_PLUGIN_TEST_DIR', None) - else: + else: # pragma: no cover custom_dirs = get_setting('INVENTREE_PLUGIN_DIR', 'plugin_dir') # Load from user specified directories (unless in testing mode) @@ -215,7 +216,7 @@ class PluginsRegistry: if not pd.exists(): try: pd.mkdir(exist_ok=True) - except Exception: + except Exception: # pragma: no cover logger.error(f"Could not create plugin directory '{pd}'") continue @@ -225,24 +226,31 @@ class PluginsRegistry: if not init_filename.exists(): try: init_filename.write_text("# InvenTree plugin directory\n") - except Exception: + except Exception: # pragma: no cover logger.error(f"Could not create file '{init_filename}'") continue + # By this point, we have confirmed that the directory at least exists if pd.exists() and pd.is_dir(): - # By this point, we have confirmed that the directory at least exists - logger.info(f"Added plugin directory: '{pd}'") - dirs.append(pd) + # Convert to python dot-path + if pd.is_relative_to(settings.BASE_DIR): + pd_path = '.'.join(pd.relative_to(settings.BASE_DIR).parts) + else: + pd_path = str(pd) + + # Add path + dirs.append(pd_path) + logger.info(f"Added plugin directory: '{pd}' as '{pd_path}'") return dirs def collect_plugins(self): - """Collect plugins from all possible ways of loading.""" + """Collect plugins from all possible ways of loading. Returned as list.""" if not settings.PLUGINS_ENABLED: # Plugins not enabled, do nothing return # pragma: no cover - self.plugin_modules = [] # clear + collected_plugins = [] # Collect plugins from paths for plugin in self.plugin_dirs(): @@ -258,26 +266,33 @@ class PluginsRegistry: parent_path = str(parent_obj.parent) plugin = parent_obj.name - modules = get_plugins(importlib.import_module(plugin), InvenTreePlugin, path=parent_path) + # Gather Modules + if parent_path: + raw_module = imp.load_source(plugin, str(parent_obj.joinpath('__init__.py'))) + else: + raw_module = importlib.import_module(plugin) + modules = get_plugins(raw_module, InvenTreePlugin, path=parent_path) if modules: - [self.plugin_modules.append(item) for item in modules] + [collected_plugins.append(item) for item in modules] # Check if not running in testing mode and apps should be loaded from hooks if (not settings.PLUGIN_TESTING) or (settings.PLUGIN_TESTING and settings.PLUGIN_TESTING_SETUP): # Collect plugins from setup entry points - for entry in get_entrypoints(): # pragma: no cover + for entry in get_entrypoints(): try: plugin = entry.load() plugin.is_package = True plugin._get_package_metadata() - self.plugin_modules.append(plugin) - except Exception as error: + collected_plugins.append(plugin) + except Exception as error: # pragma: no cover handle_error(error, do_raise=False, log_name='discovery') # Log collected plugins - logger.info(f'Collected {len(self.plugin_modules)} plugins!') - logger.info(", ".join([a.__module__ for a in self.plugin_modules])) + logger.info(f'Collected {len(collected_plugins)} plugins!') + logger.info(", ".join([a.__module__ for a in collected_plugins])) + + return collected_plugins def install_plugin_file(self): """Make sure all plugins are installed in the current enviroment.""" diff --git a/InvenTree/plugin/test_helpers.py b/InvenTree/plugin/test_helpers.py index 53b2622592..4b2ac8538c 100644 --- a/InvenTree/plugin/test_helpers.py +++ b/InvenTree/plugin/test_helpers.py @@ -2,7 +2,7 @@ from django.test import TestCase -from .helpers import render_template +from .helpers import get_module_meta, render_template class HelperTests(TestCase): @@ -21,3 +21,15 @@ class HelperTests(TestCase): response = render_template(ErrorSource(), 'sample/wrongsample.html', {'abc': 123}) self.assertTrue('lert alert-block alert-danger' in response) self.assertTrue('Template file sample/wrongsample.html' in response) + + def test_get_module_meta(self): + """Test for get_module_meta.""" + + # We need a stable, known good that will be in enviroment for sure + # and it can't be stdlib because does might differ depending on the abstraction layer + # and version + meta = get_module_meta('django') + + # Lets just hope they do not change the name or author + self.assertEqual(meta['Name'], 'Django') + self.assertEqual(meta['Author'], 'Django Software Foundation') diff --git a/InvenTree/plugin/test_plugin.py b/InvenTree/plugin/test_plugin.py index 37862b5545..7dfdaf44ad 100644 --- a/InvenTree/plugin/test_plugin.py +++ b/InvenTree/plugin/test_plugin.py @@ -1,8 +1,14 @@ """Unit tests for plugins.""" +import os +import shutil +import subprocess +import tempfile from datetime import datetime +from pathlib import Path +from unittest import mock -from django.test import TestCase +from django.test import TestCase, override_settings import plugin.templatetags.plugin_extras as plugin_tags from plugin import InvenTreePlugin, registry @@ -162,3 +168,67 @@ class InvenTreePluginTests(TestCase): self.assertEqual(self.plugin_old.slug, 'old') # check default value is used self.assertEqual(self.plugin_old.get_meta_value('ABC', 'ABCD', '123'), '123') + + +class RegistryTests(TestCase): + """Tests for registry loading methods.""" + + def run_package_test(self, directory): + """General runner for testing package based installs.""" + + # Patch enviroment varible to add dir + envs = {'INVENTREE_PLUGIN_TEST_DIR': directory} + with mock.patch.dict(os.environ, envs): + # Reload to redicsover plugins + registry.reload_plugins(full_reload=True) + + # Depends on the meta set in InvenTree/plugin/mock/simple:SimplePlugin + plg = registry.get_plugin('simple') + self.assertEqual(plg.slug, 'simple') + self.assertEqual(plg.human_name, 'SimplePlugin') + + def test_custom_loading(self): + """Test if data in custom dir is loaded correctly.""" + test_dir = Path('plugin_test_dir') + + # Patch env + envs = {'INVENTREE_PLUGIN_TEST_DIR': 'plugin_test_dir'} + with mock.patch.dict(os.environ, envs): + # Run plugin directory discovery again + registry.plugin_dirs() + + # Check the directory was created + self.assertTrue(test_dir.exists()) + + # Clean folder up + shutil.rmtree(test_dir, ignore_errors=True) + + def test_subfolder_loading(self): + """Test that plugins in subfolders get loaded.""" + self.run_package_test('InvenTree/plugin/mock') + + def test_folder_loading(self): + """Test that plugins in folders outside of BASE_DIR get loaded.""" + + # Run in temporary directory -> always a new random name + with tempfile.TemporaryDirectory() as tmp: + # Fill directory with sample data + new_dir = Path(tmp).joinpath('mock') + shutil.copytree(Path('InvenTree/plugin/mock').absolute(), new_dir) + + # Run tests + self.run_package_test(str(new_dir)) + + @override_settings(PLUGIN_TESTING_SETUP=True) + def test_package_loading(self): + """Test that package distributed plugins work.""" + # Install sample package + subprocess.check_output('pip install inventree-zapier'.split()) + + # Reload to discover plugin + registry.reload_plugins(full_reload=True) + + # Test that plugin was installed + plg = registry.get_plugin('zapier') + self.assertEqual(plg.slug, 'zapier') + self.assertEqual(plg.name, 'inventree_zapier') From 1b76828305ec9f3160bf01fcac460ad5dcc58540 Mon Sep 17 00:00:00 2001 From: Matthias Mair Date: Tue, 16 Aug 2022 08:10:18 +0200 Subject: [PATCH 21/60] Plugin framework updates (#3535) * refactor entrypoint into helpers * Add lookup by metadata This is geared towards plugins packaged in pkgs that differ in name from their top module * Make module lookup predictable in changing pkg-envs * remove no coverage from plugin packages * ignore coverage for production loadin * refactor plugin collection - move assigment out * do not cover fs errors * test custom dir loading * test module meta fetcher * add a bit more safety * do not cover sanity checkers * add folder loading test * ignore again for cleaner diffs for now * ignore safety catch * rename test * Add test for package installs * fix docstring name * depreciate test for now * Fix for out of BASE_DIR paths * ignore catch * remove unneeded complexity * add testing for outside folders * more docstrings and simpler methods * make call simpler * refactor import * Add registry with all plugins * use full registry and make simpler request * switch path properties to methods * Add typing to plugin * Add a checker fnc for is_sample * Add sample check to admin page * Make file check a cls * more cls methods * Add setting for signature cheks Fixes #3520 * make property statements simpler * use same key in all dicts * Use module name instead of NAME Fixes #3534 * fix naming * fix name * add version checking Fixes #3478 * fix formatting and typing * also save reference to full array * do not cover as we turn on all plugins * add test for check_version * Add version e2e test * make test save * refactor out assignment * safe a db reference first * docstring * condense code a bit * rename * append logging * rename * also safe db reference to new object * docstrings, refactors, typing * fix key lookup --- InvenTree/common/models.py | 7 + InvenTree/plugin/admin.py | 2 +- InvenTree/plugin/models.py | 24 ++- InvenTree/plugin/plugin.py | 80 +++++++--- InvenTree/plugin/registry.py | 147 +++++++++--------- .../plugin/samples/integration/version.py | 9 ++ InvenTree/plugin/template.py | 6 +- InvenTree/plugin/test_plugin.py | 18 +++ .../templates/InvenTree/settings/plugin.html | 2 + .../InvenTree/settings/plugin_settings.html | 4 + 10 files changed, 197 insertions(+), 102 deletions(-) create mode 100644 InvenTree/plugin/samples/integration/version.py diff --git a/InvenTree/common/models.py b/InvenTree/common/models.py index a006dab47b..a0752e4915 100644 --- a/InvenTree/common/models.py +++ b/InvenTree/common/models.py @@ -1268,6 +1268,13 @@ class InvenTreeSetting(BaseInvenTreeSetting): 'requires_restart': True, }, + 'PLUGIN_CHECK_SIGNATURES': { + 'name': _('Check plugin signatures'), + 'description': _('Check and show signatures for plugins'), + 'default': False, + 'validator': bool, + }, + # Settings for plugin mixin features 'ENABLE_PLUGINS_URL': { 'name': _('Enable URL integration'), diff --git a/InvenTree/plugin/admin.py b/InvenTree/plugin/admin.py index 84da9e9d98..7bb0558600 100644 --- a/InvenTree/plugin/admin.py +++ b/InvenTree/plugin/admin.py @@ -52,7 +52,7 @@ class PluginConfigAdmin(admin.ModelAdmin): """Custom admin with restricted id fields.""" readonly_fields = ["key", "name", ] - list_display = ['name', 'key', '__str__', 'active', ] + list_display = ['name', 'key', '__str__', 'active', 'is_sample'] list_filter = ['active'] actions = [plugin_activate, plugin_deactivate, ] inlines = [PluginSettingInline, ] diff --git a/InvenTree/plugin/models.py b/InvenTree/plugin/models.py index 9a58e96fdc..16e51513da 100644 --- a/InvenTree/plugin/models.py +++ b/InvenTree/plugin/models.py @@ -3,6 +3,7 @@ import warnings from django.conf import settings +from django.contrib import admin from django.contrib.auth.models import User from django.db import models from django.utils.translation import gettext_lazy as _ @@ -123,11 +124,11 @@ class PluginConfig(models.Model): self.__org_active = self.active # append settings from registry - self.plugin = registry.plugins.get(self.key, None) + plugin = registry.plugins_full.get(self.key, None) def get_plugin_meta(name): - if self.plugin: - return str(getattr(self.plugin, name, None)) + if plugin: + return str(getattr(plugin, name, None)) return None self.meta = { @@ -136,6 +137,9 @@ class PluginConfig(models.Model): 'package_path', 'settings_url', ] } + # Save plugin + self.plugin: InvenTreePlugin = plugin + def save(self, force_insert=False, force_update=False, *args, **kwargs): """Extend save method to reload plugins if the 'active' status changes.""" reload = kwargs.pop('no_reload', False) # check if no_reload flag is set @@ -151,6 +155,20 @@ class PluginConfig(models.Model): return ret + @admin.display(boolean=True, description=_('Sample plugin')) + def is_sample(self) -> bool: + """Is this plugin a sample app?""" + # Loaded and active plugin + if isinstance(self.plugin, InvenTreePlugin): + return self.plugin.check_is_sample() + + # If no plugin_class is available it can not be a sample + if not self.plugin: + return False + + # Not loaded plugin + return self.plugin.check_is_sample() # pragma: no cover + class PluginSetting(common.models.BaseInvenTreeSetting): """This model represents settings for individual plugins.""" diff --git a/InvenTree/plugin/plugin.py b/InvenTree/plugin/plugin.py index 2bf849c56e..f23e34107f 100644 --- a/InvenTree/plugin/plugin.py +++ b/InvenTree/plugin/plugin.py @@ -2,11 +2,10 @@ import inspect import logging -import os -import pathlib import warnings from datetime import datetime from importlib.metadata import PackageNotFoundError, metadata +from pathlib import Path from django.conf import settings from django.db.utils import OperationalError, ProgrammingError @@ -171,7 +170,24 @@ class MixinBase: return mixins -class InvenTreePlugin(MixinBase, MetaBase): +class VersionMixin: + """Mixin to enable version checking.""" + + MIN_VERSION = None + MAX_VERSION = None + + def check_version(self, latest=None) -> bool: + """Check if plugin functions for the current InvenTree version.""" + from InvenTree import version + + latest = latest if latest else version.inventreeVersionTuple() + min_v = version.inventreeVersionTuple(self.MIN_VERSION) + max_v = version.inventreeVersionTuple(self.MAX_VERSION) + + return bool(min_v <= latest <= max_v) + + +class InvenTreePlugin(VersionMixin, MixinBase, MetaBase): """The InvenTreePlugin class is used to integrate with 3rd party software. DO NOT USE THIS DIRECTLY, USE plugin.InvenTreePlugin @@ -191,11 +207,18 @@ class InvenTreePlugin(MixinBase, MetaBase): """ super().__init__() self.add_mixin('base') - self.def_path = inspect.getfile(self.__class__) - self.path = os.path.dirname(self.def_path) self.define_package() + @classmethod + def file(cls) -> Path: + """File that contains plugin definition.""" + return Path(inspect.getfile(cls)) + + def path(self) -> Path: + """Path to plugins base folder.""" + return self.file().parent + def _get_value(self, meta_name: str, package_name: str) -> str: """Extract values from class meta or package info. @@ -243,43 +266,54 @@ class InvenTreePlugin(MixinBase, MetaBase): @property def version(self): """Version of plugin.""" - version = self._get_value('VERSION', 'version') - return version + return self._get_value('VERSION', 'version') @property def website(self): """Website of plugin - if set else None.""" - website = self._get_value('WEBSITE', 'website') - return website + return self._get_value('WEBSITE', 'website') @property def license(self): """License of plugin.""" - lic = self._get_value('LICENSE', 'license') - return lic + return self._get_value('LICENSE', 'license') # endregion + @classmethod + def check_is_package(cls): + """Is the plugin delivered as a package.""" + return getattr(cls, 'is_package', False) + @property def _is_package(self): """Is the plugin delivered as a package.""" return getattr(self, 'is_package', False) - @property - def is_sample(self): + @classmethod + def check_is_sample(cls) -> bool: """Is this plugin part of the samples?""" - path = str(self.package_path) - return path.startswith('plugin/samples/') + return str(cls.check_package_path()).startswith('plugin/samples/') + + @property + def is_sample(self) -> bool: + """Is this plugin part of the samples?""" + return self.check_is_sample() + + @classmethod + def check_package_path(cls): + """Path to the plugin.""" + if cls.check_is_package(): + return cls.__module__ # pragma: no cover + + try: + return cls.file().relative_to(settings.BASE_DIR) + except ValueError: + return cls.file() @property def package_path(self): """Path to the plugin.""" - if self._is_package: - return self.__module__ # pragma: no cover - - try: - return pathlib.Path(self.def_path).relative_to(settings.BASE_DIR) - except ValueError: - return pathlib.Path(self.def_path) + return self.check_package_path() @property def settings_url(self): @@ -289,7 +323,7 @@ class InvenTreePlugin(MixinBase, MetaBase): # region package info def _get_package_commit(self): """Get last git commit for the plugin.""" - return get_git_log(self.def_path) + return get_git_log(str(self.file())) @classmethod def _get_package_metadata(cls): diff --git a/InvenTree/plugin/registry.py b/InvenTree/plugin/registry.py index ec0b13410c..9b0e8e29c0 100644 --- a/InvenTree/plugin/registry.py +++ b/InvenTree/plugin/registry.py @@ -11,7 +11,7 @@ import os import subprocess from importlib import reload from pathlib import Path -from typing import OrderedDict +from typing import Dict, List, OrderedDict from django.apps import apps from django.conf import settings @@ -41,19 +41,20 @@ class PluginsRegistry: Set up all needed references for internal and external states. """ # plugin registry - self.plugins = {} - self.plugins_inactive = {} + self.plugins: Dict[str, InvenTreePlugin] = {} # List of active instances + self.plugins_inactive: Dict[str, InvenTreePlugin] = {} # List of inactive instances + self.plugins_full: Dict[str, InvenTreePlugin] = {} # List of all plugin instances - self.plugin_modules = [] # Holds all discovered plugins + self.plugin_modules: List(InvenTreePlugin) = [] # Holds all discovered plugins - self.errors = {} # Holds discovering errors + self.errors = {} # Holds discovering errors # flags - self.is_loading = False - self.apps_loading = True # Marks if apps were reloaded yet - self.git_is_modern = True # Is a modern version of git available + self.is_loading = False # Are plugins beeing loaded right now + self.apps_loading = True # Marks if apps were reloaded yet + self.git_is_modern = True # Is a modern version of git available - self.installed_apps = [] # Holds all added plugin_paths + self.installed_apps = [] # Holds all added plugin_paths # mixins self.mixins_settings = {} @@ -339,74 +340,77 @@ class PluginsRegistry: # endregion # region general internal loading /activating / deactivating / deloading - def _init_plugins(self, disabled=None): + def _init_plugins(self, disabled: str = None): """Initialise all found plugins. - :param disabled: loading path of disabled app, defaults to None - :type disabled: str, optional - :raises error: IntegrationPluginError + Args: + disabled (str, optional): Loading path of disabled app. Defaults to None. + + Raises: + error: IntegrationPluginError """ from plugin.models import PluginConfig + def safe_reference(plugin, key: str, active: bool = True): + """Safe reference to plugin dicts.""" + if active: + self.plugins[key] = plugin + else: + # Deactivate plugin in db + if not settings.PLUGIN_TESTING: # pragma: no cover + plugin.db.active = False + plugin.db.save(no_reload=True) + self.plugins_inactive[key] = plugin.db + self.plugins_full[key] = plugin + logger.info('Starting plugin initialisation') # Initialize plugins - for plugin in self.plugin_modules: - # Check if package - was_packaged = getattr(plugin, 'is_package', False) - - # Check if activated + for plg in self.plugin_modules: # These checks only use attributes - never use plugin supplied functions -> that would lead to arbitrary code execution!! - plug_name = plugin.NAME - plug_key = plugin.SLUG if getattr(plugin, 'SLUG', None) else plug_name - plug_key = slugify(plug_key) # keys are slugs! + plg_name = plg.NAME + plg_key = slugify(plg.SLUG if getattr(plg, 'SLUG', None) else plg_name) # keys are slugs! + try: - plugin_db_setting, _ = PluginConfig.objects.get_or_create(key=plug_key, name=plug_name) + plg_db, _ = PluginConfig.objects.get_or_create(key=plg_key, name=plg_name) except (OperationalError, ProgrammingError) as error: # Exception if the database has not been migrated yet - check if test are running - raise if not if not settings.PLUGIN_TESTING: raise error # pragma: no cover - plugin_db_setting = None + plg_db = None except (IntegrityError) as error: # pragma: no cover - logger.error(f"Error initializing plugin: {error}") + logger.error(f"Error initializing plugin `{plg_name}`: {error}") + + # Append reference to plugin + plg.db = plg_db # Always activate if testing - if settings.PLUGIN_TESTING or (plugin_db_setting and plugin_db_setting.active): - # Check if the plugin was blocked -> threw an error - if disabled: - # option1: package, option2: file-based - if (plugin.__name__ == disabled) or (plugin.__module__ == disabled): - # Errors are bad so disable the plugin in the database - if not settings.PLUGIN_TESTING: # pragma: no cover - plugin_db_setting.active = False - plugin_db_setting.save(no_reload=True) - - # Add to inactive plugins so it shows up in the ui - self.plugins_inactive[plug_key] = plugin_db_setting - continue # continue -> the plugin is not loaded - - # Initialize package - # now we can be sure that an admin has activated the plugin - logger.info(f'Loading plugin {plug_name}') + if settings.PLUGIN_TESTING or (plg_db and plg_db.active): + # Check if the plugin was blocked -> threw an error; option1: package, option2: file-based + if disabled and ((plg.__name__ == disabled) or (plg.__module__ == disabled)): + safe_reference(plugin=plg, key=plg_key, active=False) + continue # continue -> the plugin is not loaded + # Initialize package - we can be sure that an admin has activated the plugin + logger.info(f'Loading plugin `{plg_name}`') try: - plugin = plugin() + plg_i: InvenTreePlugin = plg() + logger.info(f'Loaded plugin `{plg_name}`') except Exception as error: - # log error and raise it -> disable plugin - handle_error(error, log_name='init') + handle_error(error, log_name='init') # log error and raise it -> disable plugin - logger.debug(f'Loaded plugin {plug_name}') + # Safe extra attributes + plg_i.is_package = getattr(plg_i, 'is_package', False) + plg_i.pk = plg_db.pk if plg_db else None + plg_i.db = plg_db - plugin.is_package = was_packaged - - if plugin_db_setting: - plugin.pk = plugin_db_setting.pk - - # safe reference - self.plugins[plugin.slug] = plugin - else: - # save for later reference - self.plugins_inactive[plug_key] = plugin_db_setting # pragma: no cover + # Run version check for plugin + if (plg_i.MIN_VERSION or plg_i.MAX_VERSION) and not plg_i.check_version(): + safe_reference(plugin=plg_i, key=plg_key, active=False) + else: + safe_reference(plugin=plg_i, key=plg_key) + else: # pragma: no cover + safe_reference(plugin=plg, key=plg_key, active=False) def _activate_plugins(self, force_reload=False, full_reload: bool = False): """Run activation functions for all plugins. @@ -583,10 +587,10 @@ class PluginsRegistry: """ try: # for local path plugins - plugin_path = '.'.join(Path(plugin.path).relative_to(settings.BASE_DIR).parts) + plugin_path = '.'.join(plugin.path().relative_to(settings.BASE_DIR).parts) except ValueError: # pragma: no cover - # plugin is shipped as package - plugin_path = plugin.NAME + # plugin is shipped as package - extract plugin module name + plugin_path = plugin.__module__.split('.')[0] return plugin_path def deactivate_plugin_app(self): @@ -640,24 +644,25 @@ class PluginsRegistry: self.installed_apps = [] def _clean_registry(self): - # remove all plugins from registry - self.plugins = {} - self.plugins_inactive = {} + """Remove all plugins from registry.""" + self.plugins: Dict[str, InvenTreePlugin] = {} + self.plugins_inactive: Dict[str, InvenTreePlugin] = {} + self.plugins_full: Dict[str, InvenTreePlugin] = {} def _update_urls(self): - from InvenTree.urls import frontendpatterns as urlpatterns + from InvenTree.urls import frontendpatterns as urlpattern from InvenTree.urls import urlpatterns as global_pattern from plugin.urls import get_plugin_urls - for index, a in enumerate(urlpatterns): - if hasattr(a, 'app_name'): - if a.app_name == 'admin': - urlpatterns[index] = re_path(r'^admin/', admin.site.urls, name='inventree-admin') - elif a.app_name == 'plugin': - urlpatterns[index] = get_plugin_urls() + for index, url in enumerate(urlpattern): + if hasattr(url, 'app_name'): + if url.app_name == 'admin': + urlpattern[index] = re_path(r'^admin/', admin.site.urls, name='inventree-admin') + elif url.app_name == 'plugin': + urlpattern[index] = get_plugin_urls() - # replace frontendpatterns - global_pattern[0] = re_path('', include(urlpatterns)) + # Replace frontendpatterns + global_pattern[0] = re_path('', include(urlpattern)) clear_url_caches() def _reload_apps(self, force_reload: bool = False, full_reload: bool = False): @@ -693,7 +698,7 @@ class PluginsRegistry: # endregion -registry = PluginsRegistry() +registry: PluginsRegistry = PluginsRegistry() def call_function(plugin_name, function_name, *args, **kwargs): diff --git a/InvenTree/plugin/samples/integration/version.py b/InvenTree/plugin/samples/integration/version.py new file mode 100644 index 0000000000..47314f3df6 --- /dev/null +++ b/InvenTree/plugin/samples/integration/version.py @@ -0,0 +1,9 @@ +"""Sample plugin for versioning.""" +from plugin import InvenTreePlugin + + +class VersionPlugin(InvenTreePlugin): + """A small version sample.""" + + NAME = "version" + MAX_VERSION = '0.1.0' diff --git a/InvenTree/plugin/template.py b/InvenTree/plugin/template.py index c16135a7a3..01e57c1958 100644 --- a/InvenTree/plugin/template.py +++ b/InvenTree/plugin/template.py @@ -1,7 +1,5 @@ """Load templates for loaded plugins.""" -from pathlib import Path - from django.template.loaders.filesystem import Loader as FilesystemLoader from plugin import registry @@ -26,8 +24,8 @@ class PluginTemplateLoader(FilesystemLoader): template_dirs = [] for plugin in registry.plugins.values(): - new_path = Path(plugin.path) / dirname - if Path(new_path).is_dir(): + new_path = plugin.path().joinpath(dirname) + if new_path.is_dir(): template_dirs.append(new_path) return tuple(template_dirs) diff --git a/InvenTree/plugin/test_plugin.py b/InvenTree/plugin/test_plugin.py index 7dfdaf44ad..4df129bc0d 100644 --- a/InvenTree/plugin/test_plugin.py +++ b/InvenTree/plugin/test_plugin.py @@ -100,6 +100,14 @@ class InvenTreePluginTests(TestCase): self.plugin_name = NameInvenTreePlugin() self.plugin_sample = SampleIntegrationPlugin() + class VersionInvenTreePlugin(InvenTreePlugin): + NAME = 'Version' + + MIN_VERSION = '0.1.0' + MAX_VERSION = '0.1.3' + + self.plugin_version = VersionInvenTreePlugin() + def test_basic_plugin_init(self): """Check if a basic plugin intis.""" self.assertEqual(self.plugin.NAME, '') @@ -169,6 +177,16 @@ class InvenTreePluginTests(TestCase): # check default value is used self.assertEqual(self.plugin_old.get_meta_value('ABC', 'ABCD', '123'), '123') + def test_version(self): + """Test Version checks""" + + self.assertFalse(self.plugin_version.check_version([0, 0, 3])) + self.assertTrue(self.plugin_version.check_version([0, 1, 0])) + self.assertFalse(self.plugin_version.check_version([0, 1, 4])) + + plug = registry.plugins_full.get('version') + self.assertEqual(plug.is_active(), False) + class RegistryTests(TestCase): """Tests for registry loading methods.""" diff --git a/InvenTree/templates/InvenTree/settings/plugin.html b/InvenTree/templates/InvenTree/settings/plugin.html index 4e2310832b..8051563d24 100644 --- a/InvenTree/templates/InvenTree/settings/plugin.html +++ b/InvenTree/templates/InvenTree/settings/plugin.html @@ -25,6 +25,8 @@ {% include "InvenTree/settings/setting.html" with key="ENABLE_PLUGINS_NAVIGATION" icon="fa-sitemap" %} {% include "InvenTree/settings/setting.html" with key="ENABLE_PLUGINS_APP" icon="fa-rocket" %} {% include "InvenTree/settings/setting.html" with key="PLUGIN_ON_STARTUP" %} + + {% include "InvenTree/settings/setting.html" with key="PLUGIN_CHECK_SIGNATURES" %}
diff --git a/InvenTree/templates/InvenTree/settings/plugin_settings.html b/InvenTree/templates/InvenTree/settings/plugin_settings.html index 2ba3a401b2..0d06ead680 100644 --- a/InvenTree/templates/InvenTree/settings/plugin_settings.html +++ b/InvenTree/templates/InvenTree/settings/plugin_settings.html @@ -112,6 +112,9 @@ {% trans "Commit Message" %}{{ plugin.package.message }}{% include "clip.html" %} {% endif %} + + {% settings_value "PLUGIN_CHECK_SIGNATURES" as signatures %} + {% if signatures %} {% trans "Sign Status" %} @@ -122,6 +125,7 @@ {% trans "Sign Key" %} {{ plugin.package.key }}{% include "clip.html" %} + {% endif %}
From b9f83eefc842afba5a920038f51e66683fb3e120 Mon Sep 17 00:00:00 2001 From: wolflu05 <76838159+wolflu05@users.noreply.github.com> Date: Tue, 16 Aug 2022 13:51:55 +0200 Subject: [PATCH 22/60] Feature/icons for PartCategory and StockLocation (#3542) * Added icon to stock location - added `icon` field to `stock_stocklocation` model - added input field to stock location form - added icon to breadcrumb treeview in header - added icon to sub-locations table - added icon to location detail information - added `STOCK_LOCATION_DEFAULT_ICON` setting as default * Added icon to part category - added `icon` field to `part_partcategory` model - added input field to part category form - added icon to breadcrumb treeview in header - added icon to sub-categories table - added icon to category detail information - added `PART_CATEGORY_DEFAULT_ICON` setting as default * Added `blocktrans` to allowed tags in ci check * fix: style * Added `endblocktrans` to allowed tags in ci check * fix: missing `,` in ci check allowed tags script * Removed blocktrans from js and fixed style --- InvenTree/InvenTree/static/css/inventree.css | 5 +++++ InvenTree/common/models.py | 12 ++++++++++++ .../part/migrations/0084_partcategory_icon.py | 18 ++++++++++++++++++ InvenTree/part/models.py | 7 +++++++ InvenTree/part/serializers.py | 2 ++ InvenTree/part/templates/part/category.html | 11 +++++++++-- .../migrations/0083_stocklocation_icon.py | 18 ++++++++++++++++++ InvenTree/stock/models.py | 7 +++++++ InvenTree/stock/serializers.py | 2 ++ InvenTree/stock/templates/stock/location.html | 10 ++++++++-- .../templates/InvenTree/settings/part.html | 2 ++ .../templates/InvenTree/settings/stock.html | 1 + InvenTree/templates/js/dynamic/nav.js | 1 + InvenTree/templates/js/translated/part.js | 11 ++++++++++- InvenTree/templates/js/translated/stock.js | 9 +++++++++ 15 files changed, 111 insertions(+), 5 deletions(-) create mode 100644 InvenTree/part/migrations/0084_partcategory_icon.py create mode 100644 InvenTree/stock/migrations/0083_stocklocation_icon.py diff --git a/InvenTree/InvenTree/static/css/inventree.css b/InvenTree/InvenTree/static/css/inventree.css index 0d6b07e9ff..c6dded3071 100644 --- a/InvenTree/InvenTree/static/css/inventree.css +++ b/InvenTree/InvenTree/static/css/inventree.css @@ -1028,3 +1028,8 @@ a { margin-top: 3px; overflow: hidden; } + +.treeview .node-icon { + margin-left: 0.25rem; + margin-right: 0.25rem; +} diff --git a/InvenTree/common/models.py b/InvenTree/common/models.py index a0752e4915..aec2c553f1 100644 --- a/InvenTree/common/models.py +++ b/InvenTree/common/models.py @@ -1070,6 +1070,12 @@ class InvenTreeSetting(BaseInvenTreeSetting): 'validator': InvenTree.validators.validate_part_name_format }, + 'PART_CATEGORY_DEFAULT_ICON': { + 'name': _('Part Category Default Icon'), + 'description': _('Part category default icon (empty means no icon)'), + 'default': '', + }, + 'LABEL_ENABLE': { 'name': _('Enable label printing'), 'description': _('Enable label printing from the web interface'), @@ -1168,6 +1174,12 @@ class InvenTreeSetting(BaseInvenTreeSetting): 'validator': bool, }, + 'STOCK_LOCATION_DEFAULT_ICON': { + 'name': _('Stock Location Default Icon'), + 'description': _('Stock location default icon (empty means no icon)'), + 'default': '', + }, + 'BUILDORDER_REFERENCE_PATTERN': { 'name': _('Build Order Reference Pattern'), 'description': _('Required pattern for generating Build Order reference field'), diff --git a/InvenTree/part/migrations/0084_partcategory_icon.py b/InvenTree/part/migrations/0084_partcategory_icon.py new file mode 100644 index 0000000000..8b92cfaad0 --- /dev/null +++ b/InvenTree/part/migrations/0084_partcategory_icon.py @@ -0,0 +1,18 @@ +# Generated by Django 3.2.15 on 2022-08-15 08:38 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('part', '0083_auto_20220731_2357'), + ] + + operations = [ + migrations.AddField( + model_name='partcategory', + name='icon', + field=models.CharField(blank=True, help_text='Icon (optional)', max_length=100, verbose_name='Icon'), + ), + ] diff --git a/InvenTree/part/models.py b/InvenTree/part/models.py index 38319a2e91..95cf3f4405 100644 --- a/InvenTree/part/models.py +++ b/InvenTree/part/models.py @@ -101,6 +101,13 @@ class PartCategory(MetadataMixin, InvenTreeTree): default_keywords = models.CharField(null=True, blank=True, max_length=250, verbose_name=_('Default keywords'), help_text=_('Default keywords for parts in this category')) + icon = models.CharField( + blank=True, + max_length=100, + verbose_name=_("Icon"), + help_text=_("Icon (optional)") + ) + @staticmethod def get_api_url(): """Return the API url associated with the PartCategory model""" diff --git a/InvenTree/part/serializers.py b/InvenTree/part/serializers.py index 71fb7c303e..3c983bfe04 100644 --- a/InvenTree/part/serializers.py +++ b/InvenTree/part/serializers.py @@ -75,6 +75,7 @@ class CategorySerializer(InvenTreeModelSerializer): 'pathstring', 'starred', 'url', + 'icon', ] @@ -88,6 +89,7 @@ class CategoryTree(InvenTreeModelSerializer): 'pk', 'name', 'parent', + 'icon', ] diff --git a/InvenTree/part/templates/part/category.html b/InvenTree/part/templates/part/category.html index d31fe08321..6d55397007 100644 --- a/InvenTree/part/templates/part/category.html +++ b/InvenTree/part/templates/part/category.html @@ -1,6 +1,7 @@ {% extends "part/part_app_base.html" %} {% load static %} {% load i18n %} +{% load inventree_extras %} {% block sidebar %} {% include 'part/category_sidebar.html' %} @@ -12,7 +13,12 @@ {% block heading %} {% if category %} -{% trans "Part Category" %}: {{ category.name }} +{% trans "Part Category" %}: +{% settings_value "PART_CATEGORY_DEFAULT_ICON" as default_icon %} +{% if category.icon or default_icon %} + +{% endif %} +{{ category.name }} {% else %} {% trans "Parts" %} {% endif %} @@ -288,7 +294,8 @@ node.href = `/part/category/${node.pk}/`; return node; - } + }, + defaultIcon: global_settings.PART_CATEGORY_DEFAULT_ICON, }); onPanelLoad('subcategories', function() { diff --git a/InvenTree/stock/migrations/0083_stocklocation_icon.py b/InvenTree/stock/migrations/0083_stocklocation_icon.py new file mode 100644 index 0000000000..7b19658157 --- /dev/null +++ b/InvenTree/stock/migrations/0083_stocklocation_icon.py @@ -0,0 +1,18 @@ +# Generated by Django 3.2.15 on 2022-08-15 08:38 + +from django.db import migrations, models + + +class Migration(migrations.Migration): + + dependencies = [ + ('stock', '0082_alter_stockitem_link'), + ] + + operations = [ + migrations.AddField( + model_name='stocklocation', + name='icon', + field=models.CharField(blank=True, help_text='Icon (optional)', max_length=100, verbose_name='Icon'), + ), + ] diff --git a/InvenTree/stock/models.py b/InvenTree/stock/models.py index b23e72117d..d015b09aae 100644 --- a/InvenTree/stock/models.py +++ b/InvenTree/stock/models.py @@ -78,6 +78,13 @@ class StockLocation(MetadataMixin, InvenTreeTree): """Return API url.""" return reverse('api-location-list') + icon = models.CharField( + blank=True, + max_length=100, + verbose_name=_("Icon"), + help_text=_("Icon (optional)") + ) + owner = models.ForeignKey(Owner, on_delete=models.SET_NULL, blank=True, null=True, verbose_name=_('Owner'), help_text=_('Select Owner'), diff --git a/InvenTree/stock/serializers.py b/InvenTree/stock/serializers.py index 31df615989..3690de5516 100644 --- a/InvenTree/stock/serializers.py +++ b/InvenTree/stock/serializers.py @@ -570,6 +570,7 @@ class LocationTreeSerializer(InvenTree.serializers.InvenTreeModelSerializer): 'pk', 'name', 'parent', + 'icon', ] @@ -607,6 +608,7 @@ class LocationSerializer(InvenTree.serializers.InvenTreeModelSerializer): 'pathstring', 'items', 'owner', + 'icon', ] diff --git a/InvenTree/stock/templates/stock/location.html b/InvenTree/stock/templates/stock/location.html index 5fd8312b2f..13f153fc65 100644 --- a/InvenTree/stock/templates/stock/location.html +++ b/InvenTree/stock/templates/stock/location.html @@ -14,7 +14,12 @@ {% block heading %} {% if location %} -{% trans "Stock Location" %}: {{ location.name }} +{% trans "Stock Location" %}: +{% settings_value "STOCK_LOCATION_DEFAULT_ICON" as default_icon %} +{% if location.icon or default_icon %} + +{% endif %} +{{ location.name }} {% else %} {% trans "Stock" %} {% endif %} @@ -380,7 +385,8 @@ node.href = `/stock/location/${node.pk}/`; return node; - } + }, + defaultIcon: global_settings.STOCK_LOCATION_DEFAULT_ICON, }); {% endblock %} diff --git a/InvenTree/templates/InvenTree/settings/part.html b/InvenTree/templates/InvenTree/settings/part.html index 1004113dc6..aea734d5a4 100644 --- a/InvenTree/templates/InvenTree/settings/part.html +++ b/InvenTree/templates/InvenTree/settings/part.html @@ -36,6 +36,8 @@ {% include "InvenTree/settings/setting.html" with key="PART_INTERNAL_PRICE" %} {% include "InvenTree/settings/setting.html" with key="PART_BOM_USE_INTERNAL_PRICE" %} + + {% include "InvenTree/settings/setting.html" with key="PART_CATEGORY_DEFAULT_ICON" icon="fa-icons" %} diff --git a/InvenTree/templates/InvenTree/settings/stock.html b/InvenTree/templates/InvenTree/settings/stock.html index f0cd403d68..e897b13ea7 100644 --- a/InvenTree/templates/InvenTree/settings/stock.html +++ b/InvenTree/templates/InvenTree/settings/stock.html @@ -17,6 +17,7 @@ {% include "InvenTree/settings/setting.html" with key="STOCK_ALLOW_EXPIRED_SALE" icon="fa-truck" %} {% include "InvenTree/settings/setting.html" with key="STOCK_ALLOW_EXPIRED_BUILD" icon="fa-tools" %} {% include "InvenTree/settings/setting.html" with key="STOCK_OWNERSHIP_CONTROL" icon="fa-users" %} + {% include "InvenTree/settings/setting.html" with key="STOCK_LOCATION_DEFAULT_ICON" icon="fa-icons" %} {% endblock %} diff --git a/InvenTree/templates/js/dynamic/nav.js b/InvenTree/templates/js/dynamic/nav.js index e22ea19388..05fc50abd8 100644 --- a/InvenTree/templates/js/dynamic/nav.js +++ b/InvenTree/templates/js/dynamic/nav.js @@ -216,6 +216,7 @@ function enableBreadcrumbTree(options) { enableLinks: true, expandIcon: 'fas fa-chevron-right', collapseIcon: 'fa fa-chevron-down', + nodeIcon: options.defaultIcon, }); } diff --git a/InvenTree/templates/js/translated/part.js b/InvenTree/templates/js/translated/part.js index 2b6e6f0f41..d0ade1dd44 100644 --- a/InvenTree/templates/js/translated/part.js +++ b/InvenTree/templates/js/translated/part.js @@ -301,7 +301,11 @@ function categoryFields() { default_location: {}, default_keywords: { icon: 'fa-key', - } + }, + icon: { + help_text: `{% trans "Icon (optional) - Explore all available icons on" %} Font Awesome.`, + placeholder: 'fas fa-tag', + }, }; } @@ -1916,6 +1920,11 @@ function loadPartCategoryTable(table, options) { } } + const icon = row.icon || global_settings.PART_CATEGORY_DEFAULT_ICON; + if (icon) { + html += ``; + } + html += renderLink( value, `/part/category/${row.pk}/` diff --git a/InvenTree/templates/js/translated/stock.js b/InvenTree/templates/js/translated/stock.js index 21ef8c215d..67d5865b86 100644 --- a/InvenTree/templates/js/translated/stock.js +++ b/InvenTree/templates/js/translated/stock.js @@ -114,6 +114,10 @@ function stockLocationFields(options={}) { name: {}, description: {}, owner: {}, + icon: { + help_text: `{% trans "Icon (optional) - Explore all available icons on" %} Font Awesome.`, + placeholder: 'fas fa-box', + }, }; if (options.parent) { @@ -2402,6 +2406,11 @@ function loadStockLocationTable(table, options) { } } + const icon = row.icon || global_settings.STOCK_LOCATION_DEFAULT_ICON; + if (icon) { + html += ``; + } + html += renderLink( value, `/stock/location/${row.pk}/` From 0a57f9d459cc58de0842002332ff5a973547df35 Mon Sep 17 00:00:00 2001 From: Matthias Mair Date: Wed, 17 Aug 2022 01:10:56 +0200 Subject: [PATCH 23/60] Fix: Broken subfolder tests in postgres/docker CI in master (#3559) * disable failing tests for sanity check * run postgrest too * only run problematic tests * make paths relative * refactor to reduce duplicate code * remove testing restrictions again --- .github/workflows/qc_checks.yaml | 2 -- InvenTree/plugin/test_plugin.py | 8 ++++++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/.github/workflows/qc_checks.yaml b/.github/workflows/qc_checks.yaml index 4c4b311e35..6b8c1b5473 100644 --- a/.github/workflows/qc_checks.yaml +++ b/.github/workflows/qc_checks.yaml @@ -185,9 +185,7 @@ jobs: postgres: name: Tests - DB [PostgreSQL] runs-on: ubuntu-20.04 - needs: [ 'javascript', 'html', 'pre-commit' ] - if: github.event_name == 'push' env: INVENTREE_DB_ENGINE: django.db.backends.postgresql diff --git a/InvenTree/plugin/test_plugin.py b/InvenTree/plugin/test_plugin.py index 4df129bc0d..76ddc46b68 100644 --- a/InvenTree/plugin/test_plugin.py +++ b/InvenTree/plugin/test_plugin.py @@ -191,6 +191,10 @@ class InvenTreePluginTests(TestCase): class RegistryTests(TestCase): """Tests for registry loading methods.""" + def mockDir(self) -> None: + """Returns path to mock dir""" + return str(Path(__file__).parent.joinpath('mock').absolute()) + def run_package_test(self, directory): """General runner for testing package based installs.""" @@ -223,7 +227,7 @@ class RegistryTests(TestCase): def test_subfolder_loading(self): """Test that plugins in subfolders get loaded.""" - self.run_package_test('InvenTree/plugin/mock') + self.run_package_test(self.mockDir()) def test_folder_loading(self): """Test that plugins in folders outside of BASE_DIR get loaded.""" @@ -232,7 +236,7 @@ class RegistryTests(TestCase): with tempfile.TemporaryDirectory() as tmp: # Fill directory with sample data new_dir = Path(tmp).joinpath('mock') - shutil.copytree(Path('InvenTree/plugin/mock').absolute(), new_dir) + shutil.copytree(self.mockDir(), new_dir) # Run tests self.run_package_test(str(new_dir)) From d9350877c6d911335664d11d5f1c2bb6c558cc67 Mon Sep 17 00:00:00 2001 From: Oliver Date: Wed, 17 Aug 2022 14:38:37 +1000 Subject: [PATCH 24/60] Update 'stock' icons for part table (#3561) - Display on-order and building quantity as icons - Simplified display logic - Do not hide information in certain circumstances. --- InvenTree/templates/js/translated/part.js | 66 +++++++++++------------ 1 file changed, 31 insertions(+), 35 deletions(-) diff --git a/InvenTree/templates/js/translated/part.js b/InvenTree/templates/js/translated/part.js index d0ade1dd44..cbb7c77c28 100644 --- a/InvenTree/templates/js/translated/part.js +++ b/InvenTree/templates/js/translated/part.js @@ -1460,46 +1460,42 @@ function loadPartTable(table, url, options={}) { title: '{% trans "Stock" %}', searchable: false, formatter: function(value, row) { - var link = '?display=part-stock'; - if (row.in_stock) { - // There IS stock available for this part + var text = ''; - // Is stock "low" (below the 'minimum_stock' quantity)? - if (row.minimum_stock && row.minimum_stock > row.in_stock) { - value += `{% trans "Low stock" %}`; - } else if (value == 0) { - if (row.ordering) { - // There is no available stock, but stock is on order - value = `0{% trans "On Order" %}: ${row.ordering}`; - link = '?display=purchase-orders'; - } else if (row.building) { - // There is no available stock, but stock is being built - value = `0{% trans "Building" %}: ${row.building}`; - link = '?display=build-orders'; - } else { - // There is no available stock - value = `0{% trans "No stock available" %}`; - } - } + if (row.unallocated_stock != row.in_stock) { + text = `${row.unallocated_stock} / ${row.in_stock}`; } else { - // There IS NO stock available for this part - - if (row.ordering) { - // There is no stock, but stock is on order - value = `0{% trans "On Order" %}: ${row.ordering}`; - link = '?display=purchase-orders'; - } else if (row.building) { - // There is no stock, but stock is being built - value = `0{% trans "Building" %}: ${row.building}`; - link = '?display=build-orders'; - } else { - // There is no stock - value = `0{% trans "No Stock" %}`; - } + text = `${row.in_stock}`; } - return renderLink(value, `/part/${row.pk}/${link}`); + // Construct extra informational badges + var badges = ''; + + if (row.in_stock == 0) { + badges += ``; + } else if (row.in_stock < row.minimum_stock) { + badges += ``; + } + + if (row.ordering && row.ordering > 0) { + badges += renderLink( + ``, + `/part/${row.pk}/?display=purchase-orders` + ); + } + + if (row.building && row.building > 0) { + badges += renderLink( + ``, + `/part/${row.pk}/?display=build-orders` + ); + } + + text = renderLink(text, `/part/${row.pk}/?display=part-stock`); + text += badges; + + return text; } }; From 1d4a20d1d4cfbdae590f2215fad9c1790898c475 Mon Sep 17 00:00:00 2001 From: Oliver Date: Wed, 17 Aug 2022 16:24:22 +1000 Subject: [PATCH 25/60] New Crowdin updates (#3551) * updated translation base * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- InvenTree/locale/cs/LC_MESSAGES/django.po | 1650 ++++++++--------- InvenTree/locale/de/LC_MESSAGES/django.po | 1650 ++++++++--------- InvenTree/locale/el/LC_MESSAGES/django.po | 1650 ++++++++--------- InvenTree/locale/en/LC_MESSAGES/django.po | 58 +- InvenTree/locale/es/LC_MESSAGES/django.po | 1650 ++++++++--------- InvenTree/locale/es_MX/LC_MESSAGES/django.po | 58 +- InvenTree/locale/fa/LC_MESSAGES/django.po | 1650 ++++++++--------- InvenTree/locale/fr/LC_MESSAGES/django.po | 1650 ++++++++--------- InvenTree/locale/he/LC_MESSAGES/django.po | 1650 ++++++++--------- InvenTree/locale/hu/LC_MESSAGES/django.po | 1660 +++++++++--------- InvenTree/locale/id/LC_MESSAGES/django.po | 1650 ++++++++--------- InvenTree/locale/it/LC_MESSAGES/django.po | 1650 ++++++++--------- InvenTree/locale/ja/LC_MESSAGES/django.po | 1650 ++++++++--------- InvenTree/locale/ko/LC_MESSAGES/django.po | 1650 ++++++++--------- InvenTree/locale/nl/LC_MESSAGES/django.po | 1644 ++++++++--------- InvenTree/locale/no/LC_MESSAGES/django.po | 1650 ++++++++--------- InvenTree/locale/pl/LC_MESSAGES/django.po | 1650 ++++++++--------- InvenTree/locale/pt/LC_MESSAGES/django.po | 1650 ++++++++--------- InvenTree/locale/pt_br/LC_MESSAGES/django.po | 58 +- InvenTree/locale/ru/LC_MESSAGES/django.po | 1650 ++++++++--------- InvenTree/locale/sv/LC_MESSAGES/django.po | 1650 ++++++++--------- InvenTree/locale/th/LC_MESSAGES/django.po | 1650 ++++++++--------- InvenTree/locale/tr/LC_MESSAGES/django.po | 1650 ++++++++--------- InvenTree/locale/vi/LC_MESSAGES/django.po | 1650 ++++++++--------- InvenTree/locale/zh/LC_MESSAGES/django.po | 1650 ++++++++--------- 25 files changed, 18729 insertions(+), 17749 deletions(-) diff --git a/InvenTree/locale/cs/LC_MESSAGES/django.po b/InvenTree/locale/cs/LC_MESSAGES/django.po index 0ec5776182..763fb93aad 100644 --- a/InvenTree/locale/cs/LC_MESSAGES/django.po +++ b/InvenTree/locale/cs/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-11 02:47+0000\n" -"PO-Revision-Date: 2022-08-14 21:43\n" +"POT-Creation-Date: 2022-08-16 11:53+0000\n" +"PO-Revision-Date: 2022-08-16 21:36\n" "Last-Translator: \n" "Language-Team: Czech\n" "Language: cs_CZ\n" @@ -36,15 +36,15 @@ msgstr "Zadejte datum" #: order/templates/order/so_sidebar.html:17 #: part/templates/part/part_sidebar.html:59 #: report/templates/report/inventree_build_order_base.html:172 -#: stock/models.py:1993 stock/models.py:2101 stock/serializers.py:329 -#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:823 -#: stock/serializers.py:922 stock/serializers.py:1054 +#: stock/models.py:2000 stock/models.py:2108 stock/serializers.py:329 +#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825 +#: stock/serializers.py:924 stock/serializers.py:1056 #: stock/templates/stock/stock_sidebar.html:25 #: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101 #: templates/js/translated/company.js:964 templates/js/translated/order.js:2104 #: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753 #: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102 -#: templates/js/translated/stock.js:1370 templates/js/translated/stock.js:1976 +#: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980 msgid "Notes" msgstr "" @@ -163,6 +163,10 @@ msgstr "Nenalezena žádná výrobní čísla" msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "" +#: InvenTree/mixins.py:71 +msgid "Remove HTML tags from this value" +msgstr "" + #: InvenTree/models.py:236 msgid "Improperly formatted pattern" msgstr "" @@ -195,7 +199,7 @@ msgstr "Chybějící soubor" msgid "Missing external link" msgstr "Chybějící externí odkaz" -#: InvenTree/models.py:395 stock/models.py:2095 +#: InvenTree/models.py:395 stock/models.py:2102 #: templates/js/translated/attachment.js:103 #: templates/js/translated/attachment.js:241 msgid "Attachment" @@ -207,16 +211,16 @@ msgstr "Vyberte soubor k přiložení" #: InvenTree/models.py:402 company/models.py:124 company/models.py:276 #: company/models.py:510 order/models.py:84 order/models.py:1245 -#: part/models.py:795 +#: part/models.py:802 #: report/templates/report/inventree_build_order_base.html:164 #: templates/js/translated/company.js:656 #: templates/js/translated/company.js:948 templates/js/translated/order.js:2742 -#: templates/js/translated/part.js:1510 +#: templates/js/translated/part.js:1514 msgid "Link" msgstr "Odkaz" -#: InvenTree/models.py:403 build/models.py:296 part/models.py:796 -#: stock/models.py:651 +#: InvenTree/models.py:403 build/models.py:296 part/models.py:803 +#: stock/models.py:658 msgid "Link to external URL" msgstr "Odkaz na externí URL" @@ -229,12 +233,12 @@ msgstr "Komentář" msgid "File comment" msgstr "Komentář k souboru" -#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1646 -#: common/models.py:1647 common/models.py:1870 common/models.py:1871 -#: common/models.py:2133 common/models.py:2134 part/models.py:2193 -#: part/models.py:2213 plugin/models.py:238 plugin/models.py:239 +#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665 +#: common/models.py:1666 common/models.py:1889 common/models.py:1890 +#: common/models.py:2152 common/models.py:2153 part/models.py:2200 +#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2632 +#: templates/js/translated/stock.js:2641 msgid "User" msgstr "Uživatel" @@ -271,19 +275,19 @@ msgstr "Chyba při přejmenování souboru" msgid "Invalid choice" msgstr "Neplatný výběr" -#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1856 -#: company/models.py:358 label/models.py:101 part/models.py:739 -#: part/models.py:2371 plugin/models.py:93 report/models.py:152 +#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875 +#: company/models.py:358 label/models.py:101 part/models.py:746 +#: part/models.py:2378 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 -#: templates/InvenTree/settings/plugin.html:49 -#: templates/InvenTree/settings/plugin.html:132 +#: templates/InvenTree/settings/plugin.html:51 +#: templates/InvenTree/settings/plugin.html:134 #: templates/InvenTree/settings/plugin_settings.html:23 #: templates/InvenTree/settings/settings.html:347 #: templates/js/translated/company.js:545 #: templates/js/translated/company.js:758 #: templates/js/translated/notification.js:71 -#: templates/js/translated/part.js:684 templates/js/translated/part.js:836 -#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2388 +#: templates/js/translated/part.js:688 templates/js/translated/part.js:840 +#: templates/js/translated/part.js:1906 templates/js/translated/stock.js:2392 msgid "Name" msgstr "Název" @@ -292,21 +296,21 @@ msgstr "Název" #: company/models.py:516 company/templates/company/company_base.html:71 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:87 label/models.py:108 -#: order/models.py:82 part/models.py:762 part/templates/part/category.html:74 +#: order/models.py:82 part/models.py:769 part/templates/part/category.html:80 #: part/templates/part/part_base.html:167 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 -#: stock/templates/stock/location.html:103 +#: stock/templates/stock/location.html:108 #: templates/InvenTree/settings/plugin_settings.html:33 #: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848 #: templates/js/translated/build.js:2471 templates/js/translated/company.js:409 #: templates/js/translated/company.js:667 #: templates/js/translated/company.js:959 templates/js/translated/order.js:1720 #: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531 -#: templates/js/translated/part.js:743 templates/js/translated/part.js:1149 -#: templates/js/translated/part.js:1424 templates/js/translated/part.js:1933 -#: templates/js/translated/part.js:2002 templates/js/translated/stock.js:1739 -#: templates/js/translated/stock.js:2415 templates/js/translated/stock.js:2469 +#: templates/js/translated/part.js:747 templates/js/translated/part.js:1153 +#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1942 +#: templates/js/translated/part.js:2011 templates/js/translated/stock.js:1743 +#: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478 msgid "Description" msgstr "Popis" @@ -319,7 +323,7 @@ msgid "parent" msgstr "nadřazený" #: InvenTree/models.py:560 InvenTree/models.py:561 -#: templates/js/translated/part.js:1939 templates/js/translated/stock.js:2421 +#: templates/js/translated/part.js:1948 templates/js/translated/stock.js:2430 msgid "Path" msgstr "Cesta" @@ -331,7 +335,7 @@ msgstr "Chyba serveru" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:55 part/models.py:2692 +#: InvenTree/serializers.py:55 part/models.py:2699 msgid "Must be a valid number" msgstr "Musí být platné číslo" @@ -398,99 +402,99 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/settings.py:609 +#: InvenTree/settings.py:607 msgid "Czech" msgstr "Čeština" -#: InvenTree/settings.py:610 +#: InvenTree/settings.py:608 msgid "German" msgstr "Němčina" -#: InvenTree/settings.py:611 +#: InvenTree/settings.py:609 msgid "Greek" msgstr "Řečtina" -#: InvenTree/settings.py:612 +#: InvenTree/settings.py:610 msgid "English" msgstr "Angličtina" -#: InvenTree/settings.py:613 +#: InvenTree/settings.py:611 msgid "Spanish" msgstr "Španělština" -#: InvenTree/settings.py:614 +#: InvenTree/settings.py:612 msgid "Spanish (Mexican)" msgstr "Španělština (Mexiko)" -#: InvenTree/settings.py:615 +#: InvenTree/settings.py:613 msgid "Farsi / Persian" msgstr "Farsi / Perština" -#: InvenTree/settings.py:616 +#: InvenTree/settings.py:614 msgid "French" msgstr "Francouzština" -#: InvenTree/settings.py:617 +#: InvenTree/settings.py:615 msgid "Hebrew" msgstr "Hebrejština" -#: InvenTree/settings.py:618 +#: InvenTree/settings.py:616 msgid "Hungarian" msgstr "Maďarština" -#: InvenTree/settings.py:619 +#: InvenTree/settings.py:617 msgid "Italian" msgstr "Italština" -#: InvenTree/settings.py:620 +#: InvenTree/settings.py:618 msgid "Japanese" msgstr "Japonština" -#: InvenTree/settings.py:621 +#: InvenTree/settings.py:619 msgid "Korean" msgstr "Korejština" -#: InvenTree/settings.py:622 +#: InvenTree/settings.py:620 msgid "Dutch" msgstr "Nizozemština" -#: InvenTree/settings.py:623 +#: InvenTree/settings.py:621 msgid "Norwegian" msgstr "Norština" -#: InvenTree/settings.py:624 +#: InvenTree/settings.py:622 msgid "Polish" msgstr "Polština" -#: InvenTree/settings.py:625 +#: InvenTree/settings.py:623 msgid "Portuguese" msgstr "Portugalština" -#: InvenTree/settings.py:626 +#: InvenTree/settings.py:624 msgid "Portuguese (Brazilian)" msgstr "Portugalština (Brazilská)" -#: InvenTree/settings.py:627 +#: InvenTree/settings.py:625 msgid "Russian" msgstr "Ruština" -#: InvenTree/settings.py:628 +#: InvenTree/settings.py:626 msgid "Swedish" msgstr "Švédština" -#: InvenTree/settings.py:629 +#: InvenTree/settings.py:627 msgid "Thai" msgstr "Thajština" -#: InvenTree/settings.py:630 +#: InvenTree/settings.py:628 msgid "Turkish" msgstr "Turečtina" -#: InvenTree/settings.py:631 +#: InvenTree/settings.py:629 msgid "Vietnamese" msgstr "Vietnamština" -#: InvenTree/settings.py:632 +#: InvenTree/settings.py:630 msgid "Chinese" msgstr "Čínština" @@ -621,7 +625,7 @@ msgstr "Rozdělit od nadřazené položky" msgid "Split child item" msgstr "" -#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2080 +#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2084 msgid "Merged stock items" msgstr "" @@ -743,7 +747,7 @@ msgid "Build Order Reference" msgstr "" #: build/models.py:166 order/models.py:240 order/models.py:623 -#: order/models.py:904 part/models.py:2610 +#: order/models.py:904 part/models.py:2617 #: part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 @@ -770,10 +774,10 @@ msgstr "" #: build/models.py:191 build/templates/build/build_base.html:77 #: build/templates/build/detail.html:29 company/models.py:670 #: order/models.py:1001 order/models.py:1112 order/models.py:1113 -#: part/models.py:336 part/models.py:2139 part/models.py:2154 -#: part/models.py:2173 part/models.py:2191 part/models.py:2290 -#: part/models.py:2410 part/models.py:2500 part/models.py:2585 -#: part/models.py:2861 part/serializers.py:811 +#: part/models.py:343 part/models.py:2146 part/models.py:2161 +#: part/models.py:2180 part/models.py:2198 part/models.py:2297 +#: part/models.py:2417 part/models.py:2507 part/models.py:2592 +#: part/models.py:2868 part/serializers.py:813 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -796,11 +800,11 @@ msgstr "" #: templates/js/translated/order.js:934 templates/js/translated/order.js:1387 #: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885 #: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507 -#: templates/js/translated/part.js:1134 templates/js/translated/part.js:1206 -#: templates/js/translated/part.js:1402 templates/js/translated/stock.js:582 -#: templates/js/translated/stock.js:747 templates/js/translated/stock.js:954 -#: templates/js/translated/stock.js:1696 templates/js/translated/stock.js:2495 -#: templates/js/translated/stock.js:2690 templates/js/translated/stock.js:2824 +#: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210 +#: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586 +#: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958 +#: templates/js/translated/stock.js:1700 templates/js/translated/stock.js:2504 +#: templates/js/translated/stock.js:2699 templates/js/translated/stock.js:2833 msgid "Part" msgstr "" @@ -858,7 +862,7 @@ msgid "Build status code" msgstr "" #: build/models.py:251 build/serializers.py:225 order/serializers.py:447 -#: stock/models.py:655 templates/js/translated/order.js:1247 +#: stock/models.py:662 templates/js/translated/order.js:1247 msgid "Batch Code" msgstr "" @@ -866,7 +870,7 @@ msgstr "" msgid "Batch code for this build output" msgstr "" -#: build/models.py:258 order/models.py:86 part/models.py:931 +#: build/models.py:258 order/models.py:86 part/models.py:938 #: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544 msgid "Creation Date" msgstr "" @@ -899,7 +903,7 @@ msgstr "" #: build/models.py:289 build/templates/build/build_base.html:190 #: build/templates/build/detail.html:115 order/models.py:100 #: order/templates/order/order_base.html:176 -#: order/templates/order/sales_order_base.html:183 part/models.py:935 +#: order/templates/order/sales_order_base.html:183 part/models.py:942 #: report/templates/report/inventree_build_order_base.html:158 #: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754 msgid "Responsible" @@ -912,7 +916,7 @@ msgstr "" #: build/models.py:295 build/templates/build/detail.html:101 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:153 -#: part/templates/part/part_base.html:346 stock/models.py:649 +#: part/templates/part/part_base.html:346 stock/models.py:656 #: stock/templates/stock/item_base.html:205 msgid "External Link" msgstr "" @@ -978,8 +982,8 @@ msgid "Build to allocate parts" msgstr "" #: build/models.py:1345 build/serializers.py:645 order/serializers.py:1015 -#: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 -#: stock/serializers.py:880 stock/templates/stock/item_base.html:10 +#: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:756 +#: stock/serializers.py:882 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:199 #: templates/js/translated/build.js:741 templates/js/translated/build.js:746 @@ -987,8 +991,8 @@ msgstr "" #: templates/js/translated/order.js:104 templates/js/translated/order.js:2886 #: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193 #: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380 -#: templates/js/translated/stock.js:583 templates/js/translated/stock.js:748 -#: templates/js/translated/stock.js:2568 +#: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752 +#: templates/js/translated/stock.js:2577 msgid "Stock Item" msgstr "" @@ -998,11 +1002,11 @@ msgstr "" #: build/models.py:1358 build/serializers.py:193 #: build/templates/build/build_base.html:82 -#: build/templates/build/detail.html:34 common/models.py:1678 +#: build/templates/build/detail.html:34 common/models.py:1697 #: company/templates/company/supplier_part.html:279 order/models.py:897 #: order/models.py:1423 order/serializers.py:1155 #: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40 -#: part/models.py:2601 part/templates/part/detail.html:937 +#: part/models.py:2608 part/templates/part/detail.html:937 #: part/templates/part/detail.html:1023 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 @@ -1025,11 +1029,11 @@ msgstr "" #: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207 #: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386 #: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037 -#: templates/js/translated/part.js:1034 templates/js/translated/part.js:2147 -#: templates/js/translated/part.js:2378 templates/js/translated/part.js:2412 -#: templates/js/translated/part.js:2490 templates/js/translated/stock.js:454 -#: templates/js/translated/stock.js:608 templates/js/translated/stock.js:778 -#: templates/js/translated/stock.js:2617 templates/js/translated/stock.js:2702 +#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2156 +#: templates/js/translated/part.js:2387 templates/js/translated/part.js:2421 +#: templates/js/translated/part.js:2499 templates/js/translated/stock.js:458 +#: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782 +#: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711 msgid "Quantity" msgstr "" @@ -1071,8 +1075,8 @@ msgid "Enter quantity for build output" msgstr "" #: build/serializers.py:208 build/serializers.py:665 order/models.py:318 -#: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 -#: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 +#: order/serializers.py:287 order/serializers.py:442 part/serializers.py:544 +#: part/serializers.py:976 stock/models.py:484 stock/models.py:1251 #: stock/serializers.py:302 msgid "Quantity must be greater than zero" msgstr "" @@ -1087,7 +1091,7 @@ msgstr "" #: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159 #: stock/serializers.py:311 templates/js/translated/order.js:1258 -#: templates/js/translated/stock.js:267 templates/js/translated/stock.js:455 +#: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459 msgid "Serial Numbers" msgstr "" @@ -1113,16 +1117,16 @@ msgstr "" #: build/serializers.py:366 order/serializers.py:428 order/serializers.py:532 #: stock/serializers.py:322 stock/serializers.py:453 stock/serializers.py:534 -#: stock/serializers.py:915 stock/serializers.py:1148 +#: stock/serializers.py:917 stock/serializers.py:1150 #: stock/templates/stock/item_base.html:390 #: templates/js/translated/barcode.js:436 #: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753 #: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285 #: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305 #: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394 -#: templates/js/translated/part.js:181 templates/js/translated/stock.js:584 -#: templates/js/translated/stock.js:749 templates/js/translated/stock.js:956 -#: templates/js/translated/stock.js:1850 templates/js/translated/stock.js:2509 +#: templates/js/translated/part.js:181 templates/js/translated/stock.js:588 +#: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960 +#: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518 msgid "Location" msgstr "" @@ -1135,8 +1139,8 @@ msgstr "" #: order/serializers.py:465 stock/templates/stock/item_base.html:423 #: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505 #: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724 -#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1825 -#: templates/js/translated/stock.js:2586 templates/js/translated/stock.js:2718 +#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829 +#: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727 msgid "Status" msgstr "" @@ -1212,8 +1216,8 @@ msgstr "" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:577 build/serializers.py:622 part/models.py:2719 -#: part/models.py:2853 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726 +#: part/models.py:2860 msgid "BOM Item" msgstr "" @@ -1229,7 +1233,7 @@ msgstr "" msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:651 stock/serializers.py:767 +#: build/serializers.py:651 stock/serializers.py:769 msgid "Item must be in stock" msgstr "" @@ -1367,7 +1371,7 @@ msgstr "" #: report/templates/report/inventree_build_order_base.html:125 #: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741 #: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552 -#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1038 +#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042 msgid "Target Date" msgstr "" @@ -1445,8 +1449,8 @@ msgstr "" #: stock/templates/stock/item_base.html:170 #: templates/js/translated/build.js:1182 #: templates/js/translated/model_renderers.js:124 -#: templates/js/translated/stock.js:1022 templates/js/translated/stock.js:1839 -#: templates/js/translated/stock.js:2725 +#: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843 +#: templates/js/translated/stock.js:2734 #: templates/js/translated/table_filters.js:159 #: templates/js/translated/table_filters.js:250 msgid "Batch" @@ -1506,7 +1510,7 @@ msgstr "" #: build/templates/build/detail.html:187 #: company/templates/company/detail.html:37 #: company/templates/company/detail.html:85 -#: part/templates/part/category.html:177 templates/js/translated/order.js:977 +#: part/templates/part/category.html:183 templates/js/translated/order.js:977 msgid "Order Parts" msgstr "" @@ -1559,12 +1563,12 @@ msgid "Delete outputs" msgstr "" #: build/templates/build/detail.html:267 -#: stock/templates/stock/location.html:197 templates/stock_table.html:27 +#: stock/templates/stock/location.html:202 templates/stock_table.html:27 msgid "Printing Actions" msgstr "" #: build/templates/build/detail.html:271 build/templates/build/detail.html:272 -#: stock/templates/stock/location.html:201 templates/stock_table.html:31 +#: stock/templates/stock/location.html:206 templates/stock_table.html:31 msgid "Print labels" msgstr "" @@ -1841,7 +1845,7 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:951 part/models.py:2412 report/models.py:158 +#: common/models.py:951 part/models.py:2419 report/models.py:158 #: templates/js/translated/table_filters.js:38 #: templates/js/translated/table_filters.js:484 msgid "Template" @@ -1851,7 +1855,7 @@ msgstr "" msgid "Parts are templates by default" msgstr "" -#: common/models.py:958 part/models.py:887 templates/js/translated/bom.js:1448 +#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448 #: templates/js/translated/table_filters.js:176 #: templates/js/translated/table_filters.js:447 msgid "Assembly" @@ -1861,7 +1865,7 @@ msgstr "" msgid "Parts can be assembled from other components by default" msgstr "" -#: common/models.py:965 part/models.py:893 +#: common/models.py:965 part/models.py:900 #: templates/js/translated/table_filters.js:455 msgid "Component" msgstr "" @@ -1870,7 +1874,7 @@ msgstr "" msgid "Parts can be used as sub-components by default" msgstr "" -#: common/models.py:972 part/models.py:904 +#: common/models.py:972 part/models.py:911 msgid "Purchaseable" msgstr "" @@ -1878,7 +1882,7 @@ msgstr "" msgid "Parts are purchaseable by default" msgstr "" -#: common/models.py:979 part/models.py:909 +#: common/models.py:979 part/models.py:916 #: templates/js/translated/table_filters.js:476 msgid "Salable" msgstr "" @@ -1887,7 +1891,7 @@ msgstr "" msgid "Parts are salable by default" msgstr "" -#: common/models.py:986 part/models.py:899 +#: common/models.py:986 part/models.py:906 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:108 #: templates/js/translated/table_filters.js:488 @@ -1898,7 +1902,7 @@ msgstr "" msgid "Parts are trackable by default" msgstr "" -#: common/models.py:993 part/models.py:919 +#: common/models.py:993 part/models.py:926 #: part/templates/part/part_base.html:151 #: templates/js/translated/table_filters.js:42 #: templates/js/translated/table_filters.js:492 @@ -1982,608 +1986,632 @@ msgid "Format to display the part name" msgstr "" #: common/models.py:1074 -msgid "Enable label printing" +msgid "Part Category Default Icon" msgstr "" #: common/models.py:1075 -msgid "Enable label printing from the web interface" +msgid "Part category default icon (empty means no icon)" +msgstr "" + +#: common/models.py:1080 +msgid "Enable label printing" msgstr "" #: common/models.py:1081 +msgid "Enable label printing from the web interface" +msgstr "" + +#: common/models.py:1087 msgid "Label Image DPI" msgstr "" -#: common/models.py:1082 +#: common/models.py:1088 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/models.py:1091 +#: common/models.py:1097 msgid "Enable Reports" msgstr "" -#: common/models.py:1092 +#: common/models.py:1098 msgid "Enable generation of reports" msgstr "" -#: common/models.py:1098 templates/stats.html:25 +#: common/models.py:1104 templates/stats.html:25 msgid "Debug Mode" msgstr "" -#: common/models.py:1099 +#: common/models.py:1105 msgid "Generate reports in debug mode (HTML output)" msgstr "" -#: common/models.py:1105 +#: common/models.py:1111 msgid "Page Size" msgstr "" -#: common/models.py:1106 +#: common/models.py:1112 msgid "Default page size for PDF reports" msgstr "" -#: common/models.py:1116 +#: common/models.py:1122 msgid "Enable Test Reports" msgstr "" -#: common/models.py:1117 +#: common/models.py:1123 msgid "Enable generation of test reports" msgstr "" -#: common/models.py:1123 +#: common/models.py:1129 msgid "Attach Test Reports" msgstr "" -#: common/models.py:1124 +#: common/models.py:1130 msgid "When printing a Test Report, attach a copy of the Test Report to the associated Stock Item" msgstr "" -#: common/models.py:1130 +#: common/models.py:1136 msgid "Batch Code Template" msgstr "" -#: common/models.py:1131 +#: common/models.py:1137 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/models.py:1136 +#: common/models.py:1142 msgid "Stock Expiry" msgstr "" -#: common/models.py:1137 +#: common/models.py:1143 msgid "Enable stock expiry functionality" msgstr "" -#: common/models.py:1143 +#: common/models.py:1149 msgid "Sell Expired Stock" msgstr "" -#: common/models.py:1144 +#: common/models.py:1150 msgid "Allow sale of expired stock" msgstr "" -#: common/models.py:1150 +#: common/models.py:1156 msgid "Stock Stale Time" msgstr "" -#: common/models.py:1151 +#: common/models.py:1157 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/models.py:1153 +#: common/models.py:1159 msgid "days" msgstr "" -#: common/models.py:1158 +#: common/models.py:1164 msgid "Build Expired Stock" msgstr "" -#: common/models.py:1159 +#: common/models.py:1165 msgid "Allow building with expired stock" msgstr "" -#: common/models.py:1165 +#: common/models.py:1171 msgid "Stock Ownership Control" msgstr "" -#: common/models.py:1166 +#: common/models.py:1172 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/models.py:1172 -msgid "Build Order Reference Pattern" -msgstr "" - -#: common/models.py:1173 -msgid "Required pattern for generating Build Order reference field" +#: common/models.py:1178 +msgid "Stock Location Default Icon" msgstr "" #: common/models.py:1179 +msgid "Stock location default icon (empty means no icon)" +msgstr "" + +#: common/models.py:1184 +msgid "Build Order Reference Pattern" +msgstr "" + +#: common/models.py:1185 +msgid "Required pattern for generating Build Order reference field" +msgstr "" + +#: common/models.py:1191 msgid "Sales Order Reference Pattern" msgstr "" -#: common/models.py:1180 +#: common/models.py:1192 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/models.py:1186 +#: common/models.py:1198 msgid "Sales Order Default Shipment" msgstr "" -#: common/models.py:1187 +#: common/models.py:1199 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/models.py:1193 +#: common/models.py:1205 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/models.py:1194 +#: common/models.py:1206 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/models.py:1201 +#: common/models.py:1213 msgid "Enable password forgot" msgstr "" -#: common/models.py:1202 +#: common/models.py:1214 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/models.py:1208 +#: common/models.py:1220 msgid "Enable registration" msgstr "" -#: common/models.py:1209 +#: common/models.py:1221 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/models.py:1215 +#: common/models.py:1227 msgid "Enable SSO" msgstr "" -#: common/models.py:1216 +#: common/models.py:1228 msgid "Enable SSO on the login pages" msgstr "" -#: common/models.py:1222 +#: common/models.py:1234 msgid "Email required" msgstr "" -#: common/models.py:1223 +#: common/models.py:1235 msgid "Require user to supply mail on signup" msgstr "" -#: common/models.py:1229 +#: common/models.py:1241 msgid "Auto-fill SSO users" msgstr "" -#: common/models.py:1230 +#: common/models.py:1242 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/models.py:1236 +#: common/models.py:1248 msgid "Mail twice" msgstr "" -#: common/models.py:1237 +#: common/models.py:1249 msgid "On signup ask users twice for their mail" msgstr "" -#: common/models.py:1243 +#: common/models.py:1255 msgid "Password twice" msgstr "" -#: common/models.py:1244 +#: common/models.py:1256 msgid "On signup ask users twice for their password" msgstr "" -#: common/models.py:1250 +#: common/models.py:1262 msgid "Group on signup" msgstr "" -#: common/models.py:1251 +#: common/models.py:1263 msgid "Group to which new users are assigned on registration" msgstr "" -#: common/models.py:1257 +#: common/models.py:1269 msgid "Enforce MFA" msgstr "" -#: common/models.py:1258 +#: common/models.py:1270 msgid "Users must use multifactor security." msgstr "" -#: common/models.py:1264 +#: common/models.py:1276 msgid "Check plugins on startup" msgstr "" -#: common/models.py:1265 +#: common/models.py:1277 msgid "Check that all plugins are installed on startup - enable in container enviroments" msgstr "" -#: common/models.py:1273 +#: common/models.py:1284 +msgid "Check plugin signatures" +msgstr "" + +#: common/models.py:1285 +msgid "Check and show signatures for plugins" +msgstr "" + +#: common/models.py:1292 msgid "Enable URL integration" msgstr "" -#: common/models.py:1274 +#: common/models.py:1293 msgid "Enable plugins to add URL routes" msgstr "" -#: common/models.py:1281 +#: common/models.py:1300 msgid "Enable navigation integration" msgstr "" -#: common/models.py:1282 +#: common/models.py:1301 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/models.py:1289 +#: common/models.py:1308 msgid "Enable app integration" msgstr "" -#: common/models.py:1290 +#: common/models.py:1309 msgid "Enable plugins to add apps" msgstr "" -#: common/models.py:1297 +#: common/models.py:1316 msgid "Enable schedule integration" msgstr "" -#: common/models.py:1298 +#: common/models.py:1317 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/models.py:1305 +#: common/models.py:1324 msgid "Enable event integration" msgstr "" -#: common/models.py:1306 +#: common/models.py:1325 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:1323 common/models.py:1639 +#: common/models.py:1342 common/models.py:1658 msgid "Settings key (must be unique - case insensitive" msgstr "" -#: common/models.py:1345 +#: common/models.py:1364 msgid "Show subscribed parts" msgstr "" -#: common/models.py:1346 +#: common/models.py:1365 msgid "Show subscribed parts on the homepage" msgstr "" -#: common/models.py:1352 +#: common/models.py:1371 msgid "Show subscribed categories" msgstr "" -#: common/models.py:1353 +#: common/models.py:1372 msgid "Show subscribed part categories on the homepage" msgstr "" -#: common/models.py:1359 +#: common/models.py:1378 msgid "Show latest parts" msgstr "" -#: common/models.py:1360 +#: common/models.py:1379 msgid "Show latest parts on the homepage" msgstr "" -#: common/models.py:1366 +#: common/models.py:1385 msgid "Recent Part Count" msgstr "" -#: common/models.py:1367 +#: common/models.py:1386 msgid "Number of recent parts to display on index page" msgstr "" -#: common/models.py:1373 +#: common/models.py:1392 msgid "Show unvalidated BOMs" msgstr "" -#: common/models.py:1374 +#: common/models.py:1393 msgid "Show BOMs that await validation on the homepage" msgstr "" -#: common/models.py:1380 +#: common/models.py:1399 msgid "Show recent stock changes" msgstr "" -#: common/models.py:1381 +#: common/models.py:1400 msgid "Show recently changed stock items on the homepage" msgstr "" -#: common/models.py:1387 +#: common/models.py:1406 msgid "Recent Stock Count" msgstr "" -#: common/models.py:1388 +#: common/models.py:1407 msgid "Number of recent stock items to display on index page" msgstr "" -#: common/models.py:1394 +#: common/models.py:1413 msgid "Show low stock" msgstr "" -#: common/models.py:1395 +#: common/models.py:1414 msgid "Show low stock items on the homepage" msgstr "" -#: common/models.py:1401 +#: common/models.py:1420 msgid "Show depleted stock" msgstr "" -#: common/models.py:1402 +#: common/models.py:1421 msgid "Show depleted stock items on the homepage" msgstr "" -#: common/models.py:1408 +#: common/models.py:1427 msgid "Show needed stock" msgstr "" -#: common/models.py:1409 +#: common/models.py:1428 msgid "Show stock items needed for builds on the homepage" msgstr "" -#: common/models.py:1415 +#: common/models.py:1434 msgid "Show expired stock" msgstr "" -#: common/models.py:1416 +#: common/models.py:1435 msgid "Show expired stock items on the homepage" msgstr "" -#: common/models.py:1422 +#: common/models.py:1441 msgid "Show stale stock" msgstr "" -#: common/models.py:1423 +#: common/models.py:1442 msgid "Show stale stock items on the homepage" msgstr "" -#: common/models.py:1429 +#: common/models.py:1448 msgid "Show pending builds" msgstr "" -#: common/models.py:1430 +#: common/models.py:1449 msgid "Show pending builds on the homepage" msgstr "" -#: common/models.py:1436 +#: common/models.py:1455 msgid "Show overdue builds" msgstr "" -#: common/models.py:1437 +#: common/models.py:1456 msgid "Show overdue builds on the homepage" msgstr "" -#: common/models.py:1443 +#: common/models.py:1462 msgid "Show outstanding POs" msgstr "" -#: common/models.py:1444 +#: common/models.py:1463 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:1450 +#: common/models.py:1469 msgid "Show overdue POs" msgstr "" -#: common/models.py:1451 +#: common/models.py:1470 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:1457 +#: common/models.py:1476 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:1458 +#: common/models.py:1477 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:1464 +#: common/models.py:1483 msgid "Show overdue SOs" msgstr "" -#: common/models.py:1465 +#: common/models.py:1484 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:1471 +#: common/models.py:1490 msgid "Inline label display" msgstr "" -#: common/models.py:1472 +#: common/models.py:1491 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1478 +#: common/models.py:1497 msgid "Inline report display" msgstr "" -#: common/models.py:1479 +#: common/models.py:1498 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1485 +#: common/models.py:1504 msgid "Search Parts" msgstr "" -#: common/models.py:1486 +#: common/models.py:1505 msgid "Display parts in search preview window" msgstr "" -#: common/models.py:1492 +#: common/models.py:1511 msgid "Seach Supplier Parts" msgstr "" -#: common/models.py:1493 +#: common/models.py:1512 msgid "Display supplier parts in search preview window" msgstr "" -#: common/models.py:1499 +#: common/models.py:1518 msgid "Search Manufacturer Parts" msgstr "" -#: common/models.py:1500 +#: common/models.py:1519 msgid "Display manufacturer parts in search preview window" msgstr "" -#: common/models.py:1506 +#: common/models.py:1525 msgid "Hide Inactive Parts" msgstr "" -#: common/models.py:1507 +#: common/models.py:1526 msgid "Excluded inactive parts from search preview window" msgstr "" -#: common/models.py:1513 +#: common/models.py:1532 msgid "Search Categories" msgstr "" -#: common/models.py:1514 +#: common/models.py:1533 msgid "Display part categories in search preview window" msgstr "" -#: common/models.py:1520 +#: common/models.py:1539 msgid "Search Stock" msgstr "" -#: common/models.py:1521 +#: common/models.py:1540 msgid "Display stock items in search preview window" msgstr "" -#: common/models.py:1527 +#: common/models.py:1546 msgid "Hide Unavailable Stock Items" msgstr "" -#: common/models.py:1528 +#: common/models.py:1547 msgid "Exclude stock items which are not available from the search preview window" msgstr "" -#: common/models.py:1534 +#: common/models.py:1553 msgid "Search Locations" msgstr "" -#: common/models.py:1535 +#: common/models.py:1554 msgid "Display stock locations in search preview window" msgstr "" -#: common/models.py:1541 +#: common/models.py:1560 msgid "Search Companies" msgstr "" -#: common/models.py:1542 +#: common/models.py:1561 msgid "Display companies in search preview window" msgstr "" -#: common/models.py:1548 +#: common/models.py:1567 msgid "Search Purchase Orders" msgstr "" -#: common/models.py:1549 +#: common/models.py:1568 msgid "Display purchase orders in search preview window" msgstr "" -#: common/models.py:1555 +#: common/models.py:1574 msgid "Exclude Inactive Purchase Orders" msgstr "" -#: common/models.py:1556 +#: common/models.py:1575 msgid "Exclude inactive purchase orders from search preview window" msgstr "" -#: common/models.py:1562 +#: common/models.py:1581 msgid "Search Sales Orders" msgstr "" -#: common/models.py:1563 +#: common/models.py:1582 msgid "Display sales orders in search preview window" msgstr "" -#: common/models.py:1569 +#: common/models.py:1588 msgid "Exclude Inactive Sales Orders" msgstr "" -#: common/models.py:1570 +#: common/models.py:1589 msgid "Exclude inactive sales orders from search preview window" msgstr "" -#: common/models.py:1576 +#: common/models.py:1595 msgid "Search Preview Results" msgstr "" -#: common/models.py:1577 +#: common/models.py:1596 msgid "Number of results to show in each section of the search preview window" msgstr "" -#: common/models.py:1583 +#: common/models.py:1602 msgid "Show Quantity in Forms" msgstr "" -#: common/models.py:1584 +#: common/models.py:1603 msgid "Display available part quantity in some forms" msgstr "" -#: common/models.py:1590 +#: common/models.py:1609 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:1591 +#: common/models.py:1610 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:1597 +#: common/models.py:1616 msgid "Fixed Navbar" msgstr "" -#: common/models.py:1598 +#: common/models.py:1617 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:1604 +#: common/models.py:1623 msgid "Date Format" msgstr "" -#: common/models.py:1605 +#: common/models.py:1624 msgid "Preferred format for displaying dates" msgstr "" -#: common/models.py:1619 part/templates/part/detail.html:41 +#: common/models.py:1638 part/templates/part/detail.html:41 msgid "Part Scheduling" msgstr "" -#: common/models.py:1620 +#: common/models.py:1639 msgid "Display part scheduling information" msgstr "" -#: common/models.py:1679 +#: common/models.py:1698 msgid "Price break quantity" msgstr "" -#: common/models.py:1686 company/serializers.py:366 +#: common/models.py:1705 company/serializers.py:366 #: company/templates/company/supplier_part.html:284 order/models.py:938 -#: templates/js/translated/part.js:1065 templates/js/translated/part.js:2152 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2161 msgid "Price" msgstr "" -#: common/models.py:1687 +#: common/models.py:1706 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:1847 common/models.py:2025 +#: common/models.py:1866 common/models.py:2044 msgid "Endpoint" msgstr "" -#: common/models.py:1848 +#: common/models.py:1867 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:1857 +#: common/models.py:1876 msgid "Name for this webhook" msgstr "" -#: common/models.py:1862 part/models.py:914 plugin/models.py:99 +#: common/models.py:1881 part/models.py:921 plugin/models.py:100 #: templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:104 #: templates/js/translated/table_filters.js:316 @@ -2591,67 +2619,67 @@ msgstr "" msgid "Active" msgstr "" -#: common/models.py:1863 +#: common/models.py:1882 msgid "Is this webhook active" msgstr "" -#: common/models.py:1877 +#: common/models.py:1896 msgid "Token" msgstr "" -#: common/models.py:1878 +#: common/models.py:1897 msgid "Token for access" msgstr "" -#: common/models.py:1885 +#: common/models.py:1904 msgid "Secret" msgstr "" -#: common/models.py:1886 +#: common/models.py:1905 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:1992 +#: common/models.py:2011 msgid "Message ID" msgstr "" -#: common/models.py:1993 +#: common/models.py:2012 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2001 +#: common/models.py:2020 msgid "Host" msgstr "" -#: common/models.py:2002 +#: common/models.py:2021 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2009 +#: common/models.py:2028 msgid "Header" msgstr "" -#: common/models.py:2010 +#: common/models.py:2029 msgid "Header of this message" msgstr "" -#: common/models.py:2016 +#: common/models.py:2035 msgid "Body" msgstr "" -#: common/models.py:2017 +#: common/models.py:2036 msgid "Body of this message" msgstr "" -#: common/models.py:2026 +#: common/models.py:2045 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2031 +#: common/models.py:2050 msgid "Worked on" msgstr "" -#: common/models.py:2032 +#: common/models.py:2051 msgid "Was the work on this message finished?" msgstr "" @@ -2758,7 +2786,7 @@ msgstr "" msgid "Link to external company information" msgstr "" -#: company/models.py:135 part/models.py:808 +#: company/models.py:135 part/models.py:815 msgid "Image" msgstr "" @@ -2791,8 +2819,8 @@ msgid "Does this company manufacture parts?" msgstr "" #: company/models.py:148 company/serializers.py:372 -#: company/templates/company/company_base.html:106 part/serializers.py:151 -#: part/serializers.py:182 stock/serializers.py:180 +#: company/templates/company/company_base.html:106 part/serializers.py:153 +#: part/serializers.py:184 stock/serializers.py:180 msgid "Currency" msgstr "" @@ -2800,7 +2828,7 @@ msgstr "" msgid "Default currency used for this company" msgstr "" -#: company/models.py:248 company/models.py:481 stock/models.py:591 +#: company/models.py:248 company/models.py:481 stock/models.py:598 #: stock/serializers.py:87 stock/templates/stock/item_base.html:148 #: templates/js/translated/bom.js:543 msgid "Base Part" @@ -2832,7 +2860,7 @@ msgstr "" #: templates/js/translated/company.js:497 #: templates/js/translated/company.js:649 #: templates/js/translated/company.js:937 templates/js/translated/order.js:1971 -#: templates/js/translated/part.js:247 templates/js/translated/part.js:1023 +#: templates/js/translated/part.js:247 templates/js/translated/part.js:1027 msgid "MPN" msgstr "" @@ -2861,9 +2889,9 @@ msgstr "" #: company/models.py:365 #: report/templates/report/inventree_test_report_base.html:95 -#: stock/models.py:2088 templates/js/translated/company.js:546 -#: templates/js/translated/company.js:764 templates/js/translated/part.js:845 -#: templates/js/translated/stock.js:1356 +#: stock/models.py:2095 templates/js/translated/company.js:546 +#: templates/js/translated/company.js:764 templates/js/translated/part.js:849 +#: templates/js/translated/stock.js:1360 msgid "Value" msgstr "" @@ -2871,10 +2899,10 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:372 part/models.py:881 part/models.py:2379 +#: company/models.py:372 part/models.py:888 part/models.py:2386 #: part/templates/part/part_base.html:280 #: templates/InvenTree/settings/settings.html:352 -#: templates/js/translated/company.js:770 templates/js/translated/part.js:851 +#: templates/js/translated/company.js:770 templates/js/translated/part.js:855 msgid "Units" msgstr "" @@ -2894,7 +2922,7 @@ msgstr "" #: templates/js/translated/company.js:268 #: templates/js/translated/company.js:401 #: templates/js/translated/company.js:893 templates/js/translated/order.js:1707 -#: templates/js/translated/part.js:217 templates/js/translated/part.js:991 +#: templates/js/translated/part.js:217 templates/js/translated/part.js:995 #: templates/js/translated/table_filters.js:423 msgid "Supplier" msgstr "" @@ -2906,7 +2934,7 @@ msgstr "" #: company/models.py:497 company/templates/company/supplier_part.html:118 #: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267 #: templates/js/translated/order.js:1958 templates/js/translated/part.js:228 -#: templates/js/translated/part.js:1009 +#: templates/js/translated/part.js:1013 msgid "SKU" msgstr "" @@ -2927,23 +2955,23 @@ msgid "Supplier part description" msgstr "" #: company/models.py:522 company/templates/company/supplier_part.html:146 -#: part/models.py:2613 part/templates/part/upload_bom.html:59 +#: part/models.py:2620 part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401 msgid "Note" msgstr "" -#: company/models.py:526 part/models.py:1735 +#: company/models.py:526 part/models.py:1742 msgid "base cost" msgstr "" -#: company/models.py:526 part/models.py:1735 +#: company/models.py:526 part/models.py:1742 msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:528 company/templates/company/supplier_part.html:139 -#: stock/models.py:617 stock/templates/stock/item_base.html:245 -#: templates/js/translated/company.js:969 templates/js/translated/stock.js:1972 +#: stock/models.py:624 stock/templates/stock/item_base.html:245 +#: templates/js/translated/company.js:969 templates/js/translated/stock.js:1976 msgid "Packaging" msgstr "" @@ -2951,7 +2979,7 @@ msgstr "" msgid "Part packaging" msgstr "" -#: company/models.py:530 part/models.py:1737 +#: company/models.py:530 part/models.py:1744 msgid "multiple" msgstr "" @@ -2964,7 +2992,7 @@ msgstr "" #: templates/email/low_stock_notification.html:18 #: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789 #: templates/js/translated/build.js:2645 templates/js/translated/company.js:979 -#: templates/js/translated/part.js:596 templates/js/translated/part.js:599 +#: templates/js/translated/part.js:600 templates/js/translated/part.js:603 #: templates/js/translated/table_filters.js:186 msgid "Available" msgstr "" @@ -3037,12 +3065,12 @@ msgid "Download image from URL" msgstr "" #: company/templates/company/company_base.html:86 order/models.py:637 -#: order/templates/order/sales_order_base.html:116 stock/models.py:636 -#: stock/models.py:637 stock/serializers.py:809 +#: order/templates/order/sales_order_base.html:116 stock/models.py:643 +#: stock/models.py:644 stock/serializers.py:811 #: stock/templates/stock/item_base.html:401 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:393 templates/js/translated/order.js:2513 -#: templates/js/translated/stock.js:2550 +#: templates/js/translated/stock.js:2559 #: templates/js/translated/table_filters.js:427 msgid "Customer" msgstr "" @@ -3083,7 +3111,7 @@ msgstr "" #: company/templates/company/detail.html:36 #: company/templates/company/detail.html:84 -#: part/templates/part/category.html:176 +#: part/templates/part/category.html:182 msgid "Order parts" msgstr "" @@ -3231,7 +3259,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:170 #: part/templates/part/detail.html:186 #: templates/InvenTree/settings/category.html:12 -#: templates/InvenTree/settings/part.html:66 +#: templates/InvenTree/settings/part.html:68 msgid "New Parameter" msgstr "" @@ -3261,10 +3289,10 @@ msgid "Assigned Stock Items" msgstr "" #: company/templates/company/supplier_part.html:7 -#: company/templates/company/supplier_part.html:24 stock/models.py:600 +#: company/templates/company/supplier_part.html:24 stock/models.py:607 #: stock/templates/stock/item_base.html:238 #: templates/js/translated/company.js:909 templates/js/translated/order.js:935 -#: templates/js/translated/stock.js:1929 +#: templates/js/translated/stock.js:1933 msgid "Supplier Part" msgstr "" @@ -3308,13 +3336,13 @@ msgid "Supplier Part Stock" msgstr "" #: company/templates/company/supplier_part.html:168 -#: part/templates/part/detail.html:24 stock/templates/stock/location.html:176 +#: part/templates/part/detail.html:24 stock/templates/stock/location.html:181 msgid "Create new stock item" msgstr "" #: company/templates/company/supplier_part.html:169 -#: part/templates/part/detail.html:25 stock/templates/stock/location.html:177 -#: templates/js/translated/stock.js:431 +#: part/templates/part/detail.html:25 stock/templates/stock/location.html:182 +#: templates/js/translated/stock.js:435 msgid "New Stock Item" msgstr "" @@ -3330,7 +3358,7 @@ msgstr "" #: company/templates/company/supplier_part.html:212 #: company/templates/company/supplier_part.html:326 -#: part/templates/part/prices.html:276 templates/js/translated/part.js:2224 +#: part/templates/part/prices.html:276 templates/js/translated/part.js:2233 msgid "Add Price Break" msgstr "" @@ -3339,12 +3367,12 @@ msgid "No price break information found" msgstr "" #: company/templates/company/supplier_part.html:252 -#: templates/js/translated/part.js:2234 +#: templates/js/translated/part.js:2243 msgid "Delete Price Break" msgstr "" #: company/templates/company/supplier_part.html:266 -#: templates/js/translated/part.js:2248 +#: templates/js/translated/part.js:2257 msgid "Edit Price Break" msgstr "" @@ -3366,13 +3394,13 @@ msgstr "" #: company/templates/company/supplier_part_navbar.html:15 #: part/templates/part/part_sidebar.html:14 -#: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:19 +#: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:24 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:151 #: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/bom.js:555 templates/js/translated/part.js:747 -#: templates/js/translated/part.js:1295 templates/js/translated/part.js:1456 -#: templates/js/translated/stock.js:955 templates/js/translated/stock.js:1750 +#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751 +#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460 +#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754 #: templates/navbar.html:31 msgid "Stock" msgstr "" @@ -3392,14 +3420,14 @@ msgid "Pricing" msgstr "" #: company/templates/company/supplier_part_sidebar.html:5 -#: part/templates/part/category.html:197 +#: part/templates/part/category.html:203 #: part/templates/part/category_sidebar.html:17 -#: stock/templates/stock/location.html:147 -#: stock/templates/stock/location.html:161 -#: stock/templates/stock/location.html:173 +#: stock/templates/stock/location.html:152 +#: stock/templates/stock/location.html:166 +#: stock/templates/stock/location.html:178 #: stock/templates/stock/location_sidebar.html:7 #: templates/InvenTree/search.html:153 templates/js/translated/search.js:223 -#: templates/js/translated/stock.js:2427 users/models.py:40 +#: templates/js/translated/stock.js:2436 users/models.py:40 msgid "Stock Items" msgstr "" @@ -3656,8 +3684,8 @@ msgstr "" #: stock/templates/stock/item_base.html:184 #: templates/email/overdue_purchase_order.html:15 #: templates/js/translated/order.js:936 templates/js/translated/order.js:1691 -#: templates/js/translated/part.js:968 templates/js/translated/stock.js:1909 -#: templates/js/translated/stock.js:2531 +#: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913 +#: templates/js/translated/stock.js:2540 msgid "Purchase Order" msgstr "" @@ -3667,7 +3695,7 @@ msgstr "" #: order/models.py:1009 order/templates/order/order_base.html:169 #: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073 -#: templates/js/translated/part.js:1060 templates/js/translated/part.js:1087 +#: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091 #: templates/js/translated/table_filters.js:338 msgid "Received" msgstr "" @@ -3676,9 +3704,9 @@ msgstr "" msgid "Number of items received" msgstr "" -#: order/models.py:1017 part/templates/part/prices.html:181 stock/models.py:727 +#: order/models.py:1017 part/templates/part/prices.html:181 stock/models.py:734 #: stock/serializers.py:171 stock/templates/stock/item_base.html:191 -#: templates/js/translated/stock.js:1960 +#: templates/js/translated/stock.js:1964 msgid "Purchase Price" msgstr "" @@ -4066,8 +4094,8 @@ msgstr "" #: templates/js/translated/bom.js:77 templates/js/translated/build.js:431 #: templates/js/translated/build.js:583 templates/js/translated/build.js:1974 #: templates/js/translated/order.js:884 templates/js/translated/order.js:1337 -#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:621 -#: templates/js/translated/stock.js:789 +#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625 +#: templates/js/translated/stock.js:793 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "" @@ -4261,8 +4289,8 @@ msgstr "" msgid "This field is required" msgstr "" -#: part/bom.py:127 part/models.py:98 part/models.py:817 -#: part/templates/part/category.html:108 part/templates/part/part_base.html:330 +#: part/bom.py:127 part/models.py:98 part/models.py:824 +#: part/templates/part/category.html:114 part/templates/part/part_base.html:330 msgid "Default Location" msgstr "" @@ -4276,9 +4304,9 @@ msgid "Available Stock" msgstr "" #: part/bom.py:130 part/templates/part/part_base.html:207 -#: templates/js/translated/bom.js:947 templates/js/translated/part.js:586 -#: templates/js/translated/part.js:606 templates/js/translated/part.js:1298 -#: templates/js/translated/part.js:1470 templates/js/translated/part.js:1486 +#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590 +#: templates/js/translated/part.js:610 templates/js/translated/part.js:1302 +#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "" @@ -4299,516 +4327,524 @@ msgstr "" msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:115 part/models.py:2455 part/templates/part/category.html:15 +#: part/models.py:107 stock/models.py:84 +msgid "Icon" +msgstr "" + +#: part/models.py:108 stock/models.py:85 +msgid "Icon (optional)" +msgstr "" + +#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" -#: part/models.py:116 part/templates/part/category.html:128 +#: part/models.py:123 part/templates/part/category.html:134 #: templates/InvenTree/search.html:95 templates/js/translated/search.js:198 #: users/models.py:37 msgid "Part Categories" msgstr "" -#: part/models.py:337 part/templates/part/cat_link.html:3 -#: part/templates/part/category.html:17 part/templates/part/category.html:133 -#: part/templates/part/category.html:153 +#: part/models.py:344 part/templates/part/cat_link.html:3 +#: part/templates/part/category.html:23 part/templates/part/category.html:139 +#: part/templates/part/category.html:159 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82 #: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:1946 templates/js/translated/search.js:144 +#: templates/js/translated/part.js:1955 templates/js/translated/search.js:144 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "" -#: part/models.py:422 +#: part/models.py:429 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:492 part/models.py:504 +#: part/models.py:499 part/models.py:511 #, python-brace-format msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)" msgstr "" -#: part/models.py:621 +#: part/models.py:628 msgid "Next available serial numbers are" msgstr "" -#: part/models.py:625 +#: part/models.py:632 msgid "Next available serial number is" msgstr "" -#: part/models.py:630 +#: part/models.py:637 msgid "Most recent serial number is" msgstr "" -#: part/models.py:711 +#: part/models.py:718 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:738 part/models.py:2509 +#: part/models.py:745 part/models.py:2516 msgid "Part name" msgstr "" -#: part/models.py:745 +#: part/models.py:752 msgid "Is Template" msgstr "" -#: part/models.py:746 +#: part/models.py:753 msgid "Is this part a template part?" msgstr "" -#: part/models.py:756 +#: part/models.py:763 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:757 +#: part/models.py:764 msgid "Variant Of" msgstr "" -#: part/models.py:763 +#: part/models.py:770 msgid "Part description" msgstr "" -#: part/models.py:768 part/templates/part/category.html:86 +#: part/models.py:775 part/templates/part/category.html:92 #: part/templates/part/part_base.html:294 msgid "Keywords" msgstr "" -#: part/models.py:769 +#: part/models.py:776 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:776 part/models.py:2211 part/models.py:2454 +#: part/models.py:783 part/models.py:2218 part/models.py:2461 #: part/templates/part/part_base.html:257 #: templates/InvenTree/settings/settings.html:232 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1438 templates/js/translated/part.js:1664 +#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1668 msgid "Category" msgstr "" -#: part/models.py:777 +#: part/models.py:784 msgid "Part category" msgstr "" -#: part/models.py:782 part/templates/part/part_base.html:266 -#: templates/js/translated/part.js:735 templates/js/translated/part.js:1391 -#: templates/js/translated/stock.js:1722 +#: part/models.py:789 part/templates/part/part_base.html:266 +#: templates/js/translated/part.js:739 templates/js/translated/part.js:1395 +#: templates/js/translated/stock.js:1726 msgid "IPN" msgstr "" -#: part/models.py:783 +#: part/models.py:790 msgid "Internal Part Number" msgstr "" -#: part/models.py:789 +#: part/models.py:796 msgid "Part revision or version number" msgstr "" -#: part/models.py:790 part/templates/part/part_base.html:273 -#: report/models.py:171 templates/js/translated/part.js:739 +#: part/models.py:797 part/templates/part/part_base.html:273 +#: report/models.py:171 templates/js/translated/part.js:743 msgid "Revision" msgstr "" -#: part/models.py:815 +#: part/models.py:822 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:860 part/templates/part/part_base.html:339 +#: part/models.py:867 part/templates/part/part_base.html:339 msgid "Default Supplier" msgstr "" -#: part/models.py:861 +#: part/models.py:868 msgid "Default supplier part" msgstr "" -#: part/models.py:868 +#: part/models.py:875 msgid "Default Expiry" msgstr "" -#: part/models.py:869 +#: part/models.py:876 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:874 part/templates/part/part_base.html:200 +#: part/models.py:881 part/templates/part/part_base.html:200 msgid "Minimum Stock" msgstr "" -#: part/models.py:875 +#: part/models.py:882 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:882 +#: part/models.py:889 msgid "Stock keeping units for this part" msgstr "" -#: part/models.py:888 +#: part/models.py:895 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:894 +#: part/models.py:901 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:900 +#: part/models.py:907 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:905 +#: part/models.py:912 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:910 +#: part/models.py:917 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:915 +#: part/models.py:922 msgid "Is this part active?" msgstr "" -#: part/models.py:920 +#: part/models.py:927 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:922 +#: part/models.py:929 msgid "Part notes" msgstr "" -#: part/models.py:924 +#: part/models.py:931 msgid "BOM checksum" msgstr "" -#: part/models.py:924 +#: part/models.py:931 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:927 +#: part/models.py:934 msgid "BOM checked by" msgstr "" -#: part/models.py:929 +#: part/models.py:936 msgid "BOM checked date" msgstr "" -#: part/models.py:933 +#: part/models.py:940 msgid "Creation User" msgstr "" -#: part/models.py:1737 +#: part/models.py:1744 msgid "Sell multiple" msgstr "" -#: part/models.py:2258 +#: part/models.py:2265 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:2275 +#: part/models.py:2282 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:2295 templates/js/translated/part.js:1997 -#: templates/js/translated/stock.js:1336 +#: part/models.py:2302 templates/js/translated/part.js:2006 +#: templates/js/translated/stock.js:1340 msgid "Test Name" msgstr "" -#: part/models.py:2296 +#: part/models.py:2303 msgid "Enter a name for the test" msgstr "" -#: part/models.py:2301 +#: part/models.py:2308 msgid "Test Description" msgstr "" -#: part/models.py:2302 +#: part/models.py:2309 msgid "Enter description for this test" msgstr "" -#: part/models.py:2307 templates/js/translated/part.js:2006 +#: part/models.py:2314 templates/js/translated/part.js:2015 #: templates/js/translated/table_filters.js:302 msgid "Required" msgstr "" -#: part/models.py:2308 +#: part/models.py:2315 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:2313 templates/js/translated/part.js:2014 +#: part/models.py:2320 templates/js/translated/part.js:2023 msgid "Requires Value" msgstr "" -#: part/models.py:2314 +#: part/models.py:2321 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:2319 templates/js/translated/part.js:2021 +#: part/models.py:2326 templates/js/translated/part.js:2030 msgid "Requires Attachment" msgstr "" -#: part/models.py:2320 +#: part/models.py:2327 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:2328 +#: part/models.py:2335 #, python-brace-format msgid "Illegal character in template name ({c})" msgstr "" -#: part/models.py:2364 +#: part/models.py:2371 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:2372 +#: part/models.py:2379 msgid "Parameter Name" msgstr "" -#: part/models.py:2379 +#: part/models.py:2386 msgid "Parameter Units" msgstr "" -#: part/models.py:2410 +#: part/models.py:2417 msgid "Parent Part" msgstr "" -#: part/models.py:2412 part/models.py:2460 part/models.py:2461 +#: part/models.py:2419 part/models.py:2467 part/models.py:2468 #: templates/InvenTree/settings/settings.html:227 msgid "Parameter Template" msgstr "" -#: part/models.py:2414 +#: part/models.py:2421 msgid "Data" msgstr "" -#: part/models.py:2414 +#: part/models.py:2421 msgid "Parameter Value" msgstr "" -#: part/models.py:2465 templates/InvenTree/settings/settings.html:236 +#: part/models.py:2472 templates/InvenTree/settings/settings.html:236 msgid "Default Value" msgstr "" -#: part/models.py:2466 +#: part/models.py:2473 msgid "Default Parameter Value" msgstr "" -#: part/models.py:2501 +#: part/models.py:2508 msgid "Part ID or part name" msgstr "" -#: part/models.py:2504 templates/js/translated/model_renderers.js:212 +#: part/models.py:2511 templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "" -#: part/models.py:2505 +#: part/models.py:2512 msgid "Unique part ID value" msgstr "" -#: part/models.py:2508 +#: part/models.py:2515 msgid "Part Name" msgstr "" -#: part/models.py:2512 +#: part/models.py:2519 msgid "Part IPN" msgstr "" -#: part/models.py:2513 +#: part/models.py:2520 msgid "Part IPN value" msgstr "" -#: part/models.py:2516 +#: part/models.py:2523 msgid "Level" msgstr "" -#: part/models.py:2517 +#: part/models.py:2524 msgid "BOM level" msgstr "" -#: part/models.py:2586 +#: part/models.py:2593 msgid "Select parent part" msgstr "" -#: part/models.py:2594 +#: part/models.py:2601 msgid "Sub part" msgstr "" -#: part/models.py:2595 +#: part/models.py:2602 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:2601 +#: part/models.py:2608 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:2603 part/templates/part/upload_bom.html:58 +#: part/models.py:2610 part/templates/part/upload_bom.html:58 #: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999 #: templates/js/translated/table_filters.js:100 msgid "Optional" msgstr "" -#: part/models.py:2603 +#: part/models.py:2610 msgid "This BOM item is optional" msgstr "" -#: part/models.py:2606 part/templates/part/upload_bom.html:55 +#: part/models.py:2613 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:2607 +#: part/models.py:2614 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:2610 +#: part/models.py:2617 msgid "BOM item reference" msgstr "" -#: part/models.py:2613 +#: part/models.py:2620 msgid "BOM item notes" msgstr "" -#: part/models.py:2615 +#: part/models.py:2622 msgid "Checksum" msgstr "" -#: part/models.py:2615 +#: part/models.py:2622 msgid "BOM line checksum" msgstr "" -#: part/models.py:2619 part/templates/part/upload_bom.html:57 +#: part/models.py:2626 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1016 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:96 msgid "Inherited" msgstr "" -#: part/models.py:2620 +#: part/models.py:2627 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:2625 part/templates/part/upload_bom.html:56 +#: part/models.py:2632 part/templates/part/upload_bom.html:56 #: templates/js/translated/bom.js:1008 msgid "Allow Variants" msgstr "" -#: part/models.py:2626 +#: part/models.py:2633 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:2704 stock/models.py:461 +#: part/models.py:2711 stock/models.py:468 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:2713 part/models.py:2715 +#: part/models.py:2720 part/models.py:2722 msgid "Sub part must be specified" msgstr "" -#: part/models.py:2820 +#: part/models.py:2827 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:2841 +#: part/models.py:2848 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:2854 +#: part/models.py:2861 msgid "Parent BOM item" msgstr "" -#: part/models.py:2862 +#: part/models.py:2869 msgid "Substitute part" msgstr "" -#: part/models.py:2877 +#: part/models.py:2884 msgid "Part 1" msgstr "" -#: part/models.py:2881 +#: part/models.py:2888 msgid "Part 2" msgstr "" -#: part/models.py:2881 +#: part/models.py:2888 msgid "Select Related Part" msgstr "" -#: part/models.py:2899 +#: part/models.py:2906 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:2903 +#: part/models.py:2910 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:152 part/serializers.py:183 stock/serializers.py:181 +#: part/serializers.py:154 part/serializers.py:185 stock/serializers.py:181 msgid "Purchase currency of this stock item" msgstr "" -#: part/serializers.py:812 +#: part/serializers.py:814 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:820 +#: part/serializers.py:822 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:821 +#: part/serializers.py:823 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:826 +#: part/serializers.py:828 msgid "Include Inherited" msgstr "" -#: part/serializers.py:827 +#: part/serializers.py:829 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:832 +#: part/serializers.py:834 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:833 +#: part/serializers.py:835 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:838 +#: part/serializers.py:840 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:839 +#: part/serializers.py:841 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:879 +#: part/serializers.py:881 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:880 +#: part/serializers.py:882 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:910 +#: part/serializers.py:912 msgid "No part column specified" msgstr "" -#: part/serializers.py:953 +#: part/serializers.py:955 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:956 +#: part/serializers.py:958 msgid "No matching part found" msgstr "" -#: part/serializers.py:959 +#: part/serializers.py:961 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:968 +#: part/serializers.py:970 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:976 +#: part/serializers.py:978 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:997 +#: part/serializers.py:999 msgid "At least one BOM item is required" msgstr "" @@ -4848,101 +4884,101 @@ msgstr "" msgid "Delete Items" msgstr "" -#: part/templates/part/category.html:28 part/templates/part/category.html:32 +#: part/templates/part/category.html:34 part/templates/part/category.html:38 msgid "You are subscribed to notifications for this category" msgstr "" -#: part/templates/part/category.html:36 +#: part/templates/part/category.html:42 msgid "Subscribe to notifications for this category" msgstr "" -#: part/templates/part/category.html:42 +#: part/templates/part/category.html:48 msgid "Category Actions" msgstr "" -#: part/templates/part/category.html:47 +#: part/templates/part/category.html:53 msgid "Edit category" msgstr "" -#: part/templates/part/category.html:48 +#: part/templates/part/category.html:54 msgid "Edit Category" msgstr "" -#: part/templates/part/category.html:52 +#: part/templates/part/category.html:58 msgid "Delete category" msgstr "" -#: part/templates/part/category.html:53 +#: part/templates/part/category.html:59 msgid "Delete Category" msgstr "" -#: part/templates/part/category.html:61 +#: part/templates/part/category.html:67 msgid "Create new part category" msgstr "" -#: part/templates/part/category.html:62 +#: part/templates/part/category.html:68 msgid "New Category" msgstr "" -#: part/templates/part/category.html:80 part/templates/part/category.html:93 +#: part/templates/part/category.html:86 part/templates/part/category.html:99 msgid "Category Path" msgstr "" -#: part/templates/part/category.html:94 +#: part/templates/part/category.html:100 msgid "Top level part category" msgstr "" -#: part/templates/part/category.html:114 part/templates/part/category.html:222 +#: part/templates/part/category.html:120 part/templates/part/category.html:228 #: part/templates/part/category_sidebar.html:7 msgid "Subcategories" msgstr "" -#: part/templates/part/category.html:119 +#: part/templates/part/category.html:125 msgid "Parts (Including subcategories)" msgstr "" -#: part/templates/part/category.html:157 +#: part/templates/part/category.html:163 msgid "Create new part" msgstr "" -#: part/templates/part/category.html:158 templates/js/translated/bom.js:367 +#: part/templates/part/category.html:164 templates/js/translated/bom.js:367 msgid "New Part" msgstr "" -#: part/templates/part/category.html:168 part/templates/part/detail.html:363 +#: part/templates/part/category.html:174 part/templates/part/detail.html:363 #: part/templates/part/detail.html:394 msgid "Options" msgstr "" -#: part/templates/part/category.html:172 +#: part/templates/part/category.html:178 msgid "Set category" msgstr "" -#: part/templates/part/category.html:173 +#: part/templates/part/category.html:179 msgid "Set Category" msgstr "" -#: part/templates/part/category.html:180 part/templates/part/category.html:181 +#: part/templates/part/category.html:186 part/templates/part/category.html:187 msgid "Print Labels" msgstr "" -#: part/templates/part/category.html:206 +#: part/templates/part/category.html:212 msgid "Part Parameters" msgstr "" -#: part/templates/part/category.html:320 +#: part/templates/part/category.html:327 msgid "Create Part Category" msgstr "" -#: part/templates/part/category.html:340 +#: part/templates/part/category.html:347 msgid "Create Part" msgstr "" -#: part/templates/part/category.html:343 +#: part/templates/part/category.html:350 msgid "Create another part after this one" msgstr "" -#: part/templates/part/category.html:344 +#: part/templates/part/category.html:351 msgid "Part created successfully" msgstr "" @@ -4950,7 +4986,7 @@ msgstr "" msgid "Import Parts" msgstr "" -#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:375 +#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:379 msgid "Duplicate Part" msgstr "" @@ -5172,19 +5208,19 @@ msgstr "" #: part/templates/part/part_base.html:43 #: stock/templates/stock/item_base.html:41 -#: stock/templates/stock/location.html:43 +#: stock/templates/stock/location.html:48 msgid "Barcode actions" msgstr "" #: part/templates/part/part_base.html:46 #: stock/templates/stock/item_base.html:45 -#: stock/templates/stock/location.html:45 templates/qr_button.html:1 +#: stock/templates/stock/location.html:50 templates/qr_button.html:1 msgid "Show QR Code" msgstr "" #: part/templates/part/part_base.html:49 #: stock/templates/stock/item_base.html:63 -#: stock/templates/stock/location.html:47 +#: stock/templates/stock/location.html:52 msgid "Print Label" msgstr "" @@ -5194,7 +5230,7 @@ msgstr "" #: part/templates/part/part_base.html:60 #: stock/templates/stock/item_base.html:116 -#: stock/templates/stock/location.html:56 +#: stock/templates/stock/location.html:61 msgid "Stock actions" msgstr "" @@ -5255,7 +5291,7 @@ msgstr "" #: templates/js/translated/company.js:624 #: templates/js/translated/company.js:884 #: templates/js/translated/model_renderers.js:204 -#: templates/js/translated/part.js:650 templates/js/translated/part.js:727 +#: templates/js/translated/part.js:654 templates/js/translated/part.js:731 msgid "Inactive" msgstr "" @@ -5289,9 +5325,9 @@ msgstr "" msgid "Can Build" msgstr "" -#: part/templates/part/part_base.html:238 templates/js/translated/part.js:589 -#: templates/js/translated/part.js:609 templates/js/translated/part.js:1302 -#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490 +#: part/templates/part/part_base.html:238 templates/js/translated/part.js:593 +#: templates/js/translated/part.js:613 templates/js/translated/part.js:1306 +#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1494 msgid "Building" msgstr "" @@ -5464,8 +5500,8 @@ msgstr "" msgid "No sale pice history available for this part." msgstr "" -#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:612 -#: templates/js/translated/part.js:1290 templates/js/translated/part.js:1494 +#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616 +#: templates/js/translated/part.js:1294 templates/js/translated/part.js:1498 msgid "No Stock" msgstr "" @@ -5630,51 +5666,55 @@ msgstr "" msgid "Allow sending of emails for event notifications" msgstr "" -#: plugin/models.py:32 +#: plugin/models.py:33 msgid "Plugin Metadata" msgstr "" -#: plugin/models.py:33 +#: plugin/models.py:34 msgid "JSON metadata field, for use by external plugins" msgstr "" -#: plugin/models.py:79 +#: plugin/models.py:80 msgid "Plugin Configuration" msgstr "" -#: plugin/models.py:80 +#: plugin/models.py:81 msgid "Plugin Configurations" msgstr "" -#: plugin/models.py:85 +#: plugin/models.py:86 msgid "Key" msgstr "" -#: plugin/models.py:86 +#: plugin/models.py:87 msgid "Key of plugin" msgstr "" -#: plugin/models.py:94 +#: plugin/models.py:95 msgid "PluginName of the plugin" msgstr "" -#: plugin/models.py:100 +#: plugin/models.py:101 msgid "Is the plugin active" msgstr "" -#: plugin/models.py:168 +#: plugin/models.py:158 +msgid "Sample plugin" +msgstr "" + +#: plugin/models.py:186 msgid "Plugin" msgstr "" -#: plugin/models.py:231 +#: plugin/models.py:249 msgid "Method" msgstr "" -#: plugin/plugin.py:228 +#: plugin/plugin.py:251 msgid "No author found" msgstr "" -#: plugin/plugin.py:240 +#: plugin/plugin.py:263 msgid "No date found" msgstr "" @@ -5746,12 +5786,12 @@ msgstr "" msgid "No valid objects provided to template" msgstr "" -#: report/api.py:216 report/api.py:257 +#: report/api.py:216 report/api.py:252 #, python-brace-format msgid "Template file '{template}' is missing or does not exist" msgstr "" -#: report/api.py:360 +#: report/api.py:355 msgid "Test report" msgstr "" @@ -5852,12 +5892,12 @@ msgid "Stock Item Test Report" msgstr "" #: report/templates/report/inventree_test_report_base.html:79 -#: stock/models.py:641 stock/templates/stock/item_base.html:322 +#: stock/models.py:648 stock/templates/stock/item_base.html:322 #: templates/js/translated/build.js:424 templates/js/translated/build.js:576 #: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673 #: templates/js/translated/model_renderers.js:118 #: templates/js/translated/order.js:118 templates/js/translated/order.js:3297 -#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:486 +#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490 msgid "Serial Number" msgstr "" @@ -5866,19 +5906,19 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report_base.html:93 -#: stock/models.py:2076 +#: stock/models.py:2083 msgid "Test" msgstr "" #: report/templates/report/inventree_test_report_base.html:94 -#: stock/models.py:2082 +#: stock/models.py:2089 msgid "Result" msgstr "" #: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:51 +#: templates/InvenTree/settings/plugin.html:53 #: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2459 +#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468 msgid "Date" msgstr "" @@ -5896,8 +5936,8 @@ msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report_base.html:137 -#: templates/js/translated/stock.js:606 templates/js/translated/stock.js:776 -#: templates/js/translated/stock.js:2708 +#: templates/js/translated/stock.js:610 templates/js/translated/stock.js:780 +#: templates/js/translated/stock.js:2717 msgid "Serial" msgstr "" @@ -5913,241 +5953,241 @@ msgstr "" msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" -#: stock/models.py:82 stock/models.py:732 +#: stock/models.py:89 stock/models.py:739 #: stock/templates/stock/item_base.html:252 msgid "Owner" msgstr "" -#: stock/models.py:83 stock/models.py:733 +#: stock/models.py:90 stock/models.py:740 msgid "Select Owner" msgstr "" -#: stock/models.py:435 +#: stock/models.py:442 msgid "StockItem with this serial number already exists" msgstr "" -#: stock/models.py:467 stock/serializers.py:95 +#: stock/models.py:474 stock/serializers.py:95 msgid "Stock item cannot be created for virtual parts" msgstr "" -#: stock/models.py:484 +#: stock/models.py:491 #, python-brace-format msgid "Part type ('{pf}') must be {pe}" msgstr "" -#: stock/models.py:494 stock/models.py:503 +#: stock/models.py:501 stock/models.py:510 msgid "Quantity must be 1 for item with a serial number" msgstr "" -#: stock/models.py:495 +#: stock/models.py:502 msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:517 +#: stock/models.py:524 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:523 +#: stock/models.py:530 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:537 +#: stock/models.py:544 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:583 +#: stock/models.py:590 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:593 +#: stock/models.py:600 msgid "Base part" msgstr "" -#: stock/models.py:601 +#: stock/models.py:608 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:608 stock/templates/stock/location.html:17 +#: stock/models.py:615 stock/templates/stock/location.html:17 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" msgstr "" -#: stock/models.py:611 +#: stock/models.py:618 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:618 +#: stock/models.py:625 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:624 stock/templates/stock/item_base.html:361 +#: stock/models.py:631 stock/templates/stock/item_base.html:361 msgid "Installed In" msgstr "" -#: stock/models.py:627 +#: stock/models.py:634 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:643 +#: stock/models.py:650 msgid "Serial number for this item" msgstr "" -#: stock/models.py:657 +#: stock/models.py:664 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:662 +#: stock/models.py:669 msgid "Stock Quantity" msgstr "" -#: stock/models.py:671 +#: stock/models.py:678 msgid "Source Build" msgstr "" -#: stock/models.py:673 +#: stock/models.py:680 msgid "Build for this stock item" msgstr "" -#: stock/models.py:684 +#: stock/models.py:691 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:687 +#: stock/models.py:694 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:693 +#: stock/models.py:700 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:699 stock/templates/stock/item_base.html:429 -#: templates/js/translated/stock.js:1879 +#: stock/models.py:706 stock/templates/stock/item_base.html:429 +#: templates/js/translated/stock.js:1883 msgid "Expiry Date" msgstr "" -#: stock/models.py:700 +#: stock/models.py:707 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:713 +#: stock/models.py:720 msgid "Delete on deplete" msgstr "" -#: stock/models.py:713 +#: stock/models.py:720 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:720 stock/templates/stock/item.html:132 +#: stock/models.py:727 stock/templates/stock/item.html:132 msgid "Stock Item Notes" msgstr "" -#: stock/models.py:728 +#: stock/models.py:735 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:756 +#: stock/models.py:763 msgid "Converted to part" msgstr "" -#: stock/models.py:1235 +#: stock/models.py:1242 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1241 +#: stock/models.py:1248 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1247 +#: stock/models.py:1254 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({n})" msgstr "" -#: stock/models.py:1250 +#: stock/models.py:1257 msgid "Serial numbers must be a list of integers" msgstr "" -#: stock/models.py:1253 +#: stock/models.py:1260 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1260 +#: stock/models.py:1267 #, python-brace-format msgid "Serial numbers already exist: {exists}" msgstr "" -#: stock/models.py:1330 +#: stock/models.py:1337 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1333 +#: stock/models.py:1340 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1336 +#: stock/models.py:1343 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1339 +#: stock/models.py:1346 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1342 +#: stock/models.py:1349 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1345 +#: stock/models.py:1352 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1352 stock/serializers.py:959 +#: stock/models.py:1359 stock/serializers.py:961 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1356 +#: stock/models.py:1363 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1360 +#: stock/models.py:1367 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1364 +#: stock/models.py:1371 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:1533 +#: stock/models.py:1540 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:1994 +#: stock/models.py:2001 msgid "Entry notes" msgstr "" -#: stock/models.py:2052 +#: stock/models.py:2059 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2058 +#: stock/models.py:2065 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2077 +#: stock/models.py:2084 msgid "Test name" msgstr "" -#: stock/models.py:2083 +#: stock/models.py:2090 msgid "Test result" msgstr "" -#: stock/models.py:2089 +#: stock/models.py:2096 msgid "Test output value" msgstr "" -#: stock/models.py:2096 +#: stock/models.py:2103 msgid "Test result attachment" msgstr "" -#: stock/models.py:2102 +#: stock/models.py:2109 msgid "Test notes" msgstr "" @@ -6172,7 +6212,7 @@ msgstr "" msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:323 stock/serializers.py:916 stock/serializers.py:1149 +#: stock/serializers.py:323 stock/serializers.py:918 stock/serializers.py:1151 msgid "Destination stock location" msgstr "" @@ -6220,63 +6260,63 @@ msgstr "" msgid "Destination location for returned item" msgstr "" -#: stock/serializers.py:771 +#: stock/serializers.py:773 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:775 +#: stock/serializers.py:777 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:779 +#: stock/serializers.py:781 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:810 +#: stock/serializers.py:812 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:816 +#: stock/serializers.py:818 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:824 +#: stock/serializers.py:826 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:834 stock/serializers.py:1065 +#: stock/serializers.py:836 stock/serializers.py:1067 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:923 +#: stock/serializers.py:925 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:928 +#: stock/serializers.py:930 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:929 +#: stock/serializers.py:931 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:934 +#: stock/serializers.py:936 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:935 +#: stock/serializers.py:937 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:945 +#: stock/serializers.py:947 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1027 +#: stock/serializers.py:1029 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1055 +#: stock/serializers.py:1057 msgid "Stock transaction notes" msgstr "" @@ -6313,7 +6353,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2852 +#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2861 msgid "Install Stock Item" msgstr "" @@ -6321,7 +6361,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1518 +#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1522 msgid "Add Test Result" msgstr "" @@ -6352,7 +6392,7 @@ msgid "Stock adjustment actions" msgstr "" #: stock/templates/stock/item_base.html:80 -#: stock/templates/stock/location.html:63 templates/stock_table.html:47 +#: stock/templates/stock/location.html:68 templates/stock_table.html:47 msgid "Count stock" msgstr "" @@ -6369,7 +6409,7 @@ msgid "Serialize stock" msgstr "" #: stock/templates/stock/item_base.html:93 -#: stock/templates/stock/location.html:69 templates/stock_table.html:48 +#: stock/templates/stock/location.html:74 templates/stock_table.html:48 msgid "Transfer stock" msgstr "" @@ -6430,7 +6470,7 @@ msgid "You are not in the list of owners of this item. This stock item cannot be msgstr "" #: stock/templates/stock/item_base.html:257 -#: stock/templates/stock/location.html:127 +#: stock/templates/stock/location.html:132 msgid "Read only" msgstr "" @@ -6508,7 +6548,7 @@ msgid "Stale" msgstr "" #: stock/templates/stock/item_base.html:442 -#: templates/js/translated/company.js:985 templates/js/translated/stock.js:1895 +#: templates/js/translated/company.js:985 templates/js/translated/stock.js:1899 msgid "Last Updated" msgstr "" @@ -6552,58 +6592,58 @@ msgstr "" msgid "Select quantity to serialize, and unique serial numbers." msgstr "" -#: stock/templates/stock/location.html:33 +#: stock/templates/stock/location.html:38 msgid "Locate stock location" msgstr "" -#: stock/templates/stock/location.html:49 +#: stock/templates/stock/location.html:54 msgid "Check-in Items" msgstr "" -#: stock/templates/stock/location.html:77 +#: stock/templates/stock/location.html:82 msgid "Location actions" msgstr "" -#: stock/templates/stock/location.html:79 +#: stock/templates/stock/location.html:84 msgid "Edit location" msgstr "" -#: stock/templates/stock/location.html:81 +#: stock/templates/stock/location.html:86 msgid "Delete location" msgstr "" -#: stock/templates/stock/location.html:90 +#: stock/templates/stock/location.html:95 msgid "Create new stock location" msgstr "" -#: stock/templates/stock/location.html:91 +#: stock/templates/stock/location.html:96 msgid "New Location" msgstr "" -#: stock/templates/stock/location.html:109 -#: stock/templates/stock/location.html:115 +#: stock/templates/stock/location.html:114 +#: stock/templates/stock/location.html:120 msgid "Location Path" msgstr "" -#: stock/templates/stock/location.html:116 +#: stock/templates/stock/location.html:121 msgid "Top level stock location" msgstr "" -#: stock/templates/stock/location.html:122 +#: stock/templates/stock/location.html:127 msgid "Location Owner" msgstr "" -#: stock/templates/stock/location.html:126 +#: stock/templates/stock/location.html:131 msgid "You are not in the list of owners of this location. This stock location cannot be edited." msgstr "" -#: stock/templates/stock/location.html:142 -#: stock/templates/stock/location.html:189 +#: stock/templates/stock/location.html:147 +#: stock/templates/stock/location.html:194 #: stock/templates/stock/location_sidebar.html:5 msgid "Sublocations" msgstr "" -#: stock/templates/stock/location.html:156 templates/InvenTree/search.html:165 +#: stock/templates/stock/location.html:161 templates/InvenTree/search.html:165 #: templates/js/translated/search.js:238 users/models.py:39 msgid "Stock Locations" msgstr "" @@ -6875,15 +6915,15 @@ msgstr "" msgid "Part Settings" msgstr "" -#: templates/InvenTree/settings/part.html:44 +#: templates/InvenTree/settings/part.html:46 msgid "Part Import" msgstr "" -#: templates/InvenTree/settings/part.html:48 +#: templates/InvenTree/settings/part.html:50 msgid "Import Part" msgstr "" -#: templates/InvenTree/settings/part.html:62 +#: templates/InvenTree/settings/part.html:64 msgid "Part Parameter Templates" msgstr "" @@ -6895,47 +6935,47 @@ msgstr "" msgid "Changing the settings below require you to immediately restart the server. Do not change this while under active usage." msgstr "" -#: templates/InvenTree/settings/plugin.html:34 +#: templates/InvenTree/settings/plugin.html:36 msgid "Plugins" msgstr "" -#: templates/InvenTree/settings/plugin.html:39 +#: templates/InvenTree/settings/plugin.html:41 #: templates/js/translated/plugin.js:16 msgid "Install Plugin" msgstr "" -#: templates/InvenTree/settings/plugin.html:48 templates/navbar.html:137 +#: templates/InvenTree/settings/plugin.html:50 templates/navbar.html:137 #: users/models.py:36 msgid "Admin" msgstr "" -#: templates/InvenTree/settings/plugin.html:50 +#: templates/InvenTree/settings/plugin.html:52 #: templates/InvenTree/settings/plugin_settings.html:28 msgid "Author" msgstr "" -#: templates/InvenTree/settings/plugin.html:52 +#: templates/InvenTree/settings/plugin.html:54 #: templates/InvenTree/settings/plugin_settings.html:43 msgid "Version" msgstr "" -#: templates/InvenTree/settings/plugin.html:74 +#: templates/InvenTree/settings/plugin.html:76 msgid "Sample" msgstr "" -#: templates/InvenTree/settings/plugin.html:99 +#: templates/InvenTree/settings/plugin.html:101 msgid "Inactive plugins" msgstr "" -#: templates/InvenTree/settings/plugin.html:122 +#: templates/InvenTree/settings/plugin.html:124 msgid "Plugin Error Stack" msgstr "" -#: templates/InvenTree/settings/plugin.html:131 +#: templates/InvenTree/settings/plugin.html:133 msgid "Stage" msgstr "" -#: templates/InvenTree/settings/plugin.html:133 +#: templates/InvenTree/settings/plugin.html:135 #: templates/js/translated/notification.js:75 msgid "Message" msgstr "" @@ -6999,11 +7039,11 @@ msgstr "" msgid "Commit Message" msgstr "" -#: templates/InvenTree/settings/plugin_settings.html:117 +#: templates/InvenTree/settings/plugin_settings.html:120 msgid "Sign Status" msgstr "" -#: templates/InvenTree/settings/plugin_settings.html:122 +#: templates/InvenTree/settings/plugin_settings.html:125 msgid "Sign Key" msgstr "" @@ -7828,7 +7868,7 @@ msgstr "" msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:456 templates/js/translated/stock.js:1050 +#: templates/js/translated/barcode.js:456 templates/js/translated/stock.js:1054 msgid "Remove stock item" msgstr "" @@ -8001,7 +8041,7 @@ msgid "Includes variant and substitute stock" msgstr "" #: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822 -#: templates/js/translated/part.js:759 +#: templates/js/translated/part.js:763 msgid "Includes variant stock" msgstr "" @@ -8098,12 +8138,12 @@ msgid "Complete Build Order" msgstr "" #: templates/js/translated/build.js:263 templates/js/translated/stock.js:92 -#: templates/js/translated/stock.js:210 +#: templates/js/translated/stock.js:214 msgid "Next available serial number" msgstr "" #: templates/js/translated/build.js:265 templates/js/translated/stock.js:94 -#: templates/js/translated/stock.js:212 +#: templates/js/translated/stock.js:216 msgid "Latest serial number" msgstr "" @@ -8316,9 +8356,9 @@ msgstr "" msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1383 -#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1682 -#: templates/js/translated/stock.js:2382 +#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387 +#: templates/js/translated/part.js:1899 templates/js/translated/stock.js:1686 +#: templates/js/translated/stock.js:2386 msgid "Select" msgstr "" @@ -8330,7 +8370,7 @@ msgstr "" msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2638 +#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647 msgid "No user information" msgstr "" @@ -8403,34 +8443,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:616 -#: templates/js/translated/company.js:876 templates/js/translated/part.js:634 -#: templates/js/translated/part.js:719 +#: templates/js/translated/company.js:876 templates/js/translated/part.js:638 +#: templates/js/translated/part.js:723 msgid "Template part" msgstr "" #: templates/js/translated/company.js:620 -#: templates/js/translated/company.js:880 templates/js/translated/part.js:638 -#: templates/js/translated/part.js:723 +#: templates/js/translated/company.js:880 templates/js/translated/part.js:642 +#: templates/js/translated/part.js:727 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:748 templates/js/translated/part.js:826 +#: templates/js/translated/company.js:748 templates/js/translated/part.js:830 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:785 templates/js/translated/part.js:868 +#: templates/js/translated/company.js:785 templates/js/translated/part.js:872 msgid "Edit parameter" msgstr "" -#: templates/js/translated/company.js:786 templates/js/translated/part.js:869 +#: templates/js/translated/company.js:786 templates/js/translated/part.js:873 msgid "Delete parameter" msgstr "" -#: templates/js/translated/company.js:805 templates/js/translated/part.js:886 +#: templates/js/translated/company.js:805 templates/js/translated/part.js:890 msgid "Edit Parameter" msgstr "" -#: templates/js/translated/company.js:816 templates/js/translated/part.js:898 +#: templates/js/translated/company.js:816 templates/js/translated/part.js:902 msgid "Delete Parameter" msgstr "" @@ -8555,7 +8595,7 @@ msgid "Labels sent to printer" msgstr "" #: templates/js/translated/label.js:60 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1078 msgid "Select Stock Items" msgstr "" @@ -8865,7 +8905,7 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2140 +#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144 msgid "Stock Status" msgstr "" @@ -8889,7 +8929,7 @@ msgstr "" msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:1672 templates/js/translated/part.js:939 +#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943 msgid "No purchase orders found" msgstr "" @@ -8924,7 +8964,7 @@ msgstr "" #: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203 #: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050 -#: templates/js/translated/part.js:2126 templates/js/translated/part.js:2479 +#: templates/js/translated/part.js:2135 templates/js/translated/part.js:2488 msgid "Unit Price" msgstr "" @@ -8934,11 +8974,11 @@ msgid "Total Price" msgstr "" #: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600 -#: templates/js/translated/part.js:1046 +#: templates/js/translated/part.js:1050 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1092 +#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096 msgid "Receive line item" msgstr "" @@ -9059,7 +9099,7 @@ msgid "Delete Stock Allocation" msgstr "" #: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398 -#: templates/js/translated/stock.js:1598 +#: templates/js/translated/stock.js:1602 msgid "Shipped to customer" msgstr "" @@ -9183,241 +9223,245 @@ msgstr "" msgid "Parent part category" msgstr "" -#: templates/js/translated/part.js:318 +#: templates/js/translated/part.js:306 templates/js/translated/stock.js:118 +msgid "Icon (optional) - Explore all available icons on" +msgstr "" + +#: templates/js/translated/part.js:322 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:331 +#: templates/js/translated/part.js:335 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:333 +#: templates/js/translated/part.js:337 msgid "Any child categories will be moved to the parent of this category" msgstr "" -#: templates/js/translated/part.js:334 +#: templates/js/translated/part.js:338 msgid "Any parts in this category will be moved to the parent of this category" msgstr "" -#: templates/js/translated/part.js:339 +#: templates/js/translated/part.js:343 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:365 +#: templates/js/translated/part.js:369 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:367 +#: templates/js/translated/part.js:371 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:378 +#: templates/js/translated/part.js:382 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:430 +#: templates/js/translated/part.js:434 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:431 +#: templates/js/translated/part.js:435 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:445 +#: templates/js/translated/part.js:449 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:447 +#: templates/js/translated/part.js:451 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:448 +#: templates/js/translated/part.js:452 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:449 +#: templates/js/translated/part.js:453 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:456 +#: templates/js/translated/part.js:460 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:492 +#: templates/js/translated/part.js:496 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:494 +#: templates/js/translated/part.js:498 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:499 +#: templates/js/translated/part.js:503 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:501 +#: templates/js/translated/part.js:505 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:518 +#: templates/js/translated/part.js:522 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:528 +#: templates/js/translated/part.js:532 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:531 +#: templates/js/translated/part.js:535 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:556 +#: templates/js/translated/part.js:560 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:582 templates/js/translated/part.js:1466 +#: templates/js/translated/part.js:586 templates/js/translated/part.js:1470 #: templates/js/translated/table_filters.js:468 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:592 templates/js/translated/part.js:1478 +#: templates/js/translated/part.js:596 templates/js/translated/part.js:1482 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:626 templates/js/translated/part.js:711 +#: templates/js/translated/part.js:630 templates/js/translated/part.js:715 msgid "Trackable part" msgstr "" -#: templates/js/translated/part.js:630 templates/js/translated/part.js:715 +#: templates/js/translated/part.js:634 templates/js/translated/part.js:719 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:642 +#: templates/js/translated/part.js:646 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:646 +#: templates/js/translated/part.js:650 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:774 +#: templates/js/translated/part.js:778 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1162 +#: templates/js/translated/part.js:1166 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1186 +#: templates/js/translated/part.js:1190 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:1253 templates/js/translated/part.js:1549 +#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1553 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:1292 +#: templates/js/translated/part.js:1296 msgid "Not available" msgstr "" -#: templates/js/translated/part.js:1443 +#: templates/js/translated/part.js:1447 msgid "No category" msgstr "" -#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816 -#: templates/js/translated/stock.js:2343 +#: templates/js/translated/part.js:1577 templates/js/translated/part.js:1820 +#: templates/js/translated/stock.js:2347 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:1589 +#: templates/js/translated/part.js:1593 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:1655 +#: templates/js/translated/part.js:1659 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:1660 +#: templates/js/translated/part.js:1664 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:1665 +#: templates/js/translated/part.js:1669 msgid "Select Part Category" msgstr "" -#: templates/js/translated/part.js:1678 +#: templates/js/translated/part.js:1682 msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2362 +#: templates/js/translated/part.js:1839 templates/js/translated/stock.js:2366 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:1914 +#: templates/js/translated/part.js:1918 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:1925 +#: templates/js/translated/part.js:1934 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:1983 +#: templates/js/translated/part.js:1992 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2034 templates/js/translated/stock.js:1295 +#: templates/js/translated/part.js:2043 templates/js/translated/stock.js:1299 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:2035 templates/js/translated/stock.js:1296 -#: templates/js/translated/stock.js:1556 +#: templates/js/translated/part.js:2044 templates/js/translated/stock.js:1300 +#: templates/js/translated/stock.js:1560 msgid "Delete test result" msgstr "" -#: templates/js/translated/part.js:2041 +#: templates/js/translated/part.js:2050 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2063 +#: templates/js/translated/part.js:2072 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2077 +#: templates/js/translated/part.js:2086 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2102 +#: templates/js/translated/part.js:2111 #, python-brace-format msgid "No ${human_name} information found" msgstr "" -#: templates/js/translated/part.js:2159 +#: templates/js/translated/part.js:2168 #, python-brace-format msgid "Edit ${human_name}" msgstr "" -#: templates/js/translated/part.js:2160 +#: templates/js/translated/part.js:2169 #, python-brace-format msgid "Delete ${human_name}" msgstr "" -#: templates/js/translated/part.js:2274 +#: templates/js/translated/part.js:2283 msgid "Current Stock" msgstr "" -#: templates/js/translated/part.js:2307 +#: templates/js/translated/part.js:2316 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2333 +#: templates/js/translated/part.js:2342 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2403 +#: templates/js/translated/part.js:2412 msgid "Single Price" msgstr "" -#: templates/js/translated/part.js:2422 +#: templates/js/translated/part.js:2431 msgid "Single Price Difference" msgstr "" @@ -9511,376 +9555,376 @@ msgstr "" msgid "Parent stock location" msgstr "" -#: templates/js/translated/stock.js:140 +#: templates/js/translated/stock.js:144 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:155 +#: templates/js/translated/stock.js:159 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:169 +#: templates/js/translated/stock.js:173 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:171 +#: templates/js/translated/stock.js:175 msgid "Any child locations will be moved to the parent of this location" msgstr "" -#: templates/js/translated/stock.js:172 +#: templates/js/translated/stock.js:176 msgid "Any stock items in this location will be moved to the parent of this location" msgstr "" -#: templates/js/translated/stock.js:178 +#: templates/js/translated/stock.js:182 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:223 +#: templates/js/translated/stock.js:227 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:262 +#: templates/js/translated/stock.js:266 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:268 +#: templates/js/translated/stock.js:272 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:333 +#: templates/js/translated/stock.js:337 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:353 +#: templates/js/translated/stock.js:357 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:369 +#: templates/js/translated/stock.js:373 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:374 +#: templates/js/translated/stock.js:378 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:395 +#: templates/js/translated/stock.js:399 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:445 +#: templates/js/translated/stock.js:449 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:458 +#: templates/js/translated/stock.js:462 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:483 +#: templates/js/translated/stock.js:487 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:487 templates/js/translated/stock.js:488 +#: templates/js/translated/stock.js:491 templates/js/translated/stock.js:492 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:504 +#: templates/js/translated/stock.js:508 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:524 +#: templates/js/translated/stock.js:528 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:533 +#: templates/js/translated/stock.js:537 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:656 +#: templates/js/translated/stock.js:660 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:657 +#: templates/js/translated/stock.js:661 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:734 +#: templates/js/translated/stock.js:738 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:735 +#: templates/js/translated/stock.js:739 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:737 +#: templates/js/translated/stock.js:741 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:738 +#: templates/js/translated/stock.js:742 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:824 +#: templates/js/translated/stock.js:828 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:825 +#: templates/js/translated/stock.js:829 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:920 +#: templates/js/translated/stock.js:924 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:921 +#: templates/js/translated/stock.js:925 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:927 +#: templates/js/translated/stock.js:931 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:928 +#: templates/js/translated/stock.js:932 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:932 +#: templates/js/translated/stock.js:936 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:933 +#: templates/js/translated/stock.js:937 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:937 +#: templates/js/translated/stock.js:941 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:938 users/models.py:216 +#: templates/js/translated/stock.js:942 users/models.py:216 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:942 +#: templates/js/translated/stock.js:946 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1035 +#: templates/js/translated/stock.js:1039 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1035 +#: templates/js/translated/stock.js:1039 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1075 +#: templates/js/translated/stock.js:1079 msgid "You must select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1098 +#: templates/js/translated/stock.js:1102 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1234 +#: templates/js/translated/stock.js:1238 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1236 +#: templates/js/translated/stock.js:1240 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1241 +#: templates/js/translated/stock.js:1245 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1288 +#: templates/js/translated/stock.js:1292 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1291 +#: templates/js/translated/stock.js:1295 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1317 +#: templates/js/translated/stock.js:1321 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1374 +#: templates/js/translated/stock.js:1378 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1539 +#: templates/js/translated/stock.js:1543 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1561 +#: templates/js/translated/stock.js:1565 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1590 +#: templates/js/translated/stock.js:1594 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1594 +#: templates/js/translated/stock.js:1598 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1602 +#: templates/js/translated/stock.js:1606 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1608 +#: templates/js/translated/stock.js:1612 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1775 +#: templates/js/translated/stock.js:1779 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:1780 +#: templates/js/translated/stock.js:1784 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:1783 +#: templates/js/translated/stock.js:1787 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:1786 +#: templates/js/translated/stock.js:1790 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:1788 +#: templates/js/translated/stock.js:1792 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:1790 +#: templates/js/translated/stock.js:1794 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:1793 +#: templates/js/translated/stock.js:1797 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:1797 +#: templates/js/translated/stock.js:1801 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:1799 +#: templates/js/translated/stock.js:1803 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:1806 +#: templates/js/translated/stock.js:1810 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:1808 +#: templates/js/translated/stock.js:1812 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:1810 +#: templates/js/translated/stock.js:1814 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:1814 +#: templates/js/translated/stock.js:1818 #: templates/js/translated/table_filters.js:196 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:1865 +#: templates/js/translated/stock.js:1869 msgid "Stocktake" msgstr "" -#: templates/js/translated/stock.js:1944 +#: templates/js/translated/stock.js:1948 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:1982 +#: templates/js/translated/stock.js:1986 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2155 +#: templates/js/translated/stock.js:2159 msgid "Set Stock Status" msgstr "" -#: templates/js/translated/stock.js:2169 +#: templates/js/translated/stock.js:2173 msgid "Select Status Code" msgstr "" -#: templates/js/translated/stock.js:2170 +#: templates/js/translated/stock.js:2174 msgid "Status code must be selected" msgstr "" -#: templates/js/translated/stock.js:2400 +#: templates/js/translated/stock.js:2404 msgid "Load Subloactions" msgstr "" -#: templates/js/translated/stock.js:2484 +#: templates/js/translated/stock.js:2493 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2500 +#: templates/js/translated/stock.js:2509 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2522 +#: templates/js/translated/stock.js:2531 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2541 +#: templates/js/translated/stock.js:2550 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2560 +#: templates/js/translated/stock.js:2569 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2578 +#: templates/js/translated/stock.js:2587 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:2601 +#: templates/js/translated/stock.js:2610 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:2609 +#: templates/js/translated/stock.js:2618 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:2685 +#: templates/js/translated/stock.js:2694 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:2736 templates/js/translated/stock.js:2772 +#: templates/js/translated/stock.js:2745 templates/js/translated/stock.js:2781 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:2785 +#: templates/js/translated/stock.js:2794 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:2806 +#: templates/js/translated/stock.js:2815 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:2807 +#: templates/js/translated/stock.js:2816 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:2809 +#: templates/js/translated/stock.js:2818 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:2810 +#: templates/js/translated/stock.js:2819 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:2811 +#: templates/js/translated/stock.js:2820 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:2812 +#: templates/js/translated/stock.js:2821 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:2825 +#: templates/js/translated/stock.js:2834 msgid "Select part to install" msgstr "" diff --git a/InvenTree/locale/de/LC_MESSAGES/django.po b/InvenTree/locale/de/LC_MESSAGES/django.po index 22169f5e11..e978214c03 100644 --- a/InvenTree/locale/de/LC_MESSAGES/django.po +++ b/InvenTree/locale/de/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-11 02:47+0000\n" -"PO-Revision-Date: 2022-08-11 13:49\n" +"POT-Creation-Date: 2022-08-16 11:53+0000\n" +"PO-Revision-Date: 2022-08-16 21:36\n" "Last-Translator: \n" "Language-Team: German\n" "Language: de_DE\n" @@ -36,15 +36,15 @@ msgstr "Datum eingeben" #: order/templates/order/so_sidebar.html:17 #: part/templates/part/part_sidebar.html:59 #: report/templates/report/inventree_build_order_base.html:172 -#: stock/models.py:1993 stock/models.py:2101 stock/serializers.py:329 -#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:823 -#: stock/serializers.py:922 stock/serializers.py:1054 +#: stock/models.py:2000 stock/models.py:2108 stock/serializers.py:329 +#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825 +#: stock/serializers.py:924 stock/serializers.py:1056 #: stock/templates/stock/stock_sidebar.html:25 #: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101 #: templates/js/translated/company.js:964 templates/js/translated/order.js:2104 #: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753 #: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102 -#: templates/js/translated/stock.js:1370 templates/js/translated/stock.js:1976 +#: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980 msgid "Notes" msgstr "Notizen" @@ -163,6 +163,10 @@ msgstr "Keine Seriennummern gefunden" msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "Anzahl der eindeutigen Seriennummern ({s}) muss mit der Anzahl ({q}) übereinstimmen" +#: InvenTree/mixins.py:71 +msgid "Remove HTML tags from this value" +msgstr "" + #: InvenTree/models.py:236 msgid "Improperly formatted pattern" msgstr "Falsch formatiertes Muster" @@ -195,7 +199,7 @@ msgstr "Fehlende Datei" msgid "Missing external link" msgstr "Fehlender externer Link" -#: InvenTree/models.py:395 stock/models.py:2095 +#: InvenTree/models.py:395 stock/models.py:2102 #: templates/js/translated/attachment.js:103 #: templates/js/translated/attachment.js:241 msgid "Attachment" @@ -207,16 +211,16 @@ msgstr "Datei zum Anhängen auswählen" #: InvenTree/models.py:402 company/models.py:124 company/models.py:276 #: company/models.py:510 order/models.py:84 order/models.py:1245 -#: part/models.py:795 +#: part/models.py:802 #: report/templates/report/inventree_build_order_base.html:164 #: templates/js/translated/company.js:656 #: templates/js/translated/company.js:948 templates/js/translated/order.js:2742 -#: templates/js/translated/part.js:1510 +#: templates/js/translated/part.js:1514 msgid "Link" msgstr "Link" -#: InvenTree/models.py:403 build/models.py:296 part/models.py:796 -#: stock/models.py:651 +#: InvenTree/models.py:403 build/models.py:296 part/models.py:803 +#: stock/models.py:658 msgid "Link to external URL" msgstr "Link zu einer externen URL" @@ -229,12 +233,12 @@ msgstr "Kommentar" msgid "File comment" msgstr "Datei-Kommentar" -#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1646 -#: common/models.py:1647 common/models.py:1870 common/models.py:1871 -#: common/models.py:2133 common/models.py:2134 part/models.py:2193 -#: part/models.py:2213 plugin/models.py:238 plugin/models.py:239 +#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665 +#: common/models.py:1666 common/models.py:1889 common/models.py:1890 +#: common/models.py:2152 common/models.py:2153 part/models.py:2200 +#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2632 +#: templates/js/translated/stock.js:2641 msgid "User" msgstr "Benutzer" @@ -271,19 +275,19 @@ msgstr "Fehler beim Umbenennen" msgid "Invalid choice" msgstr "Ungültige Auswahl" -#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1856 -#: company/models.py:358 label/models.py:101 part/models.py:739 -#: part/models.py:2371 plugin/models.py:93 report/models.py:152 +#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875 +#: company/models.py:358 label/models.py:101 part/models.py:746 +#: part/models.py:2378 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 -#: templates/InvenTree/settings/plugin.html:49 -#: templates/InvenTree/settings/plugin.html:132 +#: templates/InvenTree/settings/plugin.html:51 +#: templates/InvenTree/settings/plugin.html:134 #: templates/InvenTree/settings/plugin_settings.html:23 #: templates/InvenTree/settings/settings.html:347 #: templates/js/translated/company.js:545 #: templates/js/translated/company.js:758 #: templates/js/translated/notification.js:71 -#: templates/js/translated/part.js:684 templates/js/translated/part.js:836 -#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2388 +#: templates/js/translated/part.js:688 templates/js/translated/part.js:840 +#: templates/js/translated/part.js:1906 templates/js/translated/stock.js:2392 msgid "Name" msgstr "Name" @@ -292,21 +296,21 @@ msgstr "Name" #: company/models.py:516 company/templates/company/company_base.html:71 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:87 label/models.py:108 -#: order/models.py:82 part/models.py:762 part/templates/part/category.html:74 +#: order/models.py:82 part/models.py:769 part/templates/part/category.html:80 #: part/templates/part/part_base.html:167 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 -#: stock/templates/stock/location.html:103 +#: stock/templates/stock/location.html:108 #: templates/InvenTree/settings/plugin_settings.html:33 #: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848 #: templates/js/translated/build.js:2471 templates/js/translated/company.js:409 #: templates/js/translated/company.js:667 #: templates/js/translated/company.js:959 templates/js/translated/order.js:1720 #: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531 -#: templates/js/translated/part.js:743 templates/js/translated/part.js:1149 -#: templates/js/translated/part.js:1424 templates/js/translated/part.js:1933 -#: templates/js/translated/part.js:2002 templates/js/translated/stock.js:1739 -#: templates/js/translated/stock.js:2415 templates/js/translated/stock.js:2469 +#: templates/js/translated/part.js:747 templates/js/translated/part.js:1153 +#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1942 +#: templates/js/translated/part.js:2011 templates/js/translated/stock.js:1743 +#: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478 msgid "Description" msgstr "Beschreibung" @@ -319,7 +323,7 @@ msgid "parent" msgstr "Eltern" #: InvenTree/models.py:560 InvenTree/models.py:561 -#: templates/js/translated/part.js:1939 templates/js/translated/stock.js:2421 +#: templates/js/translated/part.js:1948 templates/js/translated/stock.js:2430 msgid "Path" msgstr "Pfad" @@ -331,7 +335,7 @@ msgstr "Serverfehler" msgid "An error has been logged by the server." msgstr "Ein Fehler wurde vom Server protokolliert." -#: InvenTree/serializers.py:55 part/models.py:2692 +#: InvenTree/serializers.py:55 part/models.py:2699 msgid "Must be a valid number" msgstr "Muss eine gültige Nummer sein" @@ -398,99 +402,99 @@ msgstr "URL der Remote-Bilddatei" msgid "Downloading images from remote URL is not enabled" msgstr "Das Herunterladen von Bildern von Remote-URLs ist nicht aktiviert" -#: InvenTree/settings.py:609 +#: InvenTree/settings.py:607 msgid "Czech" msgstr "Tschechisch" -#: InvenTree/settings.py:610 +#: InvenTree/settings.py:608 msgid "German" msgstr "Deutsch" -#: InvenTree/settings.py:611 +#: InvenTree/settings.py:609 msgid "Greek" msgstr "Griechisch" -#: InvenTree/settings.py:612 +#: InvenTree/settings.py:610 msgid "English" msgstr "Englisch" -#: InvenTree/settings.py:613 +#: InvenTree/settings.py:611 msgid "Spanish" msgstr "Spanisch" -#: InvenTree/settings.py:614 +#: InvenTree/settings.py:612 msgid "Spanish (Mexican)" msgstr "Spanisch (Mexikanisch)" -#: InvenTree/settings.py:615 +#: InvenTree/settings.py:613 msgid "Farsi / Persian" msgstr "Persisch" -#: InvenTree/settings.py:616 +#: InvenTree/settings.py:614 msgid "French" msgstr "Französisch" -#: InvenTree/settings.py:617 +#: InvenTree/settings.py:615 msgid "Hebrew" msgstr "Hebräisch" -#: InvenTree/settings.py:618 +#: InvenTree/settings.py:616 msgid "Hungarian" msgstr "Ungarisch" -#: InvenTree/settings.py:619 +#: InvenTree/settings.py:617 msgid "Italian" msgstr "Italienisch" -#: InvenTree/settings.py:620 +#: InvenTree/settings.py:618 msgid "Japanese" msgstr "Japanisch" -#: InvenTree/settings.py:621 +#: InvenTree/settings.py:619 msgid "Korean" msgstr "Koreanisch" -#: InvenTree/settings.py:622 +#: InvenTree/settings.py:620 msgid "Dutch" msgstr "Niederländisch" -#: InvenTree/settings.py:623 +#: InvenTree/settings.py:621 msgid "Norwegian" msgstr "Norwegisch" -#: InvenTree/settings.py:624 +#: InvenTree/settings.py:622 msgid "Polish" msgstr "Polnisch" -#: InvenTree/settings.py:625 +#: InvenTree/settings.py:623 msgid "Portuguese" msgstr "Portugiesisch" -#: InvenTree/settings.py:626 +#: InvenTree/settings.py:624 msgid "Portuguese (Brazilian)" msgstr "Portugiesisch (Brasilien)" -#: InvenTree/settings.py:627 +#: InvenTree/settings.py:625 msgid "Russian" msgstr "Russisch" -#: InvenTree/settings.py:628 +#: InvenTree/settings.py:626 msgid "Swedish" msgstr "Schwedisch" -#: InvenTree/settings.py:629 +#: InvenTree/settings.py:627 msgid "Thai" msgstr "Thailändisch" -#: InvenTree/settings.py:630 +#: InvenTree/settings.py:628 msgid "Turkish" msgstr "Türkisch" -#: InvenTree/settings.py:631 +#: InvenTree/settings.py:629 msgid "Vietnamese" msgstr "Vietnamesisch" -#: InvenTree/settings.py:632 +#: InvenTree/settings.py:630 msgid "Chinese" msgstr "Chinesisch" @@ -621,7 +625,7 @@ msgstr "Vom übergeordneten Element geteilt" msgid "Split child item" msgstr "Unterobjekt geteilt" -#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2080 +#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2084 msgid "Merged stock items" msgstr "Lagerartikel zusammengeführt" @@ -743,7 +747,7 @@ msgid "Build Order Reference" msgstr "Bauauftragsreferenz" #: build/models.py:166 order/models.py:240 order/models.py:623 -#: order/models.py:904 part/models.py:2610 +#: order/models.py:904 part/models.py:2617 #: part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 @@ -770,10 +774,10 @@ msgstr "Bauauftrag, zu dem dieser Bauauftrag zugwiesen ist" #: build/models.py:191 build/templates/build/build_base.html:77 #: build/templates/build/detail.html:29 company/models.py:670 #: order/models.py:1001 order/models.py:1112 order/models.py:1113 -#: part/models.py:336 part/models.py:2139 part/models.py:2154 -#: part/models.py:2173 part/models.py:2191 part/models.py:2290 -#: part/models.py:2410 part/models.py:2500 part/models.py:2585 -#: part/models.py:2861 part/serializers.py:811 +#: part/models.py:343 part/models.py:2146 part/models.py:2161 +#: part/models.py:2180 part/models.py:2198 part/models.py:2297 +#: part/models.py:2417 part/models.py:2507 part/models.py:2592 +#: part/models.py:2868 part/serializers.py:813 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -796,11 +800,11 @@ msgstr "Bauauftrag, zu dem dieser Bauauftrag zugwiesen ist" #: templates/js/translated/order.js:934 templates/js/translated/order.js:1387 #: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885 #: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507 -#: templates/js/translated/part.js:1134 templates/js/translated/part.js:1206 -#: templates/js/translated/part.js:1402 templates/js/translated/stock.js:582 -#: templates/js/translated/stock.js:747 templates/js/translated/stock.js:954 -#: templates/js/translated/stock.js:1696 templates/js/translated/stock.js:2495 -#: templates/js/translated/stock.js:2690 templates/js/translated/stock.js:2824 +#: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210 +#: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586 +#: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958 +#: templates/js/translated/stock.js:1700 templates/js/translated/stock.js:2504 +#: templates/js/translated/stock.js:2699 templates/js/translated/stock.js:2833 msgid "Part" msgstr "Teil" @@ -858,7 +862,7 @@ msgid "Build status code" msgstr "Bau-Statuscode" #: build/models.py:251 build/serializers.py:225 order/serializers.py:447 -#: stock/models.py:655 templates/js/translated/order.js:1247 +#: stock/models.py:662 templates/js/translated/order.js:1247 msgid "Batch Code" msgstr "Losnummer" @@ -866,7 +870,7 @@ msgstr "Losnummer" msgid "Batch code for this build output" msgstr "Losnummer für dieses Endprodukt" -#: build/models.py:258 order/models.py:86 part/models.py:931 +#: build/models.py:258 order/models.py:86 part/models.py:938 #: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544 msgid "Creation Date" msgstr "Erstelldatum" @@ -899,7 +903,7 @@ msgstr "Nutzer der diesen Bauauftrag erstellt hat" #: build/models.py:289 build/templates/build/build_base.html:190 #: build/templates/build/detail.html:115 order/models.py:100 #: order/templates/order/order_base.html:176 -#: order/templates/order/sales_order_base.html:183 part/models.py:935 +#: order/templates/order/sales_order_base.html:183 part/models.py:942 #: report/templates/report/inventree_build_order_base.html:158 #: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754 msgid "Responsible" @@ -912,7 +916,7 @@ msgstr "Nutzer der für diesen Bauauftrag zuständig ist" #: build/models.py:295 build/templates/build/detail.html:101 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:153 -#: part/templates/part/part_base.html:346 stock/models.py:649 +#: part/templates/part/part_base.html:346 stock/models.py:656 #: stock/templates/stock/item_base.html:205 msgid "External Link" msgstr "Externer Link" @@ -978,8 +982,8 @@ msgid "Build to allocate parts" msgstr "Bauauftrag starten um Teile zuzuweisen" #: build/models.py:1345 build/serializers.py:645 order/serializers.py:1015 -#: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 -#: stock/serializers.py:880 stock/templates/stock/item_base.html:10 +#: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:756 +#: stock/serializers.py:882 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:199 #: templates/js/translated/build.js:741 templates/js/translated/build.js:746 @@ -987,8 +991,8 @@ msgstr "Bauauftrag starten um Teile zuzuweisen" #: templates/js/translated/order.js:104 templates/js/translated/order.js:2886 #: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193 #: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380 -#: templates/js/translated/stock.js:583 templates/js/translated/stock.js:748 -#: templates/js/translated/stock.js:2568 +#: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752 +#: templates/js/translated/stock.js:2577 msgid "Stock Item" msgstr "Lagerartikel" @@ -998,11 +1002,11 @@ msgstr "Quell-Lagerartikel" #: build/models.py:1358 build/serializers.py:193 #: build/templates/build/build_base.html:82 -#: build/templates/build/detail.html:34 common/models.py:1678 +#: build/templates/build/detail.html:34 common/models.py:1697 #: company/templates/company/supplier_part.html:279 order/models.py:897 #: order/models.py:1423 order/serializers.py:1155 #: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40 -#: part/models.py:2601 part/templates/part/detail.html:937 +#: part/models.py:2608 part/templates/part/detail.html:937 #: part/templates/part/detail.html:1023 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 @@ -1025,11 +1029,11 @@ msgstr "Quell-Lagerartikel" #: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207 #: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386 #: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037 -#: templates/js/translated/part.js:1034 templates/js/translated/part.js:2147 -#: templates/js/translated/part.js:2378 templates/js/translated/part.js:2412 -#: templates/js/translated/part.js:2490 templates/js/translated/stock.js:454 -#: templates/js/translated/stock.js:608 templates/js/translated/stock.js:778 -#: templates/js/translated/stock.js:2617 templates/js/translated/stock.js:2702 +#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2156 +#: templates/js/translated/part.js:2387 templates/js/translated/part.js:2421 +#: templates/js/translated/part.js:2499 templates/js/translated/stock.js:458 +#: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782 +#: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711 msgid "Quantity" msgstr "Anzahl" @@ -1071,8 +1075,8 @@ msgid "Enter quantity for build output" msgstr "Menge der Endprodukte angeben" #: build/serializers.py:208 build/serializers.py:665 order/models.py:318 -#: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 -#: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 +#: order/serializers.py:287 order/serializers.py:442 part/serializers.py:544 +#: part/serializers.py:976 stock/models.py:484 stock/models.py:1251 #: stock/serializers.py:302 msgid "Quantity must be greater than zero" msgstr "Anzahl muss größer Null sein" @@ -1087,7 +1091,7 @@ msgstr "Ganzzahl erforderlich da die Stückliste nachverfolgbare Teile enthält" #: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159 #: stock/serializers.py:311 templates/js/translated/order.js:1258 -#: templates/js/translated/stock.js:267 templates/js/translated/stock.js:455 +#: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459 msgid "Serial Numbers" msgstr "Seriennummer" @@ -1113,16 +1117,16 @@ msgstr "Eine Liste von Endprodukten muss angegeben werden" #: build/serializers.py:366 order/serializers.py:428 order/serializers.py:532 #: stock/serializers.py:322 stock/serializers.py:453 stock/serializers.py:534 -#: stock/serializers.py:915 stock/serializers.py:1148 +#: stock/serializers.py:917 stock/serializers.py:1150 #: stock/templates/stock/item_base.html:390 #: templates/js/translated/barcode.js:436 #: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753 #: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285 #: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305 #: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394 -#: templates/js/translated/part.js:181 templates/js/translated/stock.js:584 -#: templates/js/translated/stock.js:749 templates/js/translated/stock.js:956 -#: templates/js/translated/stock.js:1850 templates/js/translated/stock.js:2509 +#: templates/js/translated/part.js:181 templates/js/translated/stock.js:588 +#: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960 +#: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518 msgid "Location" msgstr "Lagerort" @@ -1135,8 +1139,8 @@ msgstr "Lagerort für fertige Endprodukte" #: order/serializers.py:465 stock/templates/stock/item_base.html:423 #: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505 #: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724 -#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1825 -#: templates/js/translated/stock.js:2586 templates/js/translated/stock.js:2718 +#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829 +#: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727 msgid "Status" msgstr "Status" @@ -1212,8 +1216,8 @@ msgstr "Benötigte Teil-Anzahl wurde noch nicht fertiggestellt" msgid "Build order has incomplete outputs" msgstr "Bauauftrag hat unvollständige Aufbauten" -#: build/serializers.py:577 build/serializers.py:622 part/models.py:2719 -#: part/models.py:2853 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726 +#: part/models.py:2860 msgid "BOM Item" msgstr "Stücklisten-Position" @@ -1229,7 +1233,7 @@ msgstr "Endprodukt muss auf den gleichen Bauauftrag verweisen" msgid "bom_item.part must point to the same part as the build order" msgstr "bom_item.part muss auf dasselbe Teil verweisen wie der Bauauftrag" -#: build/serializers.py:651 stock/serializers.py:767 +#: build/serializers.py:651 stock/serializers.py:769 msgid "Item must be in stock" msgstr "Teil muss auf Lager sein" @@ -1367,7 +1371,7 @@ msgstr "Bestand wurde Bauauftrag noch nicht vollständig zugewiesen" #: report/templates/report/inventree_build_order_base.html:125 #: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741 #: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552 -#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1038 +#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042 msgid "Target Date" msgstr "Zieldatum" @@ -1445,8 +1449,8 @@ msgstr "Zugewiesene Teile" #: stock/templates/stock/item_base.html:170 #: templates/js/translated/build.js:1182 #: templates/js/translated/model_renderers.js:124 -#: templates/js/translated/stock.js:1022 templates/js/translated/stock.js:1839 -#: templates/js/translated/stock.js:2725 +#: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843 +#: templates/js/translated/stock.js:2734 #: templates/js/translated/table_filters.js:159 #: templates/js/translated/table_filters.js:250 msgid "Batch" @@ -1506,7 +1510,7 @@ msgstr "Benötigte Teile bestellen" #: build/templates/build/detail.html:187 #: company/templates/company/detail.html:37 #: company/templates/company/detail.html:85 -#: part/templates/part/category.html:177 templates/js/translated/order.js:977 +#: part/templates/part/category.html:183 templates/js/translated/order.js:977 msgid "Order Parts" msgstr "Teile bestellen" @@ -1559,12 +1563,12 @@ msgid "Delete outputs" msgstr "Endprodukte löschen" #: build/templates/build/detail.html:267 -#: stock/templates/stock/location.html:197 templates/stock_table.html:27 +#: stock/templates/stock/location.html:202 templates/stock_table.html:27 msgid "Printing Actions" msgstr "Druck Aktionen" #: build/templates/build/detail.html:271 build/templates/build/detail.html:272 -#: stock/templates/stock/location.html:201 templates/stock_table.html:31 +#: stock/templates/stock/location.html:206 templates/stock_table.html:31 msgid "Print labels" msgstr "Label drucken" @@ -1841,7 +1845,7 @@ msgstr "Kategorie-Parametervorlage kopieren" msgid "Copy category parameter templates when creating a part" msgstr "Kategorie-Parameter Vorlagen kopieren wenn ein Teil angelegt wird" -#: common/models.py:951 part/models.py:2412 report/models.py:158 +#: common/models.py:951 part/models.py:2419 report/models.py:158 #: templates/js/translated/table_filters.js:38 #: templates/js/translated/table_filters.js:484 msgid "Template" @@ -1851,7 +1855,7 @@ msgstr "Vorlage" msgid "Parts are templates by default" msgstr "Teile sind standardmäßig Vorlagen" -#: common/models.py:958 part/models.py:887 templates/js/translated/bom.js:1448 +#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448 #: templates/js/translated/table_filters.js:176 #: templates/js/translated/table_filters.js:447 msgid "Assembly" @@ -1861,7 +1865,7 @@ msgstr "Baugruppe" msgid "Parts can be assembled from other components by default" msgstr "Teile können standardmäßig aus anderen Teilen angefertigt werden" -#: common/models.py:965 part/models.py:893 +#: common/models.py:965 part/models.py:900 #: templates/js/translated/table_filters.js:455 msgid "Component" msgstr "Komponente" @@ -1870,7 +1874,7 @@ msgstr "Komponente" msgid "Parts can be used as sub-components by default" msgstr "Teile können standardmäßig in Baugruppen benutzt werden" -#: common/models.py:972 part/models.py:904 +#: common/models.py:972 part/models.py:911 msgid "Purchaseable" msgstr "Kaufbar" @@ -1878,7 +1882,7 @@ msgstr "Kaufbar" msgid "Parts are purchaseable by default" msgstr "Artikel sind grundsätzlich kaufbar" -#: common/models.py:979 part/models.py:909 +#: common/models.py:979 part/models.py:916 #: templates/js/translated/table_filters.js:476 msgid "Salable" msgstr "Verkäuflich" @@ -1887,7 +1891,7 @@ msgstr "Verkäuflich" msgid "Parts are salable by default" msgstr "Artikel sind grundsätzlich verkaufbar" -#: common/models.py:986 part/models.py:899 +#: common/models.py:986 part/models.py:906 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:108 #: templates/js/translated/table_filters.js:488 @@ -1898,7 +1902,7 @@ msgstr "Nachverfolgbar" msgid "Parts are trackable by default" msgstr "Artikel sind grundsätzlich verfolgbar" -#: common/models.py:993 part/models.py:919 +#: common/models.py:993 part/models.py:926 #: part/templates/part/part_base.html:151 #: templates/js/translated/table_filters.js:42 #: templates/js/translated/table_filters.js:492 @@ -1982,608 +1986,632 @@ msgid "Format to display the part name" msgstr "Format für den Namen eines Teiles" #: common/models.py:1074 +msgid "Part Category Default Icon" +msgstr "" + +#: common/models.py:1075 +msgid "Part category default icon (empty means no icon)" +msgstr "" + +#: common/models.py:1080 msgid "Enable label printing" msgstr "Labeldruck aktivieren" -#: common/models.py:1075 +#: common/models.py:1081 msgid "Enable label printing from the web interface" msgstr "Labeldruck über die Website aktivieren" -#: common/models.py:1081 +#: common/models.py:1087 msgid "Label Image DPI" msgstr "Label Bild DPI" -#: common/models.py:1082 +#: common/models.py:1088 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/models.py:1091 +#: common/models.py:1097 msgid "Enable Reports" msgstr "Berichte aktivieren" -#: common/models.py:1092 +#: common/models.py:1098 msgid "Enable generation of reports" msgstr "Berichterstellung aktivieren" -#: common/models.py:1098 templates/stats.html:25 +#: common/models.py:1104 templates/stats.html:25 msgid "Debug Mode" msgstr "Entwickler-Modus" -#: common/models.py:1099 +#: common/models.py:1105 msgid "Generate reports in debug mode (HTML output)" msgstr "Berichte im Entwickler-Modus generieren (als HTML)" -#: common/models.py:1105 +#: common/models.py:1111 msgid "Page Size" msgstr "Seitengröße" -#: common/models.py:1106 +#: common/models.py:1112 msgid "Default page size for PDF reports" msgstr "Standardseitenformat für PDF-Bericht" -#: common/models.py:1116 +#: common/models.py:1122 msgid "Enable Test Reports" msgstr "Testberichte aktivieren" -#: common/models.py:1117 +#: common/models.py:1123 msgid "Enable generation of test reports" msgstr "Erstellung von Test-Berichten aktivieren" -#: common/models.py:1123 +#: common/models.py:1129 msgid "Attach Test Reports" msgstr "Testberichte anhängen" -#: common/models.py:1124 +#: common/models.py:1130 msgid "When printing a Test Report, attach a copy of the Test Report to the associated Stock Item" msgstr "Beim Drucken eines Testberichts dem zugehörigen Lagerbestand eine Kopie des Testberichts beifügen" -#: common/models.py:1130 +#: common/models.py:1136 msgid "Batch Code Template" msgstr "Losnummer Vorlage" -#: common/models.py:1131 +#: common/models.py:1137 msgid "Template for generating default batch codes for stock items" msgstr "Vorlage für die Generierung von Standard-Losnummern für Lagerbestände" -#: common/models.py:1136 +#: common/models.py:1142 msgid "Stock Expiry" msgstr "Bestands-Ablauf" -#: common/models.py:1137 +#: common/models.py:1143 msgid "Enable stock expiry functionality" msgstr "Ablaufen von Bestand ermöglichen" -#: common/models.py:1143 +#: common/models.py:1149 msgid "Sell Expired Stock" msgstr "Abgelaufenen Bestand verkaufen" -#: common/models.py:1144 +#: common/models.py:1150 msgid "Allow sale of expired stock" msgstr "Verkauf von abgelaufenem Bestand erlaubt" -#: common/models.py:1150 +#: common/models.py:1156 msgid "Stock Stale Time" msgstr "Bestands-Stehzeit" -#: common/models.py:1151 +#: common/models.py:1157 msgid "Number of days stock items are considered stale before expiring" msgstr "Anzahl an Tagen, an denen Bestand als abgestanden markiert wird, bevor sie ablaufen" -#: common/models.py:1153 +#: common/models.py:1159 msgid "days" msgstr "Tage" -#: common/models.py:1158 +#: common/models.py:1164 msgid "Build Expired Stock" msgstr "Abgelaufenen Bestand verbauen" -#: common/models.py:1159 +#: common/models.py:1165 msgid "Allow building with expired stock" msgstr "Verbauen von abgelaufenen Bestand erlaubt" -#: common/models.py:1165 +#: common/models.py:1171 msgid "Stock Ownership Control" msgstr "Bestands-Eigentümerkontrolle" -#: common/models.py:1166 +#: common/models.py:1172 msgid "Enable ownership control over stock locations and items" msgstr "Eigentümerkontrolle für Lagerorte und Teile aktivieren" -#: common/models.py:1172 -msgid "Build Order Reference Pattern" -msgstr "" - -#: common/models.py:1173 -msgid "Required pattern for generating Build Order reference field" +#: common/models.py:1178 +msgid "Stock Location Default Icon" msgstr "" #: common/models.py:1179 +msgid "Stock location default icon (empty means no icon)" +msgstr "" + +#: common/models.py:1184 +msgid "Build Order Reference Pattern" +msgstr "" + +#: common/models.py:1185 +msgid "Required pattern for generating Build Order reference field" +msgstr "" + +#: common/models.py:1191 msgid "Sales Order Reference Pattern" msgstr "" -#: common/models.py:1180 +#: common/models.py:1192 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/models.py:1186 +#: common/models.py:1198 msgid "Sales Order Default Shipment" msgstr "Auftrag Standardsendung" -#: common/models.py:1187 +#: common/models.py:1199 msgid "Enable creation of default shipment with sales orders" msgstr "Erstelle eine Standardsendung für Aufträge" -#: common/models.py:1193 +#: common/models.py:1205 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/models.py:1194 +#: common/models.py:1206 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/models.py:1201 +#: common/models.py:1213 msgid "Enable password forgot" msgstr "Passwort vergessen aktivieren" -#: common/models.py:1202 +#: common/models.py:1214 msgid "Enable password forgot function on the login pages" msgstr "Passwort-vergessen-Funktion auf den Anmeldeseiten aktivieren" -#: common/models.py:1208 +#: common/models.py:1220 msgid "Enable registration" msgstr "Anmeldung erlauben" -#: common/models.py:1209 +#: common/models.py:1221 msgid "Enable self-registration for users on the login pages" msgstr "Selbstregistrierung für Benutzer auf den Anmeldeseiten aktivieren" -#: common/models.py:1215 +#: common/models.py:1227 msgid "Enable SSO" msgstr "SSO aktivieren" -#: common/models.py:1216 +#: common/models.py:1228 msgid "Enable SSO on the login pages" msgstr "SSO auf den Anmeldeseiten aktivieren" -#: common/models.py:1222 +#: common/models.py:1234 msgid "Email required" msgstr "Email-Adresse erforderlich" -#: common/models.py:1223 +#: common/models.py:1235 msgid "Require user to supply mail on signup" msgstr "Benutzer müssen bei der Registrierung eine E-Mail angeben" -#: common/models.py:1229 +#: common/models.py:1241 msgid "Auto-fill SSO users" msgstr "SSO-Benutzer automatisch ausfüllen" -#: common/models.py:1230 +#: common/models.py:1242 msgid "Automatically fill out user-details from SSO account-data" msgstr "Benutzer-Details automatisch aus SSO-Konto ausfüllen" -#: common/models.py:1236 +#: common/models.py:1248 msgid "Mail twice" msgstr "E-Mail zweimal" -#: common/models.py:1237 +#: common/models.py:1249 msgid "On signup ask users twice for their mail" msgstr "Bei der Registrierung den Benutzer zweimal nach der E-Mail-Adresse fragen" -#: common/models.py:1243 +#: common/models.py:1255 msgid "Password twice" msgstr "Passwort zweimal" -#: common/models.py:1244 +#: common/models.py:1256 msgid "On signup ask users twice for their password" msgstr "Bei der Registrierung den Benutzer zweimal nach dem Passwort fragen" -#: common/models.py:1250 +#: common/models.py:1262 msgid "Group on signup" msgstr "Gruppe bei Registrierung" -#: common/models.py:1251 +#: common/models.py:1263 msgid "Group to which new users are assigned on registration" msgstr "Gruppe der neue Benutzer bei der Registrierung zugewiesen werden" -#: common/models.py:1257 +#: common/models.py:1269 msgid "Enforce MFA" msgstr "MFA erzwingen" -#: common/models.py:1258 +#: common/models.py:1270 msgid "Users must use multifactor security." msgstr "Benutzer müssen Multifaktor-Authentifizierung verwenden." -#: common/models.py:1264 +#: common/models.py:1276 msgid "Check plugins on startup" msgstr "Plugins beim Start prüfen" -#: common/models.py:1265 +#: common/models.py:1277 msgid "Check that all plugins are installed on startup - enable in container enviroments" msgstr "Beim Start überprüfen, ob alle Plugins installiert sind - Für Container aktivieren" -#: common/models.py:1273 +#: common/models.py:1284 +msgid "Check plugin signatures" +msgstr "" + +#: common/models.py:1285 +msgid "Check and show signatures for plugins" +msgstr "" + +#: common/models.py:1292 msgid "Enable URL integration" msgstr "URL-Integration aktivieren" -#: common/models.py:1274 +#: common/models.py:1293 msgid "Enable plugins to add URL routes" msgstr "Plugins zum Hinzufügen von URLs aktivieren" -#: common/models.py:1281 +#: common/models.py:1300 msgid "Enable navigation integration" msgstr "Navigations-Integration aktivieren" -#: common/models.py:1282 +#: common/models.py:1301 msgid "Enable plugins to integrate into navigation" msgstr "Plugins zur Integration in die Navigation aktivieren" -#: common/models.py:1289 +#: common/models.py:1308 msgid "Enable app integration" msgstr "App-Integration aktivieren" -#: common/models.py:1290 +#: common/models.py:1309 msgid "Enable plugins to add apps" msgstr "Plugins zum Hinzufügen von Apps aktivieren" -#: common/models.py:1297 +#: common/models.py:1316 msgid "Enable schedule integration" msgstr "Terminplan-Integration aktivieren" -#: common/models.py:1298 +#: common/models.py:1317 msgid "Enable plugins to run scheduled tasks" msgstr "Geplante Aufgaben aktivieren" -#: common/models.py:1305 +#: common/models.py:1324 msgid "Enable event integration" msgstr "Ereignis-Integration aktivieren" -#: common/models.py:1306 +#: common/models.py:1325 msgid "Enable plugins to respond to internal events" msgstr "Plugins ermöglichen auf interne Ereignisse zu reagieren" -#: common/models.py:1323 common/models.py:1639 +#: common/models.py:1342 common/models.py:1658 msgid "Settings key (must be unique - case insensitive" msgstr "Einstellungs-Schlüssel (muss einzigartig sein, Groß-/ Kleinschreibung wird nicht beachtet)" -#: common/models.py:1345 +#: common/models.py:1364 msgid "Show subscribed parts" msgstr "Abonnierte Teile anzeigen" -#: common/models.py:1346 +#: common/models.py:1365 msgid "Show subscribed parts on the homepage" msgstr "Zeige abonnierte Teile auf der Startseite" -#: common/models.py:1352 +#: common/models.py:1371 msgid "Show subscribed categories" msgstr "Abonnierte Kategorien anzeigen" -#: common/models.py:1353 +#: common/models.py:1372 msgid "Show subscribed part categories on the homepage" msgstr "Zeige abonnierte Teilkategorien auf der Startseite" -#: common/models.py:1359 +#: common/models.py:1378 msgid "Show latest parts" msgstr "Neueste Teile anzeigen" -#: common/models.py:1360 +#: common/models.py:1379 msgid "Show latest parts on the homepage" msgstr "Zeige neueste Teile auf der Startseite" -#: common/models.py:1366 +#: common/models.py:1385 msgid "Recent Part Count" msgstr "Aktuelle Teile-Stände" -#: common/models.py:1367 +#: common/models.py:1386 msgid "Number of recent parts to display on index page" msgstr "Anzahl der neusten Teile auf der Startseite" -#: common/models.py:1373 +#: common/models.py:1392 msgid "Show unvalidated BOMs" msgstr "Nicht validierte Stücklisten anzeigen" -#: common/models.py:1374 +#: common/models.py:1393 msgid "Show BOMs that await validation on the homepage" msgstr "Zeige Stücklisten, die noch nicht validiert sind, auf der Startseite" -#: common/models.py:1380 +#: common/models.py:1399 msgid "Show recent stock changes" msgstr "Neueste Bestandänderungen anzeigen" -#: common/models.py:1381 +#: common/models.py:1400 msgid "Show recently changed stock items on the homepage" msgstr "Zeige zuletzt geänderte Lagerbestände auf der Startseite" -#: common/models.py:1387 +#: common/models.py:1406 msgid "Recent Stock Count" msgstr "aktueller Bestand" -#: common/models.py:1388 +#: common/models.py:1407 msgid "Number of recent stock items to display on index page" msgstr "Anzahl des geänderten Bestands auf der Startseite" -#: common/models.py:1394 +#: common/models.py:1413 msgid "Show low stock" msgstr "Niedrigen Bestand anzeigen" -#: common/models.py:1395 +#: common/models.py:1414 msgid "Show low stock items on the homepage" msgstr "Zeige geringen Bestand auf der Startseite" -#: common/models.py:1401 +#: common/models.py:1420 msgid "Show depleted stock" msgstr "Lerren Bestand anzeigen" -#: common/models.py:1402 +#: common/models.py:1421 msgid "Show depleted stock items on the homepage" msgstr "Zeige aufgebrauchte Lagerartikel auf der Startseite" -#: common/models.py:1408 +#: common/models.py:1427 msgid "Show needed stock" msgstr "Benötigten Bestand anzeigen" -#: common/models.py:1409 +#: common/models.py:1428 msgid "Show stock items needed for builds on the homepage" msgstr "Zeige Bestand für Bauaufträge auf der Startseite" -#: common/models.py:1415 +#: common/models.py:1434 msgid "Show expired stock" msgstr "Abgelaufenen Bestand anzeigen" -#: common/models.py:1416 +#: common/models.py:1435 msgid "Show expired stock items on the homepage" msgstr "Zeige abgelaufene Lagerbestände auf der Startseite" -#: common/models.py:1422 +#: common/models.py:1441 msgid "Show stale stock" msgstr "Alten Bestand anzeigen" -#: common/models.py:1423 +#: common/models.py:1442 msgid "Show stale stock items on the homepage" msgstr "Zeige überfällige Lagerartikel auf der Startseite" -#: common/models.py:1429 +#: common/models.py:1448 msgid "Show pending builds" msgstr "Ausstehende Bauaufträge anzeigen" -#: common/models.py:1430 +#: common/models.py:1449 msgid "Show pending builds on the homepage" msgstr "Zeige ausstehende Bauaufträge auf der Startseite" -#: common/models.py:1436 +#: common/models.py:1455 msgid "Show overdue builds" msgstr "Zeige überfällige Bauaufträge" -#: common/models.py:1437 +#: common/models.py:1456 msgid "Show overdue builds on the homepage" msgstr "Zeige überfällige Bauaufträge auf der Startseite" -#: common/models.py:1443 +#: common/models.py:1462 msgid "Show outstanding POs" msgstr "Ausstehende POs anzeigen" -#: common/models.py:1444 +#: common/models.py:1463 msgid "Show outstanding POs on the homepage" msgstr "Zeige ausstehende POs auf der Startseite" -#: common/models.py:1450 +#: common/models.py:1469 msgid "Show overdue POs" msgstr "Überfällige POs anzeigen" -#: common/models.py:1451 +#: common/models.py:1470 msgid "Show overdue POs on the homepage" msgstr "Zeige überfällige POs auf der Startseite" -#: common/models.py:1457 +#: common/models.py:1476 msgid "Show outstanding SOs" msgstr "Ausstehende SOs anzeigen" -#: common/models.py:1458 +#: common/models.py:1477 msgid "Show outstanding SOs on the homepage" msgstr "Zeige ausstehende SOs auf der Startseite" -#: common/models.py:1464 +#: common/models.py:1483 msgid "Show overdue SOs" msgstr "Überfällige SOs anzeigen" -#: common/models.py:1465 +#: common/models.py:1484 msgid "Show overdue SOs on the homepage" msgstr "Zeige überfällige SOs auf der Startseite" -#: common/models.py:1471 +#: common/models.py:1490 msgid "Inline label display" msgstr "Label inline anzeigen" -#: common/models.py:1472 +#: common/models.py:1491 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "PDF-Labels im Browser anzeigen, anstatt als Datei herunterzuladen" -#: common/models.py:1478 +#: common/models.py:1497 msgid "Inline report display" msgstr "Berichte inline anzeigen" -#: common/models.py:1479 +#: common/models.py:1498 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "PDF-Berichte im Browser anzeigen, anstatt als Datei herunterzuladen" -#: common/models.py:1485 +#: common/models.py:1504 msgid "Search Parts" msgstr "Teile suchen" -#: common/models.py:1486 +#: common/models.py:1505 msgid "Display parts in search preview window" msgstr "Teile in der Suchvorschau anzeigen" -#: common/models.py:1492 +#: common/models.py:1511 msgid "Seach Supplier Parts" msgstr "Zuliefererteile durchsuchen" -#: common/models.py:1493 +#: common/models.py:1512 msgid "Display supplier parts in search preview window" msgstr "Zuliefererteile in der Suchvorschau anzeigen" -#: common/models.py:1499 +#: common/models.py:1518 msgid "Search Manufacturer Parts" msgstr "Herstellerteile durchsuchen" -#: common/models.py:1500 +#: common/models.py:1519 msgid "Display manufacturer parts in search preview window" msgstr "Herstellerteile in der Suchvorschau anzeigen" -#: common/models.py:1506 +#: common/models.py:1525 msgid "Hide Inactive Parts" msgstr "Inaktive Teile ausblenden" -#: common/models.py:1507 +#: common/models.py:1526 msgid "Excluded inactive parts from search preview window" msgstr "Inaktive Teile in der Suchvorschau ausblenden" -#: common/models.py:1513 +#: common/models.py:1532 msgid "Search Categories" msgstr "Kategorien durchsuchen" -#: common/models.py:1514 +#: common/models.py:1533 msgid "Display part categories in search preview window" msgstr "Teilekategorien in der Suchvorschau anzeigen" -#: common/models.py:1520 +#: common/models.py:1539 msgid "Search Stock" msgstr "Bestand durchsuchen" -#: common/models.py:1521 +#: common/models.py:1540 msgid "Display stock items in search preview window" msgstr "Lagerartikel in Suchvorschau anzeigen" -#: common/models.py:1527 +#: common/models.py:1546 msgid "Hide Unavailable Stock Items" msgstr "Nicht verfügbare Artikel ausblenden" -#: common/models.py:1528 +#: common/models.py:1547 msgid "Exclude stock items which are not available from the search preview window" msgstr "Nicht verfügbare Lagerartikel aus der Suchvorschau ausschließen" -#: common/models.py:1534 +#: common/models.py:1553 msgid "Search Locations" msgstr "Lagerorte durchsuchen" -#: common/models.py:1535 +#: common/models.py:1554 msgid "Display stock locations in search preview window" msgstr "Lagerorte in Suchvorschau anzeigen" -#: common/models.py:1541 +#: common/models.py:1560 msgid "Search Companies" msgstr "Firmen durchsuchen" -#: common/models.py:1542 +#: common/models.py:1561 msgid "Display companies in search preview window" msgstr "Firmen in der Suchvorschau anzeigen" -#: common/models.py:1548 +#: common/models.py:1567 msgid "Search Purchase Orders" msgstr "Bestellungen durchsuchen" -#: common/models.py:1549 +#: common/models.py:1568 msgid "Display purchase orders in search preview window" msgstr "Bestellungen in der Suchvorschau anzeigen" -#: common/models.py:1555 +#: common/models.py:1574 msgid "Exclude Inactive Purchase Orders" msgstr "Inaktive Bestellungen ausblenden" -#: common/models.py:1556 +#: common/models.py:1575 msgid "Exclude inactive purchase orders from search preview window" msgstr "Inaktive Bestellungen in der Suchvorschau ausblenden" -#: common/models.py:1562 +#: common/models.py:1581 msgid "Search Sales Orders" msgstr "Aufträge durchsuchen" -#: common/models.py:1563 +#: common/models.py:1582 msgid "Display sales orders in search preview window" msgstr "Aufträge in der Suchvorschau anzeigen" -#: common/models.py:1569 +#: common/models.py:1588 msgid "Exclude Inactive Sales Orders" msgstr "Inaktive Aufträge ausblenden" -#: common/models.py:1570 +#: common/models.py:1589 msgid "Exclude inactive sales orders from search preview window" msgstr "Inaktive Aufträge in der Suchvorschau ausblenden" -#: common/models.py:1576 +#: common/models.py:1595 msgid "Search Preview Results" msgstr "Anzahl Suchergebnisse" -#: common/models.py:1577 +#: common/models.py:1596 msgid "Number of results to show in each section of the search preview window" msgstr "Anzahl der Ergebnisse, die in der Vorschau pro Sektion angezeigt werden sollen" -#: common/models.py:1583 +#: common/models.py:1602 msgid "Show Quantity in Forms" msgstr "zeige Bestand in Eingabemasken" -#: common/models.py:1584 +#: common/models.py:1603 msgid "Display available part quantity in some forms" msgstr "Zeige den verfügbaren Bestand in einigen Eingabemasken" -#: common/models.py:1590 +#: common/models.py:1609 msgid "Escape Key Closes Forms" msgstr "Esc-Taste schließt Formulare" -#: common/models.py:1591 +#: common/models.py:1610 msgid "Use the escape key to close modal forms" msgstr "Benutze die Esc-Taste, um Formulare zu schließen" -#: common/models.py:1597 +#: common/models.py:1616 msgid "Fixed Navbar" msgstr "Fixierter Navigationsleiste" -#: common/models.py:1598 +#: common/models.py:1617 msgid "The navbar position is fixed to the top of the screen" msgstr "Position der Navigationsleiste am oberen Bildschirmrand fixieren" -#: common/models.py:1604 +#: common/models.py:1623 msgid "Date Format" msgstr "Datumsformat" -#: common/models.py:1605 +#: common/models.py:1624 msgid "Preferred format for displaying dates" msgstr "Bevorzugtes Format für die Anzeige von Daten" -#: common/models.py:1619 part/templates/part/detail.html:41 +#: common/models.py:1638 part/templates/part/detail.html:41 msgid "Part Scheduling" msgstr "Teilzeitplanung" -#: common/models.py:1620 +#: common/models.py:1639 msgid "Display part scheduling information" msgstr "Zeige Zeitplanung für Teile" -#: common/models.py:1679 +#: common/models.py:1698 msgid "Price break quantity" msgstr "Preisstaffelungs Anzahl" -#: common/models.py:1686 company/serializers.py:366 +#: common/models.py:1705 company/serializers.py:366 #: company/templates/company/supplier_part.html:284 order/models.py:938 -#: templates/js/translated/part.js:1065 templates/js/translated/part.js:2152 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2161 msgid "Price" msgstr "Preis" -#: common/models.py:1687 +#: common/models.py:1706 msgid "Unit price at specified quantity" msgstr "Stückpreis für die angegebene Anzahl" -#: common/models.py:1847 common/models.py:2025 +#: common/models.py:1866 common/models.py:2044 msgid "Endpoint" msgstr "Endpunkt" -#: common/models.py:1848 +#: common/models.py:1867 msgid "Endpoint at which this webhook is received" msgstr "Endpunkt, an dem dieser Webhook empfangen wird" -#: common/models.py:1857 +#: common/models.py:1876 msgid "Name for this webhook" msgstr "Name für diesen Webhook" -#: common/models.py:1862 part/models.py:914 plugin/models.py:99 +#: common/models.py:1881 part/models.py:921 plugin/models.py:100 #: templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:104 #: templates/js/translated/table_filters.js:316 @@ -2591,67 +2619,67 @@ msgstr "Name für diesen Webhook" msgid "Active" msgstr "Aktiv" -#: common/models.py:1863 +#: common/models.py:1882 msgid "Is this webhook active" msgstr "Ist dieser Webhook aktiv" -#: common/models.py:1877 +#: common/models.py:1896 msgid "Token" msgstr "Token" -#: common/models.py:1878 +#: common/models.py:1897 msgid "Token for access" msgstr "Token für Zugang" -#: common/models.py:1885 +#: common/models.py:1904 msgid "Secret" msgstr "Geheimnis" -#: common/models.py:1886 +#: common/models.py:1905 msgid "Shared secret for HMAC" msgstr "Shared Secret für HMAC" -#: common/models.py:1992 +#: common/models.py:2011 msgid "Message ID" msgstr "Nachrichten-ID" -#: common/models.py:1993 +#: common/models.py:2012 msgid "Unique identifier for this message" msgstr "Eindeutige Kennung für diese Nachricht" -#: common/models.py:2001 +#: common/models.py:2020 msgid "Host" msgstr "Host" -#: common/models.py:2002 +#: common/models.py:2021 msgid "Host from which this message was received" msgstr "Host von dem diese Nachricht empfangen wurde" -#: common/models.py:2009 +#: common/models.py:2028 msgid "Header" msgstr "Kopfzeile" -#: common/models.py:2010 +#: common/models.py:2029 msgid "Header of this message" msgstr "Header dieser Nachricht" -#: common/models.py:2016 +#: common/models.py:2035 msgid "Body" msgstr "Body" -#: common/models.py:2017 +#: common/models.py:2036 msgid "Body of this message" msgstr "Body dieser Nachricht" -#: common/models.py:2026 +#: common/models.py:2045 msgid "Endpoint on which this message was received" msgstr "Endpunkt, über den diese Nachricht empfangen wurde" -#: common/models.py:2031 +#: common/models.py:2050 msgid "Worked on" msgstr "Bearbeitet" -#: common/models.py:2032 +#: common/models.py:2051 msgid "Was the work on this message finished?" msgstr "Wurde die Arbeit an dieser Nachricht abgeschlossen?" @@ -2758,7 +2786,7 @@ msgstr "Anlaufstelle" msgid "Link to external company information" msgstr "Link auf externe Firmeninformation" -#: company/models.py:135 part/models.py:808 +#: company/models.py:135 part/models.py:815 msgid "Image" msgstr "Bild" @@ -2791,8 +2819,8 @@ msgid "Does this company manufacture parts?" msgstr "Produziert diese Firma Teile?" #: company/models.py:148 company/serializers.py:372 -#: company/templates/company/company_base.html:106 part/serializers.py:151 -#: part/serializers.py:182 stock/serializers.py:180 +#: company/templates/company/company_base.html:106 part/serializers.py:153 +#: part/serializers.py:184 stock/serializers.py:180 msgid "Currency" msgstr "Währung" @@ -2800,7 +2828,7 @@ msgstr "Währung" msgid "Default currency used for this company" msgstr "Standard-Währung für diese Firma" -#: company/models.py:248 company/models.py:481 stock/models.py:591 +#: company/models.py:248 company/models.py:481 stock/models.py:598 #: stock/serializers.py:87 stock/templates/stock/item_base.html:148 #: templates/js/translated/bom.js:543 msgid "Base Part" @@ -2832,7 +2860,7 @@ msgstr "Hersteller auswählen" #: templates/js/translated/company.js:497 #: templates/js/translated/company.js:649 #: templates/js/translated/company.js:937 templates/js/translated/order.js:1971 -#: templates/js/translated/part.js:247 templates/js/translated/part.js:1023 +#: templates/js/translated/part.js:247 templates/js/translated/part.js:1027 msgid "MPN" msgstr "MPN" @@ -2861,9 +2889,9 @@ msgstr "Parametername" #: company/models.py:365 #: report/templates/report/inventree_test_report_base.html:95 -#: stock/models.py:2088 templates/js/translated/company.js:546 -#: templates/js/translated/company.js:764 templates/js/translated/part.js:845 -#: templates/js/translated/stock.js:1356 +#: stock/models.py:2095 templates/js/translated/company.js:546 +#: templates/js/translated/company.js:764 templates/js/translated/part.js:849 +#: templates/js/translated/stock.js:1360 msgid "Value" msgstr "Wert" @@ -2871,10 +2899,10 @@ msgstr "Wert" msgid "Parameter value" msgstr "Parameterwert" -#: company/models.py:372 part/models.py:881 part/models.py:2379 +#: company/models.py:372 part/models.py:888 part/models.py:2386 #: part/templates/part/part_base.html:280 #: templates/InvenTree/settings/settings.html:352 -#: templates/js/translated/company.js:770 templates/js/translated/part.js:851 +#: templates/js/translated/company.js:770 templates/js/translated/part.js:855 msgid "Units" msgstr "Einheiten" @@ -2894,7 +2922,7 @@ msgstr "Verlinktes Herstellerteil muss dasselbe Basisteil referenzieren" #: templates/js/translated/company.js:268 #: templates/js/translated/company.js:401 #: templates/js/translated/company.js:893 templates/js/translated/order.js:1707 -#: templates/js/translated/part.js:217 templates/js/translated/part.js:991 +#: templates/js/translated/part.js:217 templates/js/translated/part.js:995 #: templates/js/translated/table_filters.js:423 msgid "Supplier" msgstr "Zulieferer" @@ -2906,7 +2934,7 @@ msgstr "Zulieferer auswählen" #: company/models.py:497 company/templates/company/supplier_part.html:118 #: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267 #: templates/js/translated/order.js:1958 templates/js/translated/part.js:228 -#: templates/js/translated/part.js:1009 +#: templates/js/translated/part.js:1013 msgid "SKU" msgstr "SKU (Lagerbestandseinheit)" @@ -2927,23 +2955,23 @@ msgid "Supplier part description" msgstr "Zuliefererbeschreibung des Teils" #: company/models.py:522 company/templates/company/supplier_part.html:146 -#: part/models.py:2613 part/templates/part/upload_bom.html:59 +#: part/models.py:2620 part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401 msgid "Note" msgstr "Notiz" -#: company/models.py:526 part/models.py:1735 +#: company/models.py:526 part/models.py:1742 msgid "base cost" msgstr "Basiskosten" -#: company/models.py:526 part/models.py:1735 +#: company/models.py:526 part/models.py:1742 msgid "Minimum charge (e.g. stocking fee)" msgstr "Mindestpreis" #: company/models.py:528 company/templates/company/supplier_part.html:139 -#: stock/models.py:617 stock/templates/stock/item_base.html:245 -#: templates/js/translated/company.js:969 templates/js/translated/stock.js:1972 +#: stock/models.py:624 stock/templates/stock/item_base.html:245 +#: templates/js/translated/company.js:969 templates/js/translated/stock.js:1976 msgid "Packaging" msgstr "Verpackungen" @@ -2951,7 +2979,7 @@ msgstr "Verpackungen" msgid "Part packaging" msgstr "Teile-Verpackungen" -#: company/models.py:530 part/models.py:1737 +#: company/models.py:530 part/models.py:1744 msgid "multiple" msgstr "Vielfache" @@ -2964,7 +2992,7 @@ msgstr "Mehrere bestellen" #: templates/email/low_stock_notification.html:18 #: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789 #: templates/js/translated/build.js:2645 templates/js/translated/company.js:979 -#: templates/js/translated/part.js:596 templates/js/translated/part.js:599 +#: templates/js/translated/part.js:600 templates/js/translated/part.js:603 #: templates/js/translated/table_filters.js:186 msgid "Available" msgstr "Verfügbar" @@ -3037,12 +3065,12 @@ msgid "Download image from URL" msgstr "Bild von URL herunterladen" #: company/templates/company/company_base.html:86 order/models.py:637 -#: order/templates/order/sales_order_base.html:116 stock/models.py:636 -#: stock/models.py:637 stock/serializers.py:809 +#: order/templates/order/sales_order_base.html:116 stock/models.py:643 +#: stock/models.py:644 stock/serializers.py:811 #: stock/templates/stock/item_base.html:401 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:393 templates/js/translated/order.js:2513 -#: templates/js/translated/stock.js:2550 +#: templates/js/translated/stock.js:2559 #: templates/js/translated/table_filters.js:427 msgid "Customer" msgstr "Kunde" @@ -3083,7 +3111,7 @@ msgstr "Neues Zuliefererteil" #: company/templates/company/detail.html:36 #: company/templates/company/detail.html:84 -#: part/templates/part/category.html:176 +#: part/templates/part/category.html:182 msgid "Order parts" msgstr "Teile bestellen" @@ -3231,7 +3259,7 @@ msgstr "Parameter" #: company/templates/company/manufacturer_part.html:170 #: part/templates/part/detail.html:186 #: templates/InvenTree/settings/category.html:12 -#: templates/InvenTree/settings/part.html:66 +#: templates/InvenTree/settings/part.html:68 msgid "New Parameter" msgstr "Neuer Parameter" @@ -3261,10 +3289,10 @@ msgid "Assigned Stock Items" msgstr "Zugewiesene Lagerartikel" #: company/templates/company/supplier_part.html:7 -#: company/templates/company/supplier_part.html:24 stock/models.py:600 +#: company/templates/company/supplier_part.html:24 stock/models.py:607 #: stock/templates/stock/item_base.html:238 #: templates/js/translated/company.js:909 templates/js/translated/order.js:935 -#: templates/js/translated/stock.js:1929 +#: templates/js/translated/stock.js:1933 msgid "Supplier Part" msgstr "Zuliefererteil" @@ -3308,13 +3336,13 @@ msgid "Supplier Part Stock" msgstr "Zulieferer-Bestand" #: company/templates/company/supplier_part.html:168 -#: part/templates/part/detail.html:24 stock/templates/stock/location.html:176 +#: part/templates/part/detail.html:24 stock/templates/stock/location.html:181 msgid "Create new stock item" msgstr "Neuen Lagerartikel hinzufügen" #: company/templates/company/supplier_part.html:169 -#: part/templates/part/detail.html:25 stock/templates/stock/location.html:177 -#: templates/js/translated/stock.js:431 +#: part/templates/part/detail.html:25 stock/templates/stock/location.html:182 +#: templates/js/translated/stock.js:435 msgid "New Stock Item" msgstr "Neuer Lagerartikel" @@ -3330,7 +3358,7 @@ msgstr "Preisinformationen ansehen" #: company/templates/company/supplier_part.html:212 #: company/templates/company/supplier_part.html:326 -#: part/templates/part/prices.html:276 templates/js/translated/part.js:2224 +#: part/templates/part/prices.html:276 templates/js/translated/part.js:2233 msgid "Add Price Break" msgstr "Preisstaffel hinzufügen" @@ -3339,12 +3367,12 @@ msgid "No price break information found" msgstr "Keine Informationen zur Preisstaffel gefunden" #: company/templates/company/supplier_part.html:252 -#: templates/js/translated/part.js:2234 +#: templates/js/translated/part.js:2243 msgid "Delete Price Break" msgstr "Preisstaffel löschen" #: company/templates/company/supplier_part.html:266 -#: templates/js/translated/part.js:2248 +#: templates/js/translated/part.js:2257 msgid "Edit Price Break" msgstr "Preisstaffel bearbeiten" @@ -3366,13 +3394,13 @@ msgstr "Teilverfügbarkeit aktualisieren" #: company/templates/company/supplier_part_navbar.html:15 #: part/templates/part/part_sidebar.html:14 -#: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:19 +#: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:24 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:151 #: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/bom.js:555 templates/js/translated/part.js:747 -#: templates/js/translated/part.js:1295 templates/js/translated/part.js:1456 -#: templates/js/translated/stock.js:955 templates/js/translated/stock.js:1750 +#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751 +#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460 +#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754 #: templates/navbar.html:31 msgid "Stock" msgstr "Bestand" @@ -3392,14 +3420,14 @@ msgid "Pricing" msgstr "Bepreisung" #: company/templates/company/supplier_part_sidebar.html:5 -#: part/templates/part/category.html:197 +#: part/templates/part/category.html:203 #: part/templates/part/category_sidebar.html:17 -#: stock/templates/stock/location.html:147 -#: stock/templates/stock/location.html:161 -#: stock/templates/stock/location.html:173 +#: stock/templates/stock/location.html:152 +#: stock/templates/stock/location.html:166 +#: stock/templates/stock/location.html:178 #: stock/templates/stock/location_sidebar.html:7 #: templates/InvenTree/search.html:153 templates/js/translated/search.js:223 -#: templates/js/translated/stock.js:2427 users/models.py:40 +#: templates/js/translated/stock.js:2436 users/models.py:40 msgid "Stock Items" msgstr "Lagerartikel" @@ -3656,8 +3684,8 @@ msgstr "Bestellung" #: stock/templates/stock/item_base.html:184 #: templates/email/overdue_purchase_order.html:15 #: templates/js/translated/order.js:936 templates/js/translated/order.js:1691 -#: templates/js/translated/part.js:968 templates/js/translated/stock.js:1909 -#: templates/js/translated/stock.js:2531 +#: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913 +#: templates/js/translated/stock.js:2540 msgid "Purchase Order" msgstr "Bestellung" @@ -3667,7 +3695,7 @@ msgstr "Zuliefererteil" #: order/models.py:1009 order/templates/order/order_base.html:169 #: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073 -#: templates/js/translated/part.js:1060 templates/js/translated/part.js:1087 +#: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091 #: templates/js/translated/table_filters.js:338 msgid "Received" msgstr "Empfangen" @@ -3676,9 +3704,9 @@ msgstr "Empfangen" msgid "Number of items received" msgstr "Empfangene Objekt-Anzahl" -#: order/models.py:1017 part/templates/part/prices.html:181 stock/models.py:727 +#: order/models.py:1017 part/templates/part/prices.html:181 stock/models.py:734 #: stock/serializers.py:171 stock/templates/stock/item_base.html:191 -#: templates/js/translated/stock.js:1960 +#: templates/js/translated/stock.js:1964 msgid "Purchase Price" msgstr "Preis" @@ -4066,8 +4094,8 @@ msgstr "Zulieferer-Teil auswählen" #: templates/js/translated/bom.js:77 templates/js/translated/build.js:431 #: templates/js/translated/build.js:583 templates/js/translated/build.js:1974 #: templates/js/translated/order.js:884 templates/js/translated/order.js:1337 -#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:621 -#: templates/js/translated/stock.js:789 +#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625 +#: templates/js/translated/stock.js:793 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "Zeile entfernen" @@ -4261,8 +4289,8 @@ msgstr "Standort für anfänglichen Bestand angeben" msgid "This field is required" msgstr "Dieses Feld ist erforderlich" -#: part/bom.py:127 part/models.py:98 part/models.py:817 -#: part/templates/part/category.html:108 part/templates/part/part_base.html:330 +#: part/bom.py:127 part/models.py:98 part/models.py:824 +#: part/templates/part/category.html:114 part/templates/part/part_base.html:330 msgid "Default Location" msgstr "Standard-Lagerort" @@ -4276,9 +4304,9 @@ msgid "Available Stock" msgstr "Verfügbarer Bestand" #: part/bom.py:130 part/templates/part/part_base.html:207 -#: templates/js/translated/bom.js:947 templates/js/translated/part.js:586 -#: templates/js/translated/part.js:606 templates/js/translated/part.js:1298 -#: templates/js/translated/part.js:1470 templates/js/translated/part.js:1486 +#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590 +#: templates/js/translated/part.js:610 templates/js/translated/part.js:1302 +#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "Bestellt" @@ -4299,516 +4327,524 @@ msgstr "Standard Stichwörter" msgid "Default keywords for parts in this category" msgstr "Standard-Stichworte für Teile dieser Kategorie" -#: part/models.py:115 part/models.py:2455 part/templates/part/category.html:15 +#: part/models.py:107 stock/models.py:84 +msgid "Icon" +msgstr "" + +#: part/models.py:108 stock/models.py:85 +msgid "Icon (optional)" +msgstr "" + +#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "Teil-Kategorie" -#: part/models.py:116 part/templates/part/category.html:128 +#: part/models.py:123 part/templates/part/category.html:134 #: templates/InvenTree/search.html:95 templates/js/translated/search.js:198 #: users/models.py:37 msgid "Part Categories" msgstr "Teil-Kategorien" -#: part/models.py:337 part/templates/part/cat_link.html:3 -#: part/templates/part/category.html:17 part/templates/part/category.html:133 -#: part/templates/part/category.html:153 +#: part/models.py:344 part/templates/part/cat_link.html:3 +#: part/templates/part/category.html:23 part/templates/part/category.html:139 +#: part/templates/part/category.html:159 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82 #: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:1946 templates/js/translated/search.js:144 +#: templates/js/translated/part.js:1955 templates/js/translated/search.js:144 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "Teile" -#: part/models.py:422 +#: part/models.py:429 msgid "Invalid choice for parent part" msgstr "Ungültige Auswahl für übergeordnetes Teil" -#: part/models.py:492 part/models.py:504 +#: part/models.py:499 part/models.py:511 #, python-brace-format msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)" msgstr "Teil '{p1}' wird in Stückliste für Teil '{p2}' benutzt (rekursiv)" -#: part/models.py:621 +#: part/models.py:628 msgid "Next available serial numbers are" msgstr "Nächste verfügbare Seriennummern wären" -#: part/models.py:625 +#: part/models.py:632 msgid "Next available serial number is" msgstr "Nächste verfügbare Seriennummer ist" -#: part/models.py:630 +#: part/models.py:637 msgid "Most recent serial number is" msgstr "Die neuste Seriennummer ist" -#: part/models.py:711 +#: part/models.py:718 msgid "Duplicate IPN not allowed in part settings" msgstr "Doppelte IPN in den Teil-Einstellungen nicht erlaubt" -#: part/models.py:738 part/models.py:2509 +#: part/models.py:745 part/models.py:2516 msgid "Part name" msgstr "Name des Teils" -#: part/models.py:745 +#: part/models.py:752 msgid "Is Template" msgstr "Ist eine Vorlage" -#: part/models.py:746 +#: part/models.py:753 msgid "Is this part a template part?" msgstr "Ist dieses Teil eine Vorlage?" -#: part/models.py:756 +#: part/models.py:763 msgid "Is this part a variant of another part?" msgstr "Ist dieses Teil eine Variante eines anderen Teils?" -#: part/models.py:757 +#: part/models.py:764 msgid "Variant Of" msgstr "Variante von" -#: part/models.py:763 +#: part/models.py:770 msgid "Part description" msgstr "Beschreibung des Teils" -#: part/models.py:768 part/templates/part/category.html:86 +#: part/models.py:775 part/templates/part/category.html:92 #: part/templates/part/part_base.html:294 msgid "Keywords" msgstr "Schlüsselwörter" -#: part/models.py:769 +#: part/models.py:776 msgid "Part keywords to improve visibility in search results" msgstr "Schlüsselworte um die Sichtbarkeit in Suchergebnissen zu verbessern" -#: part/models.py:776 part/models.py:2211 part/models.py:2454 +#: part/models.py:783 part/models.py:2218 part/models.py:2461 #: part/templates/part/part_base.html:257 #: templates/InvenTree/settings/settings.html:232 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1438 templates/js/translated/part.js:1664 +#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1668 msgid "Category" msgstr "Kategorie" -#: part/models.py:777 +#: part/models.py:784 msgid "Part category" msgstr "Teile-Kategorie" -#: part/models.py:782 part/templates/part/part_base.html:266 -#: templates/js/translated/part.js:735 templates/js/translated/part.js:1391 -#: templates/js/translated/stock.js:1722 +#: part/models.py:789 part/templates/part/part_base.html:266 +#: templates/js/translated/part.js:739 templates/js/translated/part.js:1395 +#: templates/js/translated/stock.js:1726 msgid "IPN" msgstr "IPN (Interne Produktnummer)" -#: part/models.py:783 +#: part/models.py:790 msgid "Internal Part Number" msgstr "Interne Teilenummer" -#: part/models.py:789 +#: part/models.py:796 msgid "Part revision or version number" msgstr "Revisions- oder Versionsnummer" -#: part/models.py:790 part/templates/part/part_base.html:273 -#: report/models.py:171 templates/js/translated/part.js:739 +#: part/models.py:797 part/templates/part/part_base.html:273 +#: report/models.py:171 templates/js/translated/part.js:743 msgid "Revision" msgstr "Version" -#: part/models.py:815 +#: part/models.py:822 msgid "Where is this item normally stored?" msgstr "Wo wird dieses Teil normalerweise gelagert?" -#: part/models.py:860 part/templates/part/part_base.html:339 +#: part/models.py:867 part/templates/part/part_base.html:339 msgid "Default Supplier" msgstr "Standard Zulieferer" -#: part/models.py:861 +#: part/models.py:868 msgid "Default supplier part" msgstr "Standard Zuliefererteil" -#: part/models.py:868 +#: part/models.py:875 msgid "Default Expiry" msgstr "Standard Ablaufzeit" -#: part/models.py:869 +#: part/models.py:876 msgid "Expiry time (in days) for stock items of this part" msgstr "Ablauf-Zeit (in Tagen) für Bestand dieses Teils" -#: part/models.py:874 part/templates/part/part_base.html:200 +#: part/models.py:881 part/templates/part/part_base.html:200 msgid "Minimum Stock" msgstr "Minimaler Bestand" -#: part/models.py:875 +#: part/models.py:882 msgid "Minimum allowed stock level" msgstr "Minimal zulässiger Bestand" -#: part/models.py:882 +#: part/models.py:889 msgid "Stock keeping units for this part" msgstr "Stock Keeping Units (SKU) für dieses Teil" -#: part/models.py:888 +#: part/models.py:895 msgid "Can this part be built from other parts?" msgstr "Kann dieses Teil aus anderen Teilen angefertigt werden?" -#: part/models.py:894 +#: part/models.py:901 msgid "Can this part be used to build other parts?" msgstr "Kann dieses Teil zum Bauauftrag von anderen genutzt werden?" -#: part/models.py:900 +#: part/models.py:907 msgid "Does this part have tracking for unique items?" msgstr "Hat dieses Teil Tracking für einzelne Objekte?" -#: part/models.py:905 +#: part/models.py:912 msgid "Can this part be purchased from external suppliers?" msgstr "Kann dieses Teil von externen Zulieferern gekauft werden?" -#: part/models.py:910 +#: part/models.py:917 msgid "Can this part be sold to customers?" msgstr "Kann dieses Teil an Kunden verkauft werden?" -#: part/models.py:915 +#: part/models.py:922 msgid "Is this part active?" msgstr "Ist dieses Teil aktiv?" -#: part/models.py:920 +#: part/models.py:927 msgid "Is this a virtual part, such as a software product or license?" msgstr "Ist dieses Teil virtuell, wie zum Beispiel eine Software oder Lizenz?" -#: part/models.py:922 +#: part/models.py:929 msgid "Part notes" msgstr "Teile-Notizen" -#: part/models.py:924 +#: part/models.py:931 msgid "BOM checksum" msgstr "Prüfsumme der Stückliste" -#: part/models.py:924 +#: part/models.py:931 msgid "Stored BOM checksum" msgstr "Prüfsumme der Stückliste gespeichert" -#: part/models.py:927 +#: part/models.py:934 msgid "BOM checked by" msgstr "Stückliste kontrolliert von" -#: part/models.py:929 +#: part/models.py:936 msgid "BOM checked date" msgstr "BOM Kontrolldatum" -#: part/models.py:933 +#: part/models.py:940 msgid "Creation User" msgstr "Erstellungs-Nutzer" -#: part/models.py:1737 +#: part/models.py:1744 msgid "Sell multiple" msgstr "Mehrere verkaufen" -#: part/models.py:2258 +#: part/models.py:2265 msgid "Test templates can only be created for trackable parts" msgstr "Test-Vorlagen können nur für verfolgbare Teile angelegt werden" -#: part/models.py:2275 +#: part/models.py:2282 msgid "Test with this name already exists for this part" msgstr "Ein Test mit diesem Namen besteht bereits für dieses Teil" -#: part/models.py:2295 templates/js/translated/part.js:1997 -#: templates/js/translated/stock.js:1336 +#: part/models.py:2302 templates/js/translated/part.js:2006 +#: templates/js/translated/stock.js:1340 msgid "Test Name" msgstr "Test-Name" -#: part/models.py:2296 +#: part/models.py:2303 msgid "Enter a name for the test" msgstr "Namen für diesen Test eingeben" -#: part/models.py:2301 +#: part/models.py:2308 msgid "Test Description" msgstr "Test-Beschreibung" -#: part/models.py:2302 +#: part/models.py:2309 msgid "Enter description for this test" msgstr "Beschreibung für diesen Test eingeben" -#: part/models.py:2307 templates/js/translated/part.js:2006 +#: part/models.py:2314 templates/js/translated/part.js:2015 #: templates/js/translated/table_filters.js:302 msgid "Required" msgstr "Benötigt" -#: part/models.py:2308 +#: part/models.py:2315 msgid "Is this test required to pass?" msgstr "Muss dieser Test erfolgreich sein?" -#: part/models.py:2313 templates/js/translated/part.js:2014 +#: part/models.py:2320 templates/js/translated/part.js:2023 msgid "Requires Value" msgstr "Erfordert Wert" -#: part/models.py:2314 +#: part/models.py:2321 msgid "Does this test require a value when adding a test result?" msgstr "Muss für diesen Test ein Wert für das Test-Ergebnis eingetragen werden?" -#: part/models.py:2319 templates/js/translated/part.js:2021 +#: part/models.py:2326 templates/js/translated/part.js:2030 msgid "Requires Attachment" msgstr "Anhang muss eingegeben werden" -#: part/models.py:2320 +#: part/models.py:2327 msgid "Does this test require a file attachment when adding a test result?" msgstr "Muss für diesen Test ein Anhang für das Test-Ergebnis hinzugefügt werden?" -#: part/models.py:2328 +#: part/models.py:2335 #, python-brace-format msgid "Illegal character in template name ({c})" msgstr "Ungültiges Zeichen im Vorlagename ({c})" -#: part/models.py:2364 +#: part/models.py:2371 msgid "Parameter template name must be unique" msgstr "Vorlagen-Name des Parameters muss eindeutig sein" -#: part/models.py:2372 +#: part/models.py:2379 msgid "Parameter Name" msgstr "Name des Parameters" -#: part/models.py:2379 +#: part/models.py:2386 msgid "Parameter Units" msgstr "Einheit des Parameters" -#: part/models.py:2410 +#: part/models.py:2417 msgid "Parent Part" msgstr "Ausgangsteil" -#: part/models.py:2412 part/models.py:2460 part/models.py:2461 +#: part/models.py:2419 part/models.py:2467 part/models.py:2468 #: templates/InvenTree/settings/settings.html:227 msgid "Parameter Template" msgstr "Parameter Vorlage" -#: part/models.py:2414 +#: part/models.py:2421 msgid "Data" msgstr "Wert" -#: part/models.py:2414 +#: part/models.py:2421 msgid "Parameter Value" msgstr "Parameter Wert" -#: part/models.py:2465 templates/InvenTree/settings/settings.html:236 +#: part/models.py:2472 templates/InvenTree/settings/settings.html:236 msgid "Default Value" msgstr "Standard-Wert" -#: part/models.py:2466 +#: part/models.py:2473 msgid "Default Parameter Value" msgstr "Standard Parameter Wert" -#: part/models.py:2501 +#: part/models.py:2508 msgid "Part ID or part name" msgstr "Teilnummer oder Teilname" -#: part/models.py:2504 templates/js/translated/model_renderers.js:212 +#: part/models.py:2511 templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "Teil-ID" -#: part/models.py:2505 +#: part/models.py:2512 msgid "Unique part ID value" msgstr "Eindeutige Teil-ID" -#: part/models.py:2508 +#: part/models.py:2515 msgid "Part Name" msgstr "Name des Teils" -#: part/models.py:2512 +#: part/models.py:2519 msgid "Part IPN" msgstr "Teil-ID" -#: part/models.py:2513 +#: part/models.py:2520 msgid "Part IPN value" msgstr "IPN-Wert des Teils" -#: part/models.py:2516 +#: part/models.py:2523 msgid "Level" msgstr "Stufe" -#: part/models.py:2517 +#: part/models.py:2524 msgid "BOM level" msgstr "Stücklistenebene" -#: part/models.py:2586 +#: part/models.py:2593 msgid "Select parent part" msgstr "Ausgangsteil auswählen" -#: part/models.py:2594 +#: part/models.py:2601 msgid "Sub part" msgstr "Untergeordnetes Teil" -#: part/models.py:2595 +#: part/models.py:2602 msgid "Select part to be used in BOM" msgstr "Teil für die Nutzung in der Stückliste auswählen" -#: part/models.py:2601 +#: part/models.py:2608 msgid "BOM quantity for this BOM item" msgstr "Stücklisten-Anzahl für dieses Stücklisten-Teil" -#: part/models.py:2603 part/templates/part/upload_bom.html:58 +#: part/models.py:2610 part/templates/part/upload_bom.html:58 #: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999 #: templates/js/translated/table_filters.js:100 msgid "Optional" msgstr "Optional" -#: part/models.py:2603 +#: part/models.py:2610 msgid "This BOM item is optional" msgstr "Diese Stücklisten-Position ist optional" -#: part/models.py:2606 part/templates/part/upload_bom.html:55 +#: part/models.py:2613 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "Überschuss" -#: part/models.py:2607 +#: part/models.py:2614 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "Geschätzter Ausschuss (absolut oder prozentual)" -#: part/models.py:2610 +#: part/models.py:2617 msgid "BOM item reference" msgstr "Referenz der Postion auf der Stückliste" -#: part/models.py:2613 +#: part/models.py:2620 msgid "BOM item notes" msgstr "Notizen zur Stücklisten-Position" -#: part/models.py:2615 +#: part/models.py:2622 msgid "Checksum" msgstr "Prüfsumme" -#: part/models.py:2615 +#: part/models.py:2622 msgid "BOM line checksum" msgstr "Prüfsumme der Stückliste" -#: part/models.py:2619 part/templates/part/upload_bom.html:57 +#: part/models.py:2626 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1016 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:96 msgid "Inherited" msgstr "Geerbt" -#: part/models.py:2620 +#: part/models.py:2627 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "Diese Stücklisten-Position wird in die Stücklisten von Teil-Varianten vererbt" -#: part/models.py:2625 part/templates/part/upload_bom.html:56 +#: part/models.py:2632 part/templates/part/upload_bom.html:56 #: templates/js/translated/bom.js:1008 msgid "Allow Variants" msgstr "Varianten zulassen" -#: part/models.py:2626 +#: part/models.py:2633 msgid "Stock items for variant parts can be used for this BOM item" msgstr "Bestand von Varianten kann für diese Stücklisten-Position verwendet werden" -#: part/models.py:2704 stock/models.py:461 +#: part/models.py:2711 stock/models.py:468 msgid "Quantity must be integer value for trackable parts" msgstr "Menge muss eine Ganzzahl sein" -#: part/models.py:2713 part/models.py:2715 +#: part/models.py:2720 part/models.py:2722 msgid "Sub part must be specified" msgstr "Zuliefererteil muss festgelegt sein" -#: part/models.py:2820 +#: part/models.py:2827 msgid "BOM Item Substitute" msgstr "Stücklisten Ersatzteile" -#: part/models.py:2841 +#: part/models.py:2848 msgid "Substitute part cannot be the same as the master part" msgstr "Ersatzteil kann nicht identisch mit dem Hauptteil sein" -#: part/models.py:2854 +#: part/models.py:2861 msgid "Parent BOM item" msgstr "Übergeordnete Stücklisten Position" -#: part/models.py:2862 +#: part/models.py:2869 msgid "Substitute part" msgstr "Ersatzteil" -#: part/models.py:2877 +#: part/models.py:2884 msgid "Part 1" msgstr "Teil 1" -#: part/models.py:2881 +#: part/models.py:2888 msgid "Part 2" msgstr "Teil 2" -#: part/models.py:2881 +#: part/models.py:2888 msgid "Select Related Part" msgstr "verknüpftes Teil auswählen" -#: part/models.py:2899 +#: part/models.py:2906 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:2903 +#: part/models.py:2910 msgid "Duplicate relationship already exists" msgstr "Doppelte Beziehung existiert bereits" -#: part/serializers.py:152 part/serializers.py:183 stock/serializers.py:181 +#: part/serializers.py:154 part/serializers.py:185 stock/serializers.py:181 msgid "Purchase currency of this stock item" msgstr "Kaufwährung dieses Lagerartikels" -#: part/serializers.py:812 +#: part/serializers.py:814 msgid "Select part to copy BOM from" msgstr "Bauteil auswählen, von dem Stückliste kopiert wird" -#: part/serializers.py:820 +#: part/serializers.py:822 msgid "Remove Existing Data" msgstr "Bestehende Daten entfernen" -#: part/serializers.py:821 +#: part/serializers.py:823 msgid "Remove existing BOM items before copying" msgstr "Bestehende Stücklisten-Positionen vor dem Kopieren entfernen" -#: part/serializers.py:826 +#: part/serializers.py:828 msgid "Include Inherited" msgstr "Vererbtes einschließen" -#: part/serializers.py:827 +#: part/serializers.py:829 msgid "Include BOM items which are inherited from templated parts" msgstr "Stücklisten-Positionen einbeziehen, die von Vorlage-Teilen geerbt werden" -#: part/serializers.py:832 +#: part/serializers.py:834 msgid "Skip Invalid Rows" msgstr "Ungültige Zeilen überspringen" -#: part/serializers.py:833 +#: part/serializers.py:835 msgid "Enable this option to skip invalid rows" msgstr "Aktiviere diese Option, um ungültige Zeilen zu überspringen" -#: part/serializers.py:838 +#: part/serializers.py:840 msgid "Copy Substitute Parts" msgstr "Ersatzteile kopieren" -#: part/serializers.py:839 +#: part/serializers.py:841 msgid "Copy substitute parts when duplicate BOM items" msgstr "Ersatzteile beim Duplizieren von Stücklisten-Positionen kopieren" -#: part/serializers.py:879 +#: part/serializers.py:881 msgid "Clear Existing BOM" msgstr "Bestehende Stückliste löschen" -#: part/serializers.py:880 +#: part/serializers.py:882 msgid "Delete existing BOM items before uploading" msgstr "Bestehende Stücklisten-Positionen vor dem Importieren entfernen" -#: part/serializers.py:910 +#: part/serializers.py:912 msgid "No part column specified" msgstr "Keine Bauteilspalte angegeben" -#: part/serializers.py:953 +#: part/serializers.py:955 msgid "Multiple matching parts found" msgstr "Mehrere übereinstimmende Teile gefunden" -#: part/serializers.py:956 +#: part/serializers.py:958 msgid "No matching part found" msgstr "Keine passenden Teile gefunden" -#: part/serializers.py:959 +#: part/serializers.py:961 msgid "Part is not designated as a component" msgstr "Teil ist nicht als Komponente angelegt" -#: part/serializers.py:968 +#: part/serializers.py:970 msgid "Quantity not provided" msgstr "Menge nicht angegeben" -#: part/serializers.py:976 +#: part/serializers.py:978 msgid "Invalid quantity" msgstr "Ungültige Menge" -#: part/serializers.py:997 +#: part/serializers.py:999 msgid "At least one BOM item is required" msgstr "Mindestens eine Stückliste-Position ist erforderlich" @@ -4848,101 +4884,101 @@ msgstr "Stücklisten-Aktionen" msgid "Delete Items" msgstr "Einträge löschen" -#: part/templates/part/category.html:28 part/templates/part/category.html:32 +#: part/templates/part/category.html:34 part/templates/part/category.html:38 msgid "You are subscribed to notifications for this category" msgstr "Sie haben Benachrichtigungen für diese Kategorie abonniert" -#: part/templates/part/category.html:36 +#: part/templates/part/category.html:42 msgid "Subscribe to notifications for this category" msgstr "Benachrichtigungen für diese Kategorie abonnieren" -#: part/templates/part/category.html:42 +#: part/templates/part/category.html:48 msgid "Category Actions" msgstr "Kategorieaktionen" -#: part/templates/part/category.html:47 +#: part/templates/part/category.html:53 msgid "Edit category" msgstr "Kategorie bearbeiten" -#: part/templates/part/category.html:48 +#: part/templates/part/category.html:54 msgid "Edit Category" msgstr "Kategorie bearbeiten" -#: part/templates/part/category.html:52 +#: part/templates/part/category.html:58 msgid "Delete category" msgstr "Kategorie löschen" -#: part/templates/part/category.html:53 +#: part/templates/part/category.html:59 msgid "Delete Category" msgstr "Kategorie löschen" -#: part/templates/part/category.html:61 +#: part/templates/part/category.html:67 msgid "Create new part category" msgstr "Teil-Kategorie anlegen" -#: part/templates/part/category.html:62 +#: part/templates/part/category.html:68 msgid "New Category" msgstr "Neue Kategorie" -#: part/templates/part/category.html:80 part/templates/part/category.html:93 +#: part/templates/part/category.html:86 part/templates/part/category.html:99 msgid "Category Path" msgstr "Pfad zur Kategorie" -#: part/templates/part/category.html:94 +#: part/templates/part/category.html:100 msgid "Top level part category" msgstr "Oberste Teil-Kategorie" -#: part/templates/part/category.html:114 part/templates/part/category.html:222 +#: part/templates/part/category.html:120 part/templates/part/category.html:228 #: part/templates/part/category_sidebar.html:7 msgid "Subcategories" msgstr "Unter-Kategorien" -#: part/templates/part/category.html:119 +#: part/templates/part/category.html:125 msgid "Parts (Including subcategories)" msgstr "Teile (inklusive Unter-Kategorien)" -#: part/templates/part/category.html:157 +#: part/templates/part/category.html:163 msgid "Create new part" msgstr "Neues Teil anlegen" -#: part/templates/part/category.html:158 templates/js/translated/bom.js:367 +#: part/templates/part/category.html:164 templates/js/translated/bom.js:367 msgid "New Part" msgstr "Neues Teil" -#: part/templates/part/category.html:168 part/templates/part/detail.html:363 +#: part/templates/part/category.html:174 part/templates/part/detail.html:363 #: part/templates/part/detail.html:394 msgid "Options" msgstr "Optionen" -#: part/templates/part/category.html:172 +#: part/templates/part/category.html:178 msgid "Set category" msgstr "Teil-Kategorie auswählen" -#: part/templates/part/category.html:173 +#: part/templates/part/category.html:179 msgid "Set Category" msgstr "Teil-Kategorie auswählen" -#: part/templates/part/category.html:180 part/templates/part/category.html:181 +#: part/templates/part/category.html:186 part/templates/part/category.html:187 msgid "Print Labels" msgstr "Label drucken" -#: part/templates/part/category.html:206 +#: part/templates/part/category.html:212 msgid "Part Parameters" msgstr "Teilparameter" -#: part/templates/part/category.html:320 +#: part/templates/part/category.html:327 msgid "Create Part Category" msgstr "Teil-Kategorie hinzufügen" -#: part/templates/part/category.html:340 +#: part/templates/part/category.html:347 msgid "Create Part" msgstr "Teil hinzufügen" -#: part/templates/part/category.html:343 +#: part/templates/part/category.html:350 msgid "Create another part after this one" msgstr "Ein weiteres Teil anlegen" -#: part/templates/part/category.html:344 +#: part/templates/part/category.html:351 msgid "Part created successfully" msgstr "Teil erfolgreich angelegt" @@ -4950,7 +4986,7 @@ msgstr "Teil erfolgreich angelegt" msgid "Import Parts" msgstr "Teile importieren" -#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:375 +#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:379 msgid "Duplicate Part" msgstr "Teil duplizieren" @@ -5172,19 +5208,19 @@ msgstr "Benachrichtigungen für dieses Teil abonnieren" #: part/templates/part/part_base.html:43 #: stock/templates/stock/item_base.html:41 -#: stock/templates/stock/location.html:43 +#: stock/templates/stock/location.html:48 msgid "Barcode actions" msgstr "Barcode Aktionen" #: part/templates/part/part_base.html:46 #: stock/templates/stock/item_base.html:45 -#: stock/templates/stock/location.html:45 templates/qr_button.html:1 +#: stock/templates/stock/location.html:50 templates/qr_button.html:1 msgid "Show QR Code" msgstr "QR-Code anzeigen" #: part/templates/part/part_base.html:49 #: stock/templates/stock/item_base.html:63 -#: stock/templates/stock/location.html:47 +#: stock/templates/stock/location.html:52 msgid "Print Label" msgstr "Label drucken" @@ -5194,7 +5230,7 @@ msgstr "Kosteninformationen ansehen" #: part/templates/part/part_base.html:60 #: stock/templates/stock/item_base.html:116 -#: stock/templates/stock/location.html:56 +#: stock/templates/stock/location.html:61 msgid "Stock actions" msgstr "Bestands-Aktionen" @@ -5255,7 +5291,7 @@ msgstr "Teil ist virtuell (kein physisches Teil)" #: templates/js/translated/company.js:624 #: templates/js/translated/company.js:884 #: templates/js/translated/model_renderers.js:204 -#: templates/js/translated/part.js:650 templates/js/translated/part.js:727 +#: templates/js/translated/part.js:654 templates/js/translated/part.js:731 msgid "Inactive" msgstr "Inaktiv" @@ -5289,9 +5325,9 @@ msgstr "Zur Bestellung zugeordnet" msgid "Can Build" msgstr "Herstellbar" -#: part/templates/part/part_base.html:238 templates/js/translated/part.js:589 -#: templates/js/translated/part.js:609 templates/js/translated/part.js:1302 -#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490 +#: part/templates/part/part_base.html:238 templates/js/translated/part.js:593 +#: templates/js/translated/part.js:613 templates/js/translated/part.js:1306 +#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1494 msgid "Building" msgstr "Im Bau" @@ -5464,8 +5500,8 @@ msgstr "Verkaufskosten" msgid "No sale pice history available for this part." msgstr "Keine Verkaufsgeschichte für diesen Teil verfügbar." -#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:612 -#: templates/js/translated/part.js:1290 templates/js/translated/part.js:1494 +#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616 +#: templates/js/translated/part.js:1294 templates/js/translated/part.js:1498 msgid "No Stock" msgstr "Kein Bestand" @@ -5630,51 +5666,55 @@ msgstr "E-Mail-Benachrichtigungen aktivieren" msgid "Allow sending of emails for event notifications" msgstr "Das Senden von Benachrichtigungen als E-Mails erlauben" -#: plugin/models.py:32 +#: plugin/models.py:33 msgid "Plugin Metadata" msgstr "Plugin Metadaten" -#: plugin/models.py:33 +#: plugin/models.py:34 msgid "JSON metadata field, for use by external plugins" msgstr "JSON-Metadatenfeld, für die Verwendung durch externe Plugins" -#: plugin/models.py:79 +#: plugin/models.py:80 msgid "Plugin Configuration" msgstr "Plugin-Konfiguration" -#: plugin/models.py:80 +#: plugin/models.py:81 msgid "Plugin Configurations" msgstr "Plugin-Konfigurationen" -#: plugin/models.py:85 +#: plugin/models.py:86 msgid "Key" msgstr "Schlüssel" -#: plugin/models.py:86 +#: plugin/models.py:87 msgid "Key of plugin" msgstr "Schlüssel des Plugins" -#: plugin/models.py:94 +#: plugin/models.py:95 msgid "PluginName of the plugin" msgstr "Name des Plugins" -#: plugin/models.py:100 +#: plugin/models.py:101 msgid "Is the plugin active" msgstr "Ist das Plugin aktiv" -#: plugin/models.py:168 +#: plugin/models.py:158 +msgid "Sample plugin" +msgstr "" + +#: plugin/models.py:186 msgid "Plugin" msgstr "Plugin" -#: plugin/models.py:231 +#: plugin/models.py:249 msgid "Method" msgstr "Methode" -#: plugin/plugin.py:228 +#: plugin/plugin.py:251 msgid "No author found" msgstr "Kein Autor gefunden" -#: plugin/plugin.py:240 +#: plugin/plugin.py:263 msgid "No date found" msgstr "Kein Datum gefunden" @@ -5746,12 +5786,12 @@ msgstr "Entweder Paketname oder URL muss angegeben werden" msgid "No valid objects provided to template" msgstr "Keine korrekten Objekte für Vorlage gegeben" -#: report/api.py:216 report/api.py:257 +#: report/api.py:216 report/api.py:252 #, python-brace-format msgid "Template file '{template}' is missing or does not exist" msgstr "Vorlagendatei '{template}' fehlt oder existiert nicht" -#: report/api.py:360 +#: report/api.py:355 msgid "Test report" msgstr "Testbericht" @@ -5852,12 +5892,12 @@ msgid "Stock Item Test Report" msgstr "Lagerartikel Test-Bericht" #: report/templates/report/inventree_test_report_base.html:79 -#: stock/models.py:641 stock/templates/stock/item_base.html:322 +#: stock/models.py:648 stock/templates/stock/item_base.html:322 #: templates/js/translated/build.js:424 templates/js/translated/build.js:576 #: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673 #: templates/js/translated/model_renderers.js:118 #: templates/js/translated/order.js:118 templates/js/translated/order.js:3297 -#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:486 +#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490 msgid "Serial Number" msgstr "Seriennummer" @@ -5866,19 +5906,19 @@ msgid "Test Results" msgstr "Testergebnisse" #: report/templates/report/inventree_test_report_base.html:93 -#: stock/models.py:2076 +#: stock/models.py:2083 msgid "Test" msgstr "Test" #: report/templates/report/inventree_test_report_base.html:94 -#: stock/models.py:2082 +#: stock/models.py:2089 msgid "Result" msgstr "Ergebnis" #: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:51 +#: templates/InvenTree/settings/plugin.html:53 #: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2459 +#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468 msgid "Date" msgstr "Datum" @@ -5896,8 +5936,8 @@ msgid "Installed Items" msgstr "Verbaute Objekte" #: report/templates/report/inventree_test_report_base.html:137 -#: templates/js/translated/stock.js:606 templates/js/translated/stock.js:776 -#: templates/js/translated/stock.js:2708 +#: templates/js/translated/stock.js:610 templates/js/translated/stock.js:780 +#: templates/js/translated/stock.js:2717 msgid "Serial" msgstr "Seriennummer" @@ -5913,241 +5953,241 @@ msgstr "Gültiges Teil muss angegeben werden" msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "Seriennummern können für nicht verfolgbare Teile nicht angegeben werden" -#: stock/models.py:82 stock/models.py:732 +#: stock/models.py:89 stock/models.py:739 #: stock/templates/stock/item_base.html:252 msgid "Owner" msgstr "Besitzer" -#: stock/models.py:83 stock/models.py:733 +#: stock/models.py:90 stock/models.py:740 msgid "Select Owner" msgstr "Besitzer auswählen" -#: stock/models.py:435 +#: stock/models.py:442 msgid "StockItem with this serial number already exists" msgstr "Ein Lagerartikel mit dieser Seriennummer existiert bereits" -#: stock/models.py:467 stock/serializers.py:95 +#: stock/models.py:474 stock/serializers.py:95 msgid "Stock item cannot be created for virtual parts" msgstr "" -#: stock/models.py:484 +#: stock/models.py:491 #, python-brace-format msgid "Part type ('{pf}') must be {pe}" msgstr "Teile-Typ ('{pf}') muss {pe} sein" -#: stock/models.py:494 stock/models.py:503 +#: stock/models.py:501 stock/models.py:510 msgid "Quantity must be 1 for item with a serial number" msgstr "Anzahl muss für Objekte mit Seriennummer 1 sein" -#: stock/models.py:495 +#: stock/models.py:502 msgid "Serial number cannot be set if quantity greater than 1" msgstr "Seriennummer kann nicht gesetzt werden wenn die Anzahl größer als 1 ist" -#: stock/models.py:517 +#: stock/models.py:524 msgid "Item cannot belong to itself" msgstr "Teil kann nicht zu sich selbst gehören" -#: stock/models.py:523 +#: stock/models.py:530 msgid "Item must have a build reference if is_building=True" msgstr "Teil muss eine Referenz haben wenn is_building wahr ist" -#: stock/models.py:537 +#: stock/models.py:544 msgid "Build reference does not point to the same part object" msgstr "Referenz verweist nicht auf das gleiche Teil" -#: stock/models.py:583 +#: stock/models.py:590 msgid "Parent Stock Item" msgstr "Eltern-Lagerartikel" -#: stock/models.py:593 +#: stock/models.py:600 msgid "Base part" msgstr "Basis-Teil" -#: stock/models.py:601 +#: stock/models.py:608 msgid "Select a matching supplier part for this stock item" msgstr "Passendes Zuliefererteil für diesen Lagerartikel auswählen" -#: stock/models.py:608 stock/templates/stock/location.html:17 +#: stock/models.py:615 stock/templates/stock/location.html:17 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" msgstr "Bestand-Lagerort" -#: stock/models.py:611 +#: stock/models.py:618 msgid "Where is this stock item located?" msgstr "Wo wird dieses Teil normalerweise gelagert?" -#: stock/models.py:618 +#: stock/models.py:625 msgid "Packaging this stock item is stored in" msgstr "Die Verpackung dieses Lagerartikel ist gelagert in" -#: stock/models.py:624 stock/templates/stock/item_base.html:361 +#: stock/models.py:631 stock/templates/stock/item_base.html:361 msgid "Installed In" msgstr "verbaut in" -#: stock/models.py:627 +#: stock/models.py:634 msgid "Is this item installed in another item?" msgstr "Ist dieses Teil in einem anderen verbaut?" -#: stock/models.py:643 +#: stock/models.py:650 msgid "Serial number for this item" msgstr "Seriennummer für dieses Teil" -#: stock/models.py:657 +#: stock/models.py:664 msgid "Batch code for this stock item" msgstr "Losnummer für diesen Lagerartikel" -#: stock/models.py:662 +#: stock/models.py:669 msgid "Stock Quantity" msgstr "Bestand" -#: stock/models.py:671 +#: stock/models.py:678 msgid "Source Build" msgstr "Quellbau" -#: stock/models.py:673 +#: stock/models.py:680 msgid "Build for this stock item" msgstr "Bauauftrag für diesen Lagerartikel" -#: stock/models.py:684 +#: stock/models.py:691 msgid "Source Purchase Order" msgstr "Quelle Bestellung" -#: stock/models.py:687 +#: stock/models.py:694 msgid "Purchase order for this stock item" msgstr "Bestellung für diesen Lagerartikel" -#: stock/models.py:693 +#: stock/models.py:700 msgid "Destination Sales Order" msgstr "Ziel-Auftrag" -#: stock/models.py:699 stock/templates/stock/item_base.html:429 -#: templates/js/translated/stock.js:1879 +#: stock/models.py:706 stock/templates/stock/item_base.html:429 +#: templates/js/translated/stock.js:1883 msgid "Expiry Date" msgstr "Ablaufdatum" -#: stock/models.py:700 +#: stock/models.py:707 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "Ablaufdatum für Lagerartikel. Bestand wird danach als abgelaufen gekennzeichnet" -#: stock/models.py:713 +#: stock/models.py:720 msgid "Delete on deplete" msgstr "Löschen wenn leer" -#: stock/models.py:713 +#: stock/models.py:720 msgid "Delete this Stock Item when stock is depleted" msgstr "Diesen Lagerartikel löschen wenn der Bestand aufgebraucht ist" -#: stock/models.py:720 stock/templates/stock/item.html:132 +#: stock/models.py:727 stock/templates/stock/item.html:132 msgid "Stock Item Notes" msgstr "Lagerartikel-Notizen" -#: stock/models.py:728 +#: stock/models.py:735 msgid "Single unit purchase price at time of purchase" msgstr "Preis für eine Einheit bei Einkauf" -#: stock/models.py:756 +#: stock/models.py:763 msgid "Converted to part" msgstr "In Teil umgewandelt" -#: stock/models.py:1235 +#: stock/models.py:1242 msgid "Part is not set as trackable" msgstr "Teil ist nicht verfolgbar" -#: stock/models.py:1241 +#: stock/models.py:1248 msgid "Quantity must be integer" msgstr "Anzahl muss eine Ganzzahl sein" -#: stock/models.py:1247 +#: stock/models.py:1254 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({n})" msgstr "Anzahl darf nicht die verfügbare Anzahl überschreiten ({n})" -#: stock/models.py:1250 +#: stock/models.py:1257 msgid "Serial numbers must be a list of integers" msgstr "Seriennummern muss eine Liste von Ganzzahlen sein" -#: stock/models.py:1253 +#: stock/models.py:1260 msgid "Quantity does not match serial numbers" msgstr "Anzahl stimmt nicht mit den Seriennummern überein" -#: stock/models.py:1260 +#: stock/models.py:1267 #, python-brace-format msgid "Serial numbers already exist: {exists}" msgstr "Seriennummern {exists} existieren bereits" -#: stock/models.py:1330 +#: stock/models.py:1337 msgid "Stock item has been assigned to a sales order" msgstr "Artikel wurde einem Kundenauftrag zugewiesen" -#: stock/models.py:1333 +#: stock/models.py:1340 msgid "Stock item is installed in another item" msgstr "Lagerartikel ist in anderem Element verbaut" -#: stock/models.py:1336 +#: stock/models.py:1343 msgid "Stock item contains other items" msgstr "Lagerartikel enthält andere Artikel" -#: stock/models.py:1339 +#: stock/models.py:1346 msgid "Stock item has been assigned to a customer" msgstr "Artikel wurde einem Kunden zugewiesen" -#: stock/models.py:1342 +#: stock/models.py:1349 msgid "Stock item is currently in production" msgstr "Lagerartikel wird aktuell produziert" -#: stock/models.py:1345 +#: stock/models.py:1352 msgid "Serialized stock cannot be merged" msgstr "Nachverfolgbare Lagerartikel können nicht zusammengeführt werden" -#: stock/models.py:1352 stock/serializers.py:959 +#: stock/models.py:1359 stock/serializers.py:961 msgid "Duplicate stock items" msgstr "Artikel duplizeren" -#: stock/models.py:1356 +#: stock/models.py:1363 msgid "Stock items must refer to the same part" msgstr "Lagerartikel müssen auf dasselbe Teil verweisen" -#: stock/models.py:1360 +#: stock/models.py:1367 msgid "Stock items must refer to the same supplier part" msgstr "Lagerartikel müssen auf dasselbe Lieferantenteil verweisen" -#: stock/models.py:1364 +#: stock/models.py:1371 msgid "Stock status codes must match" msgstr "Status-Codes müssen zusammenpassen" -#: stock/models.py:1533 +#: stock/models.py:1540 msgid "StockItem cannot be moved as it is not in stock" msgstr "Lagerartikel kann nicht bewegt werden, da kein Bestand vorhanden ist" -#: stock/models.py:1994 +#: stock/models.py:2001 msgid "Entry notes" msgstr "Eintrags-Notizen" -#: stock/models.py:2052 +#: stock/models.py:2059 msgid "Value must be provided for this test" msgstr "Wert muss für diesen Test angegeben werden" -#: stock/models.py:2058 +#: stock/models.py:2065 msgid "Attachment must be uploaded for this test" msgstr "Anhang muss für diesen Test hochgeladen werden" -#: stock/models.py:2077 +#: stock/models.py:2084 msgid "Test name" msgstr "Name des Tests" -#: stock/models.py:2083 +#: stock/models.py:2090 msgid "Test result" msgstr "Testergebnis" -#: stock/models.py:2089 +#: stock/models.py:2096 msgid "Test output value" msgstr "Test Ausgabe Wert" -#: stock/models.py:2096 +#: stock/models.py:2103 msgid "Test result attachment" msgstr "Test Ergebnis Anhang" -#: stock/models.py:2102 +#: stock/models.py:2109 msgid "Test notes" msgstr "Test Notizen" @@ -6172,7 +6212,7 @@ msgstr "Anzahl darf nicht die verfügbare Menge überschreiten ({q})" msgid "Enter serial numbers for new items" msgstr "Seriennummern für neue Teile eingeben" -#: stock/serializers.py:323 stock/serializers.py:916 stock/serializers.py:1149 +#: stock/serializers.py:323 stock/serializers.py:918 stock/serializers.py:1151 msgid "Destination stock location" msgstr "Ziel-Bestand" @@ -6220,63 +6260,63 @@ msgstr "" msgid "Destination location for returned item" msgstr "" -#: stock/serializers.py:771 +#: stock/serializers.py:773 msgid "Part must be salable" msgstr "Teil muss verkaufbar sein" -#: stock/serializers.py:775 +#: stock/serializers.py:777 msgid "Item is allocated to a sales order" msgstr "Artikel ist einem Kundenauftrag zugeordnet" -#: stock/serializers.py:779 +#: stock/serializers.py:781 msgid "Item is allocated to a build order" msgstr "Artikel ist einem Fertigungsauftrag zugeordnet" -#: stock/serializers.py:810 +#: stock/serializers.py:812 msgid "Customer to assign stock items" msgstr "Kunde zum Zuweisen von Lagerartikel" -#: stock/serializers.py:816 +#: stock/serializers.py:818 msgid "Selected company is not a customer" msgstr "Ausgewählte Firma ist kein Kunde" -#: stock/serializers.py:824 +#: stock/serializers.py:826 msgid "Stock assignment notes" msgstr "Notizen zur Lagerzuordnung" -#: stock/serializers.py:834 stock/serializers.py:1065 +#: stock/serializers.py:836 stock/serializers.py:1067 msgid "A list of stock items must be provided" msgstr "Eine Liste der Lagerbestände muss angegeben werden" -#: stock/serializers.py:923 +#: stock/serializers.py:925 msgid "Stock merging notes" msgstr "Notizen zur Lagerartikelzusammenführung" -#: stock/serializers.py:928 +#: stock/serializers.py:930 msgid "Allow mismatched suppliers" msgstr "Unterschiedliche Lieferanten erlauben" -#: stock/serializers.py:929 +#: stock/serializers.py:931 msgid "Allow stock items with different supplier parts to be merged" msgstr "Zusammenführen von Lagerartikeln mit unterschiedlichen Lieferanten erlauben" -#: stock/serializers.py:934 +#: stock/serializers.py:936 msgid "Allow mismatched status" msgstr "Unterschiedliche Status erlauben" -#: stock/serializers.py:935 +#: stock/serializers.py:937 msgid "Allow stock items with different status codes to be merged" msgstr "Zusammenführen von Lagerartikeln mit unterschiedlichen Status-Codes erlauben" -#: stock/serializers.py:945 +#: stock/serializers.py:947 msgid "At least two stock items must be provided" msgstr "Mindestens zwei Lagerartikel müssen angegeben werden" -#: stock/serializers.py:1027 +#: stock/serializers.py:1029 msgid "StockItem primary key value" msgstr "Primärschlüssel Lagerelement" -#: stock/serializers.py:1055 +#: stock/serializers.py:1057 msgid "Stock transaction notes" msgstr "Bestandsbewegungsnotizen" @@ -6313,7 +6353,7 @@ msgstr "Testdaten hinzufügen" msgid "Installed Stock Items" msgstr "Installierte Lagerartikel" -#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2852 +#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2861 msgid "Install Stock Item" msgstr "Lagerartikel installieren" @@ -6321,7 +6361,7 @@ msgstr "Lagerartikel installieren" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1518 +#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1522 msgid "Add Test Result" msgstr "Testergebnis hinzufügen" @@ -6352,7 +6392,7 @@ msgid "Stock adjustment actions" msgstr "Bestands-Anpassungs Aktionen" #: stock/templates/stock/item_base.html:80 -#: stock/templates/stock/location.html:63 templates/stock_table.html:47 +#: stock/templates/stock/location.html:68 templates/stock_table.html:47 msgid "Count stock" msgstr "Bestand zählen" @@ -6369,7 +6409,7 @@ msgid "Serialize stock" msgstr "Bestand serialisieren" #: stock/templates/stock/item_base.html:93 -#: stock/templates/stock/location.html:69 templates/stock_table.html:48 +#: stock/templates/stock/location.html:74 templates/stock_table.html:48 msgid "Transfer stock" msgstr "Bestand verschieben" @@ -6430,7 +6470,7 @@ msgid "You are not in the list of owners of this item. This stock item cannot be msgstr "Sie gehören nicht zu den Eigentümern dieses Objekts und können es nicht ändern." #: stock/templates/stock/item_base.html:257 -#: stock/templates/stock/location.html:127 +#: stock/templates/stock/location.html:132 msgid "Read only" msgstr "Nur Leserechte" @@ -6508,7 +6548,7 @@ msgid "Stale" msgstr "überfällig" #: stock/templates/stock/item_base.html:442 -#: templates/js/translated/company.js:985 templates/js/translated/stock.js:1895 +#: templates/js/translated/company.js:985 templates/js/translated/stock.js:1899 msgid "Last Updated" msgstr "Zuletzt aktualisiert" @@ -6552,58 +6592,58 @@ msgstr "Teile mit Seriennummern mit diesem BestandObjekt anlegen." msgid "Select quantity to serialize, and unique serial numbers." msgstr "Zu serialisierende Anzahl und eindeutige Seriennummern angeben." -#: stock/templates/stock/location.html:33 +#: stock/templates/stock/location.html:38 msgid "Locate stock location" msgstr "Lagerort lokalisieren" -#: stock/templates/stock/location.html:49 +#: stock/templates/stock/location.html:54 msgid "Check-in Items" msgstr "Teile einchecken" -#: stock/templates/stock/location.html:77 +#: stock/templates/stock/location.html:82 msgid "Location actions" msgstr "Lagerort-Aktionen" -#: stock/templates/stock/location.html:79 +#: stock/templates/stock/location.html:84 msgid "Edit location" msgstr "Lagerort bearbeiten" -#: stock/templates/stock/location.html:81 +#: stock/templates/stock/location.html:86 msgid "Delete location" msgstr "Lagerort löschen" -#: stock/templates/stock/location.html:90 +#: stock/templates/stock/location.html:95 msgid "Create new stock location" msgstr "Neuen Lagerort anlegen" -#: stock/templates/stock/location.html:91 +#: stock/templates/stock/location.html:96 msgid "New Location" msgstr "Neuer Lagerort" -#: stock/templates/stock/location.html:109 -#: stock/templates/stock/location.html:115 +#: stock/templates/stock/location.html:114 +#: stock/templates/stock/location.html:120 msgid "Location Path" msgstr "Lagerortpfad" -#: stock/templates/stock/location.html:116 +#: stock/templates/stock/location.html:121 msgid "Top level stock location" msgstr "Oberster Lagerstandort" -#: stock/templates/stock/location.html:122 +#: stock/templates/stock/location.html:127 msgid "Location Owner" msgstr "Standortbesitzer" -#: stock/templates/stock/location.html:126 +#: stock/templates/stock/location.html:131 msgid "You are not in the list of owners of this location. This stock location cannot be edited." msgstr "Sie sind nicht auf der Liste der Besitzer dieses Lagerorts. Der Bestands-Lagerort kann nicht verändert werden." -#: stock/templates/stock/location.html:142 -#: stock/templates/stock/location.html:189 +#: stock/templates/stock/location.html:147 +#: stock/templates/stock/location.html:194 #: stock/templates/stock/location_sidebar.html:5 msgid "Sublocations" msgstr "Unter-Lagerorte" -#: stock/templates/stock/location.html:156 templates/InvenTree/search.html:165 +#: stock/templates/stock/location.html:161 templates/InvenTree/search.html:165 #: templates/js/translated/search.js:238 users/models.py:39 msgid "Stock Locations" msgstr "Bestand-Lagerorte" @@ -6875,15 +6915,15 @@ msgstr "In neuem Tab öffnen" msgid "Part Settings" msgstr "Teil-Einstellungen" -#: templates/InvenTree/settings/part.html:44 +#: templates/InvenTree/settings/part.html:46 msgid "Part Import" msgstr "Teileimport" -#: templates/InvenTree/settings/part.html:48 +#: templates/InvenTree/settings/part.html:50 msgid "Import Part" msgstr "Teil importieren" -#: templates/InvenTree/settings/part.html:62 +#: templates/InvenTree/settings/part.html:64 msgid "Part Parameter Templates" msgstr "Teil-Parametervorlage" @@ -6895,47 +6935,47 @@ msgstr "Plugin-Einstellungen" msgid "Changing the settings below require you to immediately restart the server. Do not change this while under active usage." msgstr "Wenn Sie die folgenden Einstellungen ändern, müssen Sie InvenTree sofort neu starten. Ändern Sie dies nicht während der aktiven Nutzung." -#: templates/InvenTree/settings/plugin.html:34 +#: templates/InvenTree/settings/plugin.html:36 msgid "Plugins" msgstr "Plugins" -#: templates/InvenTree/settings/plugin.html:39 +#: templates/InvenTree/settings/plugin.html:41 #: templates/js/translated/plugin.js:16 msgid "Install Plugin" msgstr "Plugin installieren" -#: templates/InvenTree/settings/plugin.html:48 templates/navbar.html:137 +#: templates/InvenTree/settings/plugin.html:50 templates/navbar.html:137 #: users/models.py:36 msgid "Admin" msgstr "Admin" -#: templates/InvenTree/settings/plugin.html:50 +#: templates/InvenTree/settings/plugin.html:52 #: templates/InvenTree/settings/plugin_settings.html:28 msgid "Author" msgstr "Autor" -#: templates/InvenTree/settings/plugin.html:52 +#: templates/InvenTree/settings/plugin.html:54 #: templates/InvenTree/settings/plugin_settings.html:43 msgid "Version" msgstr "Version" -#: templates/InvenTree/settings/plugin.html:74 +#: templates/InvenTree/settings/plugin.html:76 msgid "Sample" msgstr "Beispiel" -#: templates/InvenTree/settings/plugin.html:99 +#: templates/InvenTree/settings/plugin.html:101 msgid "Inactive plugins" msgstr "Inaktive Plugins" -#: templates/InvenTree/settings/plugin.html:122 +#: templates/InvenTree/settings/plugin.html:124 msgid "Plugin Error Stack" msgstr "Plugin-Fehlerstapel" -#: templates/InvenTree/settings/plugin.html:131 +#: templates/InvenTree/settings/plugin.html:133 msgid "Stage" msgstr "Stufe" -#: templates/InvenTree/settings/plugin.html:133 +#: templates/InvenTree/settings/plugin.html:135 #: templates/js/translated/notification.js:75 msgid "Message" msgstr "Meldung" @@ -6999,11 +7039,11 @@ msgstr "Commit-Hash" msgid "Commit Message" msgstr "Commit-Nachricht" -#: templates/InvenTree/settings/plugin_settings.html:117 +#: templates/InvenTree/settings/plugin_settings.html:120 msgid "Sign Status" msgstr "Signaturstatus" -#: templates/InvenTree/settings/plugin_settings.html:122 +#: templates/InvenTree/settings/plugin_settings.html:125 msgid "Sign Key" msgstr "Signatur Schlüssel" @@ -7828,7 +7868,7 @@ msgstr "Dadurch wird die Verknüpfung zwischen diesem Lagerartikel und dem Barco msgid "Unlink" msgstr "Entfernen" -#: templates/js/translated/barcode.js:456 templates/js/translated/stock.js:1050 +#: templates/js/translated/barcode.js:456 templates/js/translated/stock.js:1054 msgid "Remove stock item" msgstr "Lagerartikel entfernen" @@ -8001,7 +8041,7 @@ msgid "Includes variant and substitute stock" msgstr "Beinhaltet Variante und Ersatzbestand" #: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822 -#: templates/js/translated/part.js:759 +#: templates/js/translated/part.js:763 msgid "Includes variant stock" msgstr "Beinhaltet Variantenbestand" @@ -8098,12 +8138,12 @@ msgid "Complete Build Order" msgstr "Bauauftrag fertigstellen" #: templates/js/translated/build.js:263 templates/js/translated/stock.js:92 -#: templates/js/translated/stock.js:210 +#: templates/js/translated/stock.js:214 msgid "Next available serial number" msgstr "Nächste verfügbare Seriennummer" #: templates/js/translated/build.js:265 templates/js/translated/stock.js:94 -#: templates/js/translated/stock.js:212 +#: templates/js/translated/stock.js:216 msgid "Latest serial number" msgstr "Letzte Seriennummer" @@ -8316,9 +8356,9 @@ msgstr "Lagerartikel zuordnen" msgid "No builds matching query" msgstr "Keine Bauaufträge passen zur Anfrage" -#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1383 -#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1682 -#: templates/js/translated/stock.js:2382 +#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387 +#: templates/js/translated/part.js:1899 templates/js/translated/stock.js:1686 +#: templates/js/translated/stock.js:2386 msgid "Select" msgstr "Auswählen" @@ -8330,7 +8370,7 @@ msgstr "Bauauftrag ist überfällig" msgid "Progress" msgstr "Fortschritt" -#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2638 +#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647 msgid "No user information" msgstr "Keine Benutzerinformation" @@ -8403,34 +8443,34 @@ msgid "No manufacturer parts found" msgstr "Keine Herstellerteile gefunden" #: templates/js/translated/company.js:616 -#: templates/js/translated/company.js:876 templates/js/translated/part.js:634 -#: templates/js/translated/part.js:719 +#: templates/js/translated/company.js:876 templates/js/translated/part.js:638 +#: templates/js/translated/part.js:723 msgid "Template part" msgstr "Vorlagenteil" #: templates/js/translated/company.js:620 -#: templates/js/translated/company.js:880 templates/js/translated/part.js:638 -#: templates/js/translated/part.js:723 +#: templates/js/translated/company.js:880 templates/js/translated/part.js:642 +#: templates/js/translated/part.js:727 msgid "Assembled part" msgstr "Baugruppe" -#: templates/js/translated/company.js:748 templates/js/translated/part.js:826 +#: templates/js/translated/company.js:748 templates/js/translated/part.js:830 msgid "No parameters found" msgstr "Keine Parameter gefunden" -#: templates/js/translated/company.js:785 templates/js/translated/part.js:868 +#: templates/js/translated/company.js:785 templates/js/translated/part.js:872 msgid "Edit parameter" msgstr "Parameter bearbeiten" -#: templates/js/translated/company.js:786 templates/js/translated/part.js:869 +#: templates/js/translated/company.js:786 templates/js/translated/part.js:873 msgid "Delete parameter" msgstr "Parameter löschen" -#: templates/js/translated/company.js:805 templates/js/translated/part.js:886 +#: templates/js/translated/company.js:805 templates/js/translated/part.js:890 msgid "Edit Parameter" msgstr "Parameter bearbeiten" -#: templates/js/translated/company.js:816 templates/js/translated/part.js:898 +#: templates/js/translated/company.js:816 templates/js/translated/part.js:902 msgid "Delete Parameter" msgstr "Parameter löschen" @@ -8555,7 +8595,7 @@ msgid "Labels sent to printer" msgstr "Label an den Drucker gesendet" #: templates/js/translated/label.js:60 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1078 msgid "Select Stock Items" msgstr "Lagerartikel auswählen" @@ -8865,7 +8905,7 @@ msgstr "Seriennummern hinzufügen" msgid "Quantity to receive" msgstr "Zu erhaltende Menge" -#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2140 +#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144 msgid "Stock Status" msgstr "Status" @@ -8889,7 +8929,7 @@ msgstr "Empfang der Teile bestätigen" msgid "Receive Purchase Order Items" msgstr "Bestellpositionen erhalten" -#: templates/js/translated/order.js:1672 templates/js/translated/part.js:939 +#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943 msgid "No purchase orders found" msgstr "Keine Bestellungen gefunden" @@ -8924,7 +8964,7 @@ msgstr "Summe" #: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203 #: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050 -#: templates/js/translated/part.js:2126 templates/js/translated/part.js:2479 +#: templates/js/translated/part.js:2135 templates/js/translated/part.js:2488 msgid "Unit Price" msgstr "Stück-Preis" @@ -8934,11 +8974,11 @@ msgid "Total Price" msgstr "Gesamtpreis" #: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600 -#: templates/js/translated/part.js:1046 +#: templates/js/translated/part.js:1050 msgid "This line item is overdue" msgstr "Diese Position ist überfällig" -#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1092 +#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096 msgid "Receive line item" msgstr "Position empfangen" @@ -9059,7 +9099,7 @@ msgid "Delete Stock Allocation" msgstr "Bestands-Zuordnung löschen" #: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398 -#: templates/js/translated/stock.js:1598 +#: templates/js/translated/stock.js:1602 msgid "Shipped to customer" msgstr "an Kunde versand" @@ -9183,241 +9223,245 @@ msgstr "Parameterdaten vom Originalteil kopieren" msgid "Parent part category" msgstr "Übergeordnete Teilkategorie" -#: templates/js/translated/part.js:318 +#: templates/js/translated/part.js:306 templates/js/translated/stock.js:118 +msgid "Icon (optional) - Explore all available icons on" +msgstr "" + +#: templates/js/translated/part.js:322 msgid "Edit Part Category" msgstr "Teil-Kategorie bearbeiten" -#: templates/js/translated/part.js:331 +#: templates/js/translated/part.js:335 msgid "Are you sure you want to delete this part category?" msgstr "Möchten Sie diese Kategorie wirklich löschen?" -#: templates/js/translated/part.js:333 +#: templates/js/translated/part.js:337 msgid "Any child categories will be moved to the parent of this category" msgstr "" -#: templates/js/translated/part.js:334 +#: templates/js/translated/part.js:338 msgid "Any parts in this category will be moved to the parent of this category" msgstr "" -#: templates/js/translated/part.js:339 +#: templates/js/translated/part.js:343 msgid "Delete Part Category" msgstr "Teil-Kategorie löschen" -#: templates/js/translated/part.js:365 +#: templates/js/translated/part.js:369 msgid "Edit Part" msgstr "Teil bearbeiten" -#: templates/js/translated/part.js:367 +#: templates/js/translated/part.js:371 msgid "Part edited" msgstr "Teil bearbeitet" -#: templates/js/translated/part.js:378 +#: templates/js/translated/part.js:382 msgid "Create Part Variant" msgstr "Teil-Variante anlegen" -#: templates/js/translated/part.js:430 +#: templates/js/translated/part.js:434 msgid "Active Part" msgstr "Aktives Teil" -#: templates/js/translated/part.js:431 +#: templates/js/translated/part.js:435 msgid "Part cannot be deleted as it is currently active" msgstr "Teil kann nicht gelöscht werden, da es derzeit aktiv ist" -#: templates/js/translated/part.js:445 +#: templates/js/translated/part.js:449 msgid "Deleting this part cannot be reversed" msgstr "Das Löschen dieses Teils kann nicht rückgängig gemacht werden" -#: templates/js/translated/part.js:447 +#: templates/js/translated/part.js:451 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:448 +#: templates/js/translated/part.js:452 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:449 +#: templates/js/translated/part.js:453 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:456 +#: templates/js/translated/part.js:460 msgid "Delete Part" msgstr "Teil löschen" -#: templates/js/translated/part.js:492 +#: templates/js/translated/part.js:496 msgid "You are subscribed to notifications for this item" msgstr "Sie haben Benachrichtigungen für dieses Teil abonniert" -#: templates/js/translated/part.js:494 +#: templates/js/translated/part.js:498 msgid "You have subscribed to notifications for this item" msgstr "Sie haben Benachrichtigungen für dieses Teil abonniert" -#: templates/js/translated/part.js:499 +#: templates/js/translated/part.js:503 msgid "Subscribe to notifications for this item" msgstr "Benachrichtigungen für dieses Teil abonnieren" -#: templates/js/translated/part.js:501 +#: templates/js/translated/part.js:505 msgid "You have unsubscribed to notifications for this item" msgstr "Sie haben Benachrichtigungen für dieses Teil abgemeldet" -#: templates/js/translated/part.js:518 +#: templates/js/translated/part.js:522 msgid "Validating the BOM will mark each line item as valid" msgstr "Die Stückliste zu validieren markiert jede Zeile als gültig" -#: templates/js/translated/part.js:528 +#: templates/js/translated/part.js:532 msgid "Validate Bill of Materials" msgstr "Stückliste prüfen" -#: templates/js/translated/part.js:531 +#: templates/js/translated/part.js:535 msgid "Validated Bill of Materials" msgstr "überprüfte Stückliste" -#: templates/js/translated/part.js:556 +#: templates/js/translated/part.js:560 msgid "Copy Bill of Materials" msgstr "Stückliste kopieren" -#: templates/js/translated/part.js:582 templates/js/translated/part.js:1466 +#: templates/js/translated/part.js:586 templates/js/translated/part.js:1470 #: templates/js/translated/table_filters.js:468 msgid "Low stock" msgstr "Bestand niedrig" -#: templates/js/translated/part.js:592 templates/js/translated/part.js:1478 +#: templates/js/translated/part.js:596 templates/js/translated/part.js:1482 msgid "No stock available" msgstr "Kein Lagerbestand verfügbar" -#: templates/js/translated/part.js:626 templates/js/translated/part.js:711 +#: templates/js/translated/part.js:630 templates/js/translated/part.js:715 msgid "Trackable part" msgstr "Nachverfolgbares Teil" -#: templates/js/translated/part.js:630 templates/js/translated/part.js:715 +#: templates/js/translated/part.js:634 templates/js/translated/part.js:719 msgid "Virtual part" msgstr "virtuelles Teil" -#: templates/js/translated/part.js:642 +#: templates/js/translated/part.js:646 msgid "Subscribed part" msgstr "Abonnierter Teil" -#: templates/js/translated/part.js:646 +#: templates/js/translated/part.js:650 msgid "Salable part" msgstr "Verkäufliches Teil" -#: templates/js/translated/part.js:774 +#: templates/js/translated/part.js:778 msgid "No variants found" msgstr "Keine Varianten gefunden" -#: templates/js/translated/part.js:1162 +#: templates/js/translated/part.js:1166 msgid "Delete part relationship" msgstr "Teile-Beziehung löschen" -#: templates/js/translated/part.js:1186 +#: templates/js/translated/part.js:1190 msgid "Delete Part Relationship" msgstr "Teile-Beziehung löschen" -#: templates/js/translated/part.js:1253 templates/js/translated/part.js:1549 +#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1553 msgid "No parts found" msgstr "Keine Teile gefunden" -#: templates/js/translated/part.js:1292 +#: templates/js/translated/part.js:1296 msgid "Not available" msgstr "Nicht verfügbar" -#: templates/js/translated/part.js:1443 +#: templates/js/translated/part.js:1447 msgid "No category" msgstr "Keine Kategorie" -#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816 -#: templates/js/translated/stock.js:2343 +#: templates/js/translated/part.js:1577 templates/js/translated/part.js:1820 +#: templates/js/translated/stock.js:2347 msgid "Display as list" msgstr "Listenansicht" -#: templates/js/translated/part.js:1589 +#: templates/js/translated/part.js:1593 msgid "Display as grid" msgstr "Rasteransicht" -#: templates/js/translated/part.js:1655 +#: templates/js/translated/part.js:1659 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:1660 +#: templates/js/translated/part.js:1664 msgid "Set Part Category" msgstr "Teil-Kategorie auswählen" -#: templates/js/translated/part.js:1665 +#: templates/js/translated/part.js:1669 msgid "Select Part Category" msgstr "Teil-Kategorie wählen" -#: templates/js/translated/part.js:1678 +#: templates/js/translated/part.js:1682 msgid "Category is required" msgstr "Kategorie erforderlich" -#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2362 +#: templates/js/translated/part.js:1839 templates/js/translated/stock.js:2366 msgid "Display as tree" msgstr "Baumansicht" -#: templates/js/translated/part.js:1914 +#: templates/js/translated/part.js:1918 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:1925 +#: templates/js/translated/part.js:1934 msgid "Subscribed category" msgstr "Abonnierte Kategorie" -#: templates/js/translated/part.js:1983 +#: templates/js/translated/part.js:1992 msgid "No test templates matching query" msgstr "Keine zur Anfrage passenden Testvorlagen" -#: templates/js/translated/part.js:2034 templates/js/translated/stock.js:1295 +#: templates/js/translated/part.js:2043 templates/js/translated/stock.js:1299 msgid "Edit test result" msgstr "Testergebnis bearbeiten" -#: templates/js/translated/part.js:2035 templates/js/translated/stock.js:1296 -#: templates/js/translated/stock.js:1556 +#: templates/js/translated/part.js:2044 templates/js/translated/stock.js:1300 +#: templates/js/translated/stock.js:1560 msgid "Delete test result" msgstr "Testergebnis löschen" -#: templates/js/translated/part.js:2041 +#: templates/js/translated/part.js:2050 msgid "This test is defined for a parent part" msgstr "Dieses Testergebnis ist für ein Hauptteil" -#: templates/js/translated/part.js:2063 +#: templates/js/translated/part.js:2072 msgid "Edit Test Result Template" msgstr "Testergebnis-Vorlage bearbeiten" -#: templates/js/translated/part.js:2077 +#: templates/js/translated/part.js:2086 msgid "Delete Test Result Template" msgstr "Testergebnis-Vorlage löschen" -#: templates/js/translated/part.js:2102 +#: templates/js/translated/part.js:2111 #, python-brace-format msgid "No ${human_name} information found" msgstr "Keine ${human_name} Informationen gefunden" -#: templates/js/translated/part.js:2159 +#: templates/js/translated/part.js:2168 #, python-brace-format msgid "Edit ${human_name}" msgstr "${human_name} bearbeiten" -#: templates/js/translated/part.js:2160 +#: templates/js/translated/part.js:2169 #, python-brace-format msgid "Delete ${human_name}" msgstr "${human_name} löschen" -#: templates/js/translated/part.js:2274 +#: templates/js/translated/part.js:2283 msgid "Current Stock" msgstr "Aktueller Lagerbestand" -#: templates/js/translated/part.js:2307 +#: templates/js/translated/part.js:2316 msgid "No scheduling information available for this part" msgstr "Keine Zeitplanung für dieses Teil vorhanden" -#: templates/js/translated/part.js:2333 +#: templates/js/translated/part.js:2342 msgid "Scheduled Stock Quantities" msgstr "Geplante Lagermengen" -#: templates/js/translated/part.js:2403 +#: templates/js/translated/part.js:2412 msgid "Single Price" msgstr "Einzelpreis" -#: templates/js/translated/part.js:2422 +#: templates/js/translated/part.js:2431 msgid "Single Price Difference" msgstr "Einzelpreisdifferenz" @@ -9511,376 +9555,376 @@ msgstr "Lager-Serialisierung bestätigen" msgid "Parent stock location" msgstr "Übergeordneter Lagerort" -#: templates/js/translated/stock.js:140 +#: templates/js/translated/stock.js:144 msgid "Edit Stock Location" msgstr "Lagerartikel-Ort bearbeiten" -#: templates/js/translated/stock.js:155 +#: templates/js/translated/stock.js:159 msgid "New Stock Location" msgstr "Neuer Lagerstandort" -#: templates/js/translated/stock.js:169 +#: templates/js/translated/stock.js:173 msgid "Are you sure you want to delete this stock location?" msgstr "Sind Sie sicher, dass Sie diesen Lagerort löschen wollen?" -#: templates/js/translated/stock.js:171 +#: templates/js/translated/stock.js:175 msgid "Any child locations will be moved to the parent of this location" msgstr "" -#: templates/js/translated/stock.js:172 +#: templates/js/translated/stock.js:176 msgid "Any stock items in this location will be moved to the parent of this location" msgstr "" -#: templates/js/translated/stock.js:178 +#: templates/js/translated/stock.js:182 msgid "Delete Stock Location" msgstr "Bestand-Lagerort löschen" -#: templates/js/translated/stock.js:223 +#: templates/js/translated/stock.js:227 msgid "This part cannot be serialized" msgstr "Dieser Teil kann nicht serialisiert werden" -#: templates/js/translated/stock.js:262 +#: templates/js/translated/stock.js:266 msgid "Enter initial quantity for this stock item" msgstr "Ausgangsmenge für diesen Lagerartikel eingeben" -#: templates/js/translated/stock.js:268 +#: templates/js/translated/stock.js:272 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "Seriennummern für neue Lagerartikel eingeben (oder leer lassen)" -#: templates/js/translated/stock.js:333 +#: templates/js/translated/stock.js:337 msgid "Stock item duplicated" msgstr "Lagerartikel dupliziert" -#: templates/js/translated/stock.js:353 +#: templates/js/translated/stock.js:357 msgid "Duplicate Stock Item" msgstr "Bestand duplizieren" -#: templates/js/translated/stock.js:369 +#: templates/js/translated/stock.js:373 msgid "Are you sure you want to delete this stock item?" msgstr "Sind Sie sicher, dass Sie diesen Lagerartikel löschen wollen?" -#: templates/js/translated/stock.js:374 +#: templates/js/translated/stock.js:378 msgid "Delete Stock Item" msgstr "Lagerartikel löschen" -#: templates/js/translated/stock.js:395 +#: templates/js/translated/stock.js:399 msgid "Edit Stock Item" msgstr "Lagerartikel bearbeiten" -#: templates/js/translated/stock.js:445 +#: templates/js/translated/stock.js:449 msgid "Created new stock item" msgstr "Neuer Lagerartikel erstellt" -#: templates/js/translated/stock.js:458 +#: templates/js/translated/stock.js:462 msgid "Created multiple stock items" msgstr "Mehrere Lagerartikel erstellt" -#: templates/js/translated/stock.js:483 +#: templates/js/translated/stock.js:487 msgid "Find Serial Number" msgstr "Seriennummer finden" -#: templates/js/translated/stock.js:487 templates/js/translated/stock.js:488 +#: templates/js/translated/stock.js:491 templates/js/translated/stock.js:492 msgid "Enter serial number" msgstr "Seriennummer eingeben" -#: templates/js/translated/stock.js:504 +#: templates/js/translated/stock.js:508 msgid "Enter a serial number" msgstr "Eine Seriennummer eingeben" -#: templates/js/translated/stock.js:524 +#: templates/js/translated/stock.js:528 msgid "No matching serial number" msgstr "Keine passende Seriennummer" -#: templates/js/translated/stock.js:533 +#: templates/js/translated/stock.js:537 msgid "More than one matching result found" msgstr "Mehrere Ergebnisse gefunden" -#: templates/js/translated/stock.js:656 +#: templates/js/translated/stock.js:660 msgid "Confirm stock assignment" msgstr "Bestand Zuweisung bestätigen" -#: templates/js/translated/stock.js:657 +#: templates/js/translated/stock.js:661 msgid "Assign Stock to Customer" msgstr "Einem Kunden zuordnen" -#: templates/js/translated/stock.js:734 +#: templates/js/translated/stock.js:738 msgid "Warning: Merge operation cannot be reversed" msgstr "Achtung: Das Zusammenführen kann nicht rückgängig gemacht werden" -#: templates/js/translated/stock.js:735 +#: templates/js/translated/stock.js:739 msgid "Some information will be lost when merging stock items" msgstr "Einige Informationen gehen verloren, wenn Artikel zusammengeführt werden" -#: templates/js/translated/stock.js:737 +#: templates/js/translated/stock.js:741 msgid "Stock transaction history will be deleted for merged items" msgstr "Lagerartikelverlauf wird für zusammengeführte Lagerartikel gelöscht" -#: templates/js/translated/stock.js:738 +#: templates/js/translated/stock.js:742 msgid "Supplier part information will be deleted for merged items" msgstr "Lieferantenteil-Informationen werden für zusammengeführte Artikel gelöscht" -#: templates/js/translated/stock.js:824 +#: templates/js/translated/stock.js:828 msgid "Confirm stock item merge" msgstr "Zusammenführung der Artikel bestätigen" -#: templates/js/translated/stock.js:825 +#: templates/js/translated/stock.js:829 msgid "Merge Stock Items" msgstr "Artikel zusammenführen" -#: templates/js/translated/stock.js:920 +#: templates/js/translated/stock.js:924 msgid "Transfer Stock" msgstr "Bestand verschieben" -#: templates/js/translated/stock.js:921 +#: templates/js/translated/stock.js:925 msgid "Move" msgstr "Verschieben" -#: templates/js/translated/stock.js:927 +#: templates/js/translated/stock.js:931 msgid "Count Stock" msgstr "Bestand zählen" -#: templates/js/translated/stock.js:928 +#: templates/js/translated/stock.js:932 msgid "Count" msgstr "Anzahl" -#: templates/js/translated/stock.js:932 +#: templates/js/translated/stock.js:936 msgid "Remove Stock" msgstr "Bestand entfernen" -#: templates/js/translated/stock.js:933 +#: templates/js/translated/stock.js:937 msgid "Take" msgstr "Entfernen" -#: templates/js/translated/stock.js:937 +#: templates/js/translated/stock.js:941 msgid "Add Stock" msgstr "Bestand hinzufügen" -#: templates/js/translated/stock.js:938 users/models.py:216 +#: templates/js/translated/stock.js:942 users/models.py:216 msgid "Add" msgstr "Hinzufügen" -#: templates/js/translated/stock.js:942 +#: templates/js/translated/stock.js:946 msgid "Delete Stock" msgstr "Bestand löschen" -#: templates/js/translated/stock.js:1035 +#: templates/js/translated/stock.js:1039 msgid "Quantity cannot be adjusted for serialized stock" msgstr "Menge von serialisiertem Bestand kann nicht bearbeitet werden" -#: templates/js/translated/stock.js:1035 +#: templates/js/translated/stock.js:1039 msgid "Specify stock quantity" msgstr "Bestandsanzahl angeben" -#: templates/js/translated/stock.js:1075 +#: templates/js/translated/stock.js:1079 msgid "You must select at least one available stock item" msgstr "Sie müssen mindestens einen Lagerartikel auswählen" -#: templates/js/translated/stock.js:1098 +#: templates/js/translated/stock.js:1102 msgid "Confirm stock adjustment" msgstr "Bestands-Anpassung bestätigen" -#: templates/js/translated/stock.js:1234 +#: templates/js/translated/stock.js:1238 msgid "PASS" msgstr "ERFOLGREICH" -#: templates/js/translated/stock.js:1236 +#: templates/js/translated/stock.js:1240 msgid "FAIL" msgstr "FEHLGESCHLAGEN" -#: templates/js/translated/stock.js:1241 +#: templates/js/translated/stock.js:1245 msgid "NO RESULT" msgstr "KEIN ERGEBNIS" -#: templates/js/translated/stock.js:1288 +#: templates/js/translated/stock.js:1292 msgid "Pass test" msgstr "Test bestanden" -#: templates/js/translated/stock.js:1291 +#: templates/js/translated/stock.js:1295 msgid "Add test result" msgstr "Testergebnis hinzufügen" -#: templates/js/translated/stock.js:1317 +#: templates/js/translated/stock.js:1321 msgid "No test results found" msgstr "Keine Testergebnisse gefunden" -#: templates/js/translated/stock.js:1374 +#: templates/js/translated/stock.js:1378 msgid "Test Date" msgstr "Testdatum" -#: templates/js/translated/stock.js:1539 +#: templates/js/translated/stock.js:1543 msgid "Edit Test Result" msgstr "Testergebnis bearbeiten" -#: templates/js/translated/stock.js:1561 +#: templates/js/translated/stock.js:1565 msgid "Delete Test Result" msgstr "Testergebnis löschen" -#: templates/js/translated/stock.js:1590 +#: templates/js/translated/stock.js:1594 msgid "In production" msgstr "In Arbeit" -#: templates/js/translated/stock.js:1594 +#: templates/js/translated/stock.js:1598 msgid "Installed in Stock Item" msgstr "In Lagerartikel installiert" -#: templates/js/translated/stock.js:1602 +#: templates/js/translated/stock.js:1606 msgid "Assigned to Sales Order" msgstr "Auftrag zugewiesen" -#: templates/js/translated/stock.js:1608 +#: templates/js/translated/stock.js:1612 msgid "No stock location set" msgstr "Kein Lagerort gesetzt" -#: templates/js/translated/stock.js:1775 +#: templates/js/translated/stock.js:1779 msgid "Stock item is in production" msgstr "Lagerartikel wird produziert" -#: templates/js/translated/stock.js:1780 +#: templates/js/translated/stock.js:1784 msgid "Stock item assigned to sales order" msgstr "Lagerartikel wurde Auftrag zugewiesen" -#: templates/js/translated/stock.js:1783 +#: templates/js/translated/stock.js:1787 msgid "Stock item assigned to customer" msgstr "Lagerartikel wurde Kunden zugewiesen" -#: templates/js/translated/stock.js:1786 +#: templates/js/translated/stock.js:1790 msgid "Serialized stock item has been allocated" msgstr "Serialisierter Lagerartikel wurde zugewiesen" -#: templates/js/translated/stock.js:1788 +#: templates/js/translated/stock.js:1792 msgid "Stock item has been fully allocated" msgstr "Lagerartikel wurde vollständig zugewiesen" -#: templates/js/translated/stock.js:1790 +#: templates/js/translated/stock.js:1794 msgid "Stock item has been partially allocated" msgstr "Lagerartikel wurde teilweise zugewiesen" -#: templates/js/translated/stock.js:1793 +#: templates/js/translated/stock.js:1797 msgid "Stock item has been installed in another item" msgstr "Lagerartikel in anderem Element verbaut" -#: templates/js/translated/stock.js:1797 +#: templates/js/translated/stock.js:1801 msgid "Stock item has expired" msgstr "Lagerartikel ist abgelaufen" -#: templates/js/translated/stock.js:1799 +#: templates/js/translated/stock.js:1803 msgid "Stock item will expire soon" msgstr "Lagerartikel läuft demnächst ab" -#: templates/js/translated/stock.js:1806 +#: templates/js/translated/stock.js:1810 msgid "Stock item has been rejected" msgstr "Lagerartikel abgewiesen" -#: templates/js/translated/stock.js:1808 +#: templates/js/translated/stock.js:1812 msgid "Stock item is lost" msgstr "Lagerartikel verloren" -#: templates/js/translated/stock.js:1810 +#: templates/js/translated/stock.js:1814 msgid "Stock item is destroyed" msgstr "Lagerartikel zerstört" -#: templates/js/translated/stock.js:1814 +#: templates/js/translated/stock.js:1818 #: templates/js/translated/table_filters.js:196 msgid "Depleted" msgstr "gelöscht" -#: templates/js/translated/stock.js:1865 +#: templates/js/translated/stock.js:1869 msgid "Stocktake" msgstr "Inventur" -#: templates/js/translated/stock.js:1944 +#: templates/js/translated/stock.js:1948 msgid "Supplier part not specified" msgstr "Zuliefererteil nicht angegeben" -#: templates/js/translated/stock.js:1982 +#: templates/js/translated/stock.js:1986 msgid "No stock items matching query" msgstr "Keine zur Anfrage passenden Lagerartikel" -#: templates/js/translated/stock.js:2155 +#: templates/js/translated/stock.js:2159 msgid "Set Stock Status" msgstr "Status setzen" -#: templates/js/translated/stock.js:2169 +#: templates/js/translated/stock.js:2173 msgid "Select Status Code" msgstr "Status Code setzen" -#: templates/js/translated/stock.js:2170 +#: templates/js/translated/stock.js:2174 msgid "Status code must be selected" msgstr "Status Code muss ausgewählt werden" -#: templates/js/translated/stock.js:2400 +#: templates/js/translated/stock.js:2404 msgid "Load Subloactions" msgstr "" -#: templates/js/translated/stock.js:2484 +#: templates/js/translated/stock.js:2493 msgid "Details" msgstr "Details" -#: templates/js/translated/stock.js:2500 +#: templates/js/translated/stock.js:2509 msgid "Part information unavailable" msgstr "Artikelinformationen nicht verfügbar" -#: templates/js/translated/stock.js:2522 +#: templates/js/translated/stock.js:2531 msgid "Location no longer exists" msgstr "Standort nicht mehr vorhanden" -#: templates/js/translated/stock.js:2541 +#: templates/js/translated/stock.js:2550 msgid "Purchase order no longer exists" msgstr "Bestellung existiert nicht mehr" -#: templates/js/translated/stock.js:2560 +#: templates/js/translated/stock.js:2569 msgid "Customer no longer exists" msgstr "Kunde existiert nicht mehr" -#: templates/js/translated/stock.js:2578 +#: templates/js/translated/stock.js:2587 msgid "Stock item no longer exists" msgstr "Lagerartikel existiert nicht mehr" -#: templates/js/translated/stock.js:2601 +#: templates/js/translated/stock.js:2610 msgid "Added" msgstr "Hinzugefügt" -#: templates/js/translated/stock.js:2609 +#: templates/js/translated/stock.js:2618 msgid "Removed" msgstr "Entfernt" -#: templates/js/translated/stock.js:2685 +#: templates/js/translated/stock.js:2694 msgid "No installed items" msgstr "Keine installierten Elemente" -#: templates/js/translated/stock.js:2736 templates/js/translated/stock.js:2772 +#: templates/js/translated/stock.js:2745 templates/js/translated/stock.js:2781 msgid "Uninstall Stock Item" msgstr "Lagerartikel entfernen" -#: templates/js/translated/stock.js:2785 +#: templates/js/translated/stock.js:2794 msgid "Select stock item to uninstall" msgstr "Zu deinstallierende Lagerartikel auswählen" -#: templates/js/translated/stock.js:2806 +#: templates/js/translated/stock.js:2815 msgid "Install another stock item into this item" msgstr "Einen weiteren Lagerartikel in dieses Teil installiert" -#: templates/js/translated/stock.js:2807 +#: templates/js/translated/stock.js:2816 msgid "Stock items can only be installed if they meet the following criteria" msgstr "Lagerartikel können nur installiert werden wenn folgende Kriterien erfüllt werden" -#: templates/js/translated/stock.js:2809 +#: templates/js/translated/stock.js:2818 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "Der Lagerartikel ist auf ein Teil verknüpft das in der Stückliste für diesen Lagerartikel ist" -#: templates/js/translated/stock.js:2810 +#: templates/js/translated/stock.js:2819 msgid "The Stock Item is currently available in stock" msgstr "Dieser Lagerartikel ist aktuell vorhanden" -#: templates/js/translated/stock.js:2811 +#: templates/js/translated/stock.js:2820 msgid "The Stock Item is not already installed in another item" msgstr "Der Lagerbestand ist nicht bereits in einem anderen Bestand installiert" -#: templates/js/translated/stock.js:2812 +#: templates/js/translated/stock.js:2821 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "Der Lagerbestand wird entweder mit einem Batch-Code oder mit Seriennummer verfolgt" -#: templates/js/translated/stock.js:2825 +#: templates/js/translated/stock.js:2834 msgid "Select part to install" msgstr "Teil zur Installation auswählen" diff --git a/InvenTree/locale/el/LC_MESSAGES/django.po b/InvenTree/locale/el/LC_MESSAGES/django.po index 5fd55fca41..a5056498c6 100644 --- a/InvenTree/locale/el/LC_MESSAGES/django.po +++ b/InvenTree/locale/el/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-11 02:47+0000\n" -"PO-Revision-Date: 2022-08-11 13:49\n" +"POT-Creation-Date: 2022-08-16 11:53+0000\n" +"PO-Revision-Date: 2022-08-16 21:36\n" "Last-Translator: \n" "Language-Team: Greek\n" "Language: el_GR\n" @@ -36,15 +36,15 @@ msgstr "" #: order/templates/order/so_sidebar.html:17 #: part/templates/part/part_sidebar.html:59 #: report/templates/report/inventree_build_order_base.html:172 -#: stock/models.py:1993 stock/models.py:2101 stock/serializers.py:329 -#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:823 -#: stock/serializers.py:922 stock/serializers.py:1054 +#: stock/models.py:2000 stock/models.py:2108 stock/serializers.py:329 +#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825 +#: stock/serializers.py:924 stock/serializers.py:1056 #: stock/templates/stock/stock_sidebar.html:25 #: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101 #: templates/js/translated/company.js:964 templates/js/translated/order.js:2104 #: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753 #: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102 -#: templates/js/translated/stock.js:1370 templates/js/translated/stock.js:1976 +#: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980 msgid "Notes" msgstr "" @@ -163,6 +163,10 @@ msgstr "" msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "" +#: InvenTree/mixins.py:71 +msgid "Remove HTML tags from this value" +msgstr "" + #: InvenTree/models.py:236 msgid "Improperly formatted pattern" msgstr "" @@ -195,7 +199,7 @@ msgstr "" msgid "Missing external link" msgstr "" -#: InvenTree/models.py:395 stock/models.py:2095 +#: InvenTree/models.py:395 stock/models.py:2102 #: templates/js/translated/attachment.js:103 #: templates/js/translated/attachment.js:241 msgid "Attachment" @@ -207,16 +211,16 @@ msgstr "" #: InvenTree/models.py:402 company/models.py:124 company/models.py:276 #: company/models.py:510 order/models.py:84 order/models.py:1245 -#: part/models.py:795 +#: part/models.py:802 #: report/templates/report/inventree_build_order_base.html:164 #: templates/js/translated/company.js:656 #: templates/js/translated/company.js:948 templates/js/translated/order.js:2742 -#: templates/js/translated/part.js:1510 +#: templates/js/translated/part.js:1514 msgid "Link" msgstr "" -#: InvenTree/models.py:403 build/models.py:296 part/models.py:796 -#: stock/models.py:651 +#: InvenTree/models.py:403 build/models.py:296 part/models.py:803 +#: stock/models.py:658 msgid "Link to external URL" msgstr "" @@ -229,12 +233,12 @@ msgstr "" msgid "File comment" msgstr "" -#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1646 -#: common/models.py:1647 common/models.py:1870 common/models.py:1871 -#: common/models.py:2133 common/models.py:2134 part/models.py:2193 -#: part/models.py:2213 plugin/models.py:238 plugin/models.py:239 +#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665 +#: common/models.py:1666 common/models.py:1889 common/models.py:1890 +#: common/models.py:2152 common/models.py:2153 part/models.py:2200 +#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2632 +#: templates/js/translated/stock.js:2641 msgid "User" msgstr "" @@ -271,19 +275,19 @@ msgstr "" msgid "Invalid choice" msgstr "" -#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1856 -#: company/models.py:358 label/models.py:101 part/models.py:739 -#: part/models.py:2371 plugin/models.py:93 report/models.py:152 +#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875 +#: company/models.py:358 label/models.py:101 part/models.py:746 +#: part/models.py:2378 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 -#: templates/InvenTree/settings/plugin.html:49 -#: templates/InvenTree/settings/plugin.html:132 +#: templates/InvenTree/settings/plugin.html:51 +#: templates/InvenTree/settings/plugin.html:134 #: templates/InvenTree/settings/plugin_settings.html:23 #: templates/InvenTree/settings/settings.html:347 #: templates/js/translated/company.js:545 #: templates/js/translated/company.js:758 #: templates/js/translated/notification.js:71 -#: templates/js/translated/part.js:684 templates/js/translated/part.js:836 -#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2388 +#: templates/js/translated/part.js:688 templates/js/translated/part.js:840 +#: templates/js/translated/part.js:1906 templates/js/translated/stock.js:2392 msgid "Name" msgstr "" @@ -292,21 +296,21 @@ msgstr "" #: company/models.py:516 company/templates/company/company_base.html:71 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:87 label/models.py:108 -#: order/models.py:82 part/models.py:762 part/templates/part/category.html:74 +#: order/models.py:82 part/models.py:769 part/templates/part/category.html:80 #: part/templates/part/part_base.html:167 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 -#: stock/templates/stock/location.html:103 +#: stock/templates/stock/location.html:108 #: templates/InvenTree/settings/plugin_settings.html:33 #: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848 #: templates/js/translated/build.js:2471 templates/js/translated/company.js:409 #: templates/js/translated/company.js:667 #: templates/js/translated/company.js:959 templates/js/translated/order.js:1720 #: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531 -#: templates/js/translated/part.js:743 templates/js/translated/part.js:1149 -#: templates/js/translated/part.js:1424 templates/js/translated/part.js:1933 -#: templates/js/translated/part.js:2002 templates/js/translated/stock.js:1739 -#: templates/js/translated/stock.js:2415 templates/js/translated/stock.js:2469 +#: templates/js/translated/part.js:747 templates/js/translated/part.js:1153 +#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1942 +#: templates/js/translated/part.js:2011 templates/js/translated/stock.js:1743 +#: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478 msgid "Description" msgstr "" @@ -319,7 +323,7 @@ msgid "parent" msgstr "" #: InvenTree/models.py:560 InvenTree/models.py:561 -#: templates/js/translated/part.js:1939 templates/js/translated/stock.js:2421 +#: templates/js/translated/part.js:1948 templates/js/translated/stock.js:2430 msgid "Path" msgstr "" @@ -331,7 +335,7 @@ msgstr "" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:55 part/models.py:2692 +#: InvenTree/serializers.py:55 part/models.py:2699 msgid "Must be a valid number" msgstr "" @@ -398,99 +402,99 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/settings.py:609 +#: InvenTree/settings.py:607 msgid "Czech" msgstr "" -#: InvenTree/settings.py:610 +#: InvenTree/settings.py:608 msgid "German" msgstr "" -#: InvenTree/settings.py:611 +#: InvenTree/settings.py:609 msgid "Greek" msgstr "" -#: InvenTree/settings.py:612 +#: InvenTree/settings.py:610 msgid "English" msgstr "" -#: InvenTree/settings.py:613 +#: InvenTree/settings.py:611 msgid "Spanish" msgstr "" -#: InvenTree/settings.py:614 +#: InvenTree/settings.py:612 msgid "Spanish (Mexican)" msgstr "" -#: InvenTree/settings.py:615 +#: InvenTree/settings.py:613 msgid "Farsi / Persian" msgstr "" -#: InvenTree/settings.py:616 +#: InvenTree/settings.py:614 msgid "French" msgstr "" -#: InvenTree/settings.py:617 +#: InvenTree/settings.py:615 msgid "Hebrew" msgstr "" -#: InvenTree/settings.py:618 +#: InvenTree/settings.py:616 msgid "Hungarian" msgstr "" -#: InvenTree/settings.py:619 +#: InvenTree/settings.py:617 msgid "Italian" msgstr "" -#: InvenTree/settings.py:620 +#: InvenTree/settings.py:618 msgid "Japanese" msgstr "" -#: InvenTree/settings.py:621 +#: InvenTree/settings.py:619 msgid "Korean" msgstr "" -#: InvenTree/settings.py:622 +#: InvenTree/settings.py:620 msgid "Dutch" msgstr "" -#: InvenTree/settings.py:623 +#: InvenTree/settings.py:621 msgid "Norwegian" msgstr "" -#: InvenTree/settings.py:624 +#: InvenTree/settings.py:622 msgid "Polish" msgstr "" -#: InvenTree/settings.py:625 +#: InvenTree/settings.py:623 msgid "Portuguese" msgstr "" -#: InvenTree/settings.py:626 +#: InvenTree/settings.py:624 msgid "Portuguese (Brazilian)" msgstr "" -#: InvenTree/settings.py:627 +#: InvenTree/settings.py:625 msgid "Russian" msgstr "" -#: InvenTree/settings.py:628 +#: InvenTree/settings.py:626 msgid "Swedish" msgstr "" -#: InvenTree/settings.py:629 +#: InvenTree/settings.py:627 msgid "Thai" msgstr "" -#: InvenTree/settings.py:630 +#: InvenTree/settings.py:628 msgid "Turkish" msgstr "" -#: InvenTree/settings.py:631 +#: InvenTree/settings.py:629 msgid "Vietnamese" msgstr "" -#: InvenTree/settings.py:632 +#: InvenTree/settings.py:630 msgid "Chinese" msgstr "" @@ -621,7 +625,7 @@ msgstr "" msgid "Split child item" msgstr "" -#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2080 +#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2084 msgid "Merged stock items" msgstr "" @@ -743,7 +747,7 @@ msgid "Build Order Reference" msgstr "" #: build/models.py:166 order/models.py:240 order/models.py:623 -#: order/models.py:904 part/models.py:2610 +#: order/models.py:904 part/models.py:2617 #: part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 @@ -770,10 +774,10 @@ msgstr "" #: build/models.py:191 build/templates/build/build_base.html:77 #: build/templates/build/detail.html:29 company/models.py:670 #: order/models.py:1001 order/models.py:1112 order/models.py:1113 -#: part/models.py:336 part/models.py:2139 part/models.py:2154 -#: part/models.py:2173 part/models.py:2191 part/models.py:2290 -#: part/models.py:2410 part/models.py:2500 part/models.py:2585 -#: part/models.py:2861 part/serializers.py:811 +#: part/models.py:343 part/models.py:2146 part/models.py:2161 +#: part/models.py:2180 part/models.py:2198 part/models.py:2297 +#: part/models.py:2417 part/models.py:2507 part/models.py:2592 +#: part/models.py:2868 part/serializers.py:813 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -796,11 +800,11 @@ msgstr "" #: templates/js/translated/order.js:934 templates/js/translated/order.js:1387 #: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885 #: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507 -#: templates/js/translated/part.js:1134 templates/js/translated/part.js:1206 -#: templates/js/translated/part.js:1402 templates/js/translated/stock.js:582 -#: templates/js/translated/stock.js:747 templates/js/translated/stock.js:954 -#: templates/js/translated/stock.js:1696 templates/js/translated/stock.js:2495 -#: templates/js/translated/stock.js:2690 templates/js/translated/stock.js:2824 +#: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210 +#: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586 +#: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958 +#: templates/js/translated/stock.js:1700 templates/js/translated/stock.js:2504 +#: templates/js/translated/stock.js:2699 templates/js/translated/stock.js:2833 msgid "Part" msgstr "" @@ -858,7 +862,7 @@ msgid "Build status code" msgstr "" #: build/models.py:251 build/serializers.py:225 order/serializers.py:447 -#: stock/models.py:655 templates/js/translated/order.js:1247 +#: stock/models.py:662 templates/js/translated/order.js:1247 msgid "Batch Code" msgstr "" @@ -866,7 +870,7 @@ msgstr "" msgid "Batch code for this build output" msgstr "" -#: build/models.py:258 order/models.py:86 part/models.py:931 +#: build/models.py:258 order/models.py:86 part/models.py:938 #: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544 msgid "Creation Date" msgstr "" @@ -899,7 +903,7 @@ msgstr "" #: build/models.py:289 build/templates/build/build_base.html:190 #: build/templates/build/detail.html:115 order/models.py:100 #: order/templates/order/order_base.html:176 -#: order/templates/order/sales_order_base.html:183 part/models.py:935 +#: order/templates/order/sales_order_base.html:183 part/models.py:942 #: report/templates/report/inventree_build_order_base.html:158 #: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754 msgid "Responsible" @@ -912,7 +916,7 @@ msgstr "" #: build/models.py:295 build/templates/build/detail.html:101 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:153 -#: part/templates/part/part_base.html:346 stock/models.py:649 +#: part/templates/part/part_base.html:346 stock/models.py:656 #: stock/templates/stock/item_base.html:205 msgid "External Link" msgstr "" @@ -978,8 +982,8 @@ msgid "Build to allocate parts" msgstr "" #: build/models.py:1345 build/serializers.py:645 order/serializers.py:1015 -#: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 -#: stock/serializers.py:880 stock/templates/stock/item_base.html:10 +#: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:756 +#: stock/serializers.py:882 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:199 #: templates/js/translated/build.js:741 templates/js/translated/build.js:746 @@ -987,8 +991,8 @@ msgstr "" #: templates/js/translated/order.js:104 templates/js/translated/order.js:2886 #: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193 #: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380 -#: templates/js/translated/stock.js:583 templates/js/translated/stock.js:748 -#: templates/js/translated/stock.js:2568 +#: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752 +#: templates/js/translated/stock.js:2577 msgid "Stock Item" msgstr "" @@ -998,11 +1002,11 @@ msgstr "" #: build/models.py:1358 build/serializers.py:193 #: build/templates/build/build_base.html:82 -#: build/templates/build/detail.html:34 common/models.py:1678 +#: build/templates/build/detail.html:34 common/models.py:1697 #: company/templates/company/supplier_part.html:279 order/models.py:897 #: order/models.py:1423 order/serializers.py:1155 #: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40 -#: part/models.py:2601 part/templates/part/detail.html:937 +#: part/models.py:2608 part/templates/part/detail.html:937 #: part/templates/part/detail.html:1023 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 @@ -1025,11 +1029,11 @@ msgstr "" #: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207 #: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386 #: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037 -#: templates/js/translated/part.js:1034 templates/js/translated/part.js:2147 -#: templates/js/translated/part.js:2378 templates/js/translated/part.js:2412 -#: templates/js/translated/part.js:2490 templates/js/translated/stock.js:454 -#: templates/js/translated/stock.js:608 templates/js/translated/stock.js:778 -#: templates/js/translated/stock.js:2617 templates/js/translated/stock.js:2702 +#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2156 +#: templates/js/translated/part.js:2387 templates/js/translated/part.js:2421 +#: templates/js/translated/part.js:2499 templates/js/translated/stock.js:458 +#: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782 +#: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711 msgid "Quantity" msgstr "" @@ -1071,8 +1075,8 @@ msgid "Enter quantity for build output" msgstr "" #: build/serializers.py:208 build/serializers.py:665 order/models.py:318 -#: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 -#: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 +#: order/serializers.py:287 order/serializers.py:442 part/serializers.py:544 +#: part/serializers.py:976 stock/models.py:484 stock/models.py:1251 #: stock/serializers.py:302 msgid "Quantity must be greater than zero" msgstr "" @@ -1087,7 +1091,7 @@ msgstr "" #: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159 #: stock/serializers.py:311 templates/js/translated/order.js:1258 -#: templates/js/translated/stock.js:267 templates/js/translated/stock.js:455 +#: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459 msgid "Serial Numbers" msgstr "" @@ -1113,16 +1117,16 @@ msgstr "" #: build/serializers.py:366 order/serializers.py:428 order/serializers.py:532 #: stock/serializers.py:322 stock/serializers.py:453 stock/serializers.py:534 -#: stock/serializers.py:915 stock/serializers.py:1148 +#: stock/serializers.py:917 stock/serializers.py:1150 #: stock/templates/stock/item_base.html:390 #: templates/js/translated/barcode.js:436 #: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753 #: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285 #: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305 #: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394 -#: templates/js/translated/part.js:181 templates/js/translated/stock.js:584 -#: templates/js/translated/stock.js:749 templates/js/translated/stock.js:956 -#: templates/js/translated/stock.js:1850 templates/js/translated/stock.js:2509 +#: templates/js/translated/part.js:181 templates/js/translated/stock.js:588 +#: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960 +#: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518 msgid "Location" msgstr "" @@ -1135,8 +1139,8 @@ msgstr "" #: order/serializers.py:465 stock/templates/stock/item_base.html:423 #: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505 #: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724 -#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1825 -#: templates/js/translated/stock.js:2586 templates/js/translated/stock.js:2718 +#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829 +#: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727 msgid "Status" msgstr "" @@ -1212,8 +1216,8 @@ msgstr "" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:577 build/serializers.py:622 part/models.py:2719 -#: part/models.py:2853 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726 +#: part/models.py:2860 msgid "BOM Item" msgstr "" @@ -1229,7 +1233,7 @@ msgstr "" msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:651 stock/serializers.py:767 +#: build/serializers.py:651 stock/serializers.py:769 msgid "Item must be in stock" msgstr "" @@ -1367,7 +1371,7 @@ msgstr "" #: report/templates/report/inventree_build_order_base.html:125 #: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741 #: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552 -#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1038 +#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042 msgid "Target Date" msgstr "" @@ -1445,8 +1449,8 @@ msgstr "" #: stock/templates/stock/item_base.html:170 #: templates/js/translated/build.js:1182 #: templates/js/translated/model_renderers.js:124 -#: templates/js/translated/stock.js:1022 templates/js/translated/stock.js:1839 -#: templates/js/translated/stock.js:2725 +#: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843 +#: templates/js/translated/stock.js:2734 #: templates/js/translated/table_filters.js:159 #: templates/js/translated/table_filters.js:250 msgid "Batch" @@ -1506,7 +1510,7 @@ msgstr "" #: build/templates/build/detail.html:187 #: company/templates/company/detail.html:37 #: company/templates/company/detail.html:85 -#: part/templates/part/category.html:177 templates/js/translated/order.js:977 +#: part/templates/part/category.html:183 templates/js/translated/order.js:977 msgid "Order Parts" msgstr "" @@ -1559,12 +1563,12 @@ msgid "Delete outputs" msgstr "" #: build/templates/build/detail.html:267 -#: stock/templates/stock/location.html:197 templates/stock_table.html:27 +#: stock/templates/stock/location.html:202 templates/stock_table.html:27 msgid "Printing Actions" msgstr "" #: build/templates/build/detail.html:271 build/templates/build/detail.html:272 -#: stock/templates/stock/location.html:201 templates/stock_table.html:31 +#: stock/templates/stock/location.html:206 templates/stock_table.html:31 msgid "Print labels" msgstr "" @@ -1841,7 +1845,7 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:951 part/models.py:2412 report/models.py:158 +#: common/models.py:951 part/models.py:2419 report/models.py:158 #: templates/js/translated/table_filters.js:38 #: templates/js/translated/table_filters.js:484 msgid "Template" @@ -1851,7 +1855,7 @@ msgstr "" msgid "Parts are templates by default" msgstr "" -#: common/models.py:958 part/models.py:887 templates/js/translated/bom.js:1448 +#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448 #: templates/js/translated/table_filters.js:176 #: templates/js/translated/table_filters.js:447 msgid "Assembly" @@ -1861,7 +1865,7 @@ msgstr "" msgid "Parts can be assembled from other components by default" msgstr "" -#: common/models.py:965 part/models.py:893 +#: common/models.py:965 part/models.py:900 #: templates/js/translated/table_filters.js:455 msgid "Component" msgstr "" @@ -1870,7 +1874,7 @@ msgstr "" msgid "Parts can be used as sub-components by default" msgstr "" -#: common/models.py:972 part/models.py:904 +#: common/models.py:972 part/models.py:911 msgid "Purchaseable" msgstr "" @@ -1878,7 +1882,7 @@ msgstr "" msgid "Parts are purchaseable by default" msgstr "" -#: common/models.py:979 part/models.py:909 +#: common/models.py:979 part/models.py:916 #: templates/js/translated/table_filters.js:476 msgid "Salable" msgstr "" @@ -1887,7 +1891,7 @@ msgstr "" msgid "Parts are salable by default" msgstr "" -#: common/models.py:986 part/models.py:899 +#: common/models.py:986 part/models.py:906 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:108 #: templates/js/translated/table_filters.js:488 @@ -1898,7 +1902,7 @@ msgstr "" msgid "Parts are trackable by default" msgstr "" -#: common/models.py:993 part/models.py:919 +#: common/models.py:993 part/models.py:926 #: part/templates/part/part_base.html:151 #: templates/js/translated/table_filters.js:42 #: templates/js/translated/table_filters.js:492 @@ -1982,608 +1986,632 @@ msgid "Format to display the part name" msgstr "" #: common/models.py:1074 -msgid "Enable label printing" +msgid "Part Category Default Icon" msgstr "" #: common/models.py:1075 -msgid "Enable label printing from the web interface" +msgid "Part category default icon (empty means no icon)" +msgstr "" + +#: common/models.py:1080 +msgid "Enable label printing" msgstr "" #: common/models.py:1081 +msgid "Enable label printing from the web interface" +msgstr "" + +#: common/models.py:1087 msgid "Label Image DPI" msgstr "" -#: common/models.py:1082 +#: common/models.py:1088 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/models.py:1091 +#: common/models.py:1097 msgid "Enable Reports" msgstr "" -#: common/models.py:1092 +#: common/models.py:1098 msgid "Enable generation of reports" msgstr "" -#: common/models.py:1098 templates/stats.html:25 +#: common/models.py:1104 templates/stats.html:25 msgid "Debug Mode" msgstr "" -#: common/models.py:1099 +#: common/models.py:1105 msgid "Generate reports in debug mode (HTML output)" msgstr "" -#: common/models.py:1105 +#: common/models.py:1111 msgid "Page Size" msgstr "" -#: common/models.py:1106 +#: common/models.py:1112 msgid "Default page size for PDF reports" msgstr "" -#: common/models.py:1116 +#: common/models.py:1122 msgid "Enable Test Reports" msgstr "" -#: common/models.py:1117 +#: common/models.py:1123 msgid "Enable generation of test reports" msgstr "" -#: common/models.py:1123 +#: common/models.py:1129 msgid "Attach Test Reports" msgstr "" -#: common/models.py:1124 +#: common/models.py:1130 msgid "When printing a Test Report, attach a copy of the Test Report to the associated Stock Item" msgstr "" -#: common/models.py:1130 +#: common/models.py:1136 msgid "Batch Code Template" msgstr "" -#: common/models.py:1131 +#: common/models.py:1137 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/models.py:1136 +#: common/models.py:1142 msgid "Stock Expiry" msgstr "" -#: common/models.py:1137 +#: common/models.py:1143 msgid "Enable stock expiry functionality" msgstr "" -#: common/models.py:1143 +#: common/models.py:1149 msgid "Sell Expired Stock" msgstr "" -#: common/models.py:1144 +#: common/models.py:1150 msgid "Allow sale of expired stock" msgstr "" -#: common/models.py:1150 +#: common/models.py:1156 msgid "Stock Stale Time" msgstr "" -#: common/models.py:1151 +#: common/models.py:1157 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/models.py:1153 +#: common/models.py:1159 msgid "days" msgstr "" -#: common/models.py:1158 +#: common/models.py:1164 msgid "Build Expired Stock" msgstr "" -#: common/models.py:1159 +#: common/models.py:1165 msgid "Allow building with expired stock" msgstr "" -#: common/models.py:1165 +#: common/models.py:1171 msgid "Stock Ownership Control" msgstr "" -#: common/models.py:1166 +#: common/models.py:1172 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/models.py:1172 -msgid "Build Order Reference Pattern" -msgstr "" - -#: common/models.py:1173 -msgid "Required pattern for generating Build Order reference field" +#: common/models.py:1178 +msgid "Stock Location Default Icon" msgstr "" #: common/models.py:1179 +msgid "Stock location default icon (empty means no icon)" +msgstr "" + +#: common/models.py:1184 +msgid "Build Order Reference Pattern" +msgstr "" + +#: common/models.py:1185 +msgid "Required pattern for generating Build Order reference field" +msgstr "" + +#: common/models.py:1191 msgid "Sales Order Reference Pattern" msgstr "" -#: common/models.py:1180 +#: common/models.py:1192 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/models.py:1186 +#: common/models.py:1198 msgid "Sales Order Default Shipment" msgstr "" -#: common/models.py:1187 +#: common/models.py:1199 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/models.py:1193 +#: common/models.py:1205 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/models.py:1194 +#: common/models.py:1206 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/models.py:1201 +#: common/models.py:1213 msgid "Enable password forgot" msgstr "" -#: common/models.py:1202 +#: common/models.py:1214 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/models.py:1208 +#: common/models.py:1220 msgid "Enable registration" msgstr "" -#: common/models.py:1209 +#: common/models.py:1221 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/models.py:1215 +#: common/models.py:1227 msgid "Enable SSO" msgstr "" -#: common/models.py:1216 +#: common/models.py:1228 msgid "Enable SSO on the login pages" msgstr "" -#: common/models.py:1222 +#: common/models.py:1234 msgid "Email required" msgstr "" -#: common/models.py:1223 +#: common/models.py:1235 msgid "Require user to supply mail on signup" msgstr "" -#: common/models.py:1229 +#: common/models.py:1241 msgid "Auto-fill SSO users" msgstr "" -#: common/models.py:1230 +#: common/models.py:1242 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/models.py:1236 +#: common/models.py:1248 msgid "Mail twice" msgstr "" -#: common/models.py:1237 +#: common/models.py:1249 msgid "On signup ask users twice for their mail" msgstr "" -#: common/models.py:1243 +#: common/models.py:1255 msgid "Password twice" msgstr "" -#: common/models.py:1244 +#: common/models.py:1256 msgid "On signup ask users twice for their password" msgstr "" -#: common/models.py:1250 +#: common/models.py:1262 msgid "Group on signup" msgstr "" -#: common/models.py:1251 +#: common/models.py:1263 msgid "Group to which new users are assigned on registration" msgstr "" -#: common/models.py:1257 +#: common/models.py:1269 msgid "Enforce MFA" msgstr "" -#: common/models.py:1258 +#: common/models.py:1270 msgid "Users must use multifactor security." msgstr "" -#: common/models.py:1264 +#: common/models.py:1276 msgid "Check plugins on startup" msgstr "" -#: common/models.py:1265 +#: common/models.py:1277 msgid "Check that all plugins are installed on startup - enable in container enviroments" msgstr "" -#: common/models.py:1273 +#: common/models.py:1284 +msgid "Check plugin signatures" +msgstr "" + +#: common/models.py:1285 +msgid "Check and show signatures for plugins" +msgstr "" + +#: common/models.py:1292 msgid "Enable URL integration" msgstr "" -#: common/models.py:1274 +#: common/models.py:1293 msgid "Enable plugins to add URL routes" msgstr "" -#: common/models.py:1281 +#: common/models.py:1300 msgid "Enable navigation integration" msgstr "" -#: common/models.py:1282 +#: common/models.py:1301 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/models.py:1289 +#: common/models.py:1308 msgid "Enable app integration" msgstr "" -#: common/models.py:1290 +#: common/models.py:1309 msgid "Enable plugins to add apps" msgstr "" -#: common/models.py:1297 +#: common/models.py:1316 msgid "Enable schedule integration" msgstr "" -#: common/models.py:1298 +#: common/models.py:1317 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/models.py:1305 +#: common/models.py:1324 msgid "Enable event integration" msgstr "" -#: common/models.py:1306 +#: common/models.py:1325 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:1323 common/models.py:1639 +#: common/models.py:1342 common/models.py:1658 msgid "Settings key (must be unique - case insensitive" msgstr "" -#: common/models.py:1345 +#: common/models.py:1364 msgid "Show subscribed parts" msgstr "" -#: common/models.py:1346 +#: common/models.py:1365 msgid "Show subscribed parts on the homepage" msgstr "" -#: common/models.py:1352 +#: common/models.py:1371 msgid "Show subscribed categories" msgstr "" -#: common/models.py:1353 +#: common/models.py:1372 msgid "Show subscribed part categories on the homepage" msgstr "" -#: common/models.py:1359 +#: common/models.py:1378 msgid "Show latest parts" msgstr "" -#: common/models.py:1360 +#: common/models.py:1379 msgid "Show latest parts on the homepage" msgstr "" -#: common/models.py:1366 +#: common/models.py:1385 msgid "Recent Part Count" msgstr "" -#: common/models.py:1367 +#: common/models.py:1386 msgid "Number of recent parts to display on index page" msgstr "" -#: common/models.py:1373 +#: common/models.py:1392 msgid "Show unvalidated BOMs" msgstr "" -#: common/models.py:1374 +#: common/models.py:1393 msgid "Show BOMs that await validation on the homepage" msgstr "" -#: common/models.py:1380 +#: common/models.py:1399 msgid "Show recent stock changes" msgstr "" -#: common/models.py:1381 +#: common/models.py:1400 msgid "Show recently changed stock items on the homepage" msgstr "" -#: common/models.py:1387 +#: common/models.py:1406 msgid "Recent Stock Count" msgstr "" -#: common/models.py:1388 +#: common/models.py:1407 msgid "Number of recent stock items to display on index page" msgstr "" -#: common/models.py:1394 +#: common/models.py:1413 msgid "Show low stock" msgstr "" -#: common/models.py:1395 +#: common/models.py:1414 msgid "Show low stock items on the homepage" msgstr "" -#: common/models.py:1401 +#: common/models.py:1420 msgid "Show depleted stock" msgstr "" -#: common/models.py:1402 +#: common/models.py:1421 msgid "Show depleted stock items on the homepage" msgstr "" -#: common/models.py:1408 +#: common/models.py:1427 msgid "Show needed stock" msgstr "" -#: common/models.py:1409 +#: common/models.py:1428 msgid "Show stock items needed for builds on the homepage" msgstr "" -#: common/models.py:1415 +#: common/models.py:1434 msgid "Show expired stock" msgstr "" -#: common/models.py:1416 +#: common/models.py:1435 msgid "Show expired stock items on the homepage" msgstr "" -#: common/models.py:1422 +#: common/models.py:1441 msgid "Show stale stock" msgstr "" -#: common/models.py:1423 +#: common/models.py:1442 msgid "Show stale stock items on the homepage" msgstr "" -#: common/models.py:1429 +#: common/models.py:1448 msgid "Show pending builds" msgstr "" -#: common/models.py:1430 +#: common/models.py:1449 msgid "Show pending builds on the homepage" msgstr "" -#: common/models.py:1436 +#: common/models.py:1455 msgid "Show overdue builds" msgstr "" -#: common/models.py:1437 +#: common/models.py:1456 msgid "Show overdue builds on the homepage" msgstr "" -#: common/models.py:1443 +#: common/models.py:1462 msgid "Show outstanding POs" msgstr "" -#: common/models.py:1444 +#: common/models.py:1463 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:1450 +#: common/models.py:1469 msgid "Show overdue POs" msgstr "" -#: common/models.py:1451 +#: common/models.py:1470 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:1457 +#: common/models.py:1476 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:1458 +#: common/models.py:1477 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:1464 +#: common/models.py:1483 msgid "Show overdue SOs" msgstr "" -#: common/models.py:1465 +#: common/models.py:1484 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:1471 +#: common/models.py:1490 msgid "Inline label display" msgstr "" -#: common/models.py:1472 +#: common/models.py:1491 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1478 +#: common/models.py:1497 msgid "Inline report display" msgstr "" -#: common/models.py:1479 +#: common/models.py:1498 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1485 +#: common/models.py:1504 msgid "Search Parts" msgstr "" -#: common/models.py:1486 +#: common/models.py:1505 msgid "Display parts in search preview window" msgstr "" -#: common/models.py:1492 +#: common/models.py:1511 msgid "Seach Supplier Parts" msgstr "" -#: common/models.py:1493 +#: common/models.py:1512 msgid "Display supplier parts in search preview window" msgstr "" -#: common/models.py:1499 +#: common/models.py:1518 msgid "Search Manufacturer Parts" msgstr "" -#: common/models.py:1500 +#: common/models.py:1519 msgid "Display manufacturer parts in search preview window" msgstr "" -#: common/models.py:1506 +#: common/models.py:1525 msgid "Hide Inactive Parts" msgstr "" -#: common/models.py:1507 +#: common/models.py:1526 msgid "Excluded inactive parts from search preview window" msgstr "" -#: common/models.py:1513 +#: common/models.py:1532 msgid "Search Categories" msgstr "" -#: common/models.py:1514 +#: common/models.py:1533 msgid "Display part categories in search preview window" msgstr "" -#: common/models.py:1520 +#: common/models.py:1539 msgid "Search Stock" msgstr "" -#: common/models.py:1521 +#: common/models.py:1540 msgid "Display stock items in search preview window" msgstr "" -#: common/models.py:1527 +#: common/models.py:1546 msgid "Hide Unavailable Stock Items" msgstr "" -#: common/models.py:1528 +#: common/models.py:1547 msgid "Exclude stock items which are not available from the search preview window" msgstr "" -#: common/models.py:1534 +#: common/models.py:1553 msgid "Search Locations" msgstr "" -#: common/models.py:1535 +#: common/models.py:1554 msgid "Display stock locations in search preview window" msgstr "" -#: common/models.py:1541 +#: common/models.py:1560 msgid "Search Companies" msgstr "" -#: common/models.py:1542 +#: common/models.py:1561 msgid "Display companies in search preview window" msgstr "" -#: common/models.py:1548 +#: common/models.py:1567 msgid "Search Purchase Orders" msgstr "" -#: common/models.py:1549 +#: common/models.py:1568 msgid "Display purchase orders in search preview window" msgstr "" -#: common/models.py:1555 +#: common/models.py:1574 msgid "Exclude Inactive Purchase Orders" msgstr "" -#: common/models.py:1556 +#: common/models.py:1575 msgid "Exclude inactive purchase orders from search preview window" msgstr "" -#: common/models.py:1562 +#: common/models.py:1581 msgid "Search Sales Orders" msgstr "" -#: common/models.py:1563 +#: common/models.py:1582 msgid "Display sales orders in search preview window" msgstr "" -#: common/models.py:1569 +#: common/models.py:1588 msgid "Exclude Inactive Sales Orders" msgstr "" -#: common/models.py:1570 +#: common/models.py:1589 msgid "Exclude inactive sales orders from search preview window" msgstr "" -#: common/models.py:1576 +#: common/models.py:1595 msgid "Search Preview Results" msgstr "" -#: common/models.py:1577 +#: common/models.py:1596 msgid "Number of results to show in each section of the search preview window" msgstr "" -#: common/models.py:1583 +#: common/models.py:1602 msgid "Show Quantity in Forms" msgstr "" -#: common/models.py:1584 +#: common/models.py:1603 msgid "Display available part quantity in some forms" msgstr "" -#: common/models.py:1590 +#: common/models.py:1609 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:1591 +#: common/models.py:1610 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:1597 +#: common/models.py:1616 msgid "Fixed Navbar" msgstr "" -#: common/models.py:1598 +#: common/models.py:1617 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:1604 +#: common/models.py:1623 msgid "Date Format" msgstr "" -#: common/models.py:1605 +#: common/models.py:1624 msgid "Preferred format for displaying dates" msgstr "" -#: common/models.py:1619 part/templates/part/detail.html:41 +#: common/models.py:1638 part/templates/part/detail.html:41 msgid "Part Scheduling" msgstr "" -#: common/models.py:1620 +#: common/models.py:1639 msgid "Display part scheduling information" msgstr "" -#: common/models.py:1679 +#: common/models.py:1698 msgid "Price break quantity" msgstr "" -#: common/models.py:1686 company/serializers.py:366 +#: common/models.py:1705 company/serializers.py:366 #: company/templates/company/supplier_part.html:284 order/models.py:938 -#: templates/js/translated/part.js:1065 templates/js/translated/part.js:2152 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2161 msgid "Price" msgstr "" -#: common/models.py:1687 +#: common/models.py:1706 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:1847 common/models.py:2025 +#: common/models.py:1866 common/models.py:2044 msgid "Endpoint" msgstr "" -#: common/models.py:1848 +#: common/models.py:1867 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:1857 +#: common/models.py:1876 msgid "Name for this webhook" msgstr "" -#: common/models.py:1862 part/models.py:914 plugin/models.py:99 +#: common/models.py:1881 part/models.py:921 plugin/models.py:100 #: templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:104 #: templates/js/translated/table_filters.js:316 @@ -2591,67 +2619,67 @@ msgstr "" msgid "Active" msgstr "" -#: common/models.py:1863 +#: common/models.py:1882 msgid "Is this webhook active" msgstr "" -#: common/models.py:1877 +#: common/models.py:1896 msgid "Token" msgstr "" -#: common/models.py:1878 +#: common/models.py:1897 msgid "Token for access" msgstr "" -#: common/models.py:1885 +#: common/models.py:1904 msgid "Secret" msgstr "" -#: common/models.py:1886 +#: common/models.py:1905 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:1992 +#: common/models.py:2011 msgid "Message ID" msgstr "" -#: common/models.py:1993 +#: common/models.py:2012 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2001 +#: common/models.py:2020 msgid "Host" msgstr "" -#: common/models.py:2002 +#: common/models.py:2021 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2009 +#: common/models.py:2028 msgid "Header" msgstr "" -#: common/models.py:2010 +#: common/models.py:2029 msgid "Header of this message" msgstr "" -#: common/models.py:2016 +#: common/models.py:2035 msgid "Body" msgstr "" -#: common/models.py:2017 +#: common/models.py:2036 msgid "Body of this message" msgstr "" -#: common/models.py:2026 +#: common/models.py:2045 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2031 +#: common/models.py:2050 msgid "Worked on" msgstr "" -#: common/models.py:2032 +#: common/models.py:2051 msgid "Was the work on this message finished?" msgstr "" @@ -2758,7 +2786,7 @@ msgstr "" msgid "Link to external company information" msgstr "" -#: company/models.py:135 part/models.py:808 +#: company/models.py:135 part/models.py:815 msgid "Image" msgstr "" @@ -2791,8 +2819,8 @@ msgid "Does this company manufacture parts?" msgstr "" #: company/models.py:148 company/serializers.py:372 -#: company/templates/company/company_base.html:106 part/serializers.py:151 -#: part/serializers.py:182 stock/serializers.py:180 +#: company/templates/company/company_base.html:106 part/serializers.py:153 +#: part/serializers.py:184 stock/serializers.py:180 msgid "Currency" msgstr "" @@ -2800,7 +2828,7 @@ msgstr "" msgid "Default currency used for this company" msgstr "" -#: company/models.py:248 company/models.py:481 stock/models.py:591 +#: company/models.py:248 company/models.py:481 stock/models.py:598 #: stock/serializers.py:87 stock/templates/stock/item_base.html:148 #: templates/js/translated/bom.js:543 msgid "Base Part" @@ -2832,7 +2860,7 @@ msgstr "" #: templates/js/translated/company.js:497 #: templates/js/translated/company.js:649 #: templates/js/translated/company.js:937 templates/js/translated/order.js:1971 -#: templates/js/translated/part.js:247 templates/js/translated/part.js:1023 +#: templates/js/translated/part.js:247 templates/js/translated/part.js:1027 msgid "MPN" msgstr "" @@ -2861,9 +2889,9 @@ msgstr "" #: company/models.py:365 #: report/templates/report/inventree_test_report_base.html:95 -#: stock/models.py:2088 templates/js/translated/company.js:546 -#: templates/js/translated/company.js:764 templates/js/translated/part.js:845 -#: templates/js/translated/stock.js:1356 +#: stock/models.py:2095 templates/js/translated/company.js:546 +#: templates/js/translated/company.js:764 templates/js/translated/part.js:849 +#: templates/js/translated/stock.js:1360 msgid "Value" msgstr "" @@ -2871,10 +2899,10 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:372 part/models.py:881 part/models.py:2379 +#: company/models.py:372 part/models.py:888 part/models.py:2386 #: part/templates/part/part_base.html:280 #: templates/InvenTree/settings/settings.html:352 -#: templates/js/translated/company.js:770 templates/js/translated/part.js:851 +#: templates/js/translated/company.js:770 templates/js/translated/part.js:855 msgid "Units" msgstr "" @@ -2894,7 +2922,7 @@ msgstr "" #: templates/js/translated/company.js:268 #: templates/js/translated/company.js:401 #: templates/js/translated/company.js:893 templates/js/translated/order.js:1707 -#: templates/js/translated/part.js:217 templates/js/translated/part.js:991 +#: templates/js/translated/part.js:217 templates/js/translated/part.js:995 #: templates/js/translated/table_filters.js:423 msgid "Supplier" msgstr "" @@ -2906,7 +2934,7 @@ msgstr "" #: company/models.py:497 company/templates/company/supplier_part.html:118 #: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267 #: templates/js/translated/order.js:1958 templates/js/translated/part.js:228 -#: templates/js/translated/part.js:1009 +#: templates/js/translated/part.js:1013 msgid "SKU" msgstr "" @@ -2927,23 +2955,23 @@ msgid "Supplier part description" msgstr "" #: company/models.py:522 company/templates/company/supplier_part.html:146 -#: part/models.py:2613 part/templates/part/upload_bom.html:59 +#: part/models.py:2620 part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401 msgid "Note" msgstr "" -#: company/models.py:526 part/models.py:1735 +#: company/models.py:526 part/models.py:1742 msgid "base cost" msgstr "" -#: company/models.py:526 part/models.py:1735 +#: company/models.py:526 part/models.py:1742 msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:528 company/templates/company/supplier_part.html:139 -#: stock/models.py:617 stock/templates/stock/item_base.html:245 -#: templates/js/translated/company.js:969 templates/js/translated/stock.js:1972 +#: stock/models.py:624 stock/templates/stock/item_base.html:245 +#: templates/js/translated/company.js:969 templates/js/translated/stock.js:1976 msgid "Packaging" msgstr "" @@ -2951,7 +2979,7 @@ msgstr "" msgid "Part packaging" msgstr "" -#: company/models.py:530 part/models.py:1737 +#: company/models.py:530 part/models.py:1744 msgid "multiple" msgstr "" @@ -2964,7 +2992,7 @@ msgstr "" #: templates/email/low_stock_notification.html:18 #: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789 #: templates/js/translated/build.js:2645 templates/js/translated/company.js:979 -#: templates/js/translated/part.js:596 templates/js/translated/part.js:599 +#: templates/js/translated/part.js:600 templates/js/translated/part.js:603 #: templates/js/translated/table_filters.js:186 msgid "Available" msgstr "" @@ -3037,12 +3065,12 @@ msgid "Download image from URL" msgstr "" #: company/templates/company/company_base.html:86 order/models.py:637 -#: order/templates/order/sales_order_base.html:116 stock/models.py:636 -#: stock/models.py:637 stock/serializers.py:809 +#: order/templates/order/sales_order_base.html:116 stock/models.py:643 +#: stock/models.py:644 stock/serializers.py:811 #: stock/templates/stock/item_base.html:401 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:393 templates/js/translated/order.js:2513 -#: templates/js/translated/stock.js:2550 +#: templates/js/translated/stock.js:2559 #: templates/js/translated/table_filters.js:427 msgid "Customer" msgstr "" @@ -3083,7 +3111,7 @@ msgstr "" #: company/templates/company/detail.html:36 #: company/templates/company/detail.html:84 -#: part/templates/part/category.html:176 +#: part/templates/part/category.html:182 msgid "Order parts" msgstr "" @@ -3231,7 +3259,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:170 #: part/templates/part/detail.html:186 #: templates/InvenTree/settings/category.html:12 -#: templates/InvenTree/settings/part.html:66 +#: templates/InvenTree/settings/part.html:68 msgid "New Parameter" msgstr "" @@ -3261,10 +3289,10 @@ msgid "Assigned Stock Items" msgstr "" #: company/templates/company/supplier_part.html:7 -#: company/templates/company/supplier_part.html:24 stock/models.py:600 +#: company/templates/company/supplier_part.html:24 stock/models.py:607 #: stock/templates/stock/item_base.html:238 #: templates/js/translated/company.js:909 templates/js/translated/order.js:935 -#: templates/js/translated/stock.js:1929 +#: templates/js/translated/stock.js:1933 msgid "Supplier Part" msgstr "" @@ -3308,13 +3336,13 @@ msgid "Supplier Part Stock" msgstr "" #: company/templates/company/supplier_part.html:168 -#: part/templates/part/detail.html:24 stock/templates/stock/location.html:176 +#: part/templates/part/detail.html:24 stock/templates/stock/location.html:181 msgid "Create new stock item" msgstr "" #: company/templates/company/supplier_part.html:169 -#: part/templates/part/detail.html:25 stock/templates/stock/location.html:177 -#: templates/js/translated/stock.js:431 +#: part/templates/part/detail.html:25 stock/templates/stock/location.html:182 +#: templates/js/translated/stock.js:435 msgid "New Stock Item" msgstr "" @@ -3330,7 +3358,7 @@ msgstr "" #: company/templates/company/supplier_part.html:212 #: company/templates/company/supplier_part.html:326 -#: part/templates/part/prices.html:276 templates/js/translated/part.js:2224 +#: part/templates/part/prices.html:276 templates/js/translated/part.js:2233 msgid "Add Price Break" msgstr "" @@ -3339,12 +3367,12 @@ msgid "No price break information found" msgstr "" #: company/templates/company/supplier_part.html:252 -#: templates/js/translated/part.js:2234 +#: templates/js/translated/part.js:2243 msgid "Delete Price Break" msgstr "" #: company/templates/company/supplier_part.html:266 -#: templates/js/translated/part.js:2248 +#: templates/js/translated/part.js:2257 msgid "Edit Price Break" msgstr "" @@ -3366,13 +3394,13 @@ msgstr "" #: company/templates/company/supplier_part_navbar.html:15 #: part/templates/part/part_sidebar.html:14 -#: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:19 +#: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:24 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:151 #: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/bom.js:555 templates/js/translated/part.js:747 -#: templates/js/translated/part.js:1295 templates/js/translated/part.js:1456 -#: templates/js/translated/stock.js:955 templates/js/translated/stock.js:1750 +#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751 +#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460 +#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754 #: templates/navbar.html:31 msgid "Stock" msgstr "" @@ -3392,14 +3420,14 @@ msgid "Pricing" msgstr "" #: company/templates/company/supplier_part_sidebar.html:5 -#: part/templates/part/category.html:197 +#: part/templates/part/category.html:203 #: part/templates/part/category_sidebar.html:17 -#: stock/templates/stock/location.html:147 -#: stock/templates/stock/location.html:161 -#: stock/templates/stock/location.html:173 +#: stock/templates/stock/location.html:152 +#: stock/templates/stock/location.html:166 +#: stock/templates/stock/location.html:178 #: stock/templates/stock/location_sidebar.html:7 #: templates/InvenTree/search.html:153 templates/js/translated/search.js:223 -#: templates/js/translated/stock.js:2427 users/models.py:40 +#: templates/js/translated/stock.js:2436 users/models.py:40 msgid "Stock Items" msgstr "" @@ -3656,8 +3684,8 @@ msgstr "" #: stock/templates/stock/item_base.html:184 #: templates/email/overdue_purchase_order.html:15 #: templates/js/translated/order.js:936 templates/js/translated/order.js:1691 -#: templates/js/translated/part.js:968 templates/js/translated/stock.js:1909 -#: templates/js/translated/stock.js:2531 +#: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913 +#: templates/js/translated/stock.js:2540 msgid "Purchase Order" msgstr "" @@ -3667,7 +3695,7 @@ msgstr "" #: order/models.py:1009 order/templates/order/order_base.html:169 #: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073 -#: templates/js/translated/part.js:1060 templates/js/translated/part.js:1087 +#: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091 #: templates/js/translated/table_filters.js:338 msgid "Received" msgstr "" @@ -3676,9 +3704,9 @@ msgstr "" msgid "Number of items received" msgstr "" -#: order/models.py:1017 part/templates/part/prices.html:181 stock/models.py:727 +#: order/models.py:1017 part/templates/part/prices.html:181 stock/models.py:734 #: stock/serializers.py:171 stock/templates/stock/item_base.html:191 -#: templates/js/translated/stock.js:1960 +#: templates/js/translated/stock.js:1964 msgid "Purchase Price" msgstr "" @@ -4066,8 +4094,8 @@ msgstr "" #: templates/js/translated/bom.js:77 templates/js/translated/build.js:431 #: templates/js/translated/build.js:583 templates/js/translated/build.js:1974 #: templates/js/translated/order.js:884 templates/js/translated/order.js:1337 -#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:621 -#: templates/js/translated/stock.js:789 +#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625 +#: templates/js/translated/stock.js:793 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "" @@ -4261,8 +4289,8 @@ msgstr "" msgid "This field is required" msgstr "" -#: part/bom.py:127 part/models.py:98 part/models.py:817 -#: part/templates/part/category.html:108 part/templates/part/part_base.html:330 +#: part/bom.py:127 part/models.py:98 part/models.py:824 +#: part/templates/part/category.html:114 part/templates/part/part_base.html:330 msgid "Default Location" msgstr "" @@ -4276,9 +4304,9 @@ msgid "Available Stock" msgstr "" #: part/bom.py:130 part/templates/part/part_base.html:207 -#: templates/js/translated/bom.js:947 templates/js/translated/part.js:586 -#: templates/js/translated/part.js:606 templates/js/translated/part.js:1298 -#: templates/js/translated/part.js:1470 templates/js/translated/part.js:1486 +#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590 +#: templates/js/translated/part.js:610 templates/js/translated/part.js:1302 +#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "" @@ -4299,516 +4327,524 @@ msgstr "" msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:115 part/models.py:2455 part/templates/part/category.html:15 +#: part/models.py:107 stock/models.py:84 +msgid "Icon" +msgstr "" + +#: part/models.py:108 stock/models.py:85 +msgid "Icon (optional)" +msgstr "" + +#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" -#: part/models.py:116 part/templates/part/category.html:128 +#: part/models.py:123 part/templates/part/category.html:134 #: templates/InvenTree/search.html:95 templates/js/translated/search.js:198 #: users/models.py:37 msgid "Part Categories" msgstr "" -#: part/models.py:337 part/templates/part/cat_link.html:3 -#: part/templates/part/category.html:17 part/templates/part/category.html:133 -#: part/templates/part/category.html:153 +#: part/models.py:344 part/templates/part/cat_link.html:3 +#: part/templates/part/category.html:23 part/templates/part/category.html:139 +#: part/templates/part/category.html:159 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82 #: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:1946 templates/js/translated/search.js:144 +#: templates/js/translated/part.js:1955 templates/js/translated/search.js:144 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "" -#: part/models.py:422 +#: part/models.py:429 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:492 part/models.py:504 +#: part/models.py:499 part/models.py:511 #, python-brace-format msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)" msgstr "" -#: part/models.py:621 +#: part/models.py:628 msgid "Next available serial numbers are" msgstr "" -#: part/models.py:625 +#: part/models.py:632 msgid "Next available serial number is" msgstr "" -#: part/models.py:630 +#: part/models.py:637 msgid "Most recent serial number is" msgstr "" -#: part/models.py:711 +#: part/models.py:718 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:738 part/models.py:2509 +#: part/models.py:745 part/models.py:2516 msgid "Part name" msgstr "" -#: part/models.py:745 +#: part/models.py:752 msgid "Is Template" msgstr "" -#: part/models.py:746 +#: part/models.py:753 msgid "Is this part a template part?" msgstr "" -#: part/models.py:756 +#: part/models.py:763 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:757 +#: part/models.py:764 msgid "Variant Of" msgstr "" -#: part/models.py:763 +#: part/models.py:770 msgid "Part description" msgstr "" -#: part/models.py:768 part/templates/part/category.html:86 +#: part/models.py:775 part/templates/part/category.html:92 #: part/templates/part/part_base.html:294 msgid "Keywords" msgstr "" -#: part/models.py:769 +#: part/models.py:776 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:776 part/models.py:2211 part/models.py:2454 +#: part/models.py:783 part/models.py:2218 part/models.py:2461 #: part/templates/part/part_base.html:257 #: templates/InvenTree/settings/settings.html:232 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1438 templates/js/translated/part.js:1664 +#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1668 msgid "Category" msgstr "" -#: part/models.py:777 +#: part/models.py:784 msgid "Part category" msgstr "" -#: part/models.py:782 part/templates/part/part_base.html:266 -#: templates/js/translated/part.js:735 templates/js/translated/part.js:1391 -#: templates/js/translated/stock.js:1722 +#: part/models.py:789 part/templates/part/part_base.html:266 +#: templates/js/translated/part.js:739 templates/js/translated/part.js:1395 +#: templates/js/translated/stock.js:1726 msgid "IPN" msgstr "" -#: part/models.py:783 +#: part/models.py:790 msgid "Internal Part Number" msgstr "" -#: part/models.py:789 +#: part/models.py:796 msgid "Part revision or version number" msgstr "" -#: part/models.py:790 part/templates/part/part_base.html:273 -#: report/models.py:171 templates/js/translated/part.js:739 +#: part/models.py:797 part/templates/part/part_base.html:273 +#: report/models.py:171 templates/js/translated/part.js:743 msgid "Revision" msgstr "" -#: part/models.py:815 +#: part/models.py:822 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:860 part/templates/part/part_base.html:339 +#: part/models.py:867 part/templates/part/part_base.html:339 msgid "Default Supplier" msgstr "" -#: part/models.py:861 +#: part/models.py:868 msgid "Default supplier part" msgstr "" -#: part/models.py:868 +#: part/models.py:875 msgid "Default Expiry" msgstr "" -#: part/models.py:869 +#: part/models.py:876 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:874 part/templates/part/part_base.html:200 +#: part/models.py:881 part/templates/part/part_base.html:200 msgid "Minimum Stock" msgstr "" -#: part/models.py:875 +#: part/models.py:882 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:882 +#: part/models.py:889 msgid "Stock keeping units for this part" msgstr "" -#: part/models.py:888 +#: part/models.py:895 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:894 +#: part/models.py:901 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:900 +#: part/models.py:907 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:905 +#: part/models.py:912 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:910 +#: part/models.py:917 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:915 +#: part/models.py:922 msgid "Is this part active?" msgstr "" -#: part/models.py:920 +#: part/models.py:927 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:922 +#: part/models.py:929 msgid "Part notes" msgstr "" -#: part/models.py:924 +#: part/models.py:931 msgid "BOM checksum" msgstr "" -#: part/models.py:924 +#: part/models.py:931 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:927 +#: part/models.py:934 msgid "BOM checked by" msgstr "" -#: part/models.py:929 +#: part/models.py:936 msgid "BOM checked date" msgstr "" -#: part/models.py:933 +#: part/models.py:940 msgid "Creation User" msgstr "" -#: part/models.py:1737 +#: part/models.py:1744 msgid "Sell multiple" msgstr "" -#: part/models.py:2258 +#: part/models.py:2265 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:2275 +#: part/models.py:2282 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:2295 templates/js/translated/part.js:1997 -#: templates/js/translated/stock.js:1336 +#: part/models.py:2302 templates/js/translated/part.js:2006 +#: templates/js/translated/stock.js:1340 msgid "Test Name" msgstr "" -#: part/models.py:2296 +#: part/models.py:2303 msgid "Enter a name for the test" msgstr "" -#: part/models.py:2301 +#: part/models.py:2308 msgid "Test Description" msgstr "" -#: part/models.py:2302 +#: part/models.py:2309 msgid "Enter description for this test" msgstr "" -#: part/models.py:2307 templates/js/translated/part.js:2006 +#: part/models.py:2314 templates/js/translated/part.js:2015 #: templates/js/translated/table_filters.js:302 msgid "Required" msgstr "" -#: part/models.py:2308 +#: part/models.py:2315 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:2313 templates/js/translated/part.js:2014 +#: part/models.py:2320 templates/js/translated/part.js:2023 msgid "Requires Value" msgstr "" -#: part/models.py:2314 +#: part/models.py:2321 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:2319 templates/js/translated/part.js:2021 +#: part/models.py:2326 templates/js/translated/part.js:2030 msgid "Requires Attachment" msgstr "" -#: part/models.py:2320 +#: part/models.py:2327 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:2328 +#: part/models.py:2335 #, python-brace-format msgid "Illegal character in template name ({c})" msgstr "" -#: part/models.py:2364 +#: part/models.py:2371 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:2372 +#: part/models.py:2379 msgid "Parameter Name" msgstr "" -#: part/models.py:2379 +#: part/models.py:2386 msgid "Parameter Units" msgstr "" -#: part/models.py:2410 +#: part/models.py:2417 msgid "Parent Part" msgstr "" -#: part/models.py:2412 part/models.py:2460 part/models.py:2461 +#: part/models.py:2419 part/models.py:2467 part/models.py:2468 #: templates/InvenTree/settings/settings.html:227 msgid "Parameter Template" msgstr "" -#: part/models.py:2414 +#: part/models.py:2421 msgid "Data" msgstr "" -#: part/models.py:2414 +#: part/models.py:2421 msgid "Parameter Value" msgstr "" -#: part/models.py:2465 templates/InvenTree/settings/settings.html:236 +#: part/models.py:2472 templates/InvenTree/settings/settings.html:236 msgid "Default Value" msgstr "" -#: part/models.py:2466 +#: part/models.py:2473 msgid "Default Parameter Value" msgstr "" -#: part/models.py:2501 +#: part/models.py:2508 msgid "Part ID or part name" msgstr "" -#: part/models.py:2504 templates/js/translated/model_renderers.js:212 +#: part/models.py:2511 templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "" -#: part/models.py:2505 +#: part/models.py:2512 msgid "Unique part ID value" msgstr "" -#: part/models.py:2508 +#: part/models.py:2515 msgid "Part Name" msgstr "" -#: part/models.py:2512 +#: part/models.py:2519 msgid "Part IPN" msgstr "" -#: part/models.py:2513 +#: part/models.py:2520 msgid "Part IPN value" msgstr "" -#: part/models.py:2516 +#: part/models.py:2523 msgid "Level" msgstr "" -#: part/models.py:2517 +#: part/models.py:2524 msgid "BOM level" msgstr "" -#: part/models.py:2586 +#: part/models.py:2593 msgid "Select parent part" msgstr "" -#: part/models.py:2594 +#: part/models.py:2601 msgid "Sub part" msgstr "" -#: part/models.py:2595 +#: part/models.py:2602 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:2601 +#: part/models.py:2608 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:2603 part/templates/part/upload_bom.html:58 +#: part/models.py:2610 part/templates/part/upload_bom.html:58 #: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999 #: templates/js/translated/table_filters.js:100 msgid "Optional" msgstr "" -#: part/models.py:2603 +#: part/models.py:2610 msgid "This BOM item is optional" msgstr "" -#: part/models.py:2606 part/templates/part/upload_bom.html:55 +#: part/models.py:2613 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:2607 +#: part/models.py:2614 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:2610 +#: part/models.py:2617 msgid "BOM item reference" msgstr "" -#: part/models.py:2613 +#: part/models.py:2620 msgid "BOM item notes" msgstr "" -#: part/models.py:2615 +#: part/models.py:2622 msgid "Checksum" msgstr "" -#: part/models.py:2615 +#: part/models.py:2622 msgid "BOM line checksum" msgstr "" -#: part/models.py:2619 part/templates/part/upload_bom.html:57 +#: part/models.py:2626 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1016 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:96 msgid "Inherited" msgstr "" -#: part/models.py:2620 +#: part/models.py:2627 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:2625 part/templates/part/upload_bom.html:56 +#: part/models.py:2632 part/templates/part/upload_bom.html:56 #: templates/js/translated/bom.js:1008 msgid "Allow Variants" msgstr "" -#: part/models.py:2626 +#: part/models.py:2633 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:2704 stock/models.py:461 +#: part/models.py:2711 stock/models.py:468 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:2713 part/models.py:2715 +#: part/models.py:2720 part/models.py:2722 msgid "Sub part must be specified" msgstr "" -#: part/models.py:2820 +#: part/models.py:2827 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:2841 +#: part/models.py:2848 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:2854 +#: part/models.py:2861 msgid "Parent BOM item" msgstr "" -#: part/models.py:2862 +#: part/models.py:2869 msgid "Substitute part" msgstr "" -#: part/models.py:2877 +#: part/models.py:2884 msgid "Part 1" msgstr "" -#: part/models.py:2881 +#: part/models.py:2888 msgid "Part 2" msgstr "" -#: part/models.py:2881 +#: part/models.py:2888 msgid "Select Related Part" msgstr "" -#: part/models.py:2899 +#: part/models.py:2906 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:2903 +#: part/models.py:2910 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:152 part/serializers.py:183 stock/serializers.py:181 +#: part/serializers.py:154 part/serializers.py:185 stock/serializers.py:181 msgid "Purchase currency of this stock item" msgstr "" -#: part/serializers.py:812 +#: part/serializers.py:814 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:820 +#: part/serializers.py:822 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:821 +#: part/serializers.py:823 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:826 +#: part/serializers.py:828 msgid "Include Inherited" msgstr "" -#: part/serializers.py:827 +#: part/serializers.py:829 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:832 +#: part/serializers.py:834 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:833 +#: part/serializers.py:835 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:838 +#: part/serializers.py:840 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:839 +#: part/serializers.py:841 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:879 +#: part/serializers.py:881 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:880 +#: part/serializers.py:882 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:910 +#: part/serializers.py:912 msgid "No part column specified" msgstr "" -#: part/serializers.py:953 +#: part/serializers.py:955 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:956 +#: part/serializers.py:958 msgid "No matching part found" msgstr "" -#: part/serializers.py:959 +#: part/serializers.py:961 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:968 +#: part/serializers.py:970 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:976 +#: part/serializers.py:978 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:997 +#: part/serializers.py:999 msgid "At least one BOM item is required" msgstr "" @@ -4848,101 +4884,101 @@ msgstr "" msgid "Delete Items" msgstr "" -#: part/templates/part/category.html:28 part/templates/part/category.html:32 +#: part/templates/part/category.html:34 part/templates/part/category.html:38 msgid "You are subscribed to notifications for this category" msgstr "" -#: part/templates/part/category.html:36 +#: part/templates/part/category.html:42 msgid "Subscribe to notifications for this category" msgstr "" -#: part/templates/part/category.html:42 +#: part/templates/part/category.html:48 msgid "Category Actions" msgstr "" -#: part/templates/part/category.html:47 +#: part/templates/part/category.html:53 msgid "Edit category" msgstr "" -#: part/templates/part/category.html:48 +#: part/templates/part/category.html:54 msgid "Edit Category" msgstr "" -#: part/templates/part/category.html:52 +#: part/templates/part/category.html:58 msgid "Delete category" msgstr "" -#: part/templates/part/category.html:53 +#: part/templates/part/category.html:59 msgid "Delete Category" msgstr "" -#: part/templates/part/category.html:61 +#: part/templates/part/category.html:67 msgid "Create new part category" msgstr "" -#: part/templates/part/category.html:62 +#: part/templates/part/category.html:68 msgid "New Category" msgstr "" -#: part/templates/part/category.html:80 part/templates/part/category.html:93 +#: part/templates/part/category.html:86 part/templates/part/category.html:99 msgid "Category Path" msgstr "" -#: part/templates/part/category.html:94 +#: part/templates/part/category.html:100 msgid "Top level part category" msgstr "" -#: part/templates/part/category.html:114 part/templates/part/category.html:222 +#: part/templates/part/category.html:120 part/templates/part/category.html:228 #: part/templates/part/category_sidebar.html:7 msgid "Subcategories" msgstr "" -#: part/templates/part/category.html:119 +#: part/templates/part/category.html:125 msgid "Parts (Including subcategories)" msgstr "" -#: part/templates/part/category.html:157 +#: part/templates/part/category.html:163 msgid "Create new part" msgstr "" -#: part/templates/part/category.html:158 templates/js/translated/bom.js:367 +#: part/templates/part/category.html:164 templates/js/translated/bom.js:367 msgid "New Part" msgstr "" -#: part/templates/part/category.html:168 part/templates/part/detail.html:363 +#: part/templates/part/category.html:174 part/templates/part/detail.html:363 #: part/templates/part/detail.html:394 msgid "Options" msgstr "" -#: part/templates/part/category.html:172 +#: part/templates/part/category.html:178 msgid "Set category" msgstr "" -#: part/templates/part/category.html:173 +#: part/templates/part/category.html:179 msgid "Set Category" msgstr "" -#: part/templates/part/category.html:180 part/templates/part/category.html:181 +#: part/templates/part/category.html:186 part/templates/part/category.html:187 msgid "Print Labels" msgstr "" -#: part/templates/part/category.html:206 +#: part/templates/part/category.html:212 msgid "Part Parameters" msgstr "" -#: part/templates/part/category.html:320 +#: part/templates/part/category.html:327 msgid "Create Part Category" msgstr "" -#: part/templates/part/category.html:340 +#: part/templates/part/category.html:347 msgid "Create Part" msgstr "" -#: part/templates/part/category.html:343 +#: part/templates/part/category.html:350 msgid "Create another part after this one" msgstr "" -#: part/templates/part/category.html:344 +#: part/templates/part/category.html:351 msgid "Part created successfully" msgstr "" @@ -4950,7 +4986,7 @@ msgstr "" msgid "Import Parts" msgstr "" -#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:375 +#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:379 msgid "Duplicate Part" msgstr "" @@ -5172,19 +5208,19 @@ msgstr "" #: part/templates/part/part_base.html:43 #: stock/templates/stock/item_base.html:41 -#: stock/templates/stock/location.html:43 +#: stock/templates/stock/location.html:48 msgid "Barcode actions" msgstr "" #: part/templates/part/part_base.html:46 #: stock/templates/stock/item_base.html:45 -#: stock/templates/stock/location.html:45 templates/qr_button.html:1 +#: stock/templates/stock/location.html:50 templates/qr_button.html:1 msgid "Show QR Code" msgstr "" #: part/templates/part/part_base.html:49 #: stock/templates/stock/item_base.html:63 -#: stock/templates/stock/location.html:47 +#: stock/templates/stock/location.html:52 msgid "Print Label" msgstr "" @@ -5194,7 +5230,7 @@ msgstr "" #: part/templates/part/part_base.html:60 #: stock/templates/stock/item_base.html:116 -#: stock/templates/stock/location.html:56 +#: stock/templates/stock/location.html:61 msgid "Stock actions" msgstr "" @@ -5255,7 +5291,7 @@ msgstr "" #: templates/js/translated/company.js:624 #: templates/js/translated/company.js:884 #: templates/js/translated/model_renderers.js:204 -#: templates/js/translated/part.js:650 templates/js/translated/part.js:727 +#: templates/js/translated/part.js:654 templates/js/translated/part.js:731 msgid "Inactive" msgstr "" @@ -5289,9 +5325,9 @@ msgstr "" msgid "Can Build" msgstr "" -#: part/templates/part/part_base.html:238 templates/js/translated/part.js:589 -#: templates/js/translated/part.js:609 templates/js/translated/part.js:1302 -#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490 +#: part/templates/part/part_base.html:238 templates/js/translated/part.js:593 +#: templates/js/translated/part.js:613 templates/js/translated/part.js:1306 +#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1494 msgid "Building" msgstr "" @@ -5464,8 +5500,8 @@ msgstr "" msgid "No sale pice history available for this part." msgstr "" -#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:612 -#: templates/js/translated/part.js:1290 templates/js/translated/part.js:1494 +#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616 +#: templates/js/translated/part.js:1294 templates/js/translated/part.js:1498 msgid "No Stock" msgstr "" @@ -5630,51 +5666,55 @@ msgstr "" msgid "Allow sending of emails for event notifications" msgstr "" -#: plugin/models.py:32 +#: plugin/models.py:33 msgid "Plugin Metadata" msgstr "" -#: plugin/models.py:33 +#: plugin/models.py:34 msgid "JSON metadata field, for use by external plugins" msgstr "" -#: plugin/models.py:79 +#: plugin/models.py:80 msgid "Plugin Configuration" msgstr "" -#: plugin/models.py:80 +#: plugin/models.py:81 msgid "Plugin Configurations" msgstr "" -#: plugin/models.py:85 +#: plugin/models.py:86 msgid "Key" msgstr "" -#: plugin/models.py:86 +#: plugin/models.py:87 msgid "Key of plugin" msgstr "" -#: plugin/models.py:94 +#: plugin/models.py:95 msgid "PluginName of the plugin" msgstr "" -#: plugin/models.py:100 +#: plugin/models.py:101 msgid "Is the plugin active" msgstr "" -#: plugin/models.py:168 +#: plugin/models.py:158 +msgid "Sample plugin" +msgstr "" + +#: plugin/models.py:186 msgid "Plugin" msgstr "" -#: plugin/models.py:231 +#: plugin/models.py:249 msgid "Method" msgstr "" -#: plugin/plugin.py:228 +#: plugin/plugin.py:251 msgid "No author found" msgstr "" -#: plugin/plugin.py:240 +#: plugin/plugin.py:263 msgid "No date found" msgstr "" @@ -5746,12 +5786,12 @@ msgstr "" msgid "No valid objects provided to template" msgstr "" -#: report/api.py:216 report/api.py:257 +#: report/api.py:216 report/api.py:252 #, python-brace-format msgid "Template file '{template}' is missing or does not exist" msgstr "" -#: report/api.py:360 +#: report/api.py:355 msgid "Test report" msgstr "" @@ -5852,12 +5892,12 @@ msgid "Stock Item Test Report" msgstr "" #: report/templates/report/inventree_test_report_base.html:79 -#: stock/models.py:641 stock/templates/stock/item_base.html:322 +#: stock/models.py:648 stock/templates/stock/item_base.html:322 #: templates/js/translated/build.js:424 templates/js/translated/build.js:576 #: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673 #: templates/js/translated/model_renderers.js:118 #: templates/js/translated/order.js:118 templates/js/translated/order.js:3297 -#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:486 +#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490 msgid "Serial Number" msgstr "" @@ -5866,19 +5906,19 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report_base.html:93 -#: stock/models.py:2076 +#: stock/models.py:2083 msgid "Test" msgstr "" #: report/templates/report/inventree_test_report_base.html:94 -#: stock/models.py:2082 +#: stock/models.py:2089 msgid "Result" msgstr "" #: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:51 +#: templates/InvenTree/settings/plugin.html:53 #: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2459 +#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468 msgid "Date" msgstr "" @@ -5896,8 +5936,8 @@ msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report_base.html:137 -#: templates/js/translated/stock.js:606 templates/js/translated/stock.js:776 -#: templates/js/translated/stock.js:2708 +#: templates/js/translated/stock.js:610 templates/js/translated/stock.js:780 +#: templates/js/translated/stock.js:2717 msgid "Serial" msgstr "" @@ -5913,241 +5953,241 @@ msgstr "" msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" -#: stock/models.py:82 stock/models.py:732 +#: stock/models.py:89 stock/models.py:739 #: stock/templates/stock/item_base.html:252 msgid "Owner" msgstr "" -#: stock/models.py:83 stock/models.py:733 +#: stock/models.py:90 stock/models.py:740 msgid "Select Owner" msgstr "" -#: stock/models.py:435 +#: stock/models.py:442 msgid "StockItem with this serial number already exists" msgstr "" -#: stock/models.py:467 stock/serializers.py:95 +#: stock/models.py:474 stock/serializers.py:95 msgid "Stock item cannot be created for virtual parts" msgstr "" -#: stock/models.py:484 +#: stock/models.py:491 #, python-brace-format msgid "Part type ('{pf}') must be {pe}" msgstr "" -#: stock/models.py:494 stock/models.py:503 +#: stock/models.py:501 stock/models.py:510 msgid "Quantity must be 1 for item with a serial number" msgstr "" -#: stock/models.py:495 +#: stock/models.py:502 msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:517 +#: stock/models.py:524 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:523 +#: stock/models.py:530 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:537 +#: stock/models.py:544 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:583 +#: stock/models.py:590 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:593 +#: stock/models.py:600 msgid "Base part" msgstr "" -#: stock/models.py:601 +#: stock/models.py:608 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:608 stock/templates/stock/location.html:17 +#: stock/models.py:615 stock/templates/stock/location.html:17 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" msgstr "" -#: stock/models.py:611 +#: stock/models.py:618 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:618 +#: stock/models.py:625 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:624 stock/templates/stock/item_base.html:361 +#: stock/models.py:631 stock/templates/stock/item_base.html:361 msgid "Installed In" msgstr "" -#: stock/models.py:627 +#: stock/models.py:634 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:643 +#: stock/models.py:650 msgid "Serial number for this item" msgstr "" -#: stock/models.py:657 +#: stock/models.py:664 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:662 +#: stock/models.py:669 msgid "Stock Quantity" msgstr "" -#: stock/models.py:671 +#: stock/models.py:678 msgid "Source Build" msgstr "" -#: stock/models.py:673 +#: stock/models.py:680 msgid "Build for this stock item" msgstr "" -#: stock/models.py:684 +#: stock/models.py:691 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:687 +#: stock/models.py:694 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:693 +#: stock/models.py:700 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:699 stock/templates/stock/item_base.html:429 -#: templates/js/translated/stock.js:1879 +#: stock/models.py:706 stock/templates/stock/item_base.html:429 +#: templates/js/translated/stock.js:1883 msgid "Expiry Date" msgstr "" -#: stock/models.py:700 +#: stock/models.py:707 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:713 +#: stock/models.py:720 msgid "Delete on deplete" msgstr "" -#: stock/models.py:713 +#: stock/models.py:720 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:720 stock/templates/stock/item.html:132 +#: stock/models.py:727 stock/templates/stock/item.html:132 msgid "Stock Item Notes" msgstr "" -#: stock/models.py:728 +#: stock/models.py:735 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:756 +#: stock/models.py:763 msgid "Converted to part" msgstr "" -#: stock/models.py:1235 +#: stock/models.py:1242 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1241 +#: stock/models.py:1248 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1247 +#: stock/models.py:1254 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({n})" msgstr "" -#: stock/models.py:1250 +#: stock/models.py:1257 msgid "Serial numbers must be a list of integers" msgstr "" -#: stock/models.py:1253 +#: stock/models.py:1260 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1260 +#: stock/models.py:1267 #, python-brace-format msgid "Serial numbers already exist: {exists}" msgstr "" -#: stock/models.py:1330 +#: stock/models.py:1337 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1333 +#: stock/models.py:1340 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1336 +#: stock/models.py:1343 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1339 +#: stock/models.py:1346 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1342 +#: stock/models.py:1349 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1345 +#: stock/models.py:1352 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1352 stock/serializers.py:959 +#: stock/models.py:1359 stock/serializers.py:961 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1356 +#: stock/models.py:1363 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1360 +#: stock/models.py:1367 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1364 +#: stock/models.py:1371 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:1533 +#: stock/models.py:1540 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:1994 +#: stock/models.py:2001 msgid "Entry notes" msgstr "" -#: stock/models.py:2052 +#: stock/models.py:2059 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2058 +#: stock/models.py:2065 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2077 +#: stock/models.py:2084 msgid "Test name" msgstr "" -#: stock/models.py:2083 +#: stock/models.py:2090 msgid "Test result" msgstr "" -#: stock/models.py:2089 +#: stock/models.py:2096 msgid "Test output value" msgstr "" -#: stock/models.py:2096 +#: stock/models.py:2103 msgid "Test result attachment" msgstr "" -#: stock/models.py:2102 +#: stock/models.py:2109 msgid "Test notes" msgstr "" @@ -6172,7 +6212,7 @@ msgstr "" msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:323 stock/serializers.py:916 stock/serializers.py:1149 +#: stock/serializers.py:323 stock/serializers.py:918 stock/serializers.py:1151 msgid "Destination stock location" msgstr "" @@ -6220,63 +6260,63 @@ msgstr "" msgid "Destination location for returned item" msgstr "" -#: stock/serializers.py:771 +#: stock/serializers.py:773 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:775 +#: stock/serializers.py:777 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:779 +#: stock/serializers.py:781 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:810 +#: stock/serializers.py:812 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:816 +#: stock/serializers.py:818 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:824 +#: stock/serializers.py:826 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:834 stock/serializers.py:1065 +#: stock/serializers.py:836 stock/serializers.py:1067 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:923 +#: stock/serializers.py:925 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:928 +#: stock/serializers.py:930 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:929 +#: stock/serializers.py:931 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:934 +#: stock/serializers.py:936 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:935 +#: stock/serializers.py:937 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:945 +#: stock/serializers.py:947 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1027 +#: stock/serializers.py:1029 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1055 +#: stock/serializers.py:1057 msgid "Stock transaction notes" msgstr "" @@ -6313,7 +6353,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2852 +#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2861 msgid "Install Stock Item" msgstr "" @@ -6321,7 +6361,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1518 +#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1522 msgid "Add Test Result" msgstr "" @@ -6352,7 +6392,7 @@ msgid "Stock adjustment actions" msgstr "" #: stock/templates/stock/item_base.html:80 -#: stock/templates/stock/location.html:63 templates/stock_table.html:47 +#: stock/templates/stock/location.html:68 templates/stock_table.html:47 msgid "Count stock" msgstr "" @@ -6369,7 +6409,7 @@ msgid "Serialize stock" msgstr "" #: stock/templates/stock/item_base.html:93 -#: stock/templates/stock/location.html:69 templates/stock_table.html:48 +#: stock/templates/stock/location.html:74 templates/stock_table.html:48 msgid "Transfer stock" msgstr "" @@ -6430,7 +6470,7 @@ msgid "You are not in the list of owners of this item. This stock item cannot be msgstr "" #: stock/templates/stock/item_base.html:257 -#: stock/templates/stock/location.html:127 +#: stock/templates/stock/location.html:132 msgid "Read only" msgstr "" @@ -6508,7 +6548,7 @@ msgid "Stale" msgstr "" #: stock/templates/stock/item_base.html:442 -#: templates/js/translated/company.js:985 templates/js/translated/stock.js:1895 +#: templates/js/translated/company.js:985 templates/js/translated/stock.js:1899 msgid "Last Updated" msgstr "" @@ -6552,58 +6592,58 @@ msgstr "" msgid "Select quantity to serialize, and unique serial numbers." msgstr "" -#: stock/templates/stock/location.html:33 +#: stock/templates/stock/location.html:38 msgid "Locate stock location" msgstr "" -#: stock/templates/stock/location.html:49 +#: stock/templates/stock/location.html:54 msgid "Check-in Items" msgstr "" -#: stock/templates/stock/location.html:77 +#: stock/templates/stock/location.html:82 msgid "Location actions" msgstr "" -#: stock/templates/stock/location.html:79 +#: stock/templates/stock/location.html:84 msgid "Edit location" msgstr "" -#: stock/templates/stock/location.html:81 +#: stock/templates/stock/location.html:86 msgid "Delete location" msgstr "" -#: stock/templates/stock/location.html:90 +#: stock/templates/stock/location.html:95 msgid "Create new stock location" msgstr "" -#: stock/templates/stock/location.html:91 +#: stock/templates/stock/location.html:96 msgid "New Location" msgstr "" -#: stock/templates/stock/location.html:109 -#: stock/templates/stock/location.html:115 +#: stock/templates/stock/location.html:114 +#: stock/templates/stock/location.html:120 msgid "Location Path" msgstr "" -#: stock/templates/stock/location.html:116 +#: stock/templates/stock/location.html:121 msgid "Top level stock location" msgstr "" -#: stock/templates/stock/location.html:122 +#: stock/templates/stock/location.html:127 msgid "Location Owner" msgstr "" -#: stock/templates/stock/location.html:126 +#: stock/templates/stock/location.html:131 msgid "You are not in the list of owners of this location. This stock location cannot be edited." msgstr "" -#: stock/templates/stock/location.html:142 -#: stock/templates/stock/location.html:189 +#: stock/templates/stock/location.html:147 +#: stock/templates/stock/location.html:194 #: stock/templates/stock/location_sidebar.html:5 msgid "Sublocations" msgstr "" -#: stock/templates/stock/location.html:156 templates/InvenTree/search.html:165 +#: stock/templates/stock/location.html:161 templates/InvenTree/search.html:165 #: templates/js/translated/search.js:238 users/models.py:39 msgid "Stock Locations" msgstr "" @@ -6875,15 +6915,15 @@ msgstr "" msgid "Part Settings" msgstr "" -#: templates/InvenTree/settings/part.html:44 +#: templates/InvenTree/settings/part.html:46 msgid "Part Import" msgstr "" -#: templates/InvenTree/settings/part.html:48 +#: templates/InvenTree/settings/part.html:50 msgid "Import Part" msgstr "" -#: templates/InvenTree/settings/part.html:62 +#: templates/InvenTree/settings/part.html:64 msgid "Part Parameter Templates" msgstr "" @@ -6895,47 +6935,47 @@ msgstr "" msgid "Changing the settings below require you to immediately restart the server. Do not change this while under active usage." msgstr "" -#: templates/InvenTree/settings/plugin.html:34 +#: templates/InvenTree/settings/plugin.html:36 msgid "Plugins" msgstr "" -#: templates/InvenTree/settings/plugin.html:39 +#: templates/InvenTree/settings/plugin.html:41 #: templates/js/translated/plugin.js:16 msgid "Install Plugin" msgstr "" -#: templates/InvenTree/settings/plugin.html:48 templates/navbar.html:137 +#: templates/InvenTree/settings/plugin.html:50 templates/navbar.html:137 #: users/models.py:36 msgid "Admin" msgstr "" -#: templates/InvenTree/settings/plugin.html:50 +#: templates/InvenTree/settings/plugin.html:52 #: templates/InvenTree/settings/plugin_settings.html:28 msgid "Author" msgstr "" -#: templates/InvenTree/settings/plugin.html:52 +#: templates/InvenTree/settings/plugin.html:54 #: templates/InvenTree/settings/plugin_settings.html:43 msgid "Version" msgstr "" -#: templates/InvenTree/settings/plugin.html:74 +#: templates/InvenTree/settings/plugin.html:76 msgid "Sample" msgstr "" -#: templates/InvenTree/settings/plugin.html:99 +#: templates/InvenTree/settings/plugin.html:101 msgid "Inactive plugins" msgstr "" -#: templates/InvenTree/settings/plugin.html:122 +#: templates/InvenTree/settings/plugin.html:124 msgid "Plugin Error Stack" msgstr "" -#: templates/InvenTree/settings/plugin.html:131 +#: templates/InvenTree/settings/plugin.html:133 msgid "Stage" msgstr "" -#: templates/InvenTree/settings/plugin.html:133 +#: templates/InvenTree/settings/plugin.html:135 #: templates/js/translated/notification.js:75 msgid "Message" msgstr "" @@ -6999,11 +7039,11 @@ msgstr "" msgid "Commit Message" msgstr "" -#: templates/InvenTree/settings/plugin_settings.html:117 +#: templates/InvenTree/settings/plugin_settings.html:120 msgid "Sign Status" msgstr "" -#: templates/InvenTree/settings/plugin_settings.html:122 +#: templates/InvenTree/settings/plugin_settings.html:125 msgid "Sign Key" msgstr "" @@ -7828,7 +7868,7 @@ msgstr "" msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:456 templates/js/translated/stock.js:1050 +#: templates/js/translated/barcode.js:456 templates/js/translated/stock.js:1054 msgid "Remove stock item" msgstr "" @@ -8001,7 +8041,7 @@ msgid "Includes variant and substitute stock" msgstr "" #: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822 -#: templates/js/translated/part.js:759 +#: templates/js/translated/part.js:763 msgid "Includes variant stock" msgstr "" @@ -8098,12 +8138,12 @@ msgid "Complete Build Order" msgstr "" #: templates/js/translated/build.js:263 templates/js/translated/stock.js:92 -#: templates/js/translated/stock.js:210 +#: templates/js/translated/stock.js:214 msgid "Next available serial number" msgstr "" #: templates/js/translated/build.js:265 templates/js/translated/stock.js:94 -#: templates/js/translated/stock.js:212 +#: templates/js/translated/stock.js:216 msgid "Latest serial number" msgstr "" @@ -8316,9 +8356,9 @@ msgstr "" msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1383 -#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1682 -#: templates/js/translated/stock.js:2382 +#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387 +#: templates/js/translated/part.js:1899 templates/js/translated/stock.js:1686 +#: templates/js/translated/stock.js:2386 msgid "Select" msgstr "" @@ -8330,7 +8370,7 @@ msgstr "" msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2638 +#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647 msgid "No user information" msgstr "" @@ -8403,34 +8443,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:616 -#: templates/js/translated/company.js:876 templates/js/translated/part.js:634 -#: templates/js/translated/part.js:719 +#: templates/js/translated/company.js:876 templates/js/translated/part.js:638 +#: templates/js/translated/part.js:723 msgid "Template part" msgstr "" #: templates/js/translated/company.js:620 -#: templates/js/translated/company.js:880 templates/js/translated/part.js:638 -#: templates/js/translated/part.js:723 +#: templates/js/translated/company.js:880 templates/js/translated/part.js:642 +#: templates/js/translated/part.js:727 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:748 templates/js/translated/part.js:826 +#: templates/js/translated/company.js:748 templates/js/translated/part.js:830 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:785 templates/js/translated/part.js:868 +#: templates/js/translated/company.js:785 templates/js/translated/part.js:872 msgid "Edit parameter" msgstr "" -#: templates/js/translated/company.js:786 templates/js/translated/part.js:869 +#: templates/js/translated/company.js:786 templates/js/translated/part.js:873 msgid "Delete parameter" msgstr "" -#: templates/js/translated/company.js:805 templates/js/translated/part.js:886 +#: templates/js/translated/company.js:805 templates/js/translated/part.js:890 msgid "Edit Parameter" msgstr "" -#: templates/js/translated/company.js:816 templates/js/translated/part.js:898 +#: templates/js/translated/company.js:816 templates/js/translated/part.js:902 msgid "Delete Parameter" msgstr "" @@ -8555,7 +8595,7 @@ msgid "Labels sent to printer" msgstr "" #: templates/js/translated/label.js:60 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1078 msgid "Select Stock Items" msgstr "" @@ -8865,7 +8905,7 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2140 +#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144 msgid "Stock Status" msgstr "" @@ -8889,7 +8929,7 @@ msgstr "" msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:1672 templates/js/translated/part.js:939 +#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943 msgid "No purchase orders found" msgstr "" @@ -8924,7 +8964,7 @@ msgstr "" #: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203 #: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050 -#: templates/js/translated/part.js:2126 templates/js/translated/part.js:2479 +#: templates/js/translated/part.js:2135 templates/js/translated/part.js:2488 msgid "Unit Price" msgstr "" @@ -8934,11 +8974,11 @@ msgid "Total Price" msgstr "" #: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600 -#: templates/js/translated/part.js:1046 +#: templates/js/translated/part.js:1050 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1092 +#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096 msgid "Receive line item" msgstr "" @@ -9059,7 +9099,7 @@ msgid "Delete Stock Allocation" msgstr "" #: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398 -#: templates/js/translated/stock.js:1598 +#: templates/js/translated/stock.js:1602 msgid "Shipped to customer" msgstr "" @@ -9183,241 +9223,245 @@ msgstr "" msgid "Parent part category" msgstr "" -#: templates/js/translated/part.js:318 +#: templates/js/translated/part.js:306 templates/js/translated/stock.js:118 +msgid "Icon (optional) - Explore all available icons on" +msgstr "" + +#: templates/js/translated/part.js:322 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:331 +#: templates/js/translated/part.js:335 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:333 +#: templates/js/translated/part.js:337 msgid "Any child categories will be moved to the parent of this category" msgstr "" -#: templates/js/translated/part.js:334 +#: templates/js/translated/part.js:338 msgid "Any parts in this category will be moved to the parent of this category" msgstr "" -#: templates/js/translated/part.js:339 +#: templates/js/translated/part.js:343 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:365 +#: templates/js/translated/part.js:369 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:367 +#: templates/js/translated/part.js:371 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:378 +#: templates/js/translated/part.js:382 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:430 +#: templates/js/translated/part.js:434 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:431 +#: templates/js/translated/part.js:435 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:445 +#: templates/js/translated/part.js:449 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:447 +#: templates/js/translated/part.js:451 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:448 +#: templates/js/translated/part.js:452 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:449 +#: templates/js/translated/part.js:453 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:456 +#: templates/js/translated/part.js:460 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:492 +#: templates/js/translated/part.js:496 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:494 +#: templates/js/translated/part.js:498 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:499 +#: templates/js/translated/part.js:503 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:501 +#: templates/js/translated/part.js:505 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:518 +#: templates/js/translated/part.js:522 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:528 +#: templates/js/translated/part.js:532 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:531 +#: templates/js/translated/part.js:535 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:556 +#: templates/js/translated/part.js:560 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:582 templates/js/translated/part.js:1466 +#: templates/js/translated/part.js:586 templates/js/translated/part.js:1470 #: templates/js/translated/table_filters.js:468 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:592 templates/js/translated/part.js:1478 +#: templates/js/translated/part.js:596 templates/js/translated/part.js:1482 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:626 templates/js/translated/part.js:711 +#: templates/js/translated/part.js:630 templates/js/translated/part.js:715 msgid "Trackable part" msgstr "" -#: templates/js/translated/part.js:630 templates/js/translated/part.js:715 +#: templates/js/translated/part.js:634 templates/js/translated/part.js:719 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:642 +#: templates/js/translated/part.js:646 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:646 +#: templates/js/translated/part.js:650 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:774 +#: templates/js/translated/part.js:778 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1162 +#: templates/js/translated/part.js:1166 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1186 +#: templates/js/translated/part.js:1190 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:1253 templates/js/translated/part.js:1549 +#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1553 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:1292 +#: templates/js/translated/part.js:1296 msgid "Not available" msgstr "" -#: templates/js/translated/part.js:1443 +#: templates/js/translated/part.js:1447 msgid "No category" msgstr "" -#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816 -#: templates/js/translated/stock.js:2343 +#: templates/js/translated/part.js:1577 templates/js/translated/part.js:1820 +#: templates/js/translated/stock.js:2347 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:1589 +#: templates/js/translated/part.js:1593 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:1655 +#: templates/js/translated/part.js:1659 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:1660 +#: templates/js/translated/part.js:1664 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:1665 +#: templates/js/translated/part.js:1669 msgid "Select Part Category" msgstr "" -#: templates/js/translated/part.js:1678 +#: templates/js/translated/part.js:1682 msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2362 +#: templates/js/translated/part.js:1839 templates/js/translated/stock.js:2366 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:1914 +#: templates/js/translated/part.js:1918 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:1925 +#: templates/js/translated/part.js:1934 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:1983 +#: templates/js/translated/part.js:1992 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2034 templates/js/translated/stock.js:1295 +#: templates/js/translated/part.js:2043 templates/js/translated/stock.js:1299 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:2035 templates/js/translated/stock.js:1296 -#: templates/js/translated/stock.js:1556 +#: templates/js/translated/part.js:2044 templates/js/translated/stock.js:1300 +#: templates/js/translated/stock.js:1560 msgid "Delete test result" msgstr "" -#: templates/js/translated/part.js:2041 +#: templates/js/translated/part.js:2050 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2063 +#: templates/js/translated/part.js:2072 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2077 +#: templates/js/translated/part.js:2086 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2102 +#: templates/js/translated/part.js:2111 #, python-brace-format msgid "No ${human_name} information found" msgstr "" -#: templates/js/translated/part.js:2159 +#: templates/js/translated/part.js:2168 #, python-brace-format msgid "Edit ${human_name}" msgstr "" -#: templates/js/translated/part.js:2160 +#: templates/js/translated/part.js:2169 #, python-brace-format msgid "Delete ${human_name}" msgstr "" -#: templates/js/translated/part.js:2274 +#: templates/js/translated/part.js:2283 msgid "Current Stock" msgstr "" -#: templates/js/translated/part.js:2307 +#: templates/js/translated/part.js:2316 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2333 +#: templates/js/translated/part.js:2342 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2403 +#: templates/js/translated/part.js:2412 msgid "Single Price" msgstr "" -#: templates/js/translated/part.js:2422 +#: templates/js/translated/part.js:2431 msgid "Single Price Difference" msgstr "" @@ -9511,376 +9555,376 @@ msgstr "" msgid "Parent stock location" msgstr "" -#: templates/js/translated/stock.js:140 +#: templates/js/translated/stock.js:144 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:155 +#: templates/js/translated/stock.js:159 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:169 +#: templates/js/translated/stock.js:173 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:171 +#: templates/js/translated/stock.js:175 msgid "Any child locations will be moved to the parent of this location" msgstr "" -#: templates/js/translated/stock.js:172 +#: templates/js/translated/stock.js:176 msgid "Any stock items in this location will be moved to the parent of this location" msgstr "" -#: templates/js/translated/stock.js:178 +#: templates/js/translated/stock.js:182 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:223 +#: templates/js/translated/stock.js:227 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:262 +#: templates/js/translated/stock.js:266 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:268 +#: templates/js/translated/stock.js:272 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:333 +#: templates/js/translated/stock.js:337 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:353 +#: templates/js/translated/stock.js:357 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:369 +#: templates/js/translated/stock.js:373 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:374 +#: templates/js/translated/stock.js:378 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:395 +#: templates/js/translated/stock.js:399 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:445 +#: templates/js/translated/stock.js:449 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:458 +#: templates/js/translated/stock.js:462 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:483 +#: templates/js/translated/stock.js:487 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:487 templates/js/translated/stock.js:488 +#: templates/js/translated/stock.js:491 templates/js/translated/stock.js:492 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:504 +#: templates/js/translated/stock.js:508 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:524 +#: templates/js/translated/stock.js:528 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:533 +#: templates/js/translated/stock.js:537 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:656 +#: templates/js/translated/stock.js:660 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:657 +#: templates/js/translated/stock.js:661 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:734 +#: templates/js/translated/stock.js:738 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:735 +#: templates/js/translated/stock.js:739 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:737 +#: templates/js/translated/stock.js:741 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:738 +#: templates/js/translated/stock.js:742 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:824 +#: templates/js/translated/stock.js:828 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:825 +#: templates/js/translated/stock.js:829 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:920 +#: templates/js/translated/stock.js:924 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:921 +#: templates/js/translated/stock.js:925 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:927 +#: templates/js/translated/stock.js:931 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:928 +#: templates/js/translated/stock.js:932 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:932 +#: templates/js/translated/stock.js:936 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:933 +#: templates/js/translated/stock.js:937 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:937 +#: templates/js/translated/stock.js:941 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:938 users/models.py:216 +#: templates/js/translated/stock.js:942 users/models.py:216 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:942 +#: templates/js/translated/stock.js:946 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1035 +#: templates/js/translated/stock.js:1039 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1035 +#: templates/js/translated/stock.js:1039 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1075 +#: templates/js/translated/stock.js:1079 msgid "You must select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1098 +#: templates/js/translated/stock.js:1102 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1234 +#: templates/js/translated/stock.js:1238 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1236 +#: templates/js/translated/stock.js:1240 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1241 +#: templates/js/translated/stock.js:1245 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1288 +#: templates/js/translated/stock.js:1292 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1291 +#: templates/js/translated/stock.js:1295 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1317 +#: templates/js/translated/stock.js:1321 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1374 +#: templates/js/translated/stock.js:1378 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1539 +#: templates/js/translated/stock.js:1543 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1561 +#: templates/js/translated/stock.js:1565 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1590 +#: templates/js/translated/stock.js:1594 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1594 +#: templates/js/translated/stock.js:1598 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1602 +#: templates/js/translated/stock.js:1606 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1608 +#: templates/js/translated/stock.js:1612 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1775 +#: templates/js/translated/stock.js:1779 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:1780 +#: templates/js/translated/stock.js:1784 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:1783 +#: templates/js/translated/stock.js:1787 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:1786 +#: templates/js/translated/stock.js:1790 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:1788 +#: templates/js/translated/stock.js:1792 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:1790 +#: templates/js/translated/stock.js:1794 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:1793 +#: templates/js/translated/stock.js:1797 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:1797 +#: templates/js/translated/stock.js:1801 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:1799 +#: templates/js/translated/stock.js:1803 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:1806 +#: templates/js/translated/stock.js:1810 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:1808 +#: templates/js/translated/stock.js:1812 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:1810 +#: templates/js/translated/stock.js:1814 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:1814 +#: templates/js/translated/stock.js:1818 #: templates/js/translated/table_filters.js:196 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:1865 +#: templates/js/translated/stock.js:1869 msgid "Stocktake" msgstr "" -#: templates/js/translated/stock.js:1944 +#: templates/js/translated/stock.js:1948 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:1982 +#: templates/js/translated/stock.js:1986 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2155 +#: templates/js/translated/stock.js:2159 msgid "Set Stock Status" msgstr "" -#: templates/js/translated/stock.js:2169 +#: templates/js/translated/stock.js:2173 msgid "Select Status Code" msgstr "" -#: templates/js/translated/stock.js:2170 +#: templates/js/translated/stock.js:2174 msgid "Status code must be selected" msgstr "" -#: templates/js/translated/stock.js:2400 +#: templates/js/translated/stock.js:2404 msgid "Load Subloactions" msgstr "" -#: templates/js/translated/stock.js:2484 +#: templates/js/translated/stock.js:2493 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2500 +#: templates/js/translated/stock.js:2509 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2522 +#: templates/js/translated/stock.js:2531 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2541 +#: templates/js/translated/stock.js:2550 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2560 +#: templates/js/translated/stock.js:2569 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2578 +#: templates/js/translated/stock.js:2587 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:2601 +#: templates/js/translated/stock.js:2610 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:2609 +#: templates/js/translated/stock.js:2618 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:2685 +#: templates/js/translated/stock.js:2694 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:2736 templates/js/translated/stock.js:2772 +#: templates/js/translated/stock.js:2745 templates/js/translated/stock.js:2781 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:2785 +#: templates/js/translated/stock.js:2794 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:2806 +#: templates/js/translated/stock.js:2815 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:2807 +#: templates/js/translated/stock.js:2816 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:2809 +#: templates/js/translated/stock.js:2818 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:2810 +#: templates/js/translated/stock.js:2819 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:2811 +#: templates/js/translated/stock.js:2820 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:2812 +#: templates/js/translated/stock.js:2821 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:2825 +#: templates/js/translated/stock.js:2834 msgid "Select part to install" msgstr "" diff --git a/InvenTree/locale/en/LC_MESSAGES/django.po b/InvenTree/locale/en/LC_MESSAGES/django.po index c606e14f18..4e340ab2d7 100644 --- a/InvenTree/locale/en/LC_MESSAGES/django.po +++ b/InvenTree/locale/en/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-11 02:47+0000\n" +"POT-Creation-Date: 2022-08-15 13:12+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -164,6 +164,10 @@ msgstr "" msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "" +#: InvenTree/mixins.py:71 +msgid "Remove HTML tags from this value" +msgstr "" + #: InvenTree/models.py:236 msgid "Improperly formatted pattern" msgstr "" @@ -399,99 +403,99 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/settings.py:609 +#: InvenTree/settings.py:607 msgid "Czech" msgstr "" -#: InvenTree/settings.py:610 +#: InvenTree/settings.py:608 msgid "German" msgstr "" -#: InvenTree/settings.py:611 +#: InvenTree/settings.py:609 msgid "Greek" msgstr "" -#: InvenTree/settings.py:612 +#: InvenTree/settings.py:610 msgid "English" msgstr "" -#: InvenTree/settings.py:613 +#: InvenTree/settings.py:611 msgid "Spanish" msgstr "" -#: InvenTree/settings.py:614 +#: InvenTree/settings.py:612 msgid "Spanish (Mexican)" msgstr "" -#: InvenTree/settings.py:615 +#: InvenTree/settings.py:613 msgid "Farsi / Persian" msgstr "" -#: InvenTree/settings.py:616 +#: InvenTree/settings.py:614 msgid "French" msgstr "" -#: InvenTree/settings.py:617 +#: InvenTree/settings.py:615 msgid "Hebrew" msgstr "" -#: InvenTree/settings.py:618 +#: InvenTree/settings.py:616 msgid "Hungarian" msgstr "" -#: InvenTree/settings.py:619 +#: InvenTree/settings.py:617 msgid "Italian" msgstr "" -#: InvenTree/settings.py:620 +#: InvenTree/settings.py:618 msgid "Japanese" msgstr "" -#: InvenTree/settings.py:621 +#: InvenTree/settings.py:619 msgid "Korean" msgstr "" -#: InvenTree/settings.py:622 +#: InvenTree/settings.py:620 msgid "Dutch" msgstr "" -#: InvenTree/settings.py:623 +#: InvenTree/settings.py:621 msgid "Norwegian" msgstr "" -#: InvenTree/settings.py:624 +#: InvenTree/settings.py:622 msgid "Polish" msgstr "" -#: InvenTree/settings.py:625 +#: InvenTree/settings.py:623 msgid "Portuguese" msgstr "" -#: InvenTree/settings.py:626 +#: InvenTree/settings.py:624 msgid "Portuguese (Brazilian)" msgstr "" -#: InvenTree/settings.py:627 +#: InvenTree/settings.py:625 msgid "Russian" msgstr "" -#: InvenTree/settings.py:628 +#: InvenTree/settings.py:626 msgid "Swedish" msgstr "" -#: InvenTree/settings.py:629 +#: InvenTree/settings.py:627 msgid "Thai" msgstr "" -#: InvenTree/settings.py:630 +#: InvenTree/settings.py:628 msgid "Turkish" msgstr "" -#: InvenTree/settings.py:631 +#: InvenTree/settings.py:629 msgid "Vietnamese" msgstr "" -#: InvenTree/settings.py:632 +#: InvenTree/settings.py:630 msgid "Chinese" msgstr "" @@ -5747,12 +5751,12 @@ msgstr "" msgid "No valid objects provided to template" msgstr "" -#: report/api.py:216 report/api.py:257 +#: report/api.py:216 report/api.py:252 #, python-brace-format msgid "Template file '{template}' is missing or does not exist" msgstr "" -#: report/api.py:360 +#: report/api.py:355 msgid "Test report" msgstr "" diff --git a/InvenTree/locale/es/LC_MESSAGES/django.po b/InvenTree/locale/es/LC_MESSAGES/django.po index 3cf74169cb..59f6425738 100644 --- a/InvenTree/locale/es/LC_MESSAGES/django.po +++ b/InvenTree/locale/es/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-11 02:47+0000\n" -"PO-Revision-Date: 2022-08-11 13:49\n" +"POT-Creation-Date: 2022-08-16 11:53+0000\n" +"PO-Revision-Date: 2022-08-16 21:35\n" "Last-Translator: \n" "Language-Team: Spanish\n" "Language: es_ES\n" @@ -36,15 +36,15 @@ msgstr "" #: order/templates/order/so_sidebar.html:17 #: part/templates/part/part_sidebar.html:59 #: report/templates/report/inventree_build_order_base.html:172 -#: stock/models.py:1993 stock/models.py:2101 stock/serializers.py:329 -#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:823 -#: stock/serializers.py:922 stock/serializers.py:1054 +#: stock/models.py:2000 stock/models.py:2108 stock/serializers.py:329 +#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825 +#: stock/serializers.py:924 stock/serializers.py:1056 #: stock/templates/stock/stock_sidebar.html:25 #: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101 #: templates/js/translated/company.js:964 templates/js/translated/order.js:2104 #: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753 #: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102 -#: templates/js/translated/stock.js:1370 templates/js/translated/stock.js:1976 +#: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980 msgid "Notes" msgstr "" @@ -163,6 +163,10 @@ msgstr "" msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "" +#: InvenTree/mixins.py:71 +msgid "Remove HTML tags from this value" +msgstr "" + #: InvenTree/models.py:236 msgid "Improperly formatted pattern" msgstr "" @@ -195,7 +199,7 @@ msgstr "" msgid "Missing external link" msgstr "" -#: InvenTree/models.py:395 stock/models.py:2095 +#: InvenTree/models.py:395 stock/models.py:2102 #: templates/js/translated/attachment.js:103 #: templates/js/translated/attachment.js:241 msgid "Attachment" @@ -207,16 +211,16 @@ msgstr "" #: InvenTree/models.py:402 company/models.py:124 company/models.py:276 #: company/models.py:510 order/models.py:84 order/models.py:1245 -#: part/models.py:795 +#: part/models.py:802 #: report/templates/report/inventree_build_order_base.html:164 #: templates/js/translated/company.js:656 #: templates/js/translated/company.js:948 templates/js/translated/order.js:2742 -#: templates/js/translated/part.js:1510 +#: templates/js/translated/part.js:1514 msgid "Link" msgstr "" -#: InvenTree/models.py:403 build/models.py:296 part/models.py:796 -#: stock/models.py:651 +#: InvenTree/models.py:403 build/models.py:296 part/models.py:803 +#: stock/models.py:658 msgid "Link to external URL" msgstr "" @@ -229,12 +233,12 @@ msgstr "" msgid "File comment" msgstr "" -#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1646 -#: common/models.py:1647 common/models.py:1870 common/models.py:1871 -#: common/models.py:2133 common/models.py:2134 part/models.py:2193 -#: part/models.py:2213 plugin/models.py:238 plugin/models.py:239 +#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665 +#: common/models.py:1666 common/models.py:1889 common/models.py:1890 +#: common/models.py:2152 common/models.py:2153 part/models.py:2200 +#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2632 +#: templates/js/translated/stock.js:2641 msgid "User" msgstr "" @@ -271,19 +275,19 @@ msgstr "" msgid "Invalid choice" msgstr "" -#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1856 -#: company/models.py:358 label/models.py:101 part/models.py:739 -#: part/models.py:2371 plugin/models.py:93 report/models.py:152 +#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875 +#: company/models.py:358 label/models.py:101 part/models.py:746 +#: part/models.py:2378 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 -#: templates/InvenTree/settings/plugin.html:49 -#: templates/InvenTree/settings/plugin.html:132 +#: templates/InvenTree/settings/plugin.html:51 +#: templates/InvenTree/settings/plugin.html:134 #: templates/InvenTree/settings/plugin_settings.html:23 #: templates/InvenTree/settings/settings.html:347 #: templates/js/translated/company.js:545 #: templates/js/translated/company.js:758 #: templates/js/translated/notification.js:71 -#: templates/js/translated/part.js:684 templates/js/translated/part.js:836 -#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2388 +#: templates/js/translated/part.js:688 templates/js/translated/part.js:840 +#: templates/js/translated/part.js:1906 templates/js/translated/stock.js:2392 msgid "Name" msgstr "" @@ -292,21 +296,21 @@ msgstr "" #: company/models.py:516 company/templates/company/company_base.html:71 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:87 label/models.py:108 -#: order/models.py:82 part/models.py:762 part/templates/part/category.html:74 +#: order/models.py:82 part/models.py:769 part/templates/part/category.html:80 #: part/templates/part/part_base.html:167 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 -#: stock/templates/stock/location.html:103 +#: stock/templates/stock/location.html:108 #: templates/InvenTree/settings/plugin_settings.html:33 #: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848 #: templates/js/translated/build.js:2471 templates/js/translated/company.js:409 #: templates/js/translated/company.js:667 #: templates/js/translated/company.js:959 templates/js/translated/order.js:1720 #: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531 -#: templates/js/translated/part.js:743 templates/js/translated/part.js:1149 -#: templates/js/translated/part.js:1424 templates/js/translated/part.js:1933 -#: templates/js/translated/part.js:2002 templates/js/translated/stock.js:1739 -#: templates/js/translated/stock.js:2415 templates/js/translated/stock.js:2469 +#: templates/js/translated/part.js:747 templates/js/translated/part.js:1153 +#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1942 +#: templates/js/translated/part.js:2011 templates/js/translated/stock.js:1743 +#: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478 msgid "Description" msgstr "" @@ -319,7 +323,7 @@ msgid "parent" msgstr "" #: InvenTree/models.py:560 InvenTree/models.py:561 -#: templates/js/translated/part.js:1939 templates/js/translated/stock.js:2421 +#: templates/js/translated/part.js:1948 templates/js/translated/stock.js:2430 msgid "Path" msgstr "" @@ -331,7 +335,7 @@ msgstr "" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:55 part/models.py:2692 +#: InvenTree/serializers.py:55 part/models.py:2699 msgid "Must be a valid number" msgstr "" @@ -398,99 +402,99 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/settings.py:609 +#: InvenTree/settings.py:607 msgid "Czech" msgstr "" -#: InvenTree/settings.py:610 +#: InvenTree/settings.py:608 msgid "German" msgstr "" -#: InvenTree/settings.py:611 +#: InvenTree/settings.py:609 msgid "Greek" msgstr "" -#: InvenTree/settings.py:612 +#: InvenTree/settings.py:610 msgid "English" msgstr "" -#: InvenTree/settings.py:613 +#: InvenTree/settings.py:611 msgid "Spanish" msgstr "" -#: InvenTree/settings.py:614 +#: InvenTree/settings.py:612 msgid "Spanish (Mexican)" msgstr "" -#: InvenTree/settings.py:615 +#: InvenTree/settings.py:613 msgid "Farsi / Persian" msgstr "" -#: InvenTree/settings.py:616 +#: InvenTree/settings.py:614 msgid "French" msgstr "" -#: InvenTree/settings.py:617 +#: InvenTree/settings.py:615 msgid "Hebrew" msgstr "" -#: InvenTree/settings.py:618 +#: InvenTree/settings.py:616 msgid "Hungarian" msgstr "" -#: InvenTree/settings.py:619 +#: InvenTree/settings.py:617 msgid "Italian" msgstr "" -#: InvenTree/settings.py:620 +#: InvenTree/settings.py:618 msgid "Japanese" msgstr "" -#: InvenTree/settings.py:621 +#: InvenTree/settings.py:619 msgid "Korean" msgstr "" -#: InvenTree/settings.py:622 +#: InvenTree/settings.py:620 msgid "Dutch" msgstr "" -#: InvenTree/settings.py:623 +#: InvenTree/settings.py:621 msgid "Norwegian" msgstr "" -#: InvenTree/settings.py:624 +#: InvenTree/settings.py:622 msgid "Polish" msgstr "" -#: InvenTree/settings.py:625 +#: InvenTree/settings.py:623 msgid "Portuguese" msgstr "" -#: InvenTree/settings.py:626 +#: InvenTree/settings.py:624 msgid "Portuguese (Brazilian)" msgstr "" -#: InvenTree/settings.py:627 +#: InvenTree/settings.py:625 msgid "Russian" msgstr "" -#: InvenTree/settings.py:628 +#: InvenTree/settings.py:626 msgid "Swedish" msgstr "" -#: InvenTree/settings.py:629 +#: InvenTree/settings.py:627 msgid "Thai" msgstr "" -#: InvenTree/settings.py:630 +#: InvenTree/settings.py:628 msgid "Turkish" msgstr "" -#: InvenTree/settings.py:631 +#: InvenTree/settings.py:629 msgid "Vietnamese" msgstr "" -#: InvenTree/settings.py:632 +#: InvenTree/settings.py:630 msgid "Chinese" msgstr "" @@ -621,7 +625,7 @@ msgstr "" msgid "Split child item" msgstr "" -#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2080 +#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2084 msgid "Merged stock items" msgstr "" @@ -743,7 +747,7 @@ msgid "Build Order Reference" msgstr "" #: build/models.py:166 order/models.py:240 order/models.py:623 -#: order/models.py:904 part/models.py:2610 +#: order/models.py:904 part/models.py:2617 #: part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 @@ -770,10 +774,10 @@ msgstr "" #: build/models.py:191 build/templates/build/build_base.html:77 #: build/templates/build/detail.html:29 company/models.py:670 #: order/models.py:1001 order/models.py:1112 order/models.py:1113 -#: part/models.py:336 part/models.py:2139 part/models.py:2154 -#: part/models.py:2173 part/models.py:2191 part/models.py:2290 -#: part/models.py:2410 part/models.py:2500 part/models.py:2585 -#: part/models.py:2861 part/serializers.py:811 +#: part/models.py:343 part/models.py:2146 part/models.py:2161 +#: part/models.py:2180 part/models.py:2198 part/models.py:2297 +#: part/models.py:2417 part/models.py:2507 part/models.py:2592 +#: part/models.py:2868 part/serializers.py:813 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -796,11 +800,11 @@ msgstr "" #: templates/js/translated/order.js:934 templates/js/translated/order.js:1387 #: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885 #: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507 -#: templates/js/translated/part.js:1134 templates/js/translated/part.js:1206 -#: templates/js/translated/part.js:1402 templates/js/translated/stock.js:582 -#: templates/js/translated/stock.js:747 templates/js/translated/stock.js:954 -#: templates/js/translated/stock.js:1696 templates/js/translated/stock.js:2495 -#: templates/js/translated/stock.js:2690 templates/js/translated/stock.js:2824 +#: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210 +#: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586 +#: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958 +#: templates/js/translated/stock.js:1700 templates/js/translated/stock.js:2504 +#: templates/js/translated/stock.js:2699 templates/js/translated/stock.js:2833 msgid "Part" msgstr "" @@ -858,7 +862,7 @@ msgid "Build status code" msgstr "" #: build/models.py:251 build/serializers.py:225 order/serializers.py:447 -#: stock/models.py:655 templates/js/translated/order.js:1247 +#: stock/models.py:662 templates/js/translated/order.js:1247 msgid "Batch Code" msgstr "" @@ -866,7 +870,7 @@ msgstr "" msgid "Batch code for this build output" msgstr "" -#: build/models.py:258 order/models.py:86 part/models.py:931 +#: build/models.py:258 order/models.py:86 part/models.py:938 #: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544 msgid "Creation Date" msgstr "" @@ -899,7 +903,7 @@ msgstr "" #: build/models.py:289 build/templates/build/build_base.html:190 #: build/templates/build/detail.html:115 order/models.py:100 #: order/templates/order/order_base.html:176 -#: order/templates/order/sales_order_base.html:183 part/models.py:935 +#: order/templates/order/sales_order_base.html:183 part/models.py:942 #: report/templates/report/inventree_build_order_base.html:158 #: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754 msgid "Responsible" @@ -912,7 +916,7 @@ msgstr "" #: build/models.py:295 build/templates/build/detail.html:101 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:153 -#: part/templates/part/part_base.html:346 stock/models.py:649 +#: part/templates/part/part_base.html:346 stock/models.py:656 #: stock/templates/stock/item_base.html:205 msgid "External Link" msgstr "" @@ -978,8 +982,8 @@ msgid "Build to allocate parts" msgstr "" #: build/models.py:1345 build/serializers.py:645 order/serializers.py:1015 -#: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 -#: stock/serializers.py:880 stock/templates/stock/item_base.html:10 +#: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:756 +#: stock/serializers.py:882 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:199 #: templates/js/translated/build.js:741 templates/js/translated/build.js:746 @@ -987,8 +991,8 @@ msgstr "" #: templates/js/translated/order.js:104 templates/js/translated/order.js:2886 #: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193 #: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380 -#: templates/js/translated/stock.js:583 templates/js/translated/stock.js:748 -#: templates/js/translated/stock.js:2568 +#: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752 +#: templates/js/translated/stock.js:2577 msgid "Stock Item" msgstr "" @@ -998,11 +1002,11 @@ msgstr "" #: build/models.py:1358 build/serializers.py:193 #: build/templates/build/build_base.html:82 -#: build/templates/build/detail.html:34 common/models.py:1678 +#: build/templates/build/detail.html:34 common/models.py:1697 #: company/templates/company/supplier_part.html:279 order/models.py:897 #: order/models.py:1423 order/serializers.py:1155 #: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40 -#: part/models.py:2601 part/templates/part/detail.html:937 +#: part/models.py:2608 part/templates/part/detail.html:937 #: part/templates/part/detail.html:1023 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 @@ -1025,11 +1029,11 @@ msgstr "" #: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207 #: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386 #: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037 -#: templates/js/translated/part.js:1034 templates/js/translated/part.js:2147 -#: templates/js/translated/part.js:2378 templates/js/translated/part.js:2412 -#: templates/js/translated/part.js:2490 templates/js/translated/stock.js:454 -#: templates/js/translated/stock.js:608 templates/js/translated/stock.js:778 -#: templates/js/translated/stock.js:2617 templates/js/translated/stock.js:2702 +#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2156 +#: templates/js/translated/part.js:2387 templates/js/translated/part.js:2421 +#: templates/js/translated/part.js:2499 templates/js/translated/stock.js:458 +#: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782 +#: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711 msgid "Quantity" msgstr "" @@ -1071,8 +1075,8 @@ msgid "Enter quantity for build output" msgstr "" #: build/serializers.py:208 build/serializers.py:665 order/models.py:318 -#: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 -#: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 +#: order/serializers.py:287 order/serializers.py:442 part/serializers.py:544 +#: part/serializers.py:976 stock/models.py:484 stock/models.py:1251 #: stock/serializers.py:302 msgid "Quantity must be greater than zero" msgstr "" @@ -1087,7 +1091,7 @@ msgstr "" #: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159 #: stock/serializers.py:311 templates/js/translated/order.js:1258 -#: templates/js/translated/stock.js:267 templates/js/translated/stock.js:455 +#: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459 msgid "Serial Numbers" msgstr "" @@ -1113,16 +1117,16 @@ msgstr "" #: build/serializers.py:366 order/serializers.py:428 order/serializers.py:532 #: stock/serializers.py:322 stock/serializers.py:453 stock/serializers.py:534 -#: stock/serializers.py:915 stock/serializers.py:1148 +#: stock/serializers.py:917 stock/serializers.py:1150 #: stock/templates/stock/item_base.html:390 #: templates/js/translated/barcode.js:436 #: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753 #: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285 #: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305 #: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394 -#: templates/js/translated/part.js:181 templates/js/translated/stock.js:584 -#: templates/js/translated/stock.js:749 templates/js/translated/stock.js:956 -#: templates/js/translated/stock.js:1850 templates/js/translated/stock.js:2509 +#: templates/js/translated/part.js:181 templates/js/translated/stock.js:588 +#: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960 +#: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518 msgid "Location" msgstr "" @@ -1135,8 +1139,8 @@ msgstr "" #: order/serializers.py:465 stock/templates/stock/item_base.html:423 #: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505 #: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724 -#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1825 -#: templates/js/translated/stock.js:2586 templates/js/translated/stock.js:2718 +#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829 +#: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727 msgid "Status" msgstr "" @@ -1212,8 +1216,8 @@ msgstr "" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:577 build/serializers.py:622 part/models.py:2719 -#: part/models.py:2853 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726 +#: part/models.py:2860 msgid "BOM Item" msgstr "" @@ -1229,7 +1233,7 @@ msgstr "" msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:651 stock/serializers.py:767 +#: build/serializers.py:651 stock/serializers.py:769 msgid "Item must be in stock" msgstr "" @@ -1367,7 +1371,7 @@ msgstr "" #: report/templates/report/inventree_build_order_base.html:125 #: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741 #: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552 -#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1038 +#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042 msgid "Target Date" msgstr "" @@ -1445,8 +1449,8 @@ msgstr "" #: stock/templates/stock/item_base.html:170 #: templates/js/translated/build.js:1182 #: templates/js/translated/model_renderers.js:124 -#: templates/js/translated/stock.js:1022 templates/js/translated/stock.js:1839 -#: templates/js/translated/stock.js:2725 +#: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843 +#: templates/js/translated/stock.js:2734 #: templates/js/translated/table_filters.js:159 #: templates/js/translated/table_filters.js:250 msgid "Batch" @@ -1506,7 +1510,7 @@ msgstr "" #: build/templates/build/detail.html:187 #: company/templates/company/detail.html:37 #: company/templates/company/detail.html:85 -#: part/templates/part/category.html:177 templates/js/translated/order.js:977 +#: part/templates/part/category.html:183 templates/js/translated/order.js:977 msgid "Order Parts" msgstr "" @@ -1559,12 +1563,12 @@ msgid "Delete outputs" msgstr "" #: build/templates/build/detail.html:267 -#: stock/templates/stock/location.html:197 templates/stock_table.html:27 +#: stock/templates/stock/location.html:202 templates/stock_table.html:27 msgid "Printing Actions" msgstr "" #: build/templates/build/detail.html:271 build/templates/build/detail.html:272 -#: stock/templates/stock/location.html:201 templates/stock_table.html:31 +#: stock/templates/stock/location.html:206 templates/stock_table.html:31 msgid "Print labels" msgstr "" @@ -1841,7 +1845,7 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:951 part/models.py:2412 report/models.py:158 +#: common/models.py:951 part/models.py:2419 report/models.py:158 #: templates/js/translated/table_filters.js:38 #: templates/js/translated/table_filters.js:484 msgid "Template" @@ -1851,7 +1855,7 @@ msgstr "" msgid "Parts are templates by default" msgstr "" -#: common/models.py:958 part/models.py:887 templates/js/translated/bom.js:1448 +#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448 #: templates/js/translated/table_filters.js:176 #: templates/js/translated/table_filters.js:447 msgid "Assembly" @@ -1861,7 +1865,7 @@ msgstr "" msgid "Parts can be assembled from other components by default" msgstr "" -#: common/models.py:965 part/models.py:893 +#: common/models.py:965 part/models.py:900 #: templates/js/translated/table_filters.js:455 msgid "Component" msgstr "" @@ -1870,7 +1874,7 @@ msgstr "" msgid "Parts can be used as sub-components by default" msgstr "" -#: common/models.py:972 part/models.py:904 +#: common/models.py:972 part/models.py:911 msgid "Purchaseable" msgstr "" @@ -1878,7 +1882,7 @@ msgstr "" msgid "Parts are purchaseable by default" msgstr "" -#: common/models.py:979 part/models.py:909 +#: common/models.py:979 part/models.py:916 #: templates/js/translated/table_filters.js:476 msgid "Salable" msgstr "" @@ -1887,7 +1891,7 @@ msgstr "" msgid "Parts are salable by default" msgstr "" -#: common/models.py:986 part/models.py:899 +#: common/models.py:986 part/models.py:906 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:108 #: templates/js/translated/table_filters.js:488 @@ -1898,7 +1902,7 @@ msgstr "" msgid "Parts are trackable by default" msgstr "" -#: common/models.py:993 part/models.py:919 +#: common/models.py:993 part/models.py:926 #: part/templates/part/part_base.html:151 #: templates/js/translated/table_filters.js:42 #: templates/js/translated/table_filters.js:492 @@ -1982,608 +1986,632 @@ msgid "Format to display the part name" msgstr "" #: common/models.py:1074 -msgid "Enable label printing" +msgid "Part Category Default Icon" msgstr "" #: common/models.py:1075 -msgid "Enable label printing from the web interface" +msgid "Part category default icon (empty means no icon)" +msgstr "" + +#: common/models.py:1080 +msgid "Enable label printing" msgstr "" #: common/models.py:1081 +msgid "Enable label printing from the web interface" +msgstr "" + +#: common/models.py:1087 msgid "Label Image DPI" msgstr "" -#: common/models.py:1082 +#: common/models.py:1088 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/models.py:1091 +#: common/models.py:1097 msgid "Enable Reports" msgstr "" -#: common/models.py:1092 +#: common/models.py:1098 msgid "Enable generation of reports" msgstr "" -#: common/models.py:1098 templates/stats.html:25 +#: common/models.py:1104 templates/stats.html:25 msgid "Debug Mode" msgstr "" -#: common/models.py:1099 +#: common/models.py:1105 msgid "Generate reports in debug mode (HTML output)" msgstr "" -#: common/models.py:1105 +#: common/models.py:1111 msgid "Page Size" msgstr "" -#: common/models.py:1106 +#: common/models.py:1112 msgid "Default page size for PDF reports" msgstr "" -#: common/models.py:1116 +#: common/models.py:1122 msgid "Enable Test Reports" msgstr "" -#: common/models.py:1117 +#: common/models.py:1123 msgid "Enable generation of test reports" msgstr "" -#: common/models.py:1123 +#: common/models.py:1129 msgid "Attach Test Reports" msgstr "" -#: common/models.py:1124 +#: common/models.py:1130 msgid "When printing a Test Report, attach a copy of the Test Report to the associated Stock Item" msgstr "" -#: common/models.py:1130 +#: common/models.py:1136 msgid "Batch Code Template" msgstr "" -#: common/models.py:1131 +#: common/models.py:1137 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/models.py:1136 +#: common/models.py:1142 msgid "Stock Expiry" msgstr "" -#: common/models.py:1137 +#: common/models.py:1143 msgid "Enable stock expiry functionality" msgstr "" -#: common/models.py:1143 +#: common/models.py:1149 msgid "Sell Expired Stock" msgstr "" -#: common/models.py:1144 +#: common/models.py:1150 msgid "Allow sale of expired stock" msgstr "" -#: common/models.py:1150 +#: common/models.py:1156 msgid "Stock Stale Time" msgstr "" -#: common/models.py:1151 +#: common/models.py:1157 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/models.py:1153 +#: common/models.py:1159 msgid "days" msgstr "" -#: common/models.py:1158 +#: common/models.py:1164 msgid "Build Expired Stock" msgstr "" -#: common/models.py:1159 +#: common/models.py:1165 msgid "Allow building with expired stock" msgstr "" -#: common/models.py:1165 +#: common/models.py:1171 msgid "Stock Ownership Control" msgstr "" -#: common/models.py:1166 +#: common/models.py:1172 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/models.py:1172 -msgid "Build Order Reference Pattern" -msgstr "" - -#: common/models.py:1173 -msgid "Required pattern for generating Build Order reference field" +#: common/models.py:1178 +msgid "Stock Location Default Icon" msgstr "" #: common/models.py:1179 +msgid "Stock location default icon (empty means no icon)" +msgstr "" + +#: common/models.py:1184 +msgid "Build Order Reference Pattern" +msgstr "" + +#: common/models.py:1185 +msgid "Required pattern for generating Build Order reference field" +msgstr "" + +#: common/models.py:1191 msgid "Sales Order Reference Pattern" msgstr "" -#: common/models.py:1180 +#: common/models.py:1192 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/models.py:1186 +#: common/models.py:1198 msgid "Sales Order Default Shipment" msgstr "" -#: common/models.py:1187 +#: common/models.py:1199 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/models.py:1193 +#: common/models.py:1205 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/models.py:1194 +#: common/models.py:1206 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/models.py:1201 +#: common/models.py:1213 msgid "Enable password forgot" msgstr "" -#: common/models.py:1202 +#: common/models.py:1214 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/models.py:1208 +#: common/models.py:1220 msgid "Enable registration" msgstr "" -#: common/models.py:1209 +#: common/models.py:1221 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/models.py:1215 +#: common/models.py:1227 msgid "Enable SSO" msgstr "" -#: common/models.py:1216 +#: common/models.py:1228 msgid "Enable SSO on the login pages" msgstr "" -#: common/models.py:1222 +#: common/models.py:1234 msgid "Email required" msgstr "" -#: common/models.py:1223 +#: common/models.py:1235 msgid "Require user to supply mail on signup" msgstr "" -#: common/models.py:1229 +#: common/models.py:1241 msgid "Auto-fill SSO users" msgstr "" -#: common/models.py:1230 +#: common/models.py:1242 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/models.py:1236 +#: common/models.py:1248 msgid "Mail twice" msgstr "" -#: common/models.py:1237 +#: common/models.py:1249 msgid "On signup ask users twice for their mail" msgstr "" -#: common/models.py:1243 +#: common/models.py:1255 msgid "Password twice" msgstr "" -#: common/models.py:1244 +#: common/models.py:1256 msgid "On signup ask users twice for their password" msgstr "" -#: common/models.py:1250 +#: common/models.py:1262 msgid "Group on signup" msgstr "" -#: common/models.py:1251 +#: common/models.py:1263 msgid "Group to which new users are assigned on registration" msgstr "" -#: common/models.py:1257 +#: common/models.py:1269 msgid "Enforce MFA" msgstr "" -#: common/models.py:1258 +#: common/models.py:1270 msgid "Users must use multifactor security." msgstr "" -#: common/models.py:1264 +#: common/models.py:1276 msgid "Check plugins on startup" msgstr "" -#: common/models.py:1265 +#: common/models.py:1277 msgid "Check that all plugins are installed on startup - enable in container enviroments" msgstr "" -#: common/models.py:1273 +#: common/models.py:1284 +msgid "Check plugin signatures" +msgstr "" + +#: common/models.py:1285 +msgid "Check and show signatures for plugins" +msgstr "" + +#: common/models.py:1292 msgid "Enable URL integration" msgstr "" -#: common/models.py:1274 +#: common/models.py:1293 msgid "Enable plugins to add URL routes" msgstr "" -#: common/models.py:1281 +#: common/models.py:1300 msgid "Enable navigation integration" msgstr "" -#: common/models.py:1282 +#: common/models.py:1301 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/models.py:1289 +#: common/models.py:1308 msgid "Enable app integration" msgstr "" -#: common/models.py:1290 +#: common/models.py:1309 msgid "Enable plugins to add apps" msgstr "" -#: common/models.py:1297 +#: common/models.py:1316 msgid "Enable schedule integration" msgstr "" -#: common/models.py:1298 +#: common/models.py:1317 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/models.py:1305 +#: common/models.py:1324 msgid "Enable event integration" msgstr "" -#: common/models.py:1306 +#: common/models.py:1325 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:1323 common/models.py:1639 +#: common/models.py:1342 common/models.py:1658 msgid "Settings key (must be unique - case insensitive" msgstr "" -#: common/models.py:1345 +#: common/models.py:1364 msgid "Show subscribed parts" msgstr "" -#: common/models.py:1346 +#: common/models.py:1365 msgid "Show subscribed parts on the homepage" msgstr "" -#: common/models.py:1352 +#: common/models.py:1371 msgid "Show subscribed categories" msgstr "" -#: common/models.py:1353 +#: common/models.py:1372 msgid "Show subscribed part categories on the homepage" msgstr "" -#: common/models.py:1359 +#: common/models.py:1378 msgid "Show latest parts" msgstr "" -#: common/models.py:1360 +#: common/models.py:1379 msgid "Show latest parts on the homepage" msgstr "" -#: common/models.py:1366 +#: common/models.py:1385 msgid "Recent Part Count" msgstr "" -#: common/models.py:1367 +#: common/models.py:1386 msgid "Number of recent parts to display on index page" msgstr "" -#: common/models.py:1373 +#: common/models.py:1392 msgid "Show unvalidated BOMs" msgstr "" -#: common/models.py:1374 +#: common/models.py:1393 msgid "Show BOMs that await validation on the homepage" msgstr "" -#: common/models.py:1380 +#: common/models.py:1399 msgid "Show recent stock changes" msgstr "" -#: common/models.py:1381 +#: common/models.py:1400 msgid "Show recently changed stock items on the homepage" msgstr "" -#: common/models.py:1387 +#: common/models.py:1406 msgid "Recent Stock Count" msgstr "" -#: common/models.py:1388 +#: common/models.py:1407 msgid "Number of recent stock items to display on index page" msgstr "" -#: common/models.py:1394 +#: common/models.py:1413 msgid "Show low stock" msgstr "" -#: common/models.py:1395 +#: common/models.py:1414 msgid "Show low stock items on the homepage" msgstr "" -#: common/models.py:1401 +#: common/models.py:1420 msgid "Show depleted stock" msgstr "" -#: common/models.py:1402 +#: common/models.py:1421 msgid "Show depleted stock items on the homepage" msgstr "" -#: common/models.py:1408 +#: common/models.py:1427 msgid "Show needed stock" msgstr "" -#: common/models.py:1409 +#: common/models.py:1428 msgid "Show stock items needed for builds on the homepage" msgstr "" -#: common/models.py:1415 +#: common/models.py:1434 msgid "Show expired stock" msgstr "" -#: common/models.py:1416 +#: common/models.py:1435 msgid "Show expired stock items on the homepage" msgstr "" -#: common/models.py:1422 +#: common/models.py:1441 msgid "Show stale stock" msgstr "" -#: common/models.py:1423 +#: common/models.py:1442 msgid "Show stale stock items on the homepage" msgstr "" -#: common/models.py:1429 +#: common/models.py:1448 msgid "Show pending builds" msgstr "" -#: common/models.py:1430 +#: common/models.py:1449 msgid "Show pending builds on the homepage" msgstr "" -#: common/models.py:1436 +#: common/models.py:1455 msgid "Show overdue builds" msgstr "" -#: common/models.py:1437 +#: common/models.py:1456 msgid "Show overdue builds on the homepage" msgstr "" -#: common/models.py:1443 +#: common/models.py:1462 msgid "Show outstanding POs" msgstr "" -#: common/models.py:1444 +#: common/models.py:1463 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:1450 +#: common/models.py:1469 msgid "Show overdue POs" msgstr "" -#: common/models.py:1451 +#: common/models.py:1470 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:1457 +#: common/models.py:1476 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:1458 +#: common/models.py:1477 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:1464 +#: common/models.py:1483 msgid "Show overdue SOs" msgstr "" -#: common/models.py:1465 +#: common/models.py:1484 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:1471 +#: common/models.py:1490 msgid "Inline label display" msgstr "" -#: common/models.py:1472 +#: common/models.py:1491 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1478 +#: common/models.py:1497 msgid "Inline report display" msgstr "" -#: common/models.py:1479 +#: common/models.py:1498 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1485 +#: common/models.py:1504 msgid "Search Parts" msgstr "" -#: common/models.py:1486 +#: common/models.py:1505 msgid "Display parts in search preview window" msgstr "" -#: common/models.py:1492 +#: common/models.py:1511 msgid "Seach Supplier Parts" msgstr "" -#: common/models.py:1493 +#: common/models.py:1512 msgid "Display supplier parts in search preview window" msgstr "" -#: common/models.py:1499 +#: common/models.py:1518 msgid "Search Manufacturer Parts" msgstr "" -#: common/models.py:1500 +#: common/models.py:1519 msgid "Display manufacturer parts in search preview window" msgstr "" -#: common/models.py:1506 +#: common/models.py:1525 msgid "Hide Inactive Parts" msgstr "" -#: common/models.py:1507 +#: common/models.py:1526 msgid "Excluded inactive parts from search preview window" msgstr "" -#: common/models.py:1513 +#: common/models.py:1532 msgid "Search Categories" msgstr "" -#: common/models.py:1514 +#: common/models.py:1533 msgid "Display part categories in search preview window" msgstr "" -#: common/models.py:1520 +#: common/models.py:1539 msgid "Search Stock" msgstr "" -#: common/models.py:1521 +#: common/models.py:1540 msgid "Display stock items in search preview window" msgstr "" -#: common/models.py:1527 +#: common/models.py:1546 msgid "Hide Unavailable Stock Items" msgstr "" -#: common/models.py:1528 +#: common/models.py:1547 msgid "Exclude stock items which are not available from the search preview window" msgstr "" -#: common/models.py:1534 +#: common/models.py:1553 msgid "Search Locations" msgstr "" -#: common/models.py:1535 +#: common/models.py:1554 msgid "Display stock locations in search preview window" msgstr "" -#: common/models.py:1541 +#: common/models.py:1560 msgid "Search Companies" msgstr "" -#: common/models.py:1542 +#: common/models.py:1561 msgid "Display companies in search preview window" msgstr "" -#: common/models.py:1548 +#: common/models.py:1567 msgid "Search Purchase Orders" msgstr "" -#: common/models.py:1549 +#: common/models.py:1568 msgid "Display purchase orders in search preview window" msgstr "" -#: common/models.py:1555 +#: common/models.py:1574 msgid "Exclude Inactive Purchase Orders" msgstr "" -#: common/models.py:1556 +#: common/models.py:1575 msgid "Exclude inactive purchase orders from search preview window" msgstr "" -#: common/models.py:1562 +#: common/models.py:1581 msgid "Search Sales Orders" msgstr "" -#: common/models.py:1563 +#: common/models.py:1582 msgid "Display sales orders in search preview window" msgstr "" -#: common/models.py:1569 +#: common/models.py:1588 msgid "Exclude Inactive Sales Orders" msgstr "" -#: common/models.py:1570 +#: common/models.py:1589 msgid "Exclude inactive sales orders from search preview window" msgstr "" -#: common/models.py:1576 +#: common/models.py:1595 msgid "Search Preview Results" msgstr "" -#: common/models.py:1577 +#: common/models.py:1596 msgid "Number of results to show in each section of the search preview window" msgstr "" -#: common/models.py:1583 +#: common/models.py:1602 msgid "Show Quantity in Forms" msgstr "" -#: common/models.py:1584 +#: common/models.py:1603 msgid "Display available part quantity in some forms" msgstr "" -#: common/models.py:1590 +#: common/models.py:1609 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:1591 +#: common/models.py:1610 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:1597 +#: common/models.py:1616 msgid "Fixed Navbar" msgstr "" -#: common/models.py:1598 +#: common/models.py:1617 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:1604 +#: common/models.py:1623 msgid "Date Format" msgstr "" -#: common/models.py:1605 +#: common/models.py:1624 msgid "Preferred format for displaying dates" msgstr "" -#: common/models.py:1619 part/templates/part/detail.html:41 +#: common/models.py:1638 part/templates/part/detail.html:41 msgid "Part Scheduling" msgstr "" -#: common/models.py:1620 +#: common/models.py:1639 msgid "Display part scheduling information" msgstr "" -#: common/models.py:1679 +#: common/models.py:1698 msgid "Price break quantity" msgstr "" -#: common/models.py:1686 company/serializers.py:366 +#: common/models.py:1705 company/serializers.py:366 #: company/templates/company/supplier_part.html:284 order/models.py:938 -#: templates/js/translated/part.js:1065 templates/js/translated/part.js:2152 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2161 msgid "Price" msgstr "" -#: common/models.py:1687 +#: common/models.py:1706 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:1847 common/models.py:2025 +#: common/models.py:1866 common/models.py:2044 msgid "Endpoint" msgstr "" -#: common/models.py:1848 +#: common/models.py:1867 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:1857 +#: common/models.py:1876 msgid "Name for this webhook" msgstr "" -#: common/models.py:1862 part/models.py:914 plugin/models.py:99 +#: common/models.py:1881 part/models.py:921 plugin/models.py:100 #: templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:104 #: templates/js/translated/table_filters.js:316 @@ -2591,67 +2619,67 @@ msgstr "" msgid "Active" msgstr "" -#: common/models.py:1863 +#: common/models.py:1882 msgid "Is this webhook active" msgstr "" -#: common/models.py:1877 +#: common/models.py:1896 msgid "Token" msgstr "" -#: common/models.py:1878 +#: common/models.py:1897 msgid "Token for access" msgstr "" -#: common/models.py:1885 +#: common/models.py:1904 msgid "Secret" msgstr "" -#: common/models.py:1886 +#: common/models.py:1905 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:1992 +#: common/models.py:2011 msgid "Message ID" msgstr "" -#: common/models.py:1993 +#: common/models.py:2012 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2001 +#: common/models.py:2020 msgid "Host" msgstr "" -#: common/models.py:2002 +#: common/models.py:2021 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2009 +#: common/models.py:2028 msgid "Header" msgstr "" -#: common/models.py:2010 +#: common/models.py:2029 msgid "Header of this message" msgstr "" -#: common/models.py:2016 +#: common/models.py:2035 msgid "Body" msgstr "" -#: common/models.py:2017 +#: common/models.py:2036 msgid "Body of this message" msgstr "" -#: common/models.py:2026 +#: common/models.py:2045 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2031 +#: common/models.py:2050 msgid "Worked on" msgstr "" -#: common/models.py:2032 +#: common/models.py:2051 msgid "Was the work on this message finished?" msgstr "" @@ -2758,7 +2786,7 @@ msgstr "" msgid "Link to external company information" msgstr "" -#: company/models.py:135 part/models.py:808 +#: company/models.py:135 part/models.py:815 msgid "Image" msgstr "" @@ -2791,8 +2819,8 @@ msgid "Does this company manufacture parts?" msgstr "" #: company/models.py:148 company/serializers.py:372 -#: company/templates/company/company_base.html:106 part/serializers.py:151 -#: part/serializers.py:182 stock/serializers.py:180 +#: company/templates/company/company_base.html:106 part/serializers.py:153 +#: part/serializers.py:184 stock/serializers.py:180 msgid "Currency" msgstr "" @@ -2800,7 +2828,7 @@ msgstr "" msgid "Default currency used for this company" msgstr "" -#: company/models.py:248 company/models.py:481 stock/models.py:591 +#: company/models.py:248 company/models.py:481 stock/models.py:598 #: stock/serializers.py:87 stock/templates/stock/item_base.html:148 #: templates/js/translated/bom.js:543 msgid "Base Part" @@ -2832,7 +2860,7 @@ msgstr "" #: templates/js/translated/company.js:497 #: templates/js/translated/company.js:649 #: templates/js/translated/company.js:937 templates/js/translated/order.js:1971 -#: templates/js/translated/part.js:247 templates/js/translated/part.js:1023 +#: templates/js/translated/part.js:247 templates/js/translated/part.js:1027 msgid "MPN" msgstr "" @@ -2861,9 +2889,9 @@ msgstr "" #: company/models.py:365 #: report/templates/report/inventree_test_report_base.html:95 -#: stock/models.py:2088 templates/js/translated/company.js:546 -#: templates/js/translated/company.js:764 templates/js/translated/part.js:845 -#: templates/js/translated/stock.js:1356 +#: stock/models.py:2095 templates/js/translated/company.js:546 +#: templates/js/translated/company.js:764 templates/js/translated/part.js:849 +#: templates/js/translated/stock.js:1360 msgid "Value" msgstr "" @@ -2871,10 +2899,10 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:372 part/models.py:881 part/models.py:2379 +#: company/models.py:372 part/models.py:888 part/models.py:2386 #: part/templates/part/part_base.html:280 #: templates/InvenTree/settings/settings.html:352 -#: templates/js/translated/company.js:770 templates/js/translated/part.js:851 +#: templates/js/translated/company.js:770 templates/js/translated/part.js:855 msgid "Units" msgstr "" @@ -2894,7 +2922,7 @@ msgstr "" #: templates/js/translated/company.js:268 #: templates/js/translated/company.js:401 #: templates/js/translated/company.js:893 templates/js/translated/order.js:1707 -#: templates/js/translated/part.js:217 templates/js/translated/part.js:991 +#: templates/js/translated/part.js:217 templates/js/translated/part.js:995 #: templates/js/translated/table_filters.js:423 msgid "Supplier" msgstr "" @@ -2906,7 +2934,7 @@ msgstr "" #: company/models.py:497 company/templates/company/supplier_part.html:118 #: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267 #: templates/js/translated/order.js:1958 templates/js/translated/part.js:228 -#: templates/js/translated/part.js:1009 +#: templates/js/translated/part.js:1013 msgid "SKU" msgstr "" @@ -2927,23 +2955,23 @@ msgid "Supplier part description" msgstr "" #: company/models.py:522 company/templates/company/supplier_part.html:146 -#: part/models.py:2613 part/templates/part/upload_bom.html:59 +#: part/models.py:2620 part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401 msgid "Note" msgstr "" -#: company/models.py:526 part/models.py:1735 +#: company/models.py:526 part/models.py:1742 msgid "base cost" msgstr "" -#: company/models.py:526 part/models.py:1735 +#: company/models.py:526 part/models.py:1742 msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:528 company/templates/company/supplier_part.html:139 -#: stock/models.py:617 stock/templates/stock/item_base.html:245 -#: templates/js/translated/company.js:969 templates/js/translated/stock.js:1972 +#: stock/models.py:624 stock/templates/stock/item_base.html:245 +#: templates/js/translated/company.js:969 templates/js/translated/stock.js:1976 msgid "Packaging" msgstr "" @@ -2951,7 +2979,7 @@ msgstr "" msgid "Part packaging" msgstr "" -#: company/models.py:530 part/models.py:1737 +#: company/models.py:530 part/models.py:1744 msgid "multiple" msgstr "" @@ -2964,7 +2992,7 @@ msgstr "" #: templates/email/low_stock_notification.html:18 #: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789 #: templates/js/translated/build.js:2645 templates/js/translated/company.js:979 -#: templates/js/translated/part.js:596 templates/js/translated/part.js:599 +#: templates/js/translated/part.js:600 templates/js/translated/part.js:603 #: templates/js/translated/table_filters.js:186 msgid "Available" msgstr "" @@ -3037,12 +3065,12 @@ msgid "Download image from URL" msgstr "" #: company/templates/company/company_base.html:86 order/models.py:637 -#: order/templates/order/sales_order_base.html:116 stock/models.py:636 -#: stock/models.py:637 stock/serializers.py:809 +#: order/templates/order/sales_order_base.html:116 stock/models.py:643 +#: stock/models.py:644 stock/serializers.py:811 #: stock/templates/stock/item_base.html:401 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:393 templates/js/translated/order.js:2513 -#: templates/js/translated/stock.js:2550 +#: templates/js/translated/stock.js:2559 #: templates/js/translated/table_filters.js:427 msgid "Customer" msgstr "" @@ -3083,7 +3111,7 @@ msgstr "" #: company/templates/company/detail.html:36 #: company/templates/company/detail.html:84 -#: part/templates/part/category.html:176 +#: part/templates/part/category.html:182 msgid "Order parts" msgstr "" @@ -3231,7 +3259,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:170 #: part/templates/part/detail.html:186 #: templates/InvenTree/settings/category.html:12 -#: templates/InvenTree/settings/part.html:66 +#: templates/InvenTree/settings/part.html:68 msgid "New Parameter" msgstr "" @@ -3261,10 +3289,10 @@ msgid "Assigned Stock Items" msgstr "" #: company/templates/company/supplier_part.html:7 -#: company/templates/company/supplier_part.html:24 stock/models.py:600 +#: company/templates/company/supplier_part.html:24 stock/models.py:607 #: stock/templates/stock/item_base.html:238 #: templates/js/translated/company.js:909 templates/js/translated/order.js:935 -#: templates/js/translated/stock.js:1929 +#: templates/js/translated/stock.js:1933 msgid "Supplier Part" msgstr "" @@ -3308,13 +3336,13 @@ msgid "Supplier Part Stock" msgstr "" #: company/templates/company/supplier_part.html:168 -#: part/templates/part/detail.html:24 stock/templates/stock/location.html:176 +#: part/templates/part/detail.html:24 stock/templates/stock/location.html:181 msgid "Create new stock item" msgstr "" #: company/templates/company/supplier_part.html:169 -#: part/templates/part/detail.html:25 stock/templates/stock/location.html:177 -#: templates/js/translated/stock.js:431 +#: part/templates/part/detail.html:25 stock/templates/stock/location.html:182 +#: templates/js/translated/stock.js:435 msgid "New Stock Item" msgstr "" @@ -3330,7 +3358,7 @@ msgstr "" #: company/templates/company/supplier_part.html:212 #: company/templates/company/supplier_part.html:326 -#: part/templates/part/prices.html:276 templates/js/translated/part.js:2224 +#: part/templates/part/prices.html:276 templates/js/translated/part.js:2233 msgid "Add Price Break" msgstr "" @@ -3339,12 +3367,12 @@ msgid "No price break information found" msgstr "" #: company/templates/company/supplier_part.html:252 -#: templates/js/translated/part.js:2234 +#: templates/js/translated/part.js:2243 msgid "Delete Price Break" msgstr "" #: company/templates/company/supplier_part.html:266 -#: templates/js/translated/part.js:2248 +#: templates/js/translated/part.js:2257 msgid "Edit Price Break" msgstr "" @@ -3366,13 +3394,13 @@ msgstr "" #: company/templates/company/supplier_part_navbar.html:15 #: part/templates/part/part_sidebar.html:14 -#: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:19 +#: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:24 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:151 #: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/bom.js:555 templates/js/translated/part.js:747 -#: templates/js/translated/part.js:1295 templates/js/translated/part.js:1456 -#: templates/js/translated/stock.js:955 templates/js/translated/stock.js:1750 +#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751 +#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460 +#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754 #: templates/navbar.html:31 msgid "Stock" msgstr "" @@ -3392,14 +3420,14 @@ msgid "Pricing" msgstr "" #: company/templates/company/supplier_part_sidebar.html:5 -#: part/templates/part/category.html:197 +#: part/templates/part/category.html:203 #: part/templates/part/category_sidebar.html:17 -#: stock/templates/stock/location.html:147 -#: stock/templates/stock/location.html:161 -#: stock/templates/stock/location.html:173 +#: stock/templates/stock/location.html:152 +#: stock/templates/stock/location.html:166 +#: stock/templates/stock/location.html:178 #: stock/templates/stock/location_sidebar.html:7 #: templates/InvenTree/search.html:153 templates/js/translated/search.js:223 -#: templates/js/translated/stock.js:2427 users/models.py:40 +#: templates/js/translated/stock.js:2436 users/models.py:40 msgid "Stock Items" msgstr "" @@ -3656,8 +3684,8 @@ msgstr "" #: stock/templates/stock/item_base.html:184 #: templates/email/overdue_purchase_order.html:15 #: templates/js/translated/order.js:936 templates/js/translated/order.js:1691 -#: templates/js/translated/part.js:968 templates/js/translated/stock.js:1909 -#: templates/js/translated/stock.js:2531 +#: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913 +#: templates/js/translated/stock.js:2540 msgid "Purchase Order" msgstr "" @@ -3667,7 +3695,7 @@ msgstr "" #: order/models.py:1009 order/templates/order/order_base.html:169 #: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073 -#: templates/js/translated/part.js:1060 templates/js/translated/part.js:1087 +#: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091 #: templates/js/translated/table_filters.js:338 msgid "Received" msgstr "" @@ -3676,9 +3704,9 @@ msgstr "" msgid "Number of items received" msgstr "" -#: order/models.py:1017 part/templates/part/prices.html:181 stock/models.py:727 +#: order/models.py:1017 part/templates/part/prices.html:181 stock/models.py:734 #: stock/serializers.py:171 stock/templates/stock/item_base.html:191 -#: templates/js/translated/stock.js:1960 +#: templates/js/translated/stock.js:1964 msgid "Purchase Price" msgstr "" @@ -4066,8 +4094,8 @@ msgstr "" #: templates/js/translated/bom.js:77 templates/js/translated/build.js:431 #: templates/js/translated/build.js:583 templates/js/translated/build.js:1974 #: templates/js/translated/order.js:884 templates/js/translated/order.js:1337 -#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:621 -#: templates/js/translated/stock.js:789 +#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625 +#: templates/js/translated/stock.js:793 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "" @@ -4261,8 +4289,8 @@ msgstr "" msgid "This field is required" msgstr "" -#: part/bom.py:127 part/models.py:98 part/models.py:817 -#: part/templates/part/category.html:108 part/templates/part/part_base.html:330 +#: part/bom.py:127 part/models.py:98 part/models.py:824 +#: part/templates/part/category.html:114 part/templates/part/part_base.html:330 msgid "Default Location" msgstr "" @@ -4276,9 +4304,9 @@ msgid "Available Stock" msgstr "" #: part/bom.py:130 part/templates/part/part_base.html:207 -#: templates/js/translated/bom.js:947 templates/js/translated/part.js:586 -#: templates/js/translated/part.js:606 templates/js/translated/part.js:1298 -#: templates/js/translated/part.js:1470 templates/js/translated/part.js:1486 +#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590 +#: templates/js/translated/part.js:610 templates/js/translated/part.js:1302 +#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "" @@ -4299,516 +4327,524 @@ msgstr "" msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:115 part/models.py:2455 part/templates/part/category.html:15 +#: part/models.py:107 stock/models.py:84 +msgid "Icon" +msgstr "" + +#: part/models.py:108 stock/models.py:85 +msgid "Icon (optional)" +msgstr "" + +#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" -#: part/models.py:116 part/templates/part/category.html:128 +#: part/models.py:123 part/templates/part/category.html:134 #: templates/InvenTree/search.html:95 templates/js/translated/search.js:198 #: users/models.py:37 msgid "Part Categories" msgstr "" -#: part/models.py:337 part/templates/part/cat_link.html:3 -#: part/templates/part/category.html:17 part/templates/part/category.html:133 -#: part/templates/part/category.html:153 +#: part/models.py:344 part/templates/part/cat_link.html:3 +#: part/templates/part/category.html:23 part/templates/part/category.html:139 +#: part/templates/part/category.html:159 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82 #: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:1946 templates/js/translated/search.js:144 +#: templates/js/translated/part.js:1955 templates/js/translated/search.js:144 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "" -#: part/models.py:422 +#: part/models.py:429 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:492 part/models.py:504 +#: part/models.py:499 part/models.py:511 #, python-brace-format msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)" msgstr "" -#: part/models.py:621 +#: part/models.py:628 msgid "Next available serial numbers are" msgstr "" -#: part/models.py:625 +#: part/models.py:632 msgid "Next available serial number is" msgstr "" -#: part/models.py:630 +#: part/models.py:637 msgid "Most recent serial number is" msgstr "" -#: part/models.py:711 +#: part/models.py:718 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:738 part/models.py:2509 +#: part/models.py:745 part/models.py:2516 msgid "Part name" msgstr "" -#: part/models.py:745 +#: part/models.py:752 msgid "Is Template" msgstr "" -#: part/models.py:746 +#: part/models.py:753 msgid "Is this part a template part?" msgstr "" -#: part/models.py:756 +#: part/models.py:763 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:757 +#: part/models.py:764 msgid "Variant Of" msgstr "" -#: part/models.py:763 +#: part/models.py:770 msgid "Part description" msgstr "" -#: part/models.py:768 part/templates/part/category.html:86 +#: part/models.py:775 part/templates/part/category.html:92 #: part/templates/part/part_base.html:294 msgid "Keywords" msgstr "" -#: part/models.py:769 +#: part/models.py:776 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:776 part/models.py:2211 part/models.py:2454 +#: part/models.py:783 part/models.py:2218 part/models.py:2461 #: part/templates/part/part_base.html:257 #: templates/InvenTree/settings/settings.html:232 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1438 templates/js/translated/part.js:1664 +#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1668 msgid "Category" msgstr "" -#: part/models.py:777 +#: part/models.py:784 msgid "Part category" msgstr "" -#: part/models.py:782 part/templates/part/part_base.html:266 -#: templates/js/translated/part.js:735 templates/js/translated/part.js:1391 -#: templates/js/translated/stock.js:1722 +#: part/models.py:789 part/templates/part/part_base.html:266 +#: templates/js/translated/part.js:739 templates/js/translated/part.js:1395 +#: templates/js/translated/stock.js:1726 msgid "IPN" msgstr "" -#: part/models.py:783 +#: part/models.py:790 msgid "Internal Part Number" msgstr "" -#: part/models.py:789 +#: part/models.py:796 msgid "Part revision or version number" msgstr "" -#: part/models.py:790 part/templates/part/part_base.html:273 -#: report/models.py:171 templates/js/translated/part.js:739 +#: part/models.py:797 part/templates/part/part_base.html:273 +#: report/models.py:171 templates/js/translated/part.js:743 msgid "Revision" msgstr "" -#: part/models.py:815 +#: part/models.py:822 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:860 part/templates/part/part_base.html:339 +#: part/models.py:867 part/templates/part/part_base.html:339 msgid "Default Supplier" msgstr "" -#: part/models.py:861 +#: part/models.py:868 msgid "Default supplier part" msgstr "" -#: part/models.py:868 +#: part/models.py:875 msgid "Default Expiry" msgstr "" -#: part/models.py:869 +#: part/models.py:876 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:874 part/templates/part/part_base.html:200 +#: part/models.py:881 part/templates/part/part_base.html:200 msgid "Minimum Stock" msgstr "" -#: part/models.py:875 +#: part/models.py:882 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:882 +#: part/models.py:889 msgid "Stock keeping units for this part" msgstr "" -#: part/models.py:888 +#: part/models.py:895 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:894 +#: part/models.py:901 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:900 +#: part/models.py:907 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:905 +#: part/models.py:912 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:910 +#: part/models.py:917 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:915 +#: part/models.py:922 msgid "Is this part active?" msgstr "" -#: part/models.py:920 +#: part/models.py:927 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:922 +#: part/models.py:929 msgid "Part notes" msgstr "" -#: part/models.py:924 +#: part/models.py:931 msgid "BOM checksum" msgstr "" -#: part/models.py:924 +#: part/models.py:931 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:927 +#: part/models.py:934 msgid "BOM checked by" msgstr "" -#: part/models.py:929 +#: part/models.py:936 msgid "BOM checked date" msgstr "" -#: part/models.py:933 +#: part/models.py:940 msgid "Creation User" msgstr "" -#: part/models.py:1737 +#: part/models.py:1744 msgid "Sell multiple" msgstr "" -#: part/models.py:2258 +#: part/models.py:2265 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:2275 +#: part/models.py:2282 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:2295 templates/js/translated/part.js:1997 -#: templates/js/translated/stock.js:1336 +#: part/models.py:2302 templates/js/translated/part.js:2006 +#: templates/js/translated/stock.js:1340 msgid "Test Name" msgstr "" -#: part/models.py:2296 +#: part/models.py:2303 msgid "Enter a name for the test" msgstr "" -#: part/models.py:2301 +#: part/models.py:2308 msgid "Test Description" msgstr "" -#: part/models.py:2302 +#: part/models.py:2309 msgid "Enter description for this test" msgstr "" -#: part/models.py:2307 templates/js/translated/part.js:2006 +#: part/models.py:2314 templates/js/translated/part.js:2015 #: templates/js/translated/table_filters.js:302 msgid "Required" msgstr "" -#: part/models.py:2308 +#: part/models.py:2315 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:2313 templates/js/translated/part.js:2014 +#: part/models.py:2320 templates/js/translated/part.js:2023 msgid "Requires Value" msgstr "" -#: part/models.py:2314 +#: part/models.py:2321 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:2319 templates/js/translated/part.js:2021 +#: part/models.py:2326 templates/js/translated/part.js:2030 msgid "Requires Attachment" msgstr "" -#: part/models.py:2320 +#: part/models.py:2327 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:2328 +#: part/models.py:2335 #, python-brace-format msgid "Illegal character in template name ({c})" msgstr "" -#: part/models.py:2364 +#: part/models.py:2371 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:2372 +#: part/models.py:2379 msgid "Parameter Name" msgstr "" -#: part/models.py:2379 +#: part/models.py:2386 msgid "Parameter Units" msgstr "" -#: part/models.py:2410 +#: part/models.py:2417 msgid "Parent Part" msgstr "" -#: part/models.py:2412 part/models.py:2460 part/models.py:2461 +#: part/models.py:2419 part/models.py:2467 part/models.py:2468 #: templates/InvenTree/settings/settings.html:227 msgid "Parameter Template" msgstr "" -#: part/models.py:2414 +#: part/models.py:2421 msgid "Data" msgstr "" -#: part/models.py:2414 +#: part/models.py:2421 msgid "Parameter Value" msgstr "" -#: part/models.py:2465 templates/InvenTree/settings/settings.html:236 +#: part/models.py:2472 templates/InvenTree/settings/settings.html:236 msgid "Default Value" msgstr "" -#: part/models.py:2466 +#: part/models.py:2473 msgid "Default Parameter Value" msgstr "" -#: part/models.py:2501 +#: part/models.py:2508 msgid "Part ID or part name" msgstr "" -#: part/models.py:2504 templates/js/translated/model_renderers.js:212 +#: part/models.py:2511 templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "" -#: part/models.py:2505 +#: part/models.py:2512 msgid "Unique part ID value" msgstr "" -#: part/models.py:2508 +#: part/models.py:2515 msgid "Part Name" msgstr "" -#: part/models.py:2512 +#: part/models.py:2519 msgid "Part IPN" msgstr "" -#: part/models.py:2513 +#: part/models.py:2520 msgid "Part IPN value" msgstr "" -#: part/models.py:2516 +#: part/models.py:2523 msgid "Level" msgstr "" -#: part/models.py:2517 +#: part/models.py:2524 msgid "BOM level" msgstr "" -#: part/models.py:2586 +#: part/models.py:2593 msgid "Select parent part" msgstr "" -#: part/models.py:2594 +#: part/models.py:2601 msgid "Sub part" msgstr "" -#: part/models.py:2595 +#: part/models.py:2602 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:2601 +#: part/models.py:2608 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:2603 part/templates/part/upload_bom.html:58 +#: part/models.py:2610 part/templates/part/upload_bom.html:58 #: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999 #: templates/js/translated/table_filters.js:100 msgid "Optional" msgstr "" -#: part/models.py:2603 +#: part/models.py:2610 msgid "This BOM item is optional" msgstr "" -#: part/models.py:2606 part/templates/part/upload_bom.html:55 +#: part/models.py:2613 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:2607 +#: part/models.py:2614 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:2610 +#: part/models.py:2617 msgid "BOM item reference" msgstr "" -#: part/models.py:2613 +#: part/models.py:2620 msgid "BOM item notes" msgstr "" -#: part/models.py:2615 +#: part/models.py:2622 msgid "Checksum" msgstr "" -#: part/models.py:2615 +#: part/models.py:2622 msgid "BOM line checksum" msgstr "" -#: part/models.py:2619 part/templates/part/upload_bom.html:57 +#: part/models.py:2626 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1016 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:96 msgid "Inherited" msgstr "" -#: part/models.py:2620 +#: part/models.py:2627 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:2625 part/templates/part/upload_bom.html:56 +#: part/models.py:2632 part/templates/part/upload_bom.html:56 #: templates/js/translated/bom.js:1008 msgid "Allow Variants" msgstr "" -#: part/models.py:2626 +#: part/models.py:2633 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:2704 stock/models.py:461 +#: part/models.py:2711 stock/models.py:468 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:2713 part/models.py:2715 +#: part/models.py:2720 part/models.py:2722 msgid "Sub part must be specified" msgstr "" -#: part/models.py:2820 +#: part/models.py:2827 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:2841 +#: part/models.py:2848 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:2854 +#: part/models.py:2861 msgid "Parent BOM item" msgstr "" -#: part/models.py:2862 +#: part/models.py:2869 msgid "Substitute part" msgstr "" -#: part/models.py:2877 +#: part/models.py:2884 msgid "Part 1" msgstr "" -#: part/models.py:2881 +#: part/models.py:2888 msgid "Part 2" msgstr "" -#: part/models.py:2881 +#: part/models.py:2888 msgid "Select Related Part" msgstr "" -#: part/models.py:2899 +#: part/models.py:2906 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:2903 +#: part/models.py:2910 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:152 part/serializers.py:183 stock/serializers.py:181 +#: part/serializers.py:154 part/serializers.py:185 stock/serializers.py:181 msgid "Purchase currency of this stock item" msgstr "" -#: part/serializers.py:812 +#: part/serializers.py:814 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:820 +#: part/serializers.py:822 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:821 +#: part/serializers.py:823 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:826 +#: part/serializers.py:828 msgid "Include Inherited" msgstr "" -#: part/serializers.py:827 +#: part/serializers.py:829 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:832 +#: part/serializers.py:834 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:833 +#: part/serializers.py:835 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:838 +#: part/serializers.py:840 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:839 +#: part/serializers.py:841 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:879 +#: part/serializers.py:881 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:880 +#: part/serializers.py:882 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:910 +#: part/serializers.py:912 msgid "No part column specified" msgstr "" -#: part/serializers.py:953 +#: part/serializers.py:955 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:956 +#: part/serializers.py:958 msgid "No matching part found" msgstr "" -#: part/serializers.py:959 +#: part/serializers.py:961 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:968 +#: part/serializers.py:970 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:976 +#: part/serializers.py:978 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:997 +#: part/serializers.py:999 msgid "At least one BOM item is required" msgstr "" @@ -4848,101 +4884,101 @@ msgstr "" msgid "Delete Items" msgstr "" -#: part/templates/part/category.html:28 part/templates/part/category.html:32 +#: part/templates/part/category.html:34 part/templates/part/category.html:38 msgid "You are subscribed to notifications for this category" msgstr "" -#: part/templates/part/category.html:36 +#: part/templates/part/category.html:42 msgid "Subscribe to notifications for this category" msgstr "" -#: part/templates/part/category.html:42 +#: part/templates/part/category.html:48 msgid "Category Actions" msgstr "" -#: part/templates/part/category.html:47 +#: part/templates/part/category.html:53 msgid "Edit category" msgstr "" -#: part/templates/part/category.html:48 +#: part/templates/part/category.html:54 msgid "Edit Category" msgstr "" -#: part/templates/part/category.html:52 +#: part/templates/part/category.html:58 msgid "Delete category" msgstr "" -#: part/templates/part/category.html:53 +#: part/templates/part/category.html:59 msgid "Delete Category" msgstr "" -#: part/templates/part/category.html:61 +#: part/templates/part/category.html:67 msgid "Create new part category" msgstr "" -#: part/templates/part/category.html:62 +#: part/templates/part/category.html:68 msgid "New Category" msgstr "" -#: part/templates/part/category.html:80 part/templates/part/category.html:93 +#: part/templates/part/category.html:86 part/templates/part/category.html:99 msgid "Category Path" msgstr "" -#: part/templates/part/category.html:94 +#: part/templates/part/category.html:100 msgid "Top level part category" msgstr "" -#: part/templates/part/category.html:114 part/templates/part/category.html:222 +#: part/templates/part/category.html:120 part/templates/part/category.html:228 #: part/templates/part/category_sidebar.html:7 msgid "Subcategories" msgstr "" -#: part/templates/part/category.html:119 +#: part/templates/part/category.html:125 msgid "Parts (Including subcategories)" msgstr "" -#: part/templates/part/category.html:157 +#: part/templates/part/category.html:163 msgid "Create new part" msgstr "" -#: part/templates/part/category.html:158 templates/js/translated/bom.js:367 +#: part/templates/part/category.html:164 templates/js/translated/bom.js:367 msgid "New Part" msgstr "" -#: part/templates/part/category.html:168 part/templates/part/detail.html:363 +#: part/templates/part/category.html:174 part/templates/part/detail.html:363 #: part/templates/part/detail.html:394 msgid "Options" msgstr "" -#: part/templates/part/category.html:172 +#: part/templates/part/category.html:178 msgid "Set category" msgstr "" -#: part/templates/part/category.html:173 +#: part/templates/part/category.html:179 msgid "Set Category" msgstr "" -#: part/templates/part/category.html:180 part/templates/part/category.html:181 +#: part/templates/part/category.html:186 part/templates/part/category.html:187 msgid "Print Labels" msgstr "" -#: part/templates/part/category.html:206 +#: part/templates/part/category.html:212 msgid "Part Parameters" msgstr "" -#: part/templates/part/category.html:320 +#: part/templates/part/category.html:327 msgid "Create Part Category" msgstr "" -#: part/templates/part/category.html:340 +#: part/templates/part/category.html:347 msgid "Create Part" msgstr "" -#: part/templates/part/category.html:343 +#: part/templates/part/category.html:350 msgid "Create another part after this one" msgstr "" -#: part/templates/part/category.html:344 +#: part/templates/part/category.html:351 msgid "Part created successfully" msgstr "" @@ -4950,7 +4986,7 @@ msgstr "" msgid "Import Parts" msgstr "" -#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:375 +#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:379 msgid "Duplicate Part" msgstr "" @@ -5172,19 +5208,19 @@ msgstr "" #: part/templates/part/part_base.html:43 #: stock/templates/stock/item_base.html:41 -#: stock/templates/stock/location.html:43 +#: stock/templates/stock/location.html:48 msgid "Barcode actions" msgstr "" #: part/templates/part/part_base.html:46 #: stock/templates/stock/item_base.html:45 -#: stock/templates/stock/location.html:45 templates/qr_button.html:1 +#: stock/templates/stock/location.html:50 templates/qr_button.html:1 msgid "Show QR Code" msgstr "" #: part/templates/part/part_base.html:49 #: stock/templates/stock/item_base.html:63 -#: stock/templates/stock/location.html:47 +#: stock/templates/stock/location.html:52 msgid "Print Label" msgstr "" @@ -5194,7 +5230,7 @@ msgstr "" #: part/templates/part/part_base.html:60 #: stock/templates/stock/item_base.html:116 -#: stock/templates/stock/location.html:56 +#: stock/templates/stock/location.html:61 msgid "Stock actions" msgstr "" @@ -5255,7 +5291,7 @@ msgstr "" #: templates/js/translated/company.js:624 #: templates/js/translated/company.js:884 #: templates/js/translated/model_renderers.js:204 -#: templates/js/translated/part.js:650 templates/js/translated/part.js:727 +#: templates/js/translated/part.js:654 templates/js/translated/part.js:731 msgid "Inactive" msgstr "" @@ -5289,9 +5325,9 @@ msgstr "" msgid "Can Build" msgstr "" -#: part/templates/part/part_base.html:238 templates/js/translated/part.js:589 -#: templates/js/translated/part.js:609 templates/js/translated/part.js:1302 -#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490 +#: part/templates/part/part_base.html:238 templates/js/translated/part.js:593 +#: templates/js/translated/part.js:613 templates/js/translated/part.js:1306 +#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1494 msgid "Building" msgstr "" @@ -5464,8 +5500,8 @@ msgstr "" msgid "No sale pice history available for this part." msgstr "" -#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:612 -#: templates/js/translated/part.js:1290 templates/js/translated/part.js:1494 +#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616 +#: templates/js/translated/part.js:1294 templates/js/translated/part.js:1498 msgid "No Stock" msgstr "" @@ -5630,51 +5666,55 @@ msgstr "" msgid "Allow sending of emails for event notifications" msgstr "" -#: plugin/models.py:32 +#: plugin/models.py:33 msgid "Plugin Metadata" msgstr "" -#: plugin/models.py:33 +#: plugin/models.py:34 msgid "JSON metadata field, for use by external plugins" msgstr "" -#: plugin/models.py:79 +#: plugin/models.py:80 msgid "Plugin Configuration" msgstr "" -#: plugin/models.py:80 +#: plugin/models.py:81 msgid "Plugin Configurations" msgstr "" -#: plugin/models.py:85 +#: plugin/models.py:86 msgid "Key" msgstr "" -#: plugin/models.py:86 +#: plugin/models.py:87 msgid "Key of plugin" msgstr "" -#: plugin/models.py:94 +#: plugin/models.py:95 msgid "PluginName of the plugin" msgstr "" -#: plugin/models.py:100 +#: plugin/models.py:101 msgid "Is the plugin active" msgstr "" -#: plugin/models.py:168 +#: plugin/models.py:158 +msgid "Sample plugin" +msgstr "" + +#: plugin/models.py:186 msgid "Plugin" msgstr "" -#: plugin/models.py:231 +#: plugin/models.py:249 msgid "Method" msgstr "" -#: plugin/plugin.py:228 +#: plugin/plugin.py:251 msgid "No author found" msgstr "" -#: plugin/plugin.py:240 +#: plugin/plugin.py:263 msgid "No date found" msgstr "" @@ -5746,12 +5786,12 @@ msgstr "" msgid "No valid objects provided to template" msgstr "" -#: report/api.py:216 report/api.py:257 +#: report/api.py:216 report/api.py:252 #, python-brace-format msgid "Template file '{template}' is missing or does not exist" msgstr "" -#: report/api.py:360 +#: report/api.py:355 msgid "Test report" msgstr "" @@ -5852,12 +5892,12 @@ msgid "Stock Item Test Report" msgstr "" #: report/templates/report/inventree_test_report_base.html:79 -#: stock/models.py:641 stock/templates/stock/item_base.html:322 +#: stock/models.py:648 stock/templates/stock/item_base.html:322 #: templates/js/translated/build.js:424 templates/js/translated/build.js:576 #: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673 #: templates/js/translated/model_renderers.js:118 #: templates/js/translated/order.js:118 templates/js/translated/order.js:3297 -#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:486 +#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490 msgid "Serial Number" msgstr "" @@ -5866,19 +5906,19 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report_base.html:93 -#: stock/models.py:2076 +#: stock/models.py:2083 msgid "Test" msgstr "" #: report/templates/report/inventree_test_report_base.html:94 -#: stock/models.py:2082 +#: stock/models.py:2089 msgid "Result" msgstr "" #: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:51 +#: templates/InvenTree/settings/plugin.html:53 #: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2459 +#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468 msgid "Date" msgstr "" @@ -5896,8 +5936,8 @@ msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report_base.html:137 -#: templates/js/translated/stock.js:606 templates/js/translated/stock.js:776 -#: templates/js/translated/stock.js:2708 +#: templates/js/translated/stock.js:610 templates/js/translated/stock.js:780 +#: templates/js/translated/stock.js:2717 msgid "Serial" msgstr "" @@ -5913,241 +5953,241 @@ msgstr "" msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" -#: stock/models.py:82 stock/models.py:732 +#: stock/models.py:89 stock/models.py:739 #: stock/templates/stock/item_base.html:252 msgid "Owner" msgstr "" -#: stock/models.py:83 stock/models.py:733 +#: stock/models.py:90 stock/models.py:740 msgid "Select Owner" msgstr "" -#: stock/models.py:435 +#: stock/models.py:442 msgid "StockItem with this serial number already exists" msgstr "" -#: stock/models.py:467 stock/serializers.py:95 +#: stock/models.py:474 stock/serializers.py:95 msgid "Stock item cannot be created for virtual parts" msgstr "" -#: stock/models.py:484 +#: stock/models.py:491 #, python-brace-format msgid "Part type ('{pf}') must be {pe}" msgstr "" -#: stock/models.py:494 stock/models.py:503 +#: stock/models.py:501 stock/models.py:510 msgid "Quantity must be 1 for item with a serial number" msgstr "" -#: stock/models.py:495 +#: stock/models.py:502 msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:517 +#: stock/models.py:524 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:523 +#: stock/models.py:530 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:537 +#: stock/models.py:544 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:583 +#: stock/models.py:590 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:593 +#: stock/models.py:600 msgid "Base part" msgstr "" -#: stock/models.py:601 +#: stock/models.py:608 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:608 stock/templates/stock/location.html:17 +#: stock/models.py:615 stock/templates/stock/location.html:17 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" msgstr "" -#: stock/models.py:611 +#: stock/models.py:618 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:618 +#: stock/models.py:625 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:624 stock/templates/stock/item_base.html:361 +#: stock/models.py:631 stock/templates/stock/item_base.html:361 msgid "Installed In" msgstr "" -#: stock/models.py:627 +#: stock/models.py:634 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:643 +#: stock/models.py:650 msgid "Serial number for this item" msgstr "" -#: stock/models.py:657 +#: stock/models.py:664 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:662 +#: stock/models.py:669 msgid "Stock Quantity" msgstr "" -#: stock/models.py:671 +#: stock/models.py:678 msgid "Source Build" msgstr "" -#: stock/models.py:673 +#: stock/models.py:680 msgid "Build for this stock item" msgstr "" -#: stock/models.py:684 +#: stock/models.py:691 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:687 +#: stock/models.py:694 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:693 +#: stock/models.py:700 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:699 stock/templates/stock/item_base.html:429 -#: templates/js/translated/stock.js:1879 +#: stock/models.py:706 stock/templates/stock/item_base.html:429 +#: templates/js/translated/stock.js:1883 msgid "Expiry Date" msgstr "" -#: stock/models.py:700 +#: stock/models.py:707 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:713 +#: stock/models.py:720 msgid "Delete on deplete" msgstr "" -#: stock/models.py:713 +#: stock/models.py:720 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:720 stock/templates/stock/item.html:132 +#: stock/models.py:727 stock/templates/stock/item.html:132 msgid "Stock Item Notes" msgstr "" -#: stock/models.py:728 +#: stock/models.py:735 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:756 +#: stock/models.py:763 msgid "Converted to part" msgstr "" -#: stock/models.py:1235 +#: stock/models.py:1242 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1241 +#: stock/models.py:1248 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1247 +#: stock/models.py:1254 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({n})" msgstr "" -#: stock/models.py:1250 +#: stock/models.py:1257 msgid "Serial numbers must be a list of integers" msgstr "" -#: stock/models.py:1253 +#: stock/models.py:1260 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1260 +#: stock/models.py:1267 #, python-brace-format msgid "Serial numbers already exist: {exists}" msgstr "" -#: stock/models.py:1330 +#: stock/models.py:1337 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1333 +#: stock/models.py:1340 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1336 +#: stock/models.py:1343 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1339 +#: stock/models.py:1346 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1342 +#: stock/models.py:1349 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1345 +#: stock/models.py:1352 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1352 stock/serializers.py:959 +#: stock/models.py:1359 stock/serializers.py:961 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1356 +#: stock/models.py:1363 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1360 +#: stock/models.py:1367 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1364 +#: stock/models.py:1371 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:1533 +#: stock/models.py:1540 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:1994 +#: stock/models.py:2001 msgid "Entry notes" msgstr "" -#: stock/models.py:2052 +#: stock/models.py:2059 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2058 +#: stock/models.py:2065 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2077 +#: stock/models.py:2084 msgid "Test name" msgstr "" -#: stock/models.py:2083 +#: stock/models.py:2090 msgid "Test result" msgstr "" -#: stock/models.py:2089 +#: stock/models.py:2096 msgid "Test output value" msgstr "" -#: stock/models.py:2096 +#: stock/models.py:2103 msgid "Test result attachment" msgstr "" -#: stock/models.py:2102 +#: stock/models.py:2109 msgid "Test notes" msgstr "" @@ -6172,7 +6212,7 @@ msgstr "" msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:323 stock/serializers.py:916 stock/serializers.py:1149 +#: stock/serializers.py:323 stock/serializers.py:918 stock/serializers.py:1151 msgid "Destination stock location" msgstr "" @@ -6220,63 +6260,63 @@ msgstr "" msgid "Destination location for returned item" msgstr "" -#: stock/serializers.py:771 +#: stock/serializers.py:773 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:775 +#: stock/serializers.py:777 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:779 +#: stock/serializers.py:781 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:810 +#: stock/serializers.py:812 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:816 +#: stock/serializers.py:818 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:824 +#: stock/serializers.py:826 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:834 stock/serializers.py:1065 +#: stock/serializers.py:836 stock/serializers.py:1067 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:923 +#: stock/serializers.py:925 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:928 +#: stock/serializers.py:930 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:929 +#: stock/serializers.py:931 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:934 +#: stock/serializers.py:936 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:935 +#: stock/serializers.py:937 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:945 +#: stock/serializers.py:947 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1027 +#: stock/serializers.py:1029 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1055 +#: stock/serializers.py:1057 msgid "Stock transaction notes" msgstr "" @@ -6313,7 +6353,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2852 +#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2861 msgid "Install Stock Item" msgstr "" @@ -6321,7 +6361,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1518 +#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1522 msgid "Add Test Result" msgstr "" @@ -6352,7 +6392,7 @@ msgid "Stock adjustment actions" msgstr "" #: stock/templates/stock/item_base.html:80 -#: stock/templates/stock/location.html:63 templates/stock_table.html:47 +#: stock/templates/stock/location.html:68 templates/stock_table.html:47 msgid "Count stock" msgstr "" @@ -6369,7 +6409,7 @@ msgid "Serialize stock" msgstr "" #: stock/templates/stock/item_base.html:93 -#: stock/templates/stock/location.html:69 templates/stock_table.html:48 +#: stock/templates/stock/location.html:74 templates/stock_table.html:48 msgid "Transfer stock" msgstr "" @@ -6430,7 +6470,7 @@ msgid "You are not in the list of owners of this item. This stock item cannot be msgstr "" #: stock/templates/stock/item_base.html:257 -#: stock/templates/stock/location.html:127 +#: stock/templates/stock/location.html:132 msgid "Read only" msgstr "" @@ -6508,7 +6548,7 @@ msgid "Stale" msgstr "" #: stock/templates/stock/item_base.html:442 -#: templates/js/translated/company.js:985 templates/js/translated/stock.js:1895 +#: templates/js/translated/company.js:985 templates/js/translated/stock.js:1899 msgid "Last Updated" msgstr "" @@ -6552,58 +6592,58 @@ msgstr "" msgid "Select quantity to serialize, and unique serial numbers." msgstr "" -#: stock/templates/stock/location.html:33 +#: stock/templates/stock/location.html:38 msgid "Locate stock location" msgstr "" -#: stock/templates/stock/location.html:49 +#: stock/templates/stock/location.html:54 msgid "Check-in Items" msgstr "" -#: stock/templates/stock/location.html:77 +#: stock/templates/stock/location.html:82 msgid "Location actions" msgstr "" -#: stock/templates/stock/location.html:79 +#: stock/templates/stock/location.html:84 msgid "Edit location" msgstr "" -#: stock/templates/stock/location.html:81 +#: stock/templates/stock/location.html:86 msgid "Delete location" msgstr "" -#: stock/templates/stock/location.html:90 +#: stock/templates/stock/location.html:95 msgid "Create new stock location" msgstr "" -#: stock/templates/stock/location.html:91 +#: stock/templates/stock/location.html:96 msgid "New Location" msgstr "" -#: stock/templates/stock/location.html:109 -#: stock/templates/stock/location.html:115 +#: stock/templates/stock/location.html:114 +#: stock/templates/stock/location.html:120 msgid "Location Path" msgstr "" -#: stock/templates/stock/location.html:116 +#: stock/templates/stock/location.html:121 msgid "Top level stock location" msgstr "" -#: stock/templates/stock/location.html:122 +#: stock/templates/stock/location.html:127 msgid "Location Owner" msgstr "" -#: stock/templates/stock/location.html:126 +#: stock/templates/stock/location.html:131 msgid "You are not in the list of owners of this location. This stock location cannot be edited." msgstr "" -#: stock/templates/stock/location.html:142 -#: stock/templates/stock/location.html:189 +#: stock/templates/stock/location.html:147 +#: stock/templates/stock/location.html:194 #: stock/templates/stock/location_sidebar.html:5 msgid "Sublocations" msgstr "" -#: stock/templates/stock/location.html:156 templates/InvenTree/search.html:165 +#: stock/templates/stock/location.html:161 templates/InvenTree/search.html:165 #: templates/js/translated/search.js:238 users/models.py:39 msgid "Stock Locations" msgstr "" @@ -6875,15 +6915,15 @@ msgstr "" msgid "Part Settings" msgstr "" -#: templates/InvenTree/settings/part.html:44 +#: templates/InvenTree/settings/part.html:46 msgid "Part Import" msgstr "" -#: templates/InvenTree/settings/part.html:48 +#: templates/InvenTree/settings/part.html:50 msgid "Import Part" msgstr "" -#: templates/InvenTree/settings/part.html:62 +#: templates/InvenTree/settings/part.html:64 msgid "Part Parameter Templates" msgstr "" @@ -6895,47 +6935,47 @@ msgstr "" msgid "Changing the settings below require you to immediately restart the server. Do not change this while under active usage." msgstr "" -#: templates/InvenTree/settings/plugin.html:34 +#: templates/InvenTree/settings/plugin.html:36 msgid "Plugins" msgstr "" -#: templates/InvenTree/settings/plugin.html:39 +#: templates/InvenTree/settings/plugin.html:41 #: templates/js/translated/plugin.js:16 msgid "Install Plugin" msgstr "" -#: templates/InvenTree/settings/plugin.html:48 templates/navbar.html:137 +#: templates/InvenTree/settings/plugin.html:50 templates/navbar.html:137 #: users/models.py:36 msgid "Admin" msgstr "" -#: templates/InvenTree/settings/plugin.html:50 +#: templates/InvenTree/settings/plugin.html:52 #: templates/InvenTree/settings/plugin_settings.html:28 msgid "Author" msgstr "" -#: templates/InvenTree/settings/plugin.html:52 +#: templates/InvenTree/settings/plugin.html:54 #: templates/InvenTree/settings/plugin_settings.html:43 msgid "Version" msgstr "" -#: templates/InvenTree/settings/plugin.html:74 +#: templates/InvenTree/settings/plugin.html:76 msgid "Sample" msgstr "" -#: templates/InvenTree/settings/plugin.html:99 +#: templates/InvenTree/settings/plugin.html:101 msgid "Inactive plugins" msgstr "" -#: templates/InvenTree/settings/plugin.html:122 +#: templates/InvenTree/settings/plugin.html:124 msgid "Plugin Error Stack" msgstr "" -#: templates/InvenTree/settings/plugin.html:131 +#: templates/InvenTree/settings/plugin.html:133 msgid "Stage" msgstr "" -#: templates/InvenTree/settings/plugin.html:133 +#: templates/InvenTree/settings/plugin.html:135 #: templates/js/translated/notification.js:75 msgid "Message" msgstr "" @@ -6999,11 +7039,11 @@ msgstr "" msgid "Commit Message" msgstr "" -#: templates/InvenTree/settings/plugin_settings.html:117 +#: templates/InvenTree/settings/plugin_settings.html:120 msgid "Sign Status" msgstr "" -#: templates/InvenTree/settings/plugin_settings.html:122 +#: templates/InvenTree/settings/plugin_settings.html:125 msgid "Sign Key" msgstr "" @@ -7828,7 +7868,7 @@ msgstr "" msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:456 templates/js/translated/stock.js:1050 +#: templates/js/translated/barcode.js:456 templates/js/translated/stock.js:1054 msgid "Remove stock item" msgstr "" @@ -8001,7 +8041,7 @@ msgid "Includes variant and substitute stock" msgstr "" #: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822 -#: templates/js/translated/part.js:759 +#: templates/js/translated/part.js:763 msgid "Includes variant stock" msgstr "" @@ -8098,12 +8138,12 @@ msgid "Complete Build Order" msgstr "" #: templates/js/translated/build.js:263 templates/js/translated/stock.js:92 -#: templates/js/translated/stock.js:210 +#: templates/js/translated/stock.js:214 msgid "Next available serial number" msgstr "" #: templates/js/translated/build.js:265 templates/js/translated/stock.js:94 -#: templates/js/translated/stock.js:212 +#: templates/js/translated/stock.js:216 msgid "Latest serial number" msgstr "" @@ -8316,9 +8356,9 @@ msgstr "" msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1383 -#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1682 -#: templates/js/translated/stock.js:2382 +#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387 +#: templates/js/translated/part.js:1899 templates/js/translated/stock.js:1686 +#: templates/js/translated/stock.js:2386 msgid "Select" msgstr "" @@ -8330,7 +8370,7 @@ msgstr "" msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2638 +#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647 msgid "No user information" msgstr "" @@ -8403,34 +8443,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:616 -#: templates/js/translated/company.js:876 templates/js/translated/part.js:634 -#: templates/js/translated/part.js:719 +#: templates/js/translated/company.js:876 templates/js/translated/part.js:638 +#: templates/js/translated/part.js:723 msgid "Template part" msgstr "" #: templates/js/translated/company.js:620 -#: templates/js/translated/company.js:880 templates/js/translated/part.js:638 -#: templates/js/translated/part.js:723 +#: templates/js/translated/company.js:880 templates/js/translated/part.js:642 +#: templates/js/translated/part.js:727 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:748 templates/js/translated/part.js:826 +#: templates/js/translated/company.js:748 templates/js/translated/part.js:830 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:785 templates/js/translated/part.js:868 +#: templates/js/translated/company.js:785 templates/js/translated/part.js:872 msgid "Edit parameter" msgstr "" -#: templates/js/translated/company.js:786 templates/js/translated/part.js:869 +#: templates/js/translated/company.js:786 templates/js/translated/part.js:873 msgid "Delete parameter" msgstr "" -#: templates/js/translated/company.js:805 templates/js/translated/part.js:886 +#: templates/js/translated/company.js:805 templates/js/translated/part.js:890 msgid "Edit Parameter" msgstr "" -#: templates/js/translated/company.js:816 templates/js/translated/part.js:898 +#: templates/js/translated/company.js:816 templates/js/translated/part.js:902 msgid "Delete Parameter" msgstr "" @@ -8555,7 +8595,7 @@ msgid "Labels sent to printer" msgstr "" #: templates/js/translated/label.js:60 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1078 msgid "Select Stock Items" msgstr "" @@ -8865,7 +8905,7 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2140 +#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144 msgid "Stock Status" msgstr "" @@ -8889,7 +8929,7 @@ msgstr "" msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:1672 templates/js/translated/part.js:939 +#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943 msgid "No purchase orders found" msgstr "" @@ -8924,7 +8964,7 @@ msgstr "" #: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203 #: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050 -#: templates/js/translated/part.js:2126 templates/js/translated/part.js:2479 +#: templates/js/translated/part.js:2135 templates/js/translated/part.js:2488 msgid "Unit Price" msgstr "" @@ -8934,11 +8974,11 @@ msgid "Total Price" msgstr "" #: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600 -#: templates/js/translated/part.js:1046 +#: templates/js/translated/part.js:1050 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1092 +#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096 msgid "Receive line item" msgstr "" @@ -9059,7 +9099,7 @@ msgid "Delete Stock Allocation" msgstr "" #: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398 -#: templates/js/translated/stock.js:1598 +#: templates/js/translated/stock.js:1602 msgid "Shipped to customer" msgstr "" @@ -9183,241 +9223,245 @@ msgstr "" msgid "Parent part category" msgstr "" -#: templates/js/translated/part.js:318 +#: templates/js/translated/part.js:306 templates/js/translated/stock.js:118 +msgid "Icon (optional) - Explore all available icons on" +msgstr "" + +#: templates/js/translated/part.js:322 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:331 +#: templates/js/translated/part.js:335 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:333 +#: templates/js/translated/part.js:337 msgid "Any child categories will be moved to the parent of this category" msgstr "" -#: templates/js/translated/part.js:334 +#: templates/js/translated/part.js:338 msgid "Any parts in this category will be moved to the parent of this category" msgstr "" -#: templates/js/translated/part.js:339 +#: templates/js/translated/part.js:343 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:365 +#: templates/js/translated/part.js:369 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:367 +#: templates/js/translated/part.js:371 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:378 +#: templates/js/translated/part.js:382 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:430 +#: templates/js/translated/part.js:434 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:431 +#: templates/js/translated/part.js:435 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:445 +#: templates/js/translated/part.js:449 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:447 +#: templates/js/translated/part.js:451 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:448 +#: templates/js/translated/part.js:452 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:449 +#: templates/js/translated/part.js:453 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:456 +#: templates/js/translated/part.js:460 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:492 +#: templates/js/translated/part.js:496 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:494 +#: templates/js/translated/part.js:498 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:499 +#: templates/js/translated/part.js:503 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:501 +#: templates/js/translated/part.js:505 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:518 +#: templates/js/translated/part.js:522 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:528 +#: templates/js/translated/part.js:532 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:531 +#: templates/js/translated/part.js:535 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:556 +#: templates/js/translated/part.js:560 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:582 templates/js/translated/part.js:1466 +#: templates/js/translated/part.js:586 templates/js/translated/part.js:1470 #: templates/js/translated/table_filters.js:468 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:592 templates/js/translated/part.js:1478 +#: templates/js/translated/part.js:596 templates/js/translated/part.js:1482 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:626 templates/js/translated/part.js:711 +#: templates/js/translated/part.js:630 templates/js/translated/part.js:715 msgid "Trackable part" msgstr "" -#: templates/js/translated/part.js:630 templates/js/translated/part.js:715 +#: templates/js/translated/part.js:634 templates/js/translated/part.js:719 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:642 +#: templates/js/translated/part.js:646 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:646 +#: templates/js/translated/part.js:650 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:774 +#: templates/js/translated/part.js:778 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1162 +#: templates/js/translated/part.js:1166 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1186 +#: templates/js/translated/part.js:1190 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:1253 templates/js/translated/part.js:1549 +#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1553 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:1292 +#: templates/js/translated/part.js:1296 msgid "Not available" msgstr "" -#: templates/js/translated/part.js:1443 +#: templates/js/translated/part.js:1447 msgid "No category" msgstr "" -#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816 -#: templates/js/translated/stock.js:2343 +#: templates/js/translated/part.js:1577 templates/js/translated/part.js:1820 +#: templates/js/translated/stock.js:2347 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:1589 +#: templates/js/translated/part.js:1593 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:1655 +#: templates/js/translated/part.js:1659 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:1660 +#: templates/js/translated/part.js:1664 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:1665 +#: templates/js/translated/part.js:1669 msgid "Select Part Category" msgstr "" -#: templates/js/translated/part.js:1678 +#: templates/js/translated/part.js:1682 msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2362 +#: templates/js/translated/part.js:1839 templates/js/translated/stock.js:2366 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:1914 +#: templates/js/translated/part.js:1918 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:1925 +#: templates/js/translated/part.js:1934 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:1983 +#: templates/js/translated/part.js:1992 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2034 templates/js/translated/stock.js:1295 +#: templates/js/translated/part.js:2043 templates/js/translated/stock.js:1299 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:2035 templates/js/translated/stock.js:1296 -#: templates/js/translated/stock.js:1556 +#: templates/js/translated/part.js:2044 templates/js/translated/stock.js:1300 +#: templates/js/translated/stock.js:1560 msgid "Delete test result" msgstr "" -#: templates/js/translated/part.js:2041 +#: templates/js/translated/part.js:2050 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2063 +#: templates/js/translated/part.js:2072 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2077 +#: templates/js/translated/part.js:2086 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2102 +#: templates/js/translated/part.js:2111 #, python-brace-format msgid "No ${human_name} information found" msgstr "" -#: templates/js/translated/part.js:2159 +#: templates/js/translated/part.js:2168 #, python-brace-format msgid "Edit ${human_name}" msgstr "" -#: templates/js/translated/part.js:2160 +#: templates/js/translated/part.js:2169 #, python-brace-format msgid "Delete ${human_name}" msgstr "" -#: templates/js/translated/part.js:2274 +#: templates/js/translated/part.js:2283 msgid "Current Stock" msgstr "" -#: templates/js/translated/part.js:2307 +#: templates/js/translated/part.js:2316 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2333 +#: templates/js/translated/part.js:2342 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2403 +#: templates/js/translated/part.js:2412 msgid "Single Price" msgstr "" -#: templates/js/translated/part.js:2422 +#: templates/js/translated/part.js:2431 msgid "Single Price Difference" msgstr "" @@ -9511,376 +9555,376 @@ msgstr "" msgid "Parent stock location" msgstr "" -#: templates/js/translated/stock.js:140 +#: templates/js/translated/stock.js:144 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:155 +#: templates/js/translated/stock.js:159 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:169 +#: templates/js/translated/stock.js:173 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:171 +#: templates/js/translated/stock.js:175 msgid "Any child locations will be moved to the parent of this location" msgstr "" -#: templates/js/translated/stock.js:172 +#: templates/js/translated/stock.js:176 msgid "Any stock items in this location will be moved to the parent of this location" msgstr "" -#: templates/js/translated/stock.js:178 +#: templates/js/translated/stock.js:182 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:223 +#: templates/js/translated/stock.js:227 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:262 +#: templates/js/translated/stock.js:266 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:268 +#: templates/js/translated/stock.js:272 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:333 +#: templates/js/translated/stock.js:337 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:353 +#: templates/js/translated/stock.js:357 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:369 +#: templates/js/translated/stock.js:373 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:374 +#: templates/js/translated/stock.js:378 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:395 +#: templates/js/translated/stock.js:399 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:445 +#: templates/js/translated/stock.js:449 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:458 +#: templates/js/translated/stock.js:462 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:483 +#: templates/js/translated/stock.js:487 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:487 templates/js/translated/stock.js:488 +#: templates/js/translated/stock.js:491 templates/js/translated/stock.js:492 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:504 +#: templates/js/translated/stock.js:508 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:524 +#: templates/js/translated/stock.js:528 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:533 +#: templates/js/translated/stock.js:537 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:656 +#: templates/js/translated/stock.js:660 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:657 +#: templates/js/translated/stock.js:661 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:734 +#: templates/js/translated/stock.js:738 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:735 +#: templates/js/translated/stock.js:739 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:737 +#: templates/js/translated/stock.js:741 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:738 +#: templates/js/translated/stock.js:742 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:824 +#: templates/js/translated/stock.js:828 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:825 +#: templates/js/translated/stock.js:829 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:920 +#: templates/js/translated/stock.js:924 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:921 +#: templates/js/translated/stock.js:925 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:927 +#: templates/js/translated/stock.js:931 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:928 +#: templates/js/translated/stock.js:932 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:932 +#: templates/js/translated/stock.js:936 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:933 +#: templates/js/translated/stock.js:937 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:937 +#: templates/js/translated/stock.js:941 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:938 users/models.py:216 +#: templates/js/translated/stock.js:942 users/models.py:216 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:942 +#: templates/js/translated/stock.js:946 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1035 +#: templates/js/translated/stock.js:1039 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1035 +#: templates/js/translated/stock.js:1039 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1075 +#: templates/js/translated/stock.js:1079 msgid "You must select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1098 +#: templates/js/translated/stock.js:1102 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1234 +#: templates/js/translated/stock.js:1238 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1236 +#: templates/js/translated/stock.js:1240 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1241 +#: templates/js/translated/stock.js:1245 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1288 +#: templates/js/translated/stock.js:1292 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1291 +#: templates/js/translated/stock.js:1295 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1317 +#: templates/js/translated/stock.js:1321 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1374 +#: templates/js/translated/stock.js:1378 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1539 +#: templates/js/translated/stock.js:1543 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1561 +#: templates/js/translated/stock.js:1565 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1590 +#: templates/js/translated/stock.js:1594 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1594 +#: templates/js/translated/stock.js:1598 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1602 +#: templates/js/translated/stock.js:1606 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1608 +#: templates/js/translated/stock.js:1612 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1775 +#: templates/js/translated/stock.js:1779 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:1780 +#: templates/js/translated/stock.js:1784 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:1783 +#: templates/js/translated/stock.js:1787 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:1786 +#: templates/js/translated/stock.js:1790 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:1788 +#: templates/js/translated/stock.js:1792 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:1790 +#: templates/js/translated/stock.js:1794 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:1793 +#: templates/js/translated/stock.js:1797 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:1797 +#: templates/js/translated/stock.js:1801 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:1799 +#: templates/js/translated/stock.js:1803 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:1806 +#: templates/js/translated/stock.js:1810 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:1808 +#: templates/js/translated/stock.js:1812 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:1810 +#: templates/js/translated/stock.js:1814 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:1814 +#: templates/js/translated/stock.js:1818 #: templates/js/translated/table_filters.js:196 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:1865 +#: templates/js/translated/stock.js:1869 msgid "Stocktake" msgstr "" -#: templates/js/translated/stock.js:1944 +#: templates/js/translated/stock.js:1948 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:1982 +#: templates/js/translated/stock.js:1986 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2155 +#: templates/js/translated/stock.js:2159 msgid "Set Stock Status" msgstr "" -#: templates/js/translated/stock.js:2169 +#: templates/js/translated/stock.js:2173 msgid "Select Status Code" msgstr "" -#: templates/js/translated/stock.js:2170 +#: templates/js/translated/stock.js:2174 msgid "Status code must be selected" msgstr "" -#: templates/js/translated/stock.js:2400 +#: templates/js/translated/stock.js:2404 msgid "Load Subloactions" msgstr "" -#: templates/js/translated/stock.js:2484 +#: templates/js/translated/stock.js:2493 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2500 +#: templates/js/translated/stock.js:2509 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2522 +#: templates/js/translated/stock.js:2531 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2541 +#: templates/js/translated/stock.js:2550 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2560 +#: templates/js/translated/stock.js:2569 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2578 +#: templates/js/translated/stock.js:2587 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:2601 +#: templates/js/translated/stock.js:2610 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:2609 +#: templates/js/translated/stock.js:2618 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:2685 +#: templates/js/translated/stock.js:2694 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:2736 templates/js/translated/stock.js:2772 +#: templates/js/translated/stock.js:2745 templates/js/translated/stock.js:2781 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:2785 +#: templates/js/translated/stock.js:2794 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:2806 +#: templates/js/translated/stock.js:2815 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:2807 +#: templates/js/translated/stock.js:2816 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:2809 +#: templates/js/translated/stock.js:2818 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:2810 +#: templates/js/translated/stock.js:2819 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:2811 +#: templates/js/translated/stock.js:2820 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:2812 +#: templates/js/translated/stock.js:2821 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:2825 +#: templates/js/translated/stock.js:2834 msgid "Select part to install" msgstr "" diff --git a/InvenTree/locale/es_MX/LC_MESSAGES/django.po b/InvenTree/locale/es_MX/LC_MESSAGES/django.po index c606e14f18..4e340ab2d7 100644 --- a/InvenTree/locale/es_MX/LC_MESSAGES/django.po +++ b/InvenTree/locale/es_MX/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-11 02:47+0000\n" +"POT-Creation-Date: 2022-08-15 13:12+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -164,6 +164,10 @@ msgstr "" msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "" +#: InvenTree/mixins.py:71 +msgid "Remove HTML tags from this value" +msgstr "" + #: InvenTree/models.py:236 msgid "Improperly formatted pattern" msgstr "" @@ -399,99 +403,99 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/settings.py:609 +#: InvenTree/settings.py:607 msgid "Czech" msgstr "" -#: InvenTree/settings.py:610 +#: InvenTree/settings.py:608 msgid "German" msgstr "" -#: InvenTree/settings.py:611 +#: InvenTree/settings.py:609 msgid "Greek" msgstr "" -#: InvenTree/settings.py:612 +#: InvenTree/settings.py:610 msgid "English" msgstr "" -#: InvenTree/settings.py:613 +#: InvenTree/settings.py:611 msgid "Spanish" msgstr "" -#: InvenTree/settings.py:614 +#: InvenTree/settings.py:612 msgid "Spanish (Mexican)" msgstr "" -#: InvenTree/settings.py:615 +#: InvenTree/settings.py:613 msgid "Farsi / Persian" msgstr "" -#: InvenTree/settings.py:616 +#: InvenTree/settings.py:614 msgid "French" msgstr "" -#: InvenTree/settings.py:617 +#: InvenTree/settings.py:615 msgid "Hebrew" msgstr "" -#: InvenTree/settings.py:618 +#: InvenTree/settings.py:616 msgid "Hungarian" msgstr "" -#: InvenTree/settings.py:619 +#: InvenTree/settings.py:617 msgid "Italian" msgstr "" -#: InvenTree/settings.py:620 +#: InvenTree/settings.py:618 msgid "Japanese" msgstr "" -#: InvenTree/settings.py:621 +#: InvenTree/settings.py:619 msgid "Korean" msgstr "" -#: InvenTree/settings.py:622 +#: InvenTree/settings.py:620 msgid "Dutch" msgstr "" -#: InvenTree/settings.py:623 +#: InvenTree/settings.py:621 msgid "Norwegian" msgstr "" -#: InvenTree/settings.py:624 +#: InvenTree/settings.py:622 msgid "Polish" msgstr "" -#: InvenTree/settings.py:625 +#: InvenTree/settings.py:623 msgid "Portuguese" msgstr "" -#: InvenTree/settings.py:626 +#: InvenTree/settings.py:624 msgid "Portuguese (Brazilian)" msgstr "" -#: InvenTree/settings.py:627 +#: InvenTree/settings.py:625 msgid "Russian" msgstr "" -#: InvenTree/settings.py:628 +#: InvenTree/settings.py:626 msgid "Swedish" msgstr "" -#: InvenTree/settings.py:629 +#: InvenTree/settings.py:627 msgid "Thai" msgstr "" -#: InvenTree/settings.py:630 +#: InvenTree/settings.py:628 msgid "Turkish" msgstr "" -#: InvenTree/settings.py:631 +#: InvenTree/settings.py:629 msgid "Vietnamese" msgstr "" -#: InvenTree/settings.py:632 +#: InvenTree/settings.py:630 msgid "Chinese" msgstr "" @@ -5747,12 +5751,12 @@ msgstr "" msgid "No valid objects provided to template" msgstr "" -#: report/api.py:216 report/api.py:257 +#: report/api.py:216 report/api.py:252 #, python-brace-format msgid "Template file '{template}' is missing or does not exist" msgstr "" -#: report/api.py:360 +#: report/api.py:355 msgid "Test report" msgstr "" diff --git a/InvenTree/locale/fa/LC_MESSAGES/django.po b/InvenTree/locale/fa/LC_MESSAGES/django.po index 74875782ba..f1b3fef13f 100644 --- a/InvenTree/locale/fa/LC_MESSAGES/django.po +++ b/InvenTree/locale/fa/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-11 02:47+0000\n" -"PO-Revision-Date: 2022-08-11 13:49\n" +"POT-Creation-Date: 2022-08-16 11:53+0000\n" +"PO-Revision-Date: 2022-08-16 21:35\n" "Last-Translator: \n" "Language-Team: Persian\n" "Language: fa_IR\n" @@ -36,15 +36,15 @@ msgstr "" #: order/templates/order/so_sidebar.html:17 #: part/templates/part/part_sidebar.html:59 #: report/templates/report/inventree_build_order_base.html:172 -#: stock/models.py:1993 stock/models.py:2101 stock/serializers.py:329 -#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:823 -#: stock/serializers.py:922 stock/serializers.py:1054 +#: stock/models.py:2000 stock/models.py:2108 stock/serializers.py:329 +#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825 +#: stock/serializers.py:924 stock/serializers.py:1056 #: stock/templates/stock/stock_sidebar.html:25 #: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101 #: templates/js/translated/company.js:964 templates/js/translated/order.js:2104 #: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753 #: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102 -#: templates/js/translated/stock.js:1370 templates/js/translated/stock.js:1976 +#: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980 msgid "Notes" msgstr "" @@ -163,6 +163,10 @@ msgstr "" msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "" +#: InvenTree/mixins.py:71 +msgid "Remove HTML tags from this value" +msgstr "" + #: InvenTree/models.py:236 msgid "Improperly formatted pattern" msgstr "" @@ -195,7 +199,7 @@ msgstr "" msgid "Missing external link" msgstr "" -#: InvenTree/models.py:395 stock/models.py:2095 +#: InvenTree/models.py:395 stock/models.py:2102 #: templates/js/translated/attachment.js:103 #: templates/js/translated/attachment.js:241 msgid "Attachment" @@ -207,16 +211,16 @@ msgstr "" #: InvenTree/models.py:402 company/models.py:124 company/models.py:276 #: company/models.py:510 order/models.py:84 order/models.py:1245 -#: part/models.py:795 +#: part/models.py:802 #: report/templates/report/inventree_build_order_base.html:164 #: templates/js/translated/company.js:656 #: templates/js/translated/company.js:948 templates/js/translated/order.js:2742 -#: templates/js/translated/part.js:1510 +#: templates/js/translated/part.js:1514 msgid "Link" msgstr "" -#: InvenTree/models.py:403 build/models.py:296 part/models.py:796 -#: stock/models.py:651 +#: InvenTree/models.py:403 build/models.py:296 part/models.py:803 +#: stock/models.py:658 msgid "Link to external URL" msgstr "" @@ -229,12 +233,12 @@ msgstr "" msgid "File comment" msgstr "" -#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1646 -#: common/models.py:1647 common/models.py:1870 common/models.py:1871 -#: common/models.py:2133 common/models.py:2134 part/models.py:2193 -#: part/models.py:2213 plugin/models.py:238 plugin/models.py:239 +#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665 +#: common/models.py:1666 common/models.py:1889 common/models.py:1890 +#: common/models.py:2152 common/models.py:2153 part/models.py:2200 +#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2632 +#: templates/js/translated/stock.js:2641 msgid "User" msgstr "" @@ -271,19 +275,19 @@ msgstr "" msgid "Invalid choice" msgstr "" -#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1856 -#: company/models.py:358 label/models.py:101 part/models.py:739 -#: part/models.py:2371 plugin/models.py:93 report/models.py:152 +#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875 +#: company/models.py:358 label/models.py:101 part/models.py:746 +#: part/models.py:2378 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 -#: templates/InvenTree/settings/plugin.html:49 -#: templates/InvenTree/settings/plugin.html:132 +#: templates/InvenTree/settings/plugin.html:51 +#: templates/InvenTree/settings/plugin.html:134 #: templates/InvenTree/settings/plugin_settings.html:23 #: templates/InvenTree/settings/settings.html:347 #: templates/js/translated/company.js:545 #: templates/js/translated/company.js:758 #: templates/js/translated/notification.js:71 -#: templates/js/translated/part.js:684 templates/js/translated/part.js:836 -#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2388 +#: templates/js/translated/part.js:688 templates/js/translated/part.js:840 +#: templates/js/translated/part.js:1906 templates/js/translated/stock.js:2392 msgid "Name" msgstr "" @@ -292,21 +296,21 @@ msgstr "" #: company/models.py:516 company/templates/company/company_base.html:71 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:87 label/models.py:108 -#: order/models.py:82 part/models.py:762 part/templates/part/category.html:74 +#: order/models.py:82 part/models.py:769 part/templates/part/category.html:80 #: part/templates/part/part_base.html:167 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 -#: stock/templates/stock/location.html:103 +#: stock/templates/stock/location.html:108 #: templates/InvenTree/settings/plugin_settings.html:33 #: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848 #: templates/js/translated/build.js:2471 templates/js/translated/company.js:409 #: templates/js/translated/company.js:667 #: templates/js/translated/company.js:959 templates/js/translated/order.js:1720 #: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531 -#: templates/js/translated/part.js:743 templates/js/translated/part.js:1149 -#: templates/js/translated/part.js:1424 templates/js/translated/part.js:1933 -#: templates/js/translated/part.js:2002 templates/js/translated/stock.js:1739 -#: templates/js/translated/stock.js:2415 templates/js/translated/stock.js:2469 +#: templates/js/translated/part.js:747 templates/js/translated/part.js:1153 +#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1942 +#: templates/js/translated/part.js:2011 templates/js/translated/stock.js:1743 +#: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478 msgid "Description" msgstr "" @@ -319,7 +323,7 @@ msgid "parent" msgstr "" #: InvenTree/models.py:560 InvenTree/models.py:561 -#: templates/js/translated/part.js:1939 templates/js/translated/stock.js:2421 +#: templates/js/translated/part.js:1948 templates/js/translated/stock.js:2430 msgid "Path" msgstr "" @@ -331,7 +335,7 @@ msgstr "" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:55 part/models.py:2692 +#: InvenTree/serializers.py:55 part/models.py:2699 msgid "Must be a valid number" msgstr "" @@ -398,99 +402,99 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/settings.py:609 +#: InvenTree/settings.py:607 msgid "Czech" msgstr "" -#: InvenTree/settings.py:610 +#: InvenTree/settings.py:608 msgid "German" msgstr "" -#: InvenTree/settings.py:611 +#: InvenTree/settings.py:609 msgid "Greek" msgstr "" -#: InvenTree/settings.py:612 +#: InvenTree/settings.py:610 msgid "English" msgstr "" -#: InvenTree/settings.py:613 +#: InvenTree/settings.py:611 msgid "Spanish" msgstr "" -#: InvenTree/settings.py:614 +#: InvenTree/settings.py:612 msgid "Spanish (Mexican)" msgstr "" -#: InvenTree/settings.py:615 +#: InvenTree/settings.py:613 msgid "Farsi / Persian" msgstr "" -#: InvenTree/settings.py:616 +#: InvenTree/settings.py:614 msgid "French" msgstr "" -#: InvenTree/settings.py:617 +#: InvenTree/settings.py:615 msgid "Hebrew" msgstr "" -#: InvenTree/settings.py:618 +#: InvenTree/settings.py:616 msgid "Hungarian" msgstr "" -#: InvenTree/settings.py:619 +#: InvenTree/settings.py:617 msgid "Italian" msgstr "" -#: InvenTree/settings.py:620 +#: InvenTree/settings.py:618 msgid "Japanese" msgstr "" -#: InvenTree/settings.py:621 +#: InvenTree/settings.py:619 msgid "Korean" msgstr "" -#: InvenTree/settings.py:622 +#: InvenTree/settings.py:620 msgid "Dutch" msgstr "" -#: InvenTree/settings.py:623 +#: InvenTree/settings.py:621 msgid "Norwegian" msgstr "" -#: InvenTree/settings.py:624 +#: InvenTree/settings.py:622 msgid "Polish" msgstr "" -#: InvenTree/settings.py:625 +#: InvenTree/settings.py:623 msgid "Portuguese" msgstr "" -#: InvenTree/settings.py:626 +#: InvenTree/settings.py:624 msgid "Portuguese (Brazilian)" msgstr "" -#: InvenTree/settings.py:627 +#: InvenTree/settings.py:625 msgid "Russian" msgstr "" -#: InvenTree/settings.py:628 +#: InvenTree/settings.py:626 msgid "Swedish" msgstr "" -#: InvenTree/settings.py:629 +#: InvenTree/settings.py:627 msgid "Thai" msgstr "" -#: InvenTree/settings.py:630 +#: InvenTree/settings.py:628 msgid "Turkish" msgstr "" -#: InvenTree/settings.py:631 +#: InvenTree/settings.py:629 msgid "Vietnamese" msgstr "" -#: InvenTree/settings.py:632 +#: InvenTree/settings.py:630 msgid "Chinese" msgstr "" @@ -621,7 +625,7 @@ msgstr "" msgid "Split child item" msgstr "" -#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2080 +#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2084 msgid "Merged stock items" msgstr "" @@ -743,7 +747,7 @@ msgid "Build Order Reference" msgstr "" #: build/models.py:166 order/models.py:240 order/models.py:623 -#: order/models.py:904 part/models.py:2610 +#: order/models.py:904 part/models.py:2617 #: part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 @@ -770,10 +774,10 @@ msgstr "" #: build/models.py:191 build/templates/build/build_base.html:77 #: build/templates/build/detail.html:29 company/models.py:670 #: order/models.py:1001 order/models.py:1112 order/models.py:1113 -#: part/models.py:336 part/models.py:2139 part/models.py:2154 -#: part/models.py:2173 part/models.py:2191 part/models.py:2290 -#: part/models.py:2410 part/models.py:2500 part/models.py:2585 -#: part/models.py:2861 part/serializers.py:811 +#: part/models.py:343 part/models.py:2146 part/models.py:2161 +#: part/models.py:2180 part/models.py:2198 part/models.py:2297 +#: part/models.py:2417 part/models.py:2507 part/models.py:2592 +#: part/models.py:2868 part/serializers.py:813 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -796,11 +800,11 @@ msgstr "" #: templates/js/translated/order.js:934 templates/js/translated/order.js:1387 #: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885 #: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507 -#: templates/js/translated/part.js:1134 templates/js/translated/part.js:1206 -#: templates/js/translated/part.js:1402 templates/js/translated/stock.js:582 -#: templates/js/translated/stock.js:747 templates/js/translated/stock.js:954 -#: templates/js/translated/stock.js:1696 templates/js/translated/stock.js:2495 -#: templates/js/translated/stock.js:2690 templates/js/translated/stock.js:2824 +#: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210 +#: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586 +#: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958 +#: templates/js/translated/stock.js:1700 templates/js/translated/stock.js:2504 +#: templates/js/translated/stock.js:2699 templates/js/translated/stock.js:2833 msgid "Part" msgstr "" @@ -858,7 +862,7 @@ msgid "Build status code" msgstr "" #: build/models.py:251 build/serializers.py:225 order/serializers.py:447 -#: stock/models.py:655 templates/js/translated/order.js:1247 +#: stock/models.py:662 templates/js/translated/order.js:1247 msgid "Batch Code" msgstr "" @@ -866,7 +870,7 @@ msgstr "" msgid "Batch code for this build output" msgstr "" -#: build/models.py:258 order/models.py:86 part/models.py:931 +#: build/models.py:258 order/models.py:86 part/models.py:938 #: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544 msgid "Creation Date" msgstr "" @@ -899,7 +903,7 @@ msgstr "" #: build/models.py:289 build/templates/build/build_base.html:190 #: build/templates/build/detail.html:115 order/models.py:100 #: order/templates/order/order_base.html:176 -#: order/templates/order/sales_order_base.html:183 part/models.py:935 +#: order/templates/order/sales_order_base.html:183 part/models.py:942 #: report/templates/report/inventree_build_order_base.html:158 #: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754 msgid "Responsible" @@ -912,7 +916,7 @@ msgstr "" #: build/models.py:295 build/templates/build/detail.html:101 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:153 -#: part/templates/part/part_base.html:346 stock/models.py:649 +#: part/templates/part/part_base.html:346 stock/models.py:656 #: stock/templates/stock/item_base.html:205 msgid "External Link" msgstr "" @@ -978,8 +982,8 @@ msgid "Build to allocate parts" msgstr "" #: build/models.py:1345 build/serializers.py:645 order/serializers.py:1015 -#: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 -#: stock/serializers.py:880 stock/templates/stock/item_base.html:10 +#: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:756 +#: stock/serializers.py:882 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:199 #: templates/js/translated/build.js:741 templates/js/translated/build.js:746 @@ -987,8 +991,8 @@ msgstr "" #: templates/js/translated/order.js:104 templates/js/translated/order.js:2886 #: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193 #: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380 -#: templates/js/translated/stock.js:583 templates/js/translated/stock.js:748 -#: templates/js/translated/stock.js:2568 +#: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752 +#: templates/js/translated/stock.js:2577 msgid "Stock Item" msgstr "" @@ -998,11 +1002,11 @@ msgstr "" #: build/models.py:1358 build/serializers.py:193 #: build/templates/build/build_base.html:82 -#: build/templates/build/detail.html:34 common/models.py:1678 +#: build/templates/build/detail.html:34 common/models.py:1697 #: company/templates/company/supplier_part.html:279 order/models.py:897 #: order/models.py:1423 order/serializers.py:1155 #: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40 -#: part/models.py:2601 part/templates/part/detail.html:937 +#: part/models.py:2608 part/templates/part/detail.html:937 #: part/templates/part/detail.html:1023 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 @@ -1025,11 +1029,11 @@ msgstr "" #: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207 #: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386 #: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037 -#: templates/js/translated/part.js:1034 templates/js/translated/part.js:2147 -#: templates/js/translated/part.js:2378 templates/js/translated/part.js:2412 -#: templates/js/translated/part.js:2490 templates/js/translated/stock.js:454 -#: templates/js/translated/stock.js:608 templates/js/translated/stock.js:778 -#: templates/js/translated/stock.js:2617 templates/js/translated/stock.js:2702 +#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2156 +#: templates/js/translated/part.js:2387 templates/js/translated/part.js:2421 +#: templates/js/translated/part.js:2499 templates/js/translated/stock.js:458 +#: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782 +#: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711 msgid "Quantity" msgstr "" @@ -1071,8 +1075,8 @@ msgid "Enter quantity for build output" msgstr "" #: build/serializers.py:208 build/serializers.py:665 order/models.py:318 -#: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 -#: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 +#: order/serializers.py:287 order/serializers.py:442 part/serializers.py:544 +#: part/serializers.py:976 stock/models.py:484 stock/models.py:1251 #: stock/serializers.py:302 msgid "Quantity must be greater than zero" msgstr "" @@ -1087,7 +1091,7 @@ msgstr "" #: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159 #: stock/serializers.py:311 templates/js/translated/order.js:1258 -#: templates/js/translated/stock.js:267 templates/js/translated/stock.js:455 +#: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459 msgid "Serial Numbers" msgstr "" @@ -1113,16 +1117,16 @@ msgstr "" #: build/serializers.py:366 order/serializers.py:428 order/serializers.py:532 #: stock/serializers.py:322 stock/serializers.py:453 stock/serializers.py:534 -#: stock/serializers.py:915 stock/serializers.py:1148 +#: stock/serializers.py:917 stock/serializers.py:1150 #: stock/templates/stock/item_base.html:390 #: templates/js/translated/barcode.js:436 #: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753 #: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285 #: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305 #: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394 -#: templates/js/translated/part.js:181 templates/js/translated/stock.js:584 -#: templates/js/translated/stock.js:749 templates/js/translated/stock.js:956 -#: templates/js/translated/stock.js:1850 templates/js/translated/stock.js:2509 +#: templates/js/translated/part.js:181 templates/js/translated/stock.js:588 +#: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960 +#: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518 msgid "Location" msgstr "" @@ -1135,8 +1139,8 @@ msgstr "" #: order/serializers.py:465 stock/templates/stock/item_base.html:423 #: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505 #: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724 -#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1825 -#: templates/js/translated/stock.js:2586 templates/js/translated/stock.js:2718 +#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829 +#: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727 msgid "Status" msgstr "" @@ -1212,8 +1216,8 @@ msgstr "" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:577 build/serializers.py:622 part/models.py:2719 -#: part/models.py:2853 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726 +#: part/models.py:2860 msgid "BOM Item" msgstr "" @@ -1229,7 +1233,7 @@ msgstr "" msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:651 stock/serializers.py:767 +#: build/serializers.py:651 stock/serializers.py:769 msgid "Item must be in stock" msgstr "" @@ -1367,7 +1371,7 @@ msgstr "" #: report/templates/report/inventree_build_order_base.html:125 #: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741 #: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552 -#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1038 +#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042 msgid "Target Date" msgstr "" @@ -1445,8 +1449,8 @@ msgstr "" #: stock/templates/stock/item_base.html:170 #: templates/js/translated/build.js:1182 #: templates/js/translated/model_renderers.js:124 -#: templates/js/translated/stock.js:1022 templates/js/translated/stock.js:1839 -#: templates/js/translated/stock.js:2725 +#: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843 +#: templates/js/translated/stock.js:2734 #: templates/js/translated/table_filters.js:159 #: templates/js/translated/table_filters.js:250 msgid "Batch" @@ -1506,7 +1510,7 @@ msgstr "" #: build/templates/build/detail.html:187 #: company/templates/company/detail.html:37 #: company/templates/company/detail.html:85 -#: part/templates/part/category.html:177 templates/js/translated/order.js:977 +#: part/templates/part/category.html:183 templates/js/translated/order.js:977 msgid "Order Parts" msgstr "" @@ -1559,12 +1563,12 @@ msgid "Delete outputs" msgstr "" #: build/templates/build/detail.html:267 -#: stock/templates/stock/location.html:197 templates/stock_table.html:27 +#: stock/templates/stock/location.html:202 templates/stock_table.html:27 msgid "Printing Actions" msgstr "" #: build/templates/build/detail.html:271 build/templates/build/detail.html:272 -#: stock/templates/stock/location.html:201 templates/stock_table.html:31 +#: stock/templates/stock/location.html:206 templates/stock_table.html:31 msgid "Print labels" msgstr "" @@ -1841,7 +1845,7 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:951 part/models.py:2412 report/models.py:158 +#: common/models.py:951 part/models.py:2419 report/models.py:158 #: templates/js/translated/table_filters.js:38 #: templates/js/translated/table_filters.js:484 msgid "Template" @@ -1851,7 +1855,7 @@ msgstr "" msgid "Parts are templates by default" msgstr "" -#: common/models.py:958 part/models.py:887 templates/js/translated/bom.js:1448 +#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448 #: templates/js/translated/table_filters.js:176 #: templates/js/translated/table_filters.js:447 msgid "Assembly" @@ -1861,7 +1865,7 @@ msgstr "" msgid "Parts can be assembled from other components by default" msgstr "" -#: common/models.py:965 part/models.py:893 +#: common/models.py:965 part/models.py:900 #: templates/js/translated/table_filters.js:455 msgid "Component" msgstr "" @@ -1870,7 +1874,7 @@ msgstr "" msgid "Parts can be used as sub-components by default" msgstr "" -#: common/models.py:972 part/models.py:904 +#: common/models.py:972 part/models.py:911 msgid "Purchaseable" msgstr "" @@ -1878,7 +1882,7 @@ msgstr "" msgid "Parts are purchaseable by default" msgstr "" -#: common/models.py:979 part/models.py:909 +#: common/models.py:979 part/models.py:916 #: templates/js/translated/table_filters.js:476 msgid "Salable" msgstr "" @@ -1887,7 +1891,7 @@ msgstr "" msgid "Parts are salable by default" msgstr "" -#: common/models.py:986 part/models.py:899 +#: common/models.py:986 part/models.py:906 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:108 #: templates/js/translated/table_filters.js:488 @@ -1898,7 +1902,7 @@ msgstr "" msgid "Parts are trackable by default" msgstr "" -#: common/models.py:993 part/models.py:919 +#: common/models.py:993 part/models.py:926 #: part/templates/part/part_base.html:151 #: templates/js/translated/table_filters.js:42 #: templates/js/translated/table_filters.js:492 @@ -1982,608 +1986,632 @@ msgid "Format to display the part name" msgstr "" #: common/models.py:1074 -msgid "Enable label printing" +msgid "Part Category Default Icon" msgstr "" #: common/models.py:1075 -msgid "Enable label printing from the web interface" +msgid "Part category default icon (empty means no icon)" +msgstr "" + +#: common/models.py:1080 +msgid "Enable label printing" msgstr "" #: common/models.py:1081 +msgid "Enable label printing from the web interface" +msgstr "" + +#: common/models.py:1087 msgid "Label Image DPI" msgstr "" -#: common/models.py:1082 +#: common/models.py:1088 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/models.py:1091 +#: common/models.py:1097 msgid "Enable Reports" msgstr "" -#: common/models.py:1092 +#: common/models.py:1098 msgid "Enable generation of reports" msgstr "" -#: common/models.py:1098 templates/stats.html:25 +#: common/models.py:1104 templates/stats.html:25 msgid "Debug Mode" msgstr "" -#: common/models.py:1099 +#: common/models.py:1105 msgid "Generate reports in debug mode (HTML output)" msgstr "" -#: common/models.py:1105 +#: common/models.py:1111 msgid "Page Size" msgstr "" -#: common/models.py:1106 +#: common/models.py:1112 msgid "Default page size for PDF reports" msgstr "" -#: common/models.py:1116 +#: common/models.py:1122 msgid "Enable Test Reports" msgstr "" -#: common/models.py:1117 +#: common/models.py:1123 msgid "Enable generation of test reports" msgstr "" -#: common/models.py:1123 +#: common/models.py:1129 msgid "Attach Test Reports" msgstr "" -#: common/models.py:1124 +#: common/models.py:1130 msgid "When printing a Test Report, attach a copy of the Test Report to the associated Stock Item" msgstr "" -#: common/models.py:1130 +#: common/models.py:1136 msgid "Batch Code Template" msgstr "" -#: common/models.py:1131 +#: common/models.py:1137 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/models.py:1136 +#: common/models.py:1142 msgid "Stock Expiry" msgstr "" -#: common/models.py:1137 +#: common/models.py:1143 msgid "Enable stock expiry functionality" msgstr "" -#: common/models.py:1143 +#: common/models.py:1149 msgid "Sell Expired Stock" msgstr "" -#: common/models.py:1144 +#: common/models.py:1150 msgid "Allow sale of expired stock" msgstr "" -#: common/models.py:1150 +#: common/models.py:1156 msgid "Stock Stale Time" msgstr "" -#: common/models.py:1151 +#: common/models.py:1157 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/models.py:1153 +#: common/models.py:1159 msgid "days" msgstr "" -#: common/models.py:1158 +#: common/models.py:1164 msgid "Build Expired Stock" msgstr "" -#: common/models.py:1159 +#: common/models.py:1165 msgid "Allow building with expired stock" msgstr "" -#: common/models.py:1165 +#: common/models.py:1171 msgid "Stock Ownership Control" msgstr "" -#: common/models.py:1166 +#: common/models.py:1172 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/models.py:1172 -msgid "Build Order Reference Pattern" -msgstr "" - -#: common/models.py:1173 -msgid "Required pattern for generating Build Order reference field" +#: common/models.py:1178 +msgid "Stock Location Default Icon" msgstr "" #: common/models.py:1179 +msgid "Stock location default icon (empty means no icon)" +msgstr "" + +#: common/models.py:1184 +msgid "Build Order Reference Pattern" +msgstr "" + +#: common/models.py:1185 +msgid "Required pattern for generating Build Order reference field" +msgstr "" + +#: common/models.py:1191 msgid "Sales Order Reference Pattern" msgstr "" -#: common/models.py:1180 +#: common/models.py:1192 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/models.py:1186 +#: common/models.py:1198 msgid "Sales Order Default Shipment" msgstr "" -#: common/models.py:1187 +#: common/models.py:1199 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/models.py:1193 +#: common/models.py:1205 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/models.py:1194 +#: common/models.py:1206 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/models.py:1201 +#: common/models.py:1213 msgid "Enable password forgot" msgstr "" -#: common/models.py:1202 +#: common/models.py:1214 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/models.py:1208 +#: common/models.py:1220 msgid "Enable registration" msgstr "" -#: common/models.py:1209 +#: common/models.py:1221 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/models.py:1215 +#: common/models.py:1227 msgid "Enable SSO" msgstr "" -#: common/models.py:1216 +#: common/models.py:1228 msgid "Enable SSO on the login pages" msgstr "" -#: common/models.py:1222 +#: common/models.py:1234 msgid "Email required" msgstr "" -#: common/models.py:1223 +#: common/models.py:1235 msgid "Require user to supply mail on signup" msgstr "" -#: common/models.py:1229 +#: common/models.py:1241 msgid "Auto-fill SSO users" msgstr "" -#: common/models.py:1230 +#: common/models.py:1242 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/models.py:1236 +#: common/models.py:1248 msgid "Mail twice" msgstr "" -#: common/models.py:1237 +#: common/models.py:1249 msgid "On signup ask users twice for their mail" msgstr "" -#: common/models.py:1243 +#: common/models.py:1255 msgid "Password twice" msgstr "" -#: common/models.py:1244 +#: common/models.py:1256 msgid "On signup ask users twice for their password" msgstr "" -#: common/models.py:1250 +#: common/models.py:1262 msgid "Group on signup" msgstr "" -#: common/models.py:1251 +#: common/models.py:1263 msgid "Group to which new users are assigned on registration" msgstr "" -#: common/models.py:1257 +#: common/models.py:1269 msgid "Enforce MFA" msgstr "" -#: common/models.py:1258 +#: common/models.py:1270 msgid "Users must use multifactor security." msgstr "" -#: common/models.py:1264 +#: common/models.py:1276 msgid "Check plugins on startup" msgstr "" -#: common/models.py:1265 +#: common/models.py:1277 msgid "Check that all plugins are installed on startup - enable in container enviroments" msgstr "" -#: common/models.py:1273 +#: common/models.py:1284 +msgid "Check plugin signatures" +msgstr "" + +#: common/models.py:1285 +msgid "Check and show signatures for plugins" +msgstr "" + +#: common/models.py:1292 msgid "Enable URL integration" msgstr "" -#: common/models.py:1274 +#: common/models.py:1293 msgid "Enable plugins to add URL routes" msgstr "" -#: common/models.py:1281 +#: common/models.py:1300 msgid "Enable navigation integration" msgstr "" -#: common/models.py:1282 +#: common/models.py:1301 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/models.py:1289 +#: common/models.py:1308 msgid "Enable app integration" msgstr "" -#: common/models.py:1290 +#: common/models.py:1309 msgid "Enable plugins to add apps" msgstr "" -#: common/models.py:1297 +#: common/models.py:1316 msgid "Enable schedule integration" msgstr "" -#: common/models.py:1298 +#: common/models.py:1317 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/models.py:1305 +#: common/models.py:1324 msgid "Enable event integration" msgstr "" -#: common/models.py:1306 +#: common/models.py:1325 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:1323 common/models.py:1639 +#: common/models.py:1342 common/models.py:1658 msgid "Settings key (must be unique - case insensitive" msgstr "" -#: common/models.py:1345 +#: common/models.py:1364 msgid "Show subscribed parts" msgstr "" -#: common/models.py:1346 +#: common/models.py:1365 msgid "Show subscribed parts on the homepage" msgstr "" -#: common/models.py:1352 +#: common/models.py:1371 msgid "Show subscribed categories" msgstr "" -#: common/models.py:1353 +#: common/models.py:1372 msgid "Show subscribed part categories on the homepage" msgstr "" -#: common/models.py:1359 +#: common/models.py:1378 msgid "Show latest parts" msgstr "" -#: common/models.py:1360 +#: common/models.py:1379 msgid "Show latest parts on the homepage" msgstr "" -#: common/models.py:1366 +#: common/models.py:1385 msgid "Recent Part Count" msgstr "" -#: common/models.py:1367 +#: common/models.py:1386 msgid "Number of recent parts to display on index page" msgstr "" -#: common/models.py:1373 +#: common/models.py:1392 msgid "Show unvalidated BOMs" msgstr "" -#: common/models.py:1374 +#: common/models.py:1393 msgid "Show BOMs that await validation on the homepage" msgstr "" -#: common/models.py:1380 +#: common/models.py:1399 msgid "Show recent stock changes" msgstr "" -#: common/models.py:1381 +#: common/models.py:1400 msgid "Show recently changed stock items on the homepage" msgstr "" -#: common/models.py:1387 +#: common/models.py:1406 msgid "Recent Stock Count" msgstr "" -#: common/models.py:1388 +#: common/models.py:1407 msgid "Number of recent stock items to display on index page" msgstr "" -#: common/models.py:1394 +#: common/models.py:1413 msgid "Show low stock" msgstr "" -#: common/models.py:1395 +#: common/models.py:1414 msgid "Show low stock items on the homepage" msgstr "" -#: common/models.py:1401 +#: common/models.py:1420 msgid "Show depleted stock" msgstr "" -#: common/models.py:1402 +#: common/models.py:1421 msgid "Show depleted stock items on the homepage" msgstr "" -#: common/models.py:1408 +#: common/models.py:1427 msgid "Show needed stock" msgstr "" -#: common/models.py:1409 +#: common/models.py:1428 msgid "Show stock items needed for builds on the homepage" msgstr "" -#: common/models.py:1415 +#: common/models.py:1434 msgid "Show expired stock" msgstr "" -#: common/models.py:1416 +#: common/models.py:1435 msgid "Show expired stock items on the homepage" msgstr "" -#: common/models.py:1422 +#: common/models.py:1441 msgid "Show stale stock" msgstr "" -#: common/models.py:1423 +#: common/models.py:1442 msgid "Show stale stock items on the homepage" msgstr "" -#: common/models.py:1429 +#: common/models.py:1448 msgid "Show pending builds" msgstr "" -#: common/models.py:1430 +#: common/models.py:1449 msgid "Show pending builds on the homepage" msgstr "" -#: common/models.py:1436 +#: common/models.py:1455 msgid "Show overdue builds" msgstr "" -#: common/models.py:1437 +#: common/models.py:1456 msgid "Show overdue builds on the homepage" msgstr "" -#: common/models.py:1443 +#: common/models.py:1462 msgid "Show outstanding POs" msgstr "" -#: common/models.py:1444 +#: common/models.py:1463 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:1450 +#: common/models.py:1469 msgid "Show overdue POs" msgstr "" -#: common/models.py:1451 +#: common/models.py:1470 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:1457 +#: common/models.py:1476 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:1458 +#: common/models.py:1477 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:1464 +#: common/models.py:1483 msgid "Show overdue SOs" msgstr "" -#: common/models.py:1465 +#: common/models.py:1484 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:1471 +#: common/models.py:1490 msgid "Inline label display" msgstr "" -#: common/models.py:1472 +#: common/models.py:1491 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1478 +#: common/models.py:1497 msgid "Inline report display" msgstr "" -#: common/models.py:1479 +#: common/models.py:1498 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1485 +#: common/models.py:1504 msgid "Search Parts" msgstr "" -#: common/models.py:1486 +#: common/models.py:1505 msgid "Display parts in search preview window" msgstr "" -#: common/models.py:1492 +#: common/models.py:1511 msgid "Seach Supplier Parts" msgstr "" -#: common/models.py:1493 +#: common/models.py:1512 msgid "Display supplier parts in search preview window" msgstr "" -#: common/models.py:1499 +#: common/models.py:1518 msgid "Search Manufacturer Parts" msgstr "" -#: common/models.py:1500 +#: common/models.py:1519 msgid "Display manufacturer parts in search preview window" msgstr "" -#: common/models.py:1506 +#: common/models.py:1525 msgid "Hide Inactive Parts" msgstr "" -#: common/models.py:1507 +#: common/models.py:1526 msgid "Excluded inactive parts from search preview window" msgstr "" -#: common/models.py:1513 +#: common/models.py:1532 msgid "Search Categories" msgstr "" -#: common/models.py:1514 +#: common/models.py:1533 msgid "Display part categories in search preview window" msgstr "" -#: common/models.py:1520 +#: common/models.py:1539 msgid "Search Stock" msgstr "" -#: common/models.py:1521 +#: common/models.py:1540 msgid "Display stock items in search preview window" msgstr "" -#: common/models.py:1527 +#: common/models.py:1546 msgid "Hide Unavailable Stock Items" msgstr "" -#: common/models.py:1528 +#: common/models.py:1547 msgid "Exclude stock items which are not available from the search preview window" msgstr "" -#: common/models.py:1534 +#: common/models.py:1553 msgid "Search Locations" msgstr "" -#: common/models.py:1535 +#: common/models.py:1554 msgid "Display stock locations in search preview window" msgstr "" -#: common/models.py:1541 +#: common/models.py:1560 msgid "Search Companies" msgstr "" -#: common/models.py:1542 +#: common/models.py:1561 msgid "Display companies in search preview window" msgstr "" -#: common/models.py:1548 +#: common/models.py:1567 msgid "Search Purchase Orders" msgstr "" -#: common/models.py:1549 +#: common/models.py:1568 msgid "Display purchase orders in search preview window" msgstr "" -#: common/models.py:1555 +#: common/models.py:1574 msgid "Exclude Inactive Purchase Orders" msgstr "" -#: common/models.py:1556 +#: common/models.py:1575 msgid "Exclude inactive purchase orders from search preview window" msgstr "" -#: common/models.py:1562 +#: common/models.py:1581 msgid "Search Sales Orders" msgstr "" -#: common/models.py:1563 +#: common/models.py:1582 msgid "Display sales orders in search preview window" msgstr "" -#: common/models.py:1569 +#: common/models.py:1588 msgid "Exclude Inactive Sales Orders" msgstr "" -#: common/models.py:1570 +#: common/models.py:1589 msgid "Exclude inactive sales orders from search preview window" msgstr "" -#: common/models.py:1576 +#: common/models.py:1595 msgid "Search Preview Results" msgstr "" -#: common/models.py:1577 +#: common/models.py:1596 msgid "Number of results to show in each section of the search preview window" msgstr "" -#: common/models.py:1583 +#: common/models.py:1602 msgid "Show Quantity in Forms" msgstr "" -#: common/models.py:1584 +#: common/models.py:1603 msgid "Display available part quantity in some forms" msgstr "" -#: common/models.py:1590 +#: common/models.py:1609 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:1591 +#: common/models.py:1610 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:1597 +#: common/models.py:1616 msgid "Fixed Navbar" msgstr "" -#: common/models.py:1598 +#: common/models.py:1617 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:1604 +#: common/models.py:1623 msgid "Date Format" msgstr "" -#: common/models.py:1605 +#: common/models.py:1624 msgid "Preferred format for displaying dates" msgstr "" -#: common/models.py:1619 part/templates/part/detail.html:41 +#: common/models.py:1638 part/templates/part/detail.html:41 msgid "Part Scheduling" msgstr "" -#: common/models.py:1620 +#: common/models.py:1639 msgid "Display part scheduling information" msgstr "" -#: common/models.py:1679 +#: common/models.py:1698 msgid "Price break quantity" msgstr "" -#: common/models.py:1686 company/serializers.py:366 +#: common/models.py:1705 company/serializers.py:366 #: company/templates/company/supplier_part.html:284 order/models.py:938 -#: templates/js/translated/part.js:1065 templates/js/translated/part.js:2152 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2161 msgid "Price" msgstr "" -#: common/models.py:1687 +#: common/models.py:1706 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:1847 common/models.py:2025 +#: common/models.py:1866 common/models.py:2044 msgid "Endpoint" msgstr "" -#: common/models.py:1848 +#: common/models.py:1867 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:1857 +#: common/models.py:1876 msgid "Name for this webhook" msgstr "" -#: common/models.py:1862 part/models.py:914 plugin/models.py:99 +#: common/models.py:1881 part/models.py:921 plugin/models.py:100 #: templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:104 #: templates/js/translated/table_filters.js:316 @@ -2591,67 +2619,67 @@ msgstr "" msgid "Active" msgstr "" -#: common/models.py:1863 +#: common/models.py:1882 msgid "Is this webhook active" msgstr "" -#: common/models.py:1877 +#: common/models.py:1896 msgid "Token" msgstr "" -#: common/models.py:1878 +#: common/models.py:1897 msgid "Token for access" msgstr "" -#: common/models.py:1885 +#: common/models.py:1904 msgid "Secret" msgstr "" -#: common/models.py:1886 +#: common/models.py:1905 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:1992 +#: common/models.py:2011 msgid "Message ID" msgstr "" -#: common/models.py:1993 +#: common/models.py:2012 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2001 +#: common/models.py:2020 msgid "Host" msgstr "" -#: common/models.py:2002 +#: common/models.py:2021 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2009 +#: common/models.py:2028 msgid "Header" msgstr "" -#: common/models.py:2010 +#: common/models.py:2029 msgid "Header of this message" msgstr "" -#: common/models.py:2016 +#: common/models.py:2035 msgid "Body" msgstr "" -#: common/models.py:2017 +#: common/models.py:2036 msgid "Body of this message" msgstr "" -#: common/models.py:2026 +#: common/models.py:2045 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2031 +#: common/models.py:2050 msgid "Worked on" msgstr "" -#: common/models.py:2032 +#: common/models.py:2051 msgid "Was the work on this message finished?" msgstr "" @@ -2758,7 +2786,7 @@ msgstr "" msgid "Link to external company information" msgstr "" -#: company/models.py:135 part/models.py:808 +#: company/models.py:135 part/models.py:815 msgid "Image" msgstr "" @@ -2791,8 +2819,8 @@ msgid "Does this company manufacture parts?" msgstr "" #: company/models.py:148 company/serializers.py:372 -#: company/templates/company/company_base.html:106 part/serializers.py:151 -#: part/serializers.py:182 stock/serializers.py:180 +#: company/templates/company/company_base.html:106 part/serializers.py:153 +#: part/serializers.py:184 stock/serializers.py:180 msgid "Currency" msgstr "" @@ -2800,7 +2828,7 @@ msgstr "" msgid "Default currency used for this company" msgstr "" -#: company/models.py:248 company/models.py:481 stock/models.py:591 +#: company/models.py:248 company/models.py:481 stock/models.py:598 #: stock/serializers.py:87 stock/templates/stock/item_base.html:148 #: templates/js/translated/bom.js:543 msgid "Base Part" @@ -2832,7 +2860,7 @@ msgstr "" #: templates/js/translated/company.js:497 #: templates/js/translated/company.js:649 #: templates/js/translated/company.js:937 templates/js/translated/order.js:1971 -#: templates/js/translated/part.js:247 templates/js/translated/part.js:1023 +#: templates/js/translated/part.js:247 templates/js/translated/part.js:1027 msgid "MPN" msgstr "" @@ -2861,9 +2889,9 @@ msgstr "" #: company/models.py:365 #: report/templates/report/inventree_test_report_base.html:95 -#: stock/models.py:2088 templates/js/translated/company.js:546 -#: templates/js/translated/company.js:764 templates/js/translated/part.js:845 -#: templates/js/translated/stock.js:1356 +#: stock/models.py:2095 templates/js/translated/company.js:546 +#: templates/js/translated/company.js:764 templates/js/translated/part.js:849 +#: templates/js/translated/stock.js:1360 msgid "Value" msgstr "" @@ -2871,10 +2899,10 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:372 part/models.py:881 part/models.py:2379 +#: company/models.py:372 part/models.py:888 part/models.py:2386 #: part/templates/part/part_base.html:280 #: templates/InvenTree/settings/settings.html:352 -#: templates/js/translated/company.js:770 templates/js/translated/part.js:851 +#: templates/js/translated/company.js:770 templates/js/translated/part.js:855 msgid "Units" msgstr "" @@ -2894,7 +2922,7 @@ msgstr "" #: templates/js/translated/company.js:268 #: templates/js/translated/company.js:401 #: templates/js/translated/company.js:893 templates/js/translated/order.js:1707 -#: templates/js/translated/part.js:217 templates/js/translated/part.js:991 +#: templates/js/translated/part.js:217 templates/js/translated/part.js:995 #: templates/js/translated/table_filters.js:423 msgid "Supplier" msgstr "" @@ -2906,7 +2934,7 @@ msgstr "" #: company/models.py:497 company/templates/company/supplier_part.html:118 #: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267 #: templates/js/translated/order.js:1958 templates/js/translated/part.js:228 -#: templates/js/translated/part.js:1009 +#: templates/js/translated/part.js:1013 msgid "SKU" msgstr "" @@ -2927,23 +2955,23 @@ msgid "Supplier part description" msgstr "" #: company/models.py:522 company/templates/company/supplier_part.html:146 -#: part/models.py:2613 part/templates/part/upload_bom.html:59 +#: part/models.py:2620 part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401 msgid "Note" msgstr "" -#: company/models.py:526 part/models.py:1735 +#: company/models.py:526 part/models.py:1742 msgid "base cost" msgstr "" -#: company/models.py:526 part/models.py:1735 +#: company/models.py:526 part/models.py:1742 msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:528 company/templates/company/supplier_part.html:139 -#: stock/models.py:617 stock/templates/stock/item_base.html:245 -#: templates/js/translated/company.js:969 templates/js/translated/stock.js:1972 +#: stock/models.py:624 stock/templates/stock/item_base.html:245 +#: templates/js/translated/company.js:969 templates/js/translated/stock.js:1976 msgid "Packaging" msgstr "" @@ -2951,7 +2979,7 @@ msgstr "" msgid "Part packaging" msgstr "" -#: company/models.py:530 part/models.py:1737 +#: company/models.py:530 part/models.py:1744 msgid "multiple" msgstr "" @@ -2964,7 +2992,7 @@ msgstr "" #: templates/email/low_stock_notification.html:18 #: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789 #: templates/js/translated/build.js:2645 templates/js/translated/company.js:979 -#: templates/js/translated/part.js:596 templates/js/translated/part.js:599 +#: templates/js/translated/part.js:600 templates/js/translated/part.js:603 #: templates/js/translated/table_filters.js:186 msgid "Available" msgstr "" @@ -3037,12 +3065,12 @@ msgid "Download image from URL" msgstr "" #: company/templates/company/company_base.html:86 order/models.py:637 -#: order/templates/order/sales_order_base.html:116 stock/models.py:636 -#: stock/models.py:637 stock/serializers.py:809 +#: order/templates/order/sales_order_base.html:116 stock/models.py:643 +#: stock/models.py:644 stock/serializers.py:811 #: stock/templates/stock/item_base.html:401 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:393 templates/js/translated/order.js:2513 -#: templates/js/translated/stock.js:2550 +#: templates/js/translated/stock.js:2559 #: templates/js/translated/table_filters.js:427 msgid "Customer" msgstr "" @@ -3083,7 +3111,7 @@ msgstr "" #: company/templates/company/detail.html:36 #: company/templates/company/detail.html:84 -#: part/templates/part/category.html:176 +#: part/templates/part/category.html:182 msgid "Order parts" msgstr "" @@ -3231,7 +3259,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:170 #: part/templates/part/detail.html:186 #: templates/InvenTree/settings/category.html:12 -#: templates/InvenTree/settings/part.html:66 +#: templates/InvenTree/settings/part.html:68 msgid "New Parameter" msgstr "" @@ -3261,10 +3289,10 @@ msgid "Assigned Stock Items" msgstr "" #: company/templates/company/supplier_part.html:7 -#: company/templates/company/supplier_part.html:24 stock/models.py:600 +#: company/templates/company/supplier_part.html:24 stock/models.py:607 #: stock/templates/stock/item_base.html:238 #: templates/js/translated/company.js:909 templates/js/translated/order.js:935 -#: templates/js/translated/stock.js:1929 +#: templates/js/translated/stock.js:1933 msgid "Supplier Part" msgstr "" @@ -3308,13 +3336,13 @@ msgid "Supplier Part Stock" msgstr "" #: company/templates/company/supplier_part.html:168 -#: part/templates/part/detail.html:24 stock/templates/stock/location.html:176 +#: part/templates/part/detail.html:24 stock/templates/stock/location.html:181 msgid "Create new stock item" msgstr "" #: company/templates/company/supplier_part.html:169 -#: part/templates/part/detail.html:25 stock/templates/stock/location.html:177 -#: templates/js/translated/stock.js:431 +#: part/templates/part/detail.html:25 stock/templates/stock/location.html:182 +#: templates/js/translated/stock.js:435 msgid "New Stock Item" msgstr "" @@ -3330,7 +3358,7 @@ msgstr "" #: company/templates/company/supplier_part.html:212 #: company/templates/company/supplier_part.html:326 -#: part/templates/part/prices.html:276 templates/js/translated/part.js:2224 +#: part/templates/part/prices.html:276 templates/js/translated/part.js:2233 msgid "Add Price Break" msgstr "" @@ -3339,12 +3367,12 @@ msgid "No price break information found" msgstr "" #: company/templates/company/supplier_part.html:252 -#: templates/js/translated/part.js:2234 +#: templates/js/translated/part.js:2243 msgid "Delete Price Break" msgstr "" #: company/templates/company/supplier_part.html:266 -#: templates/js/translated/part.js:2248 +#: templates/js/translated/part.js:2257 msgid "Edit Price Break" msgstr "" @@ -3366,13 +3394,13 @@ msgstr "" #: company/templates/company/supplier_part_navbar.html:15 #: part/templates/part/part_sidebar.html:14 -#: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:19 +#: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:24 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:151 #: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/bom.js:555 templates/js/translated/part.js:747 -#: templates/js/translated/part.js:1295 templates/js/translated/part.js:1456 -#: templates/js/translated/stock.js:955 templates/js/translated/stock.js:1750 +#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751 +#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460 +#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754 #: templates/navbar.html:31 msgid "Stock" msgstr "" @@ -3392,14 +3420,14 @@ msgid "Pricing" msgstr "" #: company/templates/company/supplier_part_sidebar.html:5 -#: part/templates/part/category.html:197 +#: part/templates/part/category.html:203 #: part/templates/part/category_sidebar.html:17 -#: stock/templates/stock/location.html:147 -#: stock/templates/stock/location.html:161 -#: stock/templates/stock/location.html:173 +#: stock/templates/stock/location.html:152 +#: stock/templates/stock/location.html:166 +#: stock/templates/stock/location.html:178 #: stock/templates/stock/location_sidebar.html:7 #: templates/InvenTree/search.html:153 templates/js/translated/search.js:223 -#: templates/js/translated/stock.js:2427 users/models.py:40 +#: templates/js/translated/stock.js:2436 users/models.py:40 msgid "Stock Items" msgstr "" @@ -3656,8 +3684,8 @@ msgstr "" #: stock/templates/stock/item_base.html:184 #: templates/email/overdue_purchase_order.html:15 #: templates/js/translated/order.js:936 templates/js/translated/order.js:1691 -#: templates/js/translated/part.js:968 templates/js/translated/stock.js:1909 -#: templates/js/translated/stock.js:2531 +#: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913 +#: templates/js/translated/stock.js:2540 msgid "Purchase Order" msgstr "" @@ -3667,7 +3695,7 @@ msgstr "" #: order/models.py:1009 order/templates/order/order_base.html:169 #: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073 -#: templates/js/translated/part.js:1060 templates/js/translated/part.js:1087 +#: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091 #: templates/js/translated/table_filters.js:338 msgid "Received" msgstr "" @@ -3676,9 +3704,9 @@ msgstr "" msgid "Number of items received" msgstr "" -#: order/models.py:1017 part/templates/part/prices.html:181 stock/models.py:727 +#: order/models.py:1017 part/templates/part/prices.html:181 stock/models.py:734 #: stock/serializers.py:171 stock/templates/stock/item_base.html:191 -#: templates/js/translated/stock.js:1960 +#: templates/js/translated/stock.js:1964 msgid "Purchase Price" msgstr "" @@ -4066,8 +4094,8 @@ msgstr "" #: templates/js/translated/bom.js:77 templates/js/translated/build.js:431 #: templates/js/translated/build.js:583 templates/js/translated/build.js:1974 #: templates/js/translated/order.js:884 templates/js/translated/order.js:1337 -#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:621 -#: templates/js/translated/stock.js:789 +#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625 +#: templates/js/translated/stock.js:793 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "" @@ -4261,8 +4289,8 @@ msgstr "" msgid "This field is required" msgstr "" -#: part/bom.py:127 part/models.py:98 part/models.py:817 -#: part/templates/part/category.html:108 part/templates/part/part_base.html:330 +#: part/bom.py:127 part/models.py:98 part/models.py:824 +#: part/templates/part/category.html:114 part/templates/part/part_base.html:330 msgid "Default Location" msgstr "" @@ -4276,9 +4304,9 @@ msgid "Available Stock" msgstr "" #: part/bom.py:130 part/templates/part/part_base.html:207 -#: templates/js/translated/bom.js:947 templates/js/translated/part.js:586 -#: templates/js/translated/part.js:606 templates/js/translated/part.js:1298 -#: templates/js/translated/part.js:1470 templates/js/translated/part.js:1486 +#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590 +#: templates/js/translated/part.js:610 templates/js/translated/part.js:1302 +#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "" @@ -4299,516 +4327,524 @@ msgstr "" msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:115 part/models.py:2455 part/templates/part/category.html:15 +#: part/models.py:107 stock/models.py:84 +msgid "Icon" +msgstr "" + +#: part/models.py:108 stock/models.py:85 +msgid "Icon (optional)" +msgstr "" + +#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" -#: part/models.py:116 part/templates/part/category.html:128 +#: part/models.py:123 part/templates/part/category.html:134 #: templates/InvenTree/search.html:95 templates/js/translated/search.js:198 #: users/models.py:37 msgid "Part Categories" msgstr "" -#: part/models.py:337 part/templates/part/cat_link.html:3 -#: part/templates/part/category.html:17 part/templates/part/category.html:133 -#: part/templates/part/category.html:153 +#: part/models.py:344 part/templates/part/cat_link.html:3 +#: part/templates/part/category.html:23 part/templates/part/category.html:139 +#: part/templates/part/category.html:159 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82 #: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:1946 templates/js/translated/search.js:144 +#: templates/js/translated/part.js:1955 templates/js/translated/search.js:144 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "" -#: part/models.py:422 +#: part/models.py:429 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:492 part/models.py:504 +#: part/models.py:499 part/models.py:511 #, python-brace-format msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)" msgstr "" -#: part/models.py:621 +#: part/models.py:628 msgid "Next available serial numbers are" msgstr "" -#: part/models.py:625 +#: part/models.py:632 msgid "Next available serial number is" msgstr "" -#: part/models.py:630 +#: part/models.py:637 msgid "Most recent serial number is" msgstr "" -#: part/models.py:711 +#: part/models.py:718 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:738 part/models.py:2509 +#: part/models.py:745 part/models.py:2516 msgid "Part name" msgstr "" -#: part/models.py:745 +#: part/models.py:752 msgid "Is Template" msgstr "" -#: part/models.py:746 +#: part/models.py:753 msgid "Is this part a template part?" msgstr "" -#: part/models.py:756 +#: part/models.py:763 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:757 +#: part/models.py:764 msgid "Variant Of" msgstr "" -#: part/models.py:763 +#: part/models.py:770 msgid "Part description" msgstr "" -#: part/models.py:768 part/templates/part/category.html:86 +#: part/models.py:775 part/templates/part/category.html:92 #: part/templates/part/part_base.html:294 msgid "Keywords" msgstr "" -#: part/models.py:769 +#: part/models.py:776 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:776 part/models.py:2211 part/models.py:2454 +#: part/models.py:783 part/models.py:2218 part/models.py:2461 #: part/templates/part/part_base.html:257 #: templates/InvenTree/settings/settings.html:232 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1438 templates/js/translated/part.js:1664 +#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1668 msgid "Category" msgstr "" -#: part/models.py:777 +#: part/models.py:784 msgid "Part category" msgstr "" -#: part/models.py:782 part/templates/part/part_base.html:266 -#: templates/js/translated/part.js:735 templates/js/translated/part.js:1391 -#: templates/js/translated/stock.js:1722 +#: part/models.py:789 part/templates/part/part_base.html:266 +#: templates/js/translated/part.js:739 templates/js/translated/part.js:1395 +#: templates/js/translated/stock.js:1726 msgid "IPN" msgstr "" -#: part/models.py:783 +#: part/models.py:790 msgid "Internal Part Number" msgstr "" -#: part/models.py:789 +#: part/models.py:796 msgid "Part revision or version number" msgstr "" -#: part/models.py:790 part/templates/part/part_base.html:273 -#: report/models.py:171 templates/js/translated/part.js:739 +#: part/models.py:797 part/templates/part/part_base.html:273 +#: report/models.py:171 templates/js/translated/part.js:743 msgid "Revision" msgstr "" -#: part/models.py:815 +#: part/models.py:822 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:860 part/templates/part/part_base.html:339 +#: part/models.py:867 part/templates/part/part_base.html:339 msgid "Default Supplier" msgstr "" -#: part/models.py:861 +#: part/models.py:868 msgid "Default supplier part" msgstr "" -#: part/models.py:868 +#: part/models.py:875 msgid "Default Expiry" msgstr "" -#: part/models.py:869 +#: part/models.py:876 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:874 part/templates/part/part_base.html:200 +#: part/models.py:881 part/templates/part/part_base.html:200 msgid "Minimum Stock" msgstr "" -#: part/models.py:875 +#: part/models.py:882 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:882 +#: part/models.py:889 msgid "Stock keeping units for this part" msgstr "" -#: part/models.py:888 +#: part/models.py:895 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:894 +#: part/models.py:901 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:900 +#: part/models.py:907 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:905 +#: part/models.py:912 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:910 +#: part/models.py:917 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:915 +#: part/models.py:922 msgid "Is this part active?" msgstr "" -#: part/models.py:920 +#: part/models.py:927 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:922 +#: part/models.py:929 msgid "Part notes" msgstr "" -#: part/models.py:924 +#: part/models.py:931 msgid "BOM checksum" msgstr "" -#: part/models.py:924 +#: part/models.py:931 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:927 +#: part/models.py:934 msgid "BOM checked by" msgstr "" -#: part/models.py:929 +#: part/models.py:936 msgid "BOM checked date" msgstr "" -#: part/models.py:933 +#: part/models.py:940 msgid "Creation User" msgstr "" -#: part/models.py:1737 +#: part/models.py:1744 msgid "Sell multiple" msgstr "" -#: part/models.py:2258 +#: part/models.py:2265 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:2275 +#: part/models.py:2282 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:2295 templates/js/translated/part.js:1997 -#: templates/js/translated/stock.js:1336 +#: part/models.py:2302 templates/js/translated/part.js:2006 +#: templates/js/translated/stock.js:1340 msgid "Test Name" msgstr "" -#: part/models.py:2296 +#: part/models.py:2303 msgid "Enter a name for the test" msgstr "" -#: part/models.py:2301 +#: part/models.py:2308 msgid "Test Description" msgstr "" -#: part/models.py:2302 +#: part/models.py:2309 msgid "Enter description for this test" msgstr "" -#: part/models.py:2307 templates/js/translated/part.js:2006 +#: part/models.py:2314 templates/js/translated/part.js:2015 #: templates/js/translated/table_filters.js:302 msgid "Required" msgstr "" -#: part/models.py:2308 +#: part/models.py:2315 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:2313 templates/js/translated/part.js:2014 +#: part/models.py:2320 templates/js/translated/part.js:2023 msgid "Requires Value" msgstr "" -#: part/models.py:2314 +#: part/models.py:2321 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:2319 templates/js/translated/part.js:2021 +#: part/models.py:2326 templates/js/translated/part.js:2030 msgid "Requires Attachment" msgstr "" -#: part/models.py:2320 +#: part/models.py:2327 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:2328 +#: part/models.py:2335 #, python-brace-format msgid "Illegal character in template name ({c})" msgstr "" -#: part/models.py:2364 +#: part/models.py:2371 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:2372 +#: part/models.py:2379 msgid "Parameter Name" msgstr "" -#: part/models.py:2379 +#: part/models.py:2386 msgid "Parameter Units" msgstr "" -#: part/models.py:2410 +#: part/models.py:2417 msgid "Parent Part" msgstr "" -#: part/models.py:2412 part/models.py:2460 part/models.py:2461 +#: part/models.py:2419 part/models.py:2467 part/models.py:2468 #: templates/InvenTree/settings/settings.html:227 msgid "Parameter Template" msgstr "" -#: part/models.py:2414 +#: part/models.py:2421 msgid "Data" msgstr "" -#: part/models.py:2414 +#: part/models.py:2421 msgid "Parameter Value" msgstr "" -#: part/models.py:2465 templates/InvenTree/settings/settings.html:236 +#: part/models.py:2472 templates/InvenTree/settings/settings.html:236 msgid "Default Value" msgstr "" -#: part/models.py:2466 +#: part/models.py:2473 msgid "Default Parameter Value" msgstr "" -#: part/models.py:2501 +#: part/models.py:2508 msgid "Part ID or part name" msgstr "" -#: part/models.py:2504 templates/js/translated/model_renderers.js:212 +#: part/models.py:2511 templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "" -#: part/models.py:2505 +#: part/models.py:2512 msgid "Unique part ID value" msgstr "" -#: part/models.py:2508 +#: part/models.py:2515 msgid "Part Name" msgstr "" -#: part/models.py:2512 +#: part/models.py:2519 msgid "Part IPN" msgstr "" -#: part/models.py:2513 +#: part/models.py:2520 msgid "Part IPN value" msgstr "" -#: part/models.py:2516 +#: part/models.py:2523 msgid "Level" msgstr "" -#: part/models.py:2517 +#: part/models.py:2524 msgid "BOM level" msgstr "" -#: part/models.py:2586 +#: part/models.py:2593 msgid "Select parent part" msgstr "" -#: part/models.py:2594 +#: part/models.py:2601 msgid "Sub part" msgstr "" -#: part/models.py:2595 +#: part/models.py:2602 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:2601 +#: part/models.py:2608 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:2603 part/templates/part/upload_bom.html:58 +#: part/models.py:2610 part/templates/part/upload_bom.html:58 #: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999 #: templates/js/translated/table_filters.js:100 msgid "Optional" msgstr "" -#: part/models.py:2603 +#: part/models.py:2610 msgid "This BOM item is optional" msgstr "" -#: part/models.py:2606 part/templates/part/upload_bom.html:55 +#: part/models.py:2613 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:2607 +#: part/models.py:2614 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:2610 +#: part/models.py:2617 msgid "BOM item reference" msgstr "" -#: part/models.py:2613 +#: part/models.py:2620 msgid "BOM item notes" msgstr "" -#: part/models.py:2615 +#: part/models.py:2622 msgid "Checksum" msgstr "" -#: part/models.py:2615 +#: part/models.py:2622 msgid "BOM line checksum" msgstr "" -#: part/models.py:2619 part/templates/part/upload_bom.html:57 +#: part/models.py:2626 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1016 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:96 msgid "Inherited" msgstr "" -#: part/models.py:2620 +#: part/models.py:2627 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:2625 part/templates/part/upload_bom.html:56 +#: part/models.py:2632 part/templates/part/upload_bom.html:56 #: templates/js/translated/bom.js:1008 msgid "Allow Variants" msgstr "" -#: part/models.py:2626 +#: part/models.py:2633 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:2704 stock/models.py:461 +#: part/models.py:2711 stock/models.py:468 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:2713 part/models.py:2715 +#: part/models.py:2720 part/models.py:2722 msgid "Sub part must be specified" msgstr "" -#: part/models.py:2820 +#: part/models.py:2827 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:2841 +#: part/models.py:2848 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:2854 +#: part/models.py:2861 msgid "Parent BOM item" msgstr "" -#: part/models.py:2862 +#: part/models.py:2869 msgid "Substitute part" msgstr "" -#: part/models.py:2877 +#: part/models.py:2884 msgid "Part 1" msgstr "" -#: part/models.py:2881 +#: part/models.py:2888 msgid "Part 2" msgstr "" -#: part/models.py:2881 +#: part/models.py:2888 msgid "Select Related Part" msgstr "" -#: part/models.py:2899 +#: part/models.py:2906 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:2903 +#: part/models.py:2910 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:152 part/serializers.py:183 stock/serializers.py:181 +#: part/serializers.py:154 part/serializers.py:185 stock/serializers.py:181 msgid "Purchase currency of this stock item" msgstr "" -#: part/serializers.py:812 +#: part/serializers.py:814 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:820 +#: part/serializers.py:822 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:821 +#: part/serializers.py:823 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:826 +#: part/serializers.py:828 msgid "Include Inherited" msgstr "" -#: part/serializers.py:827 +#: part/serializers.py:829 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:832 +#: part/serializers.py:834 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:833 +#: part/serializers.py:835 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:838 +#: part/serializers.py:840 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:839 +#: part/serializers.py:841 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:879 +#: part/serializers.py:881 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:880 +#: part/serializers.py:882 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:910 +#: part/serializers.py:912 msgid "No part column specified" msgstr "" -#: part/serializers.py:953 +#: part/serializers.py:955 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:956 +#: part/serializers.py:958 msgid "No matching part found" msgstr "" -#: part/serializers.py:959 +#: part/serializers.py:961 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:968 +#: part/serializers.py:970 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:976 +#: part/serializers.py:978 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:997 +#: part/serializers.py:999 msgid "At least one BOM item is required" msgstr "" @@ -4848,101 +4884,101 @@ msgstr "" msgid "Delete Items" msgstr "" -#: part/templates/part/category.html:28 part/templates/part/category.html:32 +#: part/templates/part/category.html:34 part/templates/part/category.html:38 msgid "You are subscribed to notifications for this category" msgstr "" -#: part/templates/part/category.html:36 +#: part/templates/part/category.html:42 msgid "Subscribe to notifications for this category" msgstr "" -#: part/templates/part/category.html:42 +#: part/templates/part/category.html:48 msgid "Category Actions" msgstr "" -#: part/templates/part/category.html:47 +#: part/templates/part/category.html:53 msgid "Edit category" msgstr "" -#: part/templates/part/category.html:48 +#: part/templates/part/category.html:54 msgid "Edit Category" msgstr "" -#: part/templates/part/category.html:52 +#: part/templates/part/category.html:58 msgid "Delete category" msgstr "" -#: part/templates/part/category.html:53 +#: part/templates/part/category.html:59 msgid "Delete Category" msgstr "" -#: part/templates/part/category.html:61 +#: part/templates/part/category.html:67 msgid "Create new part category" msgstr "" -#: part/templates/part/category.html:62 +#: part/templates/part/category.html:68 msgid "New Category" msgstr "" -#: part/templates/part/category.html:80 part/templates/part/category.html:93 +#: part/templates/part/category.html:86 part/templates/part/category.html:99 msgid "Category Path" msgstr "" -#: part/templates/part/category.html:94 +#: part/templates/part/category.html:100 msgid "Top level part category" msgstr "" -#: part/templates/part/category.html:114 part/templates/part/category.html:222 +#: part/templates/part/category.html:120 part/templates/part/category.html:228 #: part/templates/part/category_sidebar.html:7 msgid "Subcategories" msgstr "" -#: part/templates/part/category.html:119 +#: part/templates/part/category.html:125 msgid "Parts (Including subcategories)" msgstr "" -#: part/templates/part/category.html:157 +#: part/templates/part/category.html:163 msgid "Create new part" msgstr "" -#: part/templates/part/category.html:158 templates/js/translated/bom.js:367 +#: part/templates/part/category.html:164 templates/js/translated/bom.js:367 msgid "New Part" msgstr "" -#: part/templates/part/category.html:168 part/templates/part/detail.html:363 +#: part/templates/part/category.html:174 part/templates/part/detail.html:363 #: part/templates/part/detail.html:394 msgid "Options" msgstr "" -#: part/templates/part/category.html:172 +#: part/templates/part/category.html:178 msgid "Set category" msgstr "" -#: part/templates/part/category.html:173 +#: part/templates/part/category.html:179 msgid "Set Category" msgstr "" -#: part/templates/part/category.html:180 part/templates/part/category.html:181 +#: part/templates/part/category.html:186 part/templates/part/category.html:187 msgid "Print Labels" msgstr "" -#: part/templates/part/category.html:206 +#: part/templates/part/category.html:212 msgid "Part Parameters" msgstr "" -#: part/templates/part/category.html:320 +#: part/templates/part/category.html:327 msgid "Create Part Category" msgstr "" -#: part/templates/part/category.html:340 +#: part/templates/part/category.html:347 msgid "Create Part" msgstr "" -#: part/templates/part/category.html:343 +#: part/templates/part/category.html:350 msgid "Create another part after this one" msgstr "" -#: part/templates/part/category.html:344 +#: part/templates/part/category.html:351 msgid "Part created successfully" msgstr "" @@ -4950,7 +4986,7 @@ msgstr "" msgid "Import Parts" msgstr "" -#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:375 +#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:379 msgid "Duplicate Part" msgstr "" @@ -5172,19 +5208,19 @@ msgstr "" #: part/templates/part/part_base.html:43 #: stock/templates/stock/item_base.html:41 -#: stock/templates/stock/location.html:43 +#: stock/templates/stock/location.html:48 msgid "Barcode actions" msgstr "" #: part/templates/part/part_base.html:46 #: stock/templates/stock/item_base.html:45 -#: stock/templates/stock/location.html:45 templates/qr_button.html:1 +#: stock/templates/stock/location.html:50 templates/qr_button.html:1 msgid "Show QR Code" msgstr "" #: part/templates/part/part_base.html:49 #: stock/templates/stock/item_base.html:63 -#: stock/templates/stock/location.html:47 +#: stock/templates/stock/location.html:52 msgid "Print Label" msgstr "" @@ -5194,7 +5230,7 @@ msgstr "" #: part/templates/part/part_base.html:60 #: stock/templates/stock/item_base.html:116 -#: stock/templates/stock/location.html:56 +#: stock/templates/stock/location.html:61 msgid "Stock actions" msgstr "" @@ -5255,7 +5291,7 @@ msgstr "" #: templates/js/translated/company.js:624 #: templates/js/translated/company.js:884 #: templates/js/translated/model_renderers.js:204 -#: templates/js/translated/part.js:650 templates/js/translated/part.js:727 +#: templates/js/translated/part.js:654 templates/js/translated/part.js:731 msgid "Inactive" msgstr "" @@ -5289,9 +5325,9 @@ msgstr "" msgid "Can Build" msgstr "" -#: part/templates/part/part_base.html:238 templates/js/translated/part.js:589 -#: templates/js/translated/part.js:609 templates/js/translated/part.js:1302 -#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490 +#: part/templates/part/part_base.html:238 templates/js/translated/part.js:593 +#: templates/js/translated/part.js:613 templates/js/translated/part.js:1306 +#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1494 msgid "Building" msgstr "" @@ -5464,8 +5500,8 @@ msgstr "" msgid "No sale pice history available for this part." msgstr "" -#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:612 -#: templates/js/translated/part.js:1290 templates/js/translated/part.js:1494 +#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616 +#: templates/js/translated/part.js:1294 templates/js/translated/part.js:1498 msgid "No Stock" msgstr "" @@ -5630,51 +5666,55 @@ msgstr "" msgid "Allow sending of emails for event notifications" msgstr "" -#: plugin/models.py:32 +#: plugin/models.py:33 msgid "Plugin Metadata" msgstr "" -#: plugin/models.py:33 +#: plugin/models.py:34 msgid "JSON metadata field, for use by external plugins" msgstr "" -#: plugin/models.py:79 +#: plugin/models.py:80 msgid "Plugin Configuration" msgstr "" -#: plugin/models.py:80 +#: plugin/models.py:81 msgid "Plugin Configurations" msgstr "" -#: plugin/models.py:85 +#: plugin/models.py:86 msgid "Key" msgstr "" -#: plugin/models.py:86 +#: plugin/models.py:87 msgid "Key of plugin" msgstr "" -#: plugin/models.py:94 +#: plugin/models.py:95 msgid "PluginName of the plugin" msgstr "" -#: plugin/models.py:100 +#: plugin/models.py:101 msgid "Is the plugin active" msgstr "" -#: plugin/models.py:168 +#: plugin/models.py:158 +msgid "Sample plugin" +msgstr "" + +#: plugin/models.py:186 msgid "Plugin" msgstr "" -#: plugin/models.py:231 +#: plugin/models.py:249 msgid "Method" msgstr "" -#: plugin/plugin.py:228 +#: plugin/plugin.py:251 msgid "No author found" msgstr "" -#: plugin/plugin.py:240 +#: plugin/plugin.py:263 msgid "No date found" msgstr "" @@ -5746,12 +5786,12 @@ msgstr "" msgid "No valid objects provided to template" msgstr "" -#: report/api.py:216 report/api.py:257 +#: report/api.py:216 report/api.py:252 #, python-brace-format msgid "Template file '{template}' is missing or does not exist" msgstr "" -#: report/api.py:360 +#: report/api.py:355 msgid "Test report" msgstr "" @@ -5852,12 +5892,12 @@ msgid "Stock Item Test Report" msgstr "" #: report/templates/report/inventree_test_report_base.html:79 -#: stock/models.py:641 stock/templates/stock/item_base.html:322 +#: stock/models.py:648 stock/templates/stock/item_base.html:322 #: templates/js/translated/build.js:424 templates/js/translated/build.js:576 #: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673 #: templates/js/translated/model_renderers.js:118 #: templates/js/translated/order.js:118 templates/js/translated/order.js:3297 -#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:486 +#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490 msgid "Serial Number" msgstr "" @@ -5866,19 +5906,19 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report_base.html:93 -#: stock/models.py:2076 +#: stock/models.py:2083 msgid "Test" msgstr "" #: report/templates/report/inventree_test_report_base.html:94 -#: stock/models.py:2082 +#: stock/models.py:2089 msgid "Result" msgstr "" #: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:51 +#: templates/InvenTree/settings/plugin.html:53 #: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2459 +#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468 msgid "Date" msgstr "" @@ -5896,8 +5936,8 @@ msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report_base.html:137 -#: templates/js/translated/stock.js:606 templates/js/translated/stock.js:776 -#: templates/js/translated/stock.js:2708 +#: templates/js/translated/stock.js:610 templates/js/translated/stock.js:780 +#: templates/js/translated/stock.js:2717 msgid "Serial" msgstr "" @@ -5913,241 +5953,241 @@ msgstr "" msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" -#: stock/models.py:82 stock/models.py:732 +#: stock/models.py:89 stock/models.py:739 #: stock/templates/stock/item_base.html:252 msgid "Owner" msgstr "" -#: stock/models.py:83 stock/models.py:733 +#: stock/models.py:90 stock/models.py:740 msgid "Select Owner" msgstr "" -#: stock/models.py:435 +#: stock/models.py:442 msgid "StockItem with this serial number already exists" msgstr "" -#: stock/models.py:467 stock/serializers.py:95 +#: stock/models.py:474 stock/serializers.py:95 msgid "Stock item cannot be created for virtual parts" msgstr "" -#: stock/models.py:484 +#: stock/models.py:491 #, python-brace-format msgid "Part type ('{pf}') must be {pe}" msgstr "" -#: stock/models.py:494 stock/models.py:503 +#: stock/models.py:501 stock/models.py:510 msgid "Quantity must be 1 for item with a serial number" msgstr "" -#: stock/models.py:495 +#: stock/models.py:502 msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:517 +#: stock/models.py:524 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:523 +#: stock/models.py:530 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:537 +#: stock/models.py:544 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:583 +#: stock/models.py:590 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:593 +#: stock/models.py:600 msgid "Base part" msgstr "" -#: stock/models.py:601 +#: stock/models.py:608 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:608 stock/templates/stock/location.html:17 +#: stock/models.py:615 stock/templates/stock/location.html:17 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" msgstr "" -#: stock/models.py:611 +#: stock/models.py:618 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:618 +#: stock/models.py:625 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:624 stock/templates/stock/item_base.html:361 +#: stock/models.py:631 stock/templates/stock/item_base.html:361 msgid "Installed In" msgstr "" -#: stock/models.py:627 +#: stock/models.py:634 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:643 +#: stock/models.py:650 msgid "Serial number for this item" msgstr "" -#: stock/models.py:657 +#: stock/models.py:664 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:662 +#: stock/models.py:669 msgid "Stock Quantity" msgstr "" -#: stock/models.py:671 +#: stock/models.py:678 msgid "Source Build" msgstr "" -#: stock/models.py:673 +#: stock/models.py:680 msgid "Build for this stock item" msgstr "" -#: stock/models.py:684 +#: stock/models.py:691 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:687 +#: stock/models.py:694 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:693 +#: stock/models.py:700 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:699 stock/templates/stock/item_base.html:429 -#: templates/js/translated/stock.js:1879 +#: stock/models.py:706 stock/templates/stock/item_base.html:429 +#: templates/js/translated/stock.js:1883 msgid "Expiry Date" msgstr "" -#: stock/models.py:700 +#: stock/models.py:707 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:713 +#: stock/models.py:720 msgid "Delete on deplete" msgstr "" -#: stock/models.py:713 +#: stock/models.py:720 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:720 stock/templates/stock/item.html:132 +#: stock/models.py:727 stock/templates/stock/item.html:132 msgid "Stock Item Notes" msgstr "" -#: stock/models.py:728 +#: stock/models.py:735 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:756 +#: stock/models.py:763 msgid "Converted to part" msgstr "" -#: stock/models.py:1235 +#: stock/models.py:1242 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1241 +#: stock/models.py:1248 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1247 +#: stock/models.py:1254 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({n})" msgstr "" -#: stock/models.py:1250 +#: stock/models.py:1257 msgid "Serial numbers must be a list of integers" msgstr "" -#: stock/models.py:1253 +#: stock/models.py:1260 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1260 +#: stock/models.py:1267 #, python-brace-format msgid "Serial numbers already exist: {exists}" msgstr "" -#: stock/models.py:1330 +#: stock/models.py:1337 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1333 +#: stock/models.py:1340 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1336 +#: stock/models.py:1343 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1339 +#: stock/models.py:1346 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1342 +#: stock/models.py:1349 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1345 +#: stock/models.py:1352 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1352 stock/serializers.py:959 +#: stock/models.py:1359 stock/serializers.py:961 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1356 +#: stock/models.py:1363 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1360 +#: stock/models.py:1367 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1364 +#: stock/models.py:1371 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:1533 +#: stock/models.py:1540 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:1994 +#: stock/models.py:2001 msgid "Entry notes" msgstr "" -#: stock/models.py:2052 +#: stock/models.py:2059 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2058 +#: stock/models.py:2065 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2077 +#: stock/models.py:2084 msgid "Test name" msgstr "" -#: stock/models.py:2083 +#: stock/models.py:2090 msgid "Test result" msgstr "" -#: stock/models.py:2089 +#: stock/models.py:2096 msgid "Test output value" msgstr "" -#: stock/models.py:2096 +#: stock/models.py:2103 msgid "Test result attachment" msgstr "" -#: stock/models.py:2102 +#: stock/models.py:2109 msgid "Test notes" msgstr "" @@ -6172,7 +6212,7 @@ msgstr "" msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:323 stock/serializers.py:916 stock/serializers.py:1149 +#: stock/serializers.py:323 stock/serializers.py:918 stock/serializers.py:1151 msgid "Destination stock location" msgstr "" @@ -6220,63 +6260,63 @@ msgstr "" msgid "Destination location for returned item" msgstr "" -#: stock/serializers.py:771 +#: stock/serializers.py:773 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:775 +#: stock/serializers.py:777 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:779 +#: stock/serializers.py:781 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:810 +#: stock/serializers.py:812 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:816 +#: stock/serializers.py:818 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:824 +#: stock/serializers.py:826 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:834 stock/serializers.py:1065 +#: stock/serializers.py:836 stock/serializers.py:1067 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:923 +#: stock/serializers.py:925 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:928 +#: stock/serializers.py:930 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:929 +#: stock/serializers.py:931 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:934 +#: stock/serializers.py:936 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:935 +#: stock/serializers.py:937 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:945 +#: stock/serializers.py:947 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1027 +#: stock/serializers.py:1029 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1055 +#: stock/serializers.py:1057 msgid "Stock transaction notes" msgstr "" @@ -6313,7 +6353,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2852 +#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2861 msgid "Install Stock Item" msgstr "" @@ -6321,7 +6361,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1518 +#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1522 msgid "Add Test Result" msgstr "" @@ -6352,7 +6392,7 @@ msgid "Stock adjustment actions" msgstr "" #: stock/templates/stock/item_base.html:80 -#: stock/templates/stock/location.html:63 templates/stock_table.html:47 +#: stock/templates/stock/location.html:68 templates/stock_table.html:47 msgid "Count stock" msgstr "" @@ -6369,7 +6409,7 @@ msgid "Serialize stock" msgstr "" #: stock/templates/stock/item_base.html:93 -#: stock/templates/stock/location.html:69 templates/stock_table.html:48 +#: stock/templates/stock/location.html:74 templates/stock_table.html:48 msgid "Transfer stock" msgstr "" @@ -6430,7 +6470,7 @@ msgid "You are not in the list of owners of this item. This stock item cannot be msgstr "" #: stock/templates/stock/item_base.html:257 -#: stock/templates/stock/location.html:127 +#: stock/templates/stock/location.html:132 msgid "Read only" msgstr "" @@ -6508,7 +6548,7 @@ msgid "Stale" msgstr "" #: stock/templates/stock/item_base.html:442 -#: templates/js/translated/company.js:985 templates/js/translated/stock.js:1895 +#: templates/js/translated/company.js:985 templates/js/translated/stock.js:1899 msgid "Last Updated" msgstr "" @@ -6552,58 +6592,58 @@ msgstr "" msgid "Select quantity to serialize, and unique serial numbers." msgstr "" -#: stock/templates/stock/location.html:33 +#: stock/templates/stock/location.html:38 msgid "Locate stock location" msgstr "" -#: stock/templates/stock/location.html:49 +#: stock/templates/stock/location.html:54 msgid "Check-in Items" msgstr "" -#: stock/templates/stock/location.html:77 +#: stock/templates/stock/location.html:82 msgid "Location actions" msgstr "" -#: stock/templates/stock/location.html:79 +#: stock/templates/stock/location.html:84 msgid "Edit location" msgstr "" -#: stock/templates/stock/location.html:81 +#: stock/templates/stock/location.html:86 msgid "Delete location" msgstr "" -#: stock/templates/stock/location.html:90 +#: stock/templates/stock/location.html:95 msgid "Create new stock location" msgstr "" -#: stock/templates/stock/location.html:91 +#: stock/templates/stock/location.html:96 msgid "New Location" msgstr "" -#: stock/templates/stock/location.html:109 -#: stock/templates/stock/location.html:115 +#: stock/templates/stock/location.html:114 +#: stock/templates/stock/location.html:120 msgid "Location Path" msgstr "" -#: stock/templates/stock/location.html:116 +#: stock/templates/stock/location.html:121 msgid "Top level stock location" msgstr "" -#: stock/templates/stock/location.html:122 +#: stock/templates/stock/location.html:127 msgid "Location Owner" msgstr "" -#: stock/templates/stock/location.html:126 +#: stock/templates/stock/location.html:131 msgid "You are not in the list of owners of this location. This stock location cannot be edited." msgstr "" -#: stock/templates/stock/location.html:142 -#: stock/templates/stock/location.html:189 +#: stock/templates/stock/location.html:147 +#: stock/templates/stock/location.html:194 #: stock/templates/stock/location_sidebar.html:5 msgid "Sublocations" msgstr "" -#: stock/templates/stock/location.html:156 templates/InvenTree/search.html:165 +#: stock/templates/stock/location.html:161 templates/InvenTree/search.html:165 #: templates/js/translated/search.js:238 users/models.py:39 msgid "Stock Locations" msgstr "" @@ -6875,15 +6915,15 @@ msgstr "" msgid "Part Settings" msgstr "" -#: templates/InvenTree/settings/part.html:44 +#: templates/InvenTree/settings/part.html:46 msgid "Part Import" msgstr "" -#: templates/InvenTree/settings/part.html:48 +#: templates/InvenTree/settings/part.html:50 msgid "Import Part" msgstr "" -#: templates/InvenTree/settings/part.html:62 +#: templates/InvenTree/settings/part.html:64 msgid "Part Parameter Templates" msgstr "" @@ -6895,47 +6935,47 @@ msgstr "" msgid "Changing the settings below require you to immediately restart the server. Do not change this while under active usage." msgstr "" -#: templates/InvenTree/settings/plugin.html:34 +#: templates/InvenTree/settings/plugin.html:36 msgid "Plugins" msgstr "" -#: templates/InvenTree/settings/plugin.html:39 +#: templates/InvenTree/settings/plugin.html:41 #: templates/js/translated/plugin.js:16 msgid "Install Plugin" msgstr "" -#: templates/InvenTree/settings/plugin.html:48 templates/navbar.html:137 +#: templates/InvenTree/settings/plugin.html:50 templates/navbar.html:137 #: users/models.py:36 msgid "Admin" msgstr "" -#: templates/InvenTree/settings/plugin.html:50 +#: templates/InvenTree/settings/plugin.html:52 #: templates/InvenTree/settings/plugin_settings.html:28 msgid "Author" msgstr "" -#: templates/InvenTree/settings/plugin.html:52 +#: templates/InvenTree/settings/plugin.html:54 #: templates/InvenTree/settings/plugin_settings.html:43 msgid "Version" msgstr "" -#: templates/InvenTree/settings/plugin.html:74 +#: templates/InvenTree/settings/plugin.html:76 msgid "Sample" msgstr "" -#: templates/InvenTree/settings/plugin.html:99 +#: templates/InvenTree/settings/plugin.html:101 msgid "Inactive plugins" msgstr "" -#: templates/InvenTree/settings/plugin.html:122 +#: templates/InvenTree/settings/plugin.html:124 msgid "Plugin Error Stack" msgstr "" -#: templates/InvenTree/settings/plugin.html:131 +#: templates/InvenTree/settings/plugin.html:133 msgid "Stage" msgstr "" -#: templates/InvenTree/settings/plugin.html:133 +#: templates/InvenTree/settings/plugin.html:135 #: templates/js/translated/notification.js:75 msgid "Message" msgstr "" @@ -6999,11 +7039,11 @@ msgstr "" msgid "Commit Message" msgstr "" -#: templates/InvenTree/settings/plugin_settings.html:117 +#: templates/InvenTree/settings/plugin_settings.html:120 msgid "Sign Status" msgstr "" -#: templates/InvenTree/settings/plugin_settings.html:122 +#: templates/InvenTree/settings/plugin_settings.html:125 msgid "Sign Key" msgstr "" @@ -7828,7 +7868,7 @@ msgstr "" msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:456 templates/js/translated/stock.js:1050 +#: templates/js/translated/barcode.js:456 templates/js/translated/stock.js:1054 msgid "Remove stock item" msgstr "" @@ -8001,7 +8041,7 @@ msgid "Includes variant and substitute stock" msgstr "" #: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822 -#: templates/js/translated/part.js:759 +#: templates/js/translated/part.js:763 msgid "Includes variant stock" msgstr "" @@ -8098,12 +8138,12 @@ msgid "Complete Build Order" msgstr "" #: templates/js/translated/build.js:263 templates/js/translated/stock.js:92 -#: templates/js/translated/stock.js:210 +#: templates/js/translated/stock.js:214 msgid "Next available serial number" msgstr "" #: templates/js/translated/build.js:265 templates/js/translated/stock.js:94 -#: templates/js/translated/stock.js:212 +#: templates/js/translated/stock.js:216 msgid "Latest serial number" msgstr "" @@ -8316,9 +8356,9 @@ msgstr "" msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1383 -#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1682 -#: templates/js/translated/stock.js:2382 +#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387 +#: templates/js/translated/part.js:1899 templates/js/translated/stock.js:1686 +#: templates/js/translated/stock.js:2386 msgid "Select" msgstr "" @@ -8330,7 +8370,7 @@ msgstr "" msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2638 +#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647 msgid "No user information" msgstr "" @@ -8403,34 +8443,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:616 -#: templates/js/translated/company.js:876 templates/js/translated/part.js:634 -#: templates/js/translated/part.js:719 +#: templates/js/translated/company.js:876 templates/js/translated/part.js:638 +#: templates/js/translated/part.js:723 msgid "Template part" msgstr "" #: templates/js/translated/company.js:620 -#: templates/js/translated/company.js:880 templates/js/translated/part.js:638 -#: templates/js/translated/part.js:723 +#: templates/js/translated/company.js:880 templates/js/translated/part.js:642 +#: templates/js/translated/part.js:727 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:748 templates/js/translated/part.js:826 +#: templates/js/translated/company.js:748 templates/js/translated/part.js:830 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:785 templates/js/translated/part.js:868 +#: templates/js/translated/company.js:785 templates/js/translated/part.js:872 msgid "Edit parameter" msgstr "" -#: templates/js/translated/company.js:786 templates/js/translated/part.js:869 +#: templates/js/translated/company.js:786 templates/js/translated/part.js:873 msgid "Delete parameter" msgstr "" -#: templates/js/translated/company.js:805 templates/js/translated/part.js:886 +#: templates/js/translated/company.js:805 templates/js/translated/part.js:890 msgid "Edit Parameter" msgstr "" -#: templates/js/translated/company.js:816 templates/js/translated/part.js:898 +#: templates/js/translated/company.js:816 templates/js/translated/part.js:902 msgid "Delete Parameter" msgstr "" @@ -8555,7 +8595,7 @@ msgid "Labels sent to printer" msgstr "" #: templates/js/translated/label.js:60 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1078 msgid "Select Stock Items" msgstr "" @@ -8865,7 +8905,7 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2140 +#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144 msgid "Stock Status" msgstr "" @@ -8889,7 +8929,7 @@ msgstr "" msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:1672 templates/js/translated/part.js:939 +#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943 msgid "No purchase orders found" msgstr "" @@ -8924,7 +8964,7 @@ msgstr "" #: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203 #: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050 -#: templates/js/translated/part.js:2126 templates/js/translated/part.js:2479 +#: templates/js/translated/part.js:2135 templates/js/translated/part.js:2488 msgid "Unit Price" msgstr "" @@ -8934,11 +8974,11 @@ msgid "Total Price" msgstr "" #: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600 -#: templates/js/translated/part.js:1046 +#: templates/js/translated/part.js:1050 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1092 +#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096 msgid "Receive line item" msgstr "" @@ -9059,7 +9099,7 @@ msgid "Delete Stock Allocation" msgstr "" #: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398 -#: templates/js/translated/stock.js:1598 +#: templates/js/translated/stock.js:1602 msgid "Shipped to customer" msgstr "" @@ -9183,241 +9223,245 @@ msgstr "" msgid "Parent part category" msgstr "" -#: templates/js/translated/part.js:318 +#: templates/js/translated/part.js:306 templates/js/translated/stock.js:118 +msgid "Icon (optional) - Explore all available icons on" +msgstr "" + +#: templates/js/translated/part.js:322 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:331 +#: templates/js/translated/part.js:335 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:333 +#: templates/js/translated/part.js:337 msgid "Any child categories will be moved to the parent of this category" msgstr "" -#: templates/js/translated/part.js:334 +#: templates/js/translated/part.js:338 msgid "Any parts in this category will be moved to the parent of this category" msgstr "" -#: templates/js/translated/part.js:339 +#: templates/js/translated/part.js:343 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:365 +#: templates/js/translated/part.js:369 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:367 +#: templates/js/translated/part.js:371 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:378 +#: templates/js/translated/part.js:382 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:430 +#: templates/js/translated/part.js:434 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:431 +#: templates/js/translated/part.js:435 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:445 +#: templates/js/translated/part.js:449 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:447 +#: templates/js/translated/part.js:451 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:448 +#: templates/js/translated/part.js:452 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:449 +#: templates/js/translated/part.js:453 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:456 +#: templates/js/translated/part.js:460 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:492 +#: templates/js/translated/part.js:496 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:494 +#: templates/js/translated/part.js:498 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:499 +#: templates/js/translated/part.js:503 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:501 +#: templates/js/translated/part.js:505 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:518 +#: templates/js/translated/part.js:522 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:528 +#: templates/js/translated/part.js:532 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:531 +#: templates/js/translated/part.js:535 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:556 +#: templates/js/translated/part.js:560 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:582 templates/js/translated/part.js:1466 +#: templates/js/translated/part.js:586 templates/js/translated/part.js:1470 #: templates/js/translated/table_filters.js:468 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:592 templates/js/translated/part.js:1478 +#: templates/js/translated/part.js:596 templates/js/translated/part.js:1482 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:626 templates/js/translated/part.js:711 +#: templates/js/translated/part.js:630 templates/js/translated/part.js:715 msgid "Trackable part" msgstr "" -#: templates/js/translated/part.js:630 templates/js/translated/part.js:715 +#: templates/js/translated/part.js:634 templates/js/translated/part.js:719 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:642 +#: templates/js/translated/part.js:646 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:646 +#: templates/js/translated/part.js:650 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:774 +#: templates/js/translated/part.js:778 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1162 +#: templates/js/translated/part.js:1166 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1186 +#: templates/js/translated/part.js:1190 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:1253 templates/js/translated/part.js:1549 +#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1553 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:1292 +#: templates/js/translated/part.js:1296 msgid "Not available" msgstr "" -#: templates/js/translated/part.js:1443 +#: templates/js/translated/part.js:1447 msgid "No category" msgstr "" -#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816 -#: templates/js/translated/stock.js:2343 +#: templates/js/translated/part.js:1577 templates/js/translated/part.js:1820 +#: templates/js/translated/stock.js:2347 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:1589 +#: templates/js/translated/part.js:1593 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:1655 +#: templates/js/translated/part.js:1659 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:1660 +#: templates/js/translated/part.js:1664 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:1665 +#: templates/js/translated/part.js:1669 msgid "Select Part Category" msgstr "" -#: templates/js/translated/part.js:1678 +#: templates/js/translated/part.js:1682 msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2362 +#: templates/js/translated/part.js:1839 templates/js/translated/stock.js:2366 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:1914 +#: templates/js/translated/part.js:1918 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:1925 +#: templates/js/translated/part.js:1934 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:1983 +#: templates/js/translated/part.js:1992 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2034 templates/js/translated/stock.js:1295 +#: templates/js/translated/part.js:2043 templates/js/translated/stock.js:1299 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:2035 templates/js/translated/stock.js:1296 -#: templates/js/translated/stock.js:1556 +#: templates/js/translated/part.js:2044 templates/js/translated/stock.js:1300 +#: templates/js/translated/stock.js:1560 msgid "Delete test result" msgstr "" -#: templates/js/translated/part.js:2041 +#: templates/js/translated/part.js:2050 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2063 +#: templates/js/translated/part.js:2072 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2077 +#: templates/js/translated/part.js:2086 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2102 +#: templates/js/translated/part.js:2111 #, python-brace-format msgid "No ${human_name} information found" msgstr "" -#: templates/js/translated/part.js:2159 +#: templates/js/translated/part.js:2168 #, python-brace-format msgid "Edit ${human_name}" msgstr "" -#: templates/js/translated/part.js:2160 +#: templates/js/translated/part.js:2169 #, python-brace-format msgid "Delete ${human_name}" msgstr "" -#: templates/js/translated/part.js:2274 +#: templates/js/translated/part.js:2283 msgid "Current Stock" msgstr "" -#: templates/js/translated/part.js:2307 +#: templates/js/translated/part.js:2316 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2333 +#: templates/js/translated/part.js:2342 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2403 +#: templates/js/translated/part.js:2412 msgid "Single Price" msgstr "" -#: templates/js/translated/part.js:2422 +#: templates/js/translated/part.js:2431 msgid "Single Price Difference" msgstr "" @@ -9511,376 +9555,376 @@ msgstr "" msgid "Parent stock location" msgstr "" -#: templates/js/translated/stock.js:140 +#: templates/js/translated/stock.js:144 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:155 +#: templates/js/translated/stock.js:159 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:169 +#: templates/js/translated/stock.js:173 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:171 +#: templates/js/translated/stock.js:175 msgid "Any child locations will be moved to the parent of this location" msgstr "" -#: templates/js/translated/stock.js:172 +#: templates/js/translated/stock.js:176 msgid "Any stock items in this location will be moved to the parent of this location" msgstr "" -#: templates/js/translated/stock.js:178 +#: templates/js/translated/stock.js:182 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:223 +#: templates/js/translated/stock.js:227 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:262 +#: templates/js/translated/stock.js:266 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:268 +#: templates/js/translated/stock.js:272 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:333 +#: templates/js/translated/stock.js:337 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:353 +#: templates/js/translated/stock.js:357 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:369 +#: templates/js/translated/stock.js:373 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:374 +#: templates/js/translated/stock.js:378 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:395 +#: templates/js/translated/stock.js:399 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:445 +#: templates/js/translated/stock.js:449 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:458 +#: templates/js/translated/stock.js:462 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:483 +#: templates/js/translated/stock.js:487 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:487 templates/js/translated/stock.js:488 +#: templates/js/translated/stock.js:491 templates/js/translated/stock.js:492 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:504 +#: templates/js/translated/stock.js:508 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:524 +#: templates/js/translated/stock.js:528 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:533 +#: templates/js/translated/stock.js:537 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:656 +#: templates/js/translated/stock.js:660 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:657 +#: templates/js/translated/stock.js:661 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:734 +#: templates/js/translated/stock.js:738 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:735 +#: templates/js/translated/stock.js:739 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:737 +#: templates/js/translated/stock.js:741 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:738 +#: templates/js/translated/stock.js:742 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:824 +#: templates/js/translated/stock.js:828 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:825 +#: templates/js/translated/stock.js:829 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:920 +#: templates/js/translated/stock.js:924 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:921 +#: templates/js/translated/stock.js:925 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:927 +#: templates/js/translated/stock.js:931 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:928 +#: templates/js/translated/stock.js:932 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:932 +#: templates/js/translated/stock.js:936 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:933 +#: templates/js/translated/stock.js:937 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:937 +#: templates/js/translated/stock.js:941 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:938 users/models.py:216 +#: templates/js/translated/stock.js:942 users/models.py:216 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:942 +#: templates/js/translated/stock.js:946 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1035 +#: templates/js/translated/stock.js:1039 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1035 +#: templates/js/translated/stock.js:1039 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1075 +#: templates/js/translated/stock.js:1079 msgid "You must select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1098 +#: templates/js/translated/stock.js:1102 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1234 +#: templates/js/translated/stock.js:1238 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1236 +#: templates/js/translated/stock.js:1240 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1241 +#: templates/js/translated/stock.js:1245 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1288 +#: templates/js/translated/stock.js:1292 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1291 +#: templates/js/translated/stock.js:1295 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1317 +#: templates/js/translated/stock.js:1321 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1374 +#: templates/js/translated/stock.js:1378 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1539 +#: templates/js/translated/stock.js:1543 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1561 +#: templates/js/translated/stock.js:1565 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1590 +#: templates/js/translated/stock.js:1594 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1594 +#: templates/js/translated/stock.js:1598 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1602 +#: templates/js/translated/stock.js:1606 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1608 +#: templates/js/translated/stock.js:1612 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1775 +#: templates/js/translated/stock.js:1779 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:1780 +#: templates/js/translated/stock.js:1784 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:1783 +#: templates/js/translated/stock.js:1787 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:1786 +#: templates/js/translated/stock.js:1790 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:1788 +#: templates/js/translated/stock.js:1792 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:1790 +#: templates/js/translated/stock.js:1794 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:1793 +#: templates/js/translated/stock.js:1797 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:1797 +#: templates/js/translated/stock.js:1801 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:1799 +#: templates/js/translated/stock.js:1803 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:1806 +#: templates/js/translated/stock.js:1810 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:1808 +#: templates/js/translated/stock.js:1812 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:1810 +#: templates/js/translated/stock.js:1814 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:1814 +#: templates/js/translated/stock.js:1818 #: templates/js/translated/table_filters.js:196 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:1865 +#: templates/js/translated/stock.js:1869 msgid "Stocktake" msgstr "" -#: templates/js/translated/stock.js:1944 +#: templates/js/translated/stock.js:1948 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:1982 +#: templates/js/translated/stock.js:1986 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2155 +#: templates/js/translated/stock.js:2159 msgid "Set Stock Status" msgstr "" -#: templates/js/translated/stock.js:2169 +#: templates/js/translated/stock.js:2173 msgid "Select Status Code" msgstr "" -#: templates/js/translated/stock.js:2170 +#: templates/js/translated/stock.js:2174 msgid "Status code must be selected" msgstr "" -#: templates/js/translated/stock.js:2400 +#: templates/js/translated/stock.js:2404 msgid "Load Subloactions" msgstr "" -#: templates/js/translated/stock.js:2484 +#: templates/js/translated/stock.js:2493 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2500 +#: templates/js/translated/stock.js:2509 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2522 +#: templates/js/translated/stock.js:2531 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2541 +#: templates/js/translated/stock.js:2550 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2560 +#: templates/js/translated/stock.js:2569 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2578 +#: templates/js/translated/stock.js:2587 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:2601 +#: templates/js/translated/stock.js:2610 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:2609 +#: templates/js/translated/stock.js:2618 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:2685 +#: templates/js/translated/stock.js:2694 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:2736 templates/js/translated/stock.js:2772 +#: templates/js/translated/stock.js:2745 templates/js/translated/stock.js:2781 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:2785 +#: templates/js/translated/stock.js:2794 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:2806 +#: templates/js/translated/stock.js:2815 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:2807 +#: templates/js/translated/stock.js:2816 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:2809 +#: templates/js/translated/stock.js:2818 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:2810 +#: templates/js/translated/stock.js:2819 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:2811 +#: templates/js/translated/stock.js:2820 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:2812 +#: templates/js/translated/stock.js:2821 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:2825 +#: templates/js/translated/stock.js:2834 msgid "Select part to install" msgstr "" diff --git a/InvenTree/locale/fr/LC_MESSAGES/django.po b/InvenTree/locale/fr/LC_MESSAGES/django.po index 80ed8f0069..77912466e8 100644 --- a/InvenTree/locale/fr/LC_MESSAGES/django.po +++ b/InvenTree/locale/fr/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-11 02:47+0000\n" -"PO-Revision-Date: 2022-08-11 13:49\n" +"POT-Creation-Date: 2022-08-16 11:53+0000\n" +"PO-Revision-Date: 2022-08-16 21:35\n" "Last-Translator: \n" "Language-Team: French\n" "Language: fr_FR\n" @@ -36,15 +36,15 @@ msgstr "Entrer la date" #: order/templates/order/so_sidebar.html:17 #: part/templates/part/part_sidebar.html:59 #: report/templates/report/inventree_build_order_base.html:172 -#: stock/models.py:1993 stock/models.py:2101 stock/serializers.py:329 -#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:823 -#: stock/serializers.py:922 stock/serializers.py:1054 +#: stock/models.py:2000 stock/models.py:2108 stock/serializers.py:329 +#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825 +#: stock/serializers.py:924 stock/serializers.py:1056 #: stock/templates/stock/stock_sidebar.html:25 #: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101 #: templates/js/translated/company.js:964 templates/js/translated/order.js:2104 #: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753 #: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102 -#: templates/js/translated/stock.js:1370 templates/js/translated/stock.js:1976 +#: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980 msgid "Notes" msgstr "Notes" @@ -163,6 +163,10 @@ msgstr "Aucun numéro de série trouvé" msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "Le nombre de numéros de série uniques ({s}) doit correspondre à la quantité ({q})" +#: InvenTree/mixins.py:71 +msgid "Remove HTML tags from this value" +msgstr "" + #: InvenTree/models.py:236 msgid "Improperly formatted pattern" msgstr "Modèle mal formaté" @@ -195,7 +199,7 @@ msgstr "Fichier manquant" msgid "Missing external link" msgstr "Lien externe manquant" -#: InvenTree/models.py:395 stock/models.py:2095 +#: InvenTree/models.py:395 stock/models.py:2102 #: templates/js/translated/attachment.js:103 #: templates/js/translated/attachment.js:241 msgid "Attachment" @@ -207,16 +211,16 @@ msgstr "Sélectionnez un fichier à joindre" #: InvenTree/models.py:402 company/models.py:124 company/models.py:276 #: company/models.py:510 order/models.py:84 order/models.py:1245 -#: part/models.py:795 +#: part/models.py:802 #: report/templates/report/inventree_build_order_base.html:164 #: templates/js/translated/company.js:656 #: templates/js/translated/company.js:948 templates/js/translated/order.js:2742 -#: templates/js/translated/part.js:1510 +#: templates/js/translated/part.js:1514 msgid "Link" msgstr "Lien" -#: InvenTree/models.py:403 build/models.py:296 part/models.py:796 -#: stock/models.py:651 +#: InvenTree/models.py:403 build/models.py:296 part/models.py:803 +#: stock/models.py:658 msgid "Link to external URL" msgstr "Lien vers une url externe" @@ -229,12 +233,12 @@ msgstr "Commentaire" msgid "File comment" msgstr "Commentaire du fichier" -#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1646 -#: common/models.py:1647 common/models.py:1870 common/models.py:1871 -#: common/models.py:2133 common/models.py:2134 part/models.py:2193 -#: part/models.py:2213 plugin/models.py:238 plugin/models.py:239 +#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665 +#: common/models.py:1666 common/models.py:1889 common/models.py:1890 +#: common/models.py:2152 common/models.py:2153 part/models.py:2200 +#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2632 +#: templates/js/translated/stock.js:2641 msgid "User" msgstr "Utilisateur" @@ -271,19 +275,19 @@ msgstr "Erreur lors du renommage du fichier" msgid "Invalid choice" msgstr "Choix invalide" -#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1856 -#: company/models.py:358 label/models.py:101 part/models.py:739 -#: part/models.py:2371 plugin/models.py:93 report/models.py:152 +#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875 +#: company/models.py:358 label/models.py:101 part/models.py:746 +#: part/models.py:2378 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 -#: templates/InvenTree/settings/plugin.html:49 -#: templates/InvenTree/settings/plugin.html:132 +#: templates/InvenTree/settings/plugin.html:51 +#: templates/InvenTree/settings/plugin.html:134 #: templates/InvenTree/settings/plugin_settings.html:23 #: templates/InvenTree/settings/settings.html:347 #: templates/js/translated/company.js:545 #: templates/js/translated/company.js:758 #: templates/js/translated/notification.js:71 -#: templates/js/translated/part.js:684 templates/js/translated/part.js:836 -#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2388 +#: templates/js/translated/part.js:688 templates/js/translated/part.js:840 +#: templates/js/translated/part.js:1906 templates/js/translated/stock.js:2392 msgid "Name" msgstr "Nom" @@ -292,21 +296,21 @@ msgstr "Nom" #: company/models.py:516 company/templates/company/company_base.html:71 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:87 label/models.py:108 -#: order/models.py:82 part/models.py:762 part/templates/part/category.html:74 +#: order/models.py:82 part/models.py:769 part/templates/part/category.html:80 #: part/templates/part/part_base.html:167 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 -#: stock/templates/stock/location.html:103 +#: stock/templates/stock/location.html:108 #: templates/InvenTree/settings/plugin_settings.html:33 #: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848 #: templates/js/translated/build.js:2471 templates/js/translated/company.js:409 #: templates/js/translated/company.js:667 #: templates/js/translated/company.js:959 templates/js/translated/order.js:1720 #: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531 -#: templates/js/translated/part.js:743 templates/js/translated/part.js:1149 -#: templates/js/translated/part.js:1424 templates/js/translated/part.js:1933 -#: templates/js/translated/part.js:2002 templates/js/translated/stock.js:1739 -#: templates/js/translated/stock.js:2415 templates/js/translated/stock.js:2469 +#: templates/js/translated/part.js:747 templates/js/translated/part.js:1153 +#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1942 +#: templates/js/translated/part.js:2011 templates/js/translated/stock.js:1743 +#: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478 msgid "Description" msgstr "Description" @@ -319,7 +323,7 @@ msgid "parent" msgstr "parent" #: InvenTree/models.py:560 InvenTree/models.py:561 -#: templates/js/translated/part.js:1939 templates/js/translated/stock.js:2421 +#: templates/js/translated/part.js:1948 templates/js/translated/stock.js:2430 msgid "Path" msgstr "Chemin d'accès" @@ -331,7 +335,7 @@ msgstr "Erreur serveur" msgid "An error has been logged by the server." msgstr "Une erreur a été enregistrée par le serveur." -#: InvenTree/serializers.py:55 part/models.py:2692 +#: InvenTree/serializers.py:55 part/models.py:2699 msgid "Must be a valid number" msgstr "Doit être un nombre valide" @@ -398,99 +402,99 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/settings.py:609 +#: InvenTree/settings.py:607 msgid "Czech" msgstr "Tchèque" -#: InvenTree/settings.py:610 +#: InvenTree/settings.py:608 msgid "German" msgstr "Allemand" -#: InvenTree/settings.py:611 +#: InvenTree/settings.py:609 msgid "Greek" msgstr "Grec" -#: InvenTree/settings.py:612 +#: InvenTree/settings.py:610 msgid "English" msgstr "Anglais" -#: InvenTree/settings.py:613 +#: InvenTree/settings.py:611 msgid "Spanish" msgstr "Espagnol" -#: InvenTree/settings.py:614 +#: InvenTree/settings.py:612 msgid "Spanish (Mexican)" msgstr "Espagnol (Mexique)" -#: InvenTree/settings.py:615 +#: InvenTree/settings.py:613 msgid "Farsi / Persian" msgstr "Farsi / Perse" -#: InvenTree/settings.py:616 +#: InvenTree/settings.py:614 msgid "French" msgstr "Français" -#: InvenTree/settings.py:617 +#: InvenTree/settings.py:615 msgid "Hebrew" msgstr "Hébreu" -#: InvenTree/settings.py:618 +#: InvenTree/settings.py:616 msgid "Hungarian" msgstr "Hongrois" -#: InvenTree/settings.py:619 +#: InvenTree/settings.py:617 msgid "Italian" msgstr "Italien" -#: InvenTree/settings.py:620 +#: InvenTree/settings.py:618 msgid "Japanese" msgstr "Japonais" -#: InvenTree/settings.py:621 +#: InvenTree/settings.py:619 msgid "Korean" msgstr "Coréen" -#: InvenTree/settings.py:622 +#: InvenTree/settings.py:620 msgid "Dutch" msgstr "Néerlandais" -#: InvenTree/settings.py:623 +#: InvenTree/settings.py:621 msgid "Norwegian" msgstr "Norvégien" -#: InvenTree/settings.py:624 +#: InvenTree/settings.py:622 msgid "Polish" msgstr "Polonais" -#: InvenTree/settings.py:625 +#: InvenTree/settings.py:623 msgid "Portuguese" msgstr "Portugais" -#: InvenTree/settings.py:626 +#: InvenTree/settings.py:624 msgid "Portuguese (Brazilian)" msgstr "Portugais (Brésilien)" -#: InvenTree/settings.py:627 +#: InvenTree/settings.py:625 msgid "Russian" msgstr "Russe" -#: InvenTree/settings.py:628 +#: InvenTree/settings.py:626 msgid "Swedish" msgstr "Suédois" -#: InvenTree/settings.py:629 +#: InvenTree/settings.py:627 msgid "Thai" msgstr "Thaïlandais" -#: InvenTree/settings.py:630 +#: InvenTree/settings.py:628 msgid "Turkish" msgstr "Turc" -#: InvenTree/settings.py:631 +#: InvenTree/settings.py:629 msgid "Vietnamese" msgstr "Vietnamien" -#: InvenTree/settings.py:632 +#: InvenTree/settings.py:630 msgid "Chinese" msgstr "Chinois" @@ -621,7 +625,7 @@ msgstr "Séparer de l'élément parent" msgid "Split child item" msgstr "Fractionner l'élément enfant" -#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2080 +#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2084 msgid "Merged stock items" msgstr "Articles de stock fusionnés" @@ -743,7 +747,7 @@ msgid "Build Order Reference" msgstr "Référence de l' Ordre de Fabrication" #: build/models.py:166 order/models.py:240 order/models.py:623 -#: order/models.py:904 part/models.py:2610 +#: order/models.py:904 part/models.py:2617 #: part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 @@ -770,10 +774,10 @@ msgstr "BuildOrder associé a cette fabrication" #: build/models.py:191 build/templates/build/build_base.html:77 #: build/templates/build/detail.html:29 company/models.py:670 #: order/models.py:1001 order/models.py:1112 order/models.py:1113 -#: part/models.py:336 part/models.py:2139 part/models.py:2154 -#: part/models.py:2173 part/models.py:2191 part/models.py:2290 -#: part/models.py:2410 part/models.py:2500 part/models.py:2585 -#: part/models.py:2861 part/serializers.py:811 +#: part/models.py:343 part/models.py:2146 part/models.py:2161 +#: part/models.py:2180 part/models.py:2198 part/models.py:2297 +#: part/models.py:2417 part/models.py:2507 part/models.py:2592 +#: part/models.py:2868 part/serializers.py:813 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -796,11 +800,11 @@ msgstr "BuildOrder associé a cette fabrication" #: templates/js/translated/order.js:934 templates/js/translated/order.js:1387 #: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885 #: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507 -#: templates/js/translated/part.js:1134 templates/js/translated/part.js:1206 -#: templates/js/translated/part.js:1402 templates/js/translated/stock.js:582 -#: templates/js/translated/stock.js:747 templates/js/translated/stock.js:954 -#: templates/js/translated/stock.js:1696 templates/js/translated/stock.js:2495 -#: templates/js/translated/stock.js:2690 templates/js/translated/stock.js:2824 +#: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210 +#: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586 +#: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958 +#: templates/js/translated/stock.js:1700 templates/js/translated/stock.js:2504 +#: templates/js/translated/stock.js:2699 templates/js/translated/stock.js:2833 msgid "Part" msgstr "Pièce" @@ -858,7 +862,7 @@ msgid "Build status code" msgstr "Code de statut de construction" #: build/models.py:251 build/serializers.py:225 order/serializers.py:447 -#: stock/models.py:655 templates/js/translated/order.js:1247 +#: stock/models.py:662 templates/js/translated/order.js:1247 msgid "Batch Code" msgstr "Code de lot" @@ -866,7 +870,7 @@ msgstr "Code de lot" msgid "Batch code for this build output" msgstr "Code de lot pour ce build output" -#: build/models.py:258 order/models.py:86 part/models.py:931 +#: build/models.py:258 order/models.py:86 part/models.py:938 #: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544 msgid "Creation Date" msgstr "Date de création" @@ -899,7 +903,7 @@ msgstr "Utilisateur ayant émis cette commande de construction" #: build/models.py:289 build/templates/build/build_base.html:190 #: build/templates/build/detail.html:115 order/models.py:100 #: order/templates/order/order_base.html:176 -#: order/templates/order/sales_order_base.html:183 part/models.py:935 +#: order/templates/order/sales_order_base.html:183 part/models.py:942 #: report/templates/report/inventree_build_order_base.html:158 #: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754 msgid "Responsible" @@ -912,7 +916,7 @@ msgstr "Utilisateur responsable de cette commande de construction" #: build/models.py:295 build/templates/build/detail.html:101 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:153 -#: part/templates/part/part_base.html:346 stock/models.py:649 +#: part/templates/part/part_base.html:346 stock/models.py:656 #: stock/templates/stock/item_base.html:205 msgid "External Link" msgstr "Lien Externe" @@ -978,8 +982,8 @@ msgid "Build to allocate parts" msgstr "Construction à laquelle allouer des pièces" #: build/models.py:1345 build/serializers.py:645 order/serializers.py:1015 -#: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 -#: stock/serializers.py:880 stock/templates/stock/item_base.html:10 +#: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:756 +#: stock/serializers.py:882 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:199 #: templates/js/translated/build.js:741 templates/js/translated/build.js:746 @@ -987,8 +991,8 @@ msgstr "Construction à laquelle allouer des pièces" #: templates/js/translated/order.js:104 templates/js/translated/order.js:2886 #: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193 #: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380 -#: templates/js/translated/stock.js:583 templates/js/translated/stock.js:748 -#: templates/js/translated/stock.js:2568 +#: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752 +#: templates/js/translated/stock.js:2577 msgid "Stock Item" msgstr "Article en stock" @@ -998,11 +1002,11 @@ msgstr "Stock d'origine de l'article" #: build/models.py:1358 build/serializers.py:193 #: build/templates/build/build_base.html:82 -#: build/templates/build/detail.html:34 common/models.py:1678 +#: build/templates/build/detail.html:34 common/models.py:1697 #: company/templates/company/supplier_part.html:279 order/models.py:897 #: order/models.py:1423 order/serializers.py:1155 #: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40 -#: part/models.py:2601 part/templates/part/detail.html:937 +#: part/models.py:2608 part/templates/part/detail.html:937 #: part/templates/part/detail.html:1023 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 @@ -1025,11 +1029,11 @@ msgstr "Stock d'origine de l'article" #: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207 #: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386 #: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037 -#: templates/js/translated/part.js:1034 templates/js/translated/part.js:2147 -#: templates/js/translated/part.js:2378 templates/js/translated/part.js:2412 -#: templates/js/translated/part.js:2490 templates/js/translated/stock.js:454 -#: templates/js/translated/stock.js:608 templates/js/translated/stock.js:778 -#: templates/js/translated/stock.js:2617 templates/js/translated/stock.js:2702 +#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2156 +#: templates/js/translated/part.js:2387 templates/js/translated/part.js:2421 +#: templates/js/translated/part.js:2499 templates/js/translated/stock.js:458 +#: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782 +#: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711 msgid "Quantity" msgstr "Quantité" @@ -1071,8 +1075,8 @@ msgid "Enter quantity for build output" msgstr "Entrer la quantité désiré pour la fabrication" #: build/serializers.py:208 build/serializers.py:665 order/models.py:318 -#: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 -#: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 +#: order/serializers.py:287 order/serializers.py:442 part/serializers.py:544 +#: part/serializers.py:976 stock/models.py:484 stock/models.py:1251 #: stock/serializers.py:302 msgid "Quantity must be greater than zero" msgstr "La quantité doit être supérieure à zéro" @@ -1087,7 +1091,7 @@ msgstr "Quantité entière requise, car la facture de matériaux contient des pi #: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159 #: stock/serializers.py:311 templates/js/translated/order.js:1258 -#: templates/js/translated/stock.js:267 templates/js/translated/stock.js:455 +#: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459 msgid "Serial Numbers" msgstr "Numéros de série" @@ -1113,16 +1117,16 @@ msgstr "Une liste d'ordre de production doit être fourni" #: build/serializers.py:366 order/serializers.py:428 order/serializers.py:532 #: stock/serializers.py:322 stock/serializers.py:453 stock/serializers.py:534 -#: stock/serializers.py:915 stock/serializers.py:1148 +#: stock/serializers.py:917 stock/serializers.py:1150 #: stock/templates/stock/item_base.html:390 #: templates/js/translated/barcode.js:436 #: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753 #: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285 #: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305 #: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394 -#: templates/js/translated/part.js:181 templates/js/translated/stock.js:584 -#: templates/js/translated/stock.js:749 templates/js/translated/stock.js:956 -#: templates/js/translated/stock.js:1850 templates/js/translated/stock.js:2509 +#: templates/js/translated/part.js:181 templates/js/translated/stock.js:588 +#: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960 +#: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518 msgid "Location" msgstr "Emplacement" @@ -1135,8 +1139,8 @@ msgstr "Emplacement des ordres de production achevés" #: order/serializers.py:465 stock/templates/stock/item_base.html:423 #: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505 #: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724 -#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1825 -#: templates/js/translated/stock.js:2586 templates/js/translated/stock.js:2718 +#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829 +#: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727 msgid "Status" msgstr "État" @@ -1212,8 +1216,8 @@ msgstr "La quantité nécessaire n'a pas encore été complétée" msgid "Build order has incomplete outputs" msgstr "L'ordre de production a des sorties incomplètes" -#: build/serializers.py:577 build/serializers.py:622 part/models.py:2719 -#: part/models.py:2853 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726 +#: part/models.py:2860 msgid "BOM Item" msgstr "Article de la nomenclature" @@ -1229,7 +1233,7 @@ msgstr "La sortie de la construction doit pointer vers la même version" msgid "bom_item.part must point to the same part as the build order" msgstr "bom_item.part doit pointer sur la même pièce que l'ordre de construction" -#: build/serializers.py:651 stock/serializers.py:767 +#: build/serializers.py:651 stock/serializers.py:769 msgid "Item must be in stock" msgstr "L'article doit être en stock" @@ -1367,7 +1371,7 @@ msgstr "Le stock n'a pas été entièrement alloué à cet ordre de construction #: report/templates/report/inventree_build_order_base.html:125 #: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741 #: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552 -#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1038 +#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042 msgid "Target Date" msgstr "Date Cible" @@ -1445,8 +1449,8 @@ msgstr "Pièces allouées" #: stock/templates/stock/item_base.html:170 #: templates/js/translated/build.js:1182 #: templates/js/translated/model_renderers.js:124 -#: templates/js/translated/stock.js:1022 templates/js/translated/stock.js:1839 -#: templates/js/translated/stock.js:2725 +#: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843 +#: templates/js/translated/stock.js:2734 #: templates/js/translated/table_filters.js:159 #: templates/js/translated/table_filters.js:250 msgid "Batch" @@ -1506,7 +1510,7 @@ msgstr "Commander les pièces requises" #: build/templates/build/detail.html:187 #: company/templates/company/detail.html:37 #: company/templates/company/detail.html:85 -#: part/templates/part/category.html:177 templates/js/translated/order.js:977 +#: part/templates/part/category.html:183 templates/js/translated/order.js:977 msgid "Order Parts" msgstr "Commander des pièces" @@ -1559,12 +1563,12 @@ msgid "Delete outputs" msgstr "Supprimer les sorties" #: build/templates/build/detail.html:267 -#: stock/templates/stock/location.html:197 templates/stock_table.html:27 +#: stock/templates/stock/location.html:202 templates/stock_table.html:27 msgid "Printing Actions" msgstr "Actions d'impression" #: build/templates/build/detail.html:271 build/templates/build/detail.html:272 -#: stock/templates/stock/location.html:201 templates/stock_table.html:31 +#: stock/templates/stock/location.html:206 templates/stock_table.html:31 msgid "Print labels" msgstr "Imprimer les étiquettes" @@ -1841,7 +1845,7 @@ msgstr "Copier les templates de paramètres de catégorie" msgid "Copy category parameter templates when creating a part" msgstr "Copier les templates de paramètres de la catégorie lors de la création d'une pièce" -#: common/models.py:951 part/models.py:2412 report/models.py:158 +#: common/models.py:951 part/models.py:2419 report/models.py:158 #: templates/js/translated/table_filters.js:38 #: templates/js/translated/table_filters.js:484 msgid "Template" @@ -1851,7 +1855,7 @@ msgstr "Modèle" msgid "Parts are templates by default" msgstr "Les pièces sont des templates par défaut" -#: common/models.py:958 part/models.py:887 templates/js/translated/bom.js:1448 +#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448 #: templates/js/translated/table_filters.js:176 #: templates/js/translated/table_filters.js:447 msgid "Assembly" @@ -1861,7 +1865,7 @@ msgstr "Assemblage" msgid "Parts can be assembled from other components by default" msgstr "Les composantes peuvent être assemblées à partir d'autres composants par défaut" -#: common/models.py:965 part/models.py:893 +#: common/models.py:965 part/models.py:900 #: templates/js/translated/table_filters.js:455 msgid "Component" msgstr "Composant" @@ -1870,7 +1874,7 @@ msgstr "Composant" msgid "Parts can be used as sub-components by default" msgstr "Les composantes peuvent être utilisées comme sous-composants par défaut" -#: common/models.py:972 part/models.py:904 +#: common/models.py:972 part/models.py:911 msgid "Purchaseable" msgstr "Achetable" @@ -1878,7 +1882,7 @@ msgstr "Achetable" msgid "Parts are purchaseable by default" msgstr "Les pièces sont achetables par défaut" -#: common/models.py:979 part/models.py:909 +#: common/models.py:979 part/models.py:916 #: templates/js/translated/table_filters.js:476 msgid "Salable" msgstr "Vendable" @@ -1887,7 +1891,7 @@ msgstr "Vendable" msgid "Parts are salable by default" msgstr "Les pièces sont vendables par défaut" -#: common/models.py:986 part/models.py:899 +#: common/models.py:986 part/models.py:906 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:108 #: templates/js/translated/table_filters.js:488 @@ -1898,7 +1902,7 @@ msgstr "Traçable" msgid "Parts are trackable by default" msgstr "Les pièces sont traçables par défaut" -#: common/models.py:993 part/models.py:919 +#: common/models.py:993 part/models.py:926 #: part/templates/part/part_base.html:151 #: templates/js/translated/table_filters.js:42 #: templates/js/translated/table_filters.js:492 @@ -1982,608 +1986,632 @@ msgid "Format to display the part name" msgstr "Format pour afficher le nom de la pièce" #: common/models.py:1074 +msgid "Part Category Default Icon" +msgstr "" + +#: common/models.py:1075 +msgid "Part category default icon (empty means no icon)" +msgstr "" + +#: common/models.py:1080 msgid "Enable label printing" msgstr "Activer l'impression d'étiquettes" -#: common/models.py:1075 +#: common/models.py:1081 msgid "Enable label printing from the web interface" msgstr "Activer l'impression d'étiquettes depuis l'interface Web" -#: common/models.py:1081 +#: common/models.py:1087 msgid "Label Image DPI" msgstr "Étiquette image DPI" -#: common/models.py:1082 +#: common/models.py:1088 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "Résolution DPI lors de la génération de fichiers image pour fournir aux plugins d'impression d'étiquettes" -#: common/models.py:1091 +#: common/models.py:1097 msgid "Enable Reports" msgstr "Activer les rapports" -#: common/models.py:1092 +#: common/models.py:1098 msgid "Enable generation of reports" msgstr "Activer la génération de rapports" -#: common/models.py:1098 templates/stats.html:25 +#: common/models.py:1104 templates/stats.html:25 msgid "Debug Mode" msgstr "Mode Débogage" -#: common/models.py:1099 +#: common/models.py:1105 msgid "Generate reports in debug mode (HTML output)" msgstr "Générer des rapports en mode debug (sortie HTML)" -#: common/models.py:1105 +#: common/models.py:1111 msgid "Page Size" msgstr "Taille de la page" -#: common/models.py:1106 +#: common/models.py:1112 msgid "Default page size for PDF reports" msgstr "Taille de page par défaut pour les rapports PDF" -#: common/models.py:1116 +#: common/models.py:1122 msgid "Enable Test Reports" msgstr "Activer les rapports de test" -#: common/models.py:1117 +#: common/models.py:1123 msgid "Enable generation of test reports" msgstr "Activer la génération de rapports de test" -#: common/models.py:1123 +#: common/models.py:1129 msgid "Attach Test Reports" msgstr "Joindre des rapports de test" -#: common/models.py:1124 +#: common/models.py:1130 msgid "When printing a Test Report, attach a copy of the Test Report to the associated Stock Item" msgstr "Lors de l'impression d'un rapport de test, joignez une copie du rapport de test à l'article en stock associé" -#: common/models.py:1130 +#: common/models.py:1136 msgid "Batch Code Template" msgstr "Modèle de code de lot" -#: common/models.py:1131 +#: common/models.py:1137 msgid "Template for generating default batch codes for stock items" msgstr "Modèle pour générer des codes par défaut pour les articles en stock" -#: common/models.py:1136 +#: common/models.py:1142 msgid "Stock Expiry" msgstr "Expiration du stock" -#: common/models.py:1137 +#: common/models.py:1143 msgid "Enable stock expiry functionality" msgstr "Activer la fonctionnalité d'expiration du stock" -#: common/models.py:1143 +#: common/models.py:1149 msgid "Sell Expired Stock" msgstr "Vendre le stock expiré" -#: common/models.py:1144 +#: common/models.py:1150 msgid "Allow sale of expired stock" msgstr "Autoriser la vente de stock expiré" -#: common/models.py:1150 +#: common/models.py:1156 msgid "Stock Stale Time" msgstr "" -#: common/models.py:1151 +#: common/models.py:1157 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/models.py:1153 +#: common/models.py:1159 msgid "days" msgstr "jours" -#: common/models.py:1158 +#: common/models.py:1164 msgid "Build Expired Stock" msgstr "" -#: common/models.py:1159 +#: common/models.py:1165 msgid "Allow building with expired stock" msgstr "" -#: common/models.py:1165 +#: common/models.py:1171 msgid "Stock Ownership Control" msgstr "" -#: common/models.py:1166 +#: common/models.py:1172 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/models.py:1172 -msgid "Build Order Reference Pattern" -msgstr "" - -#: common/models.py:1173 -msgid "Required pattern for generating Build Order reference field" +#: common/models.py:1178 +msgid "Stock Location Default Icon" msgstr "" #: common/models.py:1179 +msgid "Stock location default icon (empty means no icon)" +msgstr "" + +#: common/models.py:1184 +msgid "Build Order Reference Pattern" +msgstr "" + +#: common/models.py:1185 +msgid "Required pattern for generating Build Order reference field" +msgstr "" + +#: common/models.py:1191 msgid "Sales Order Reference Pattern" msgstr "" -#: common/models.py:1180 +#: common/models.py:1192 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/models.py:1186 +#: common/models.py:1198 msgid "Sales Order Default Shipment" msgstr "" -#: common/models.py:1187 +#: common/models.py:1199 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/models.py:1193 +#: common/models.py:1205 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/models.py:1194 +#: common/models.py:1206 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/models.py:1201 +#: common/models.py:1213 msgid "Enable password forgot" msgstr "Activer les mots de passe oubliés" -#: common/models.py:1202 +#: common/models.py:1214 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/models.py:1208 +#: common/models.py:1220 msgid "Enable registration" msgstr "Activer les inscriptions" -#: common/models.py:1209 +#: common/models.py:1221 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/models.py:1215 +#: common/models.py:1227 msgid "Enable SSO" msgstr "Activer le SSO" -#: common/models.py:1216 +#: common/models.py:1228 msgid "Enable SSO on the login pages" msgstr "Activer le SSO sur les pages de connexion" -#: common/models.py:1222 +#: common/models.py:1234 msgid "Email required" msgstr "Email requis" -#: common/models.py:1223 +#: common/models.py:1235 msgid "Require user to supply mail on signup" msgstr "" -#: common/models.py:1229 +#: common/models.py:1241 msgid "Auto-fill SSO users" msgstr "Saisie automatique des utilisateurs SSO" -#: common/models.py:1230 +#: common/models.py:1242 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/models.py:1236 +#: common/models.py:1248 msgid "Mail twice" msgstr "Courriel en double" -#: common/models.py:1237 +#: common/models.py:1249 msgid "On signup ask users twice for their mail" msgstr "" -#: common/models.py:1243 +#: common/models.py:1255 msgid "Password twice" msgstr "" -#: common/models.py:1244 +#: common/models.py:1256 msgid "On signup ask users twice for their password" msgstr "" -#: common/models.py:1250 +#: common/models.py:1262 msgid "Group on signup" msgstr "" -#: common/models.py:1251 +#: common/models.py:1263 msgid "Group to which new users are assigned on registration" msgstr "" -#: common/models.py:1257 +#: common/models.py:1269 msgid "Enforce MFA" msgstr "" -#: common/models.py:1258 +#: common/models.py:1270 msgid "Users must use multifactor security." msgstr "" -#: common/models.py:1264 +#: common/models.py:1276 msgid "Check plugins on startup" msgstr "" -#: common/models.py:1265 +#: common/models.py:1277 msgid "Check that all plugins are installed on startup - enable in container enviroments" msgstr "" -#: common/models.py:1273 +#: common/models.py:1284 +msgid "Check plugin signatures" +msgstr "" + +#: common/models.py:1285 +msgid "Check and show signatures for plugins" +msgstr "" + +#: common/models.py:1292 msgid "Enable URL integration" msgstr "" -#: common/models.py:1274 +#: common/models.py:1293 msgid "Enable plugins to add URL routes" msgstr "" -#: common/models.py:1281 +#: common/models.py:1300 msgid "Enable navigation integration" msgstr "" -#: common/models.py:1282 +#: common/models.py:1301 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/models.py:1289 +#: common/models.py:1308 msgid "Enable app integration" msgstr "Activer l'intégration de plugins" -#: common/models.py:1290 +#: common/models.py:1309 msgid "Enable plugins to add apps" msgstr "Activer l'intégration de plugin pour ajouter des apps" -#: common/models.py:1297 +#: common/models.py:1316 msgid "Enable schedule integration" msgstr "" -#: common/models.py:1298 +#: common/models.py:1317 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/models.py:1305 +#: common/models.py:1324 msgid "Enable event integration" msgstr "" -#: common/models.py:1306 +#: common/models.py:1325 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:1323 common/models.py:1639 +#: common/models.py:1342 common/models.py:1658 msgid "Settings key (must be unique - case insensitive" msgstr "Clé du paramètre (doit être unique - insensible à la casse)" -#: common/models.py:1345 +#: common/models.py:1364 msgid "Show subscribed parts" msgstr "" -#: common/models.py:1346 +#: common/models.py:1365 msgid "Show subscribed parts on the homepage" msgstr "" -#: common/models.py:1352 +#: common/models.py:1371 msgid "Show subscribed categories" msgstr "" -#: common/models.py:1353 +#: common/models.py:1372 msgid "Show subscribed part categories on the homepage" msgstr "" -#: common/models.py:1359 +#: common/models.py:1378 msgid "Show latest parts" msgstr "Afficher les dernières pièces" -#: common/models.py:1360 +#: common/models.py:1379 msgid "Show latest parts on the homepage" msgstr "" -#: common/models.py:1366 +#: common/models.py:1385 msgid "Recent Part Count" msgstr "" -#: common/models.py:1367 +#: common/models.py:1386 msgid "Number of recent parts to display on index page" msgstr "" -#: common/models.py:1373 +#: common/models.py:1392 msgid "Show unvalidated BOMs" msgstr "" -#: common/models.py:1374 +#: common/models.py:1393 msgid "Show BOMs that await validation on the homepage" msgstr "" -#: common/models.py:1380 +#: common/models.py:1399 msgid "Show recent stock changes" msgstr "Afficher les dernières modifications du stock" -#: common/models.py:1381 +#: common/models.py:1400 msgid "Show recently changed stock items on the homepage" msgstr "" -#: common/models.py:1387 +#: common/models.py:1406 msgid "Recent Stock Count" msgstr "" -#: common/models.py:1388 +#: common/models.py:1407 msgid "Number of recent stock items to display on index page" msgstr "" -#: common/models.py:1394 +#: common/models.py:1413 msgid "Show low stock" msgstr "" -#: common/models.py:1395 +#: common/models.py:1414 msgid "Show low stock items on the homepage" msgstr "" -#: common/models.py:1401 +#: common/models.py:1420 msgid "Show depleted stock" msgstr "Afficher le stock épuisé" -#: common/models.py:1402 +#: common/models.py:1421 msgid "Show depleted stock items on the homepage" msgstr "Afficher les stocks épuisés sur la page d'accueil" -#: common/models.py:1408 +#: common/models.py:1427 msgid "Show needed stock" msgstr "Afficher le stock nécessaire" -#: common/models.py:1409 +#: common/models.py:1428 msgid "Show stock items needed for builds on the homepage" msgstr "" -#: common/models.py:1415 +#: common/models.py:1434 msgid "Show expired stock" msgstr "" -#: common/models.py:1416 +#: common/models.py:1435 msgid "Show expired stock items on the homepage" msgstr "" -#: common/models.py:1422 +#: common/models.py:1441 msgid "Show stale stock" msgstr "" -#: common/models.py:1423 +#: common/models.py:1442 msgid "Show stale stock items on the homepage" msgstr "" -#: common/models.py:1429 +#: common/models.py:1448 msgid "Show pending builds" msgstr "" -#: common/models.py:1430 +#: common/models.py:1449 msgid "Show pending builds on the homepage" msgstr "" -#: common/models.py:1436 +#: common/models.py:1455 msgid "Show overdue builds" msgstr "" -#: common/models.py:1437 +#: common/models.py:1456 msgid "Show overdue builds on the homepage" msgstr "" -#: common/models.py:1443 +#: common/models.py:1462 msgid "Show outstanding POs" msgstr "" -#: common/models.py:1444 +#: common/models.py:1463 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:1450 +#: common/models.py:1469 msgid "Show overdue POs" msgstr "" -#: common/models.py:1451 +#: common/models.py:1470 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:1457 +#: common/models.py:1476 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:1458 +#: common/models.py:1477 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:1464 +#: common/models.py:1483 msgid "Show overdue SOs" msgstr "" -#: common/models.py:1465 +#: common/models.py:1484 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:1471 +#: common/models.py:1490 msgid "Inline label display" msgstr "" -#: common/models.py:1472 +#: common/models.py:1491 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1478 +#: common/models.py:1497 msgid "Inline report display" msgstr "" -#: common/models.py:1479 +#: common/models.py:1498 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1485 +#: common/models.py:1504 msgid "Search Parts" msgstr "" -#: common/models.py:1486 +#: common/models.py:1505 msgid "Display parts in search preview window" msgstr "" -#: common/models.py:1492 +#: common/models.py:1511 msgid "Seach Supplier Parts" msgstr "" -#: common/models.py:1493 +#: common/models.py:1512 msgid "Display supplier parts in search preview window" msgstr "" -#: common/models.py:1499 +#: common/models.py:1518 msgid "Search Manufacturer Parts" msgstr "" -#: common/models.py:1500 +#: common/models.py:1519 msgid "Display manufacturer parts in search preview window" msgstr "" -#: common/models.py:1506 +#: common/models.py:1525 msgid "Hide Inactive Parts" msgstr "" -#: common/models.py:1507 +#: common/models.py:1526 msgid "Excluded inactive parts from search preview window" msgstr "" -#: common/models.py:1513 +#: common/models.py:1532 msgid "Search Categories" msgstr "" -#: common/models.py:1514 +#: common/models.py:1533 msgid "Display part categories in search preview window" msgstr "" -#: common/models.py:1520 +#: common/models.py:1539 msgid "Search Stock" msgstr "" -#: common/models.py:1521 +#: common/models.py:1540 msgid "Display stock items in search preview window" msgstr "" -#: common/models.py:1527 +#: common/models.py:1546 msgid "Hide Unavailable Stock Items" msgstr "" -#: common/models.py:1528 +#: common/models.py:1547 msgid "Exclude stock items which are not available from the search preview window" msgstr "" -#: common/models.py:1534 +#: common/models.py:1553 msgid "Search Locations" msgstr "" -#: common/models.py:1535 +#: common/models.py:1554 msgid "Display stock locations in search preview window" msgstr "" -#: common/models.py:1541 +#: common/models.py:1560 msgid "Search Companies" msgstr "" -#: common/models.py:1542 +#: common/models.py:1561 msgid "Display companies in search preview window" msgstr "" -#: common/models.py:1548 +#: common/models.py:1567 msgid "Search Purchase Orders" msgstr "" -#: common/models.py:1549 +#: common/models.py:1568 msgid "Display purchase orders in search preview window" msgstr "" -#: common/models.py:1555 +#: common/models.py:1574 msgid "Exclude Inactive Purchase Orders" msgstr "" -#: common/models.py:1556 +#: common/models.py:1575 msgid "Exclude inactive purchase orders from search preview window" msgstr "" -#: common/models.py:1562 +#: common/models.py:1581 msgid "Search Sales Orders" msgstr "" -#: common/models.py:1563 +#: common/models.py:1582 msgid "Display sales orders in search preview window" msgstr "" -#: common/models.py:1569 +#: common/models.py:1588 msgid "Exclude Inactive Sales Orders" msgstr "" -#: common/models.py:1570 +#: common/models.py:1589 msgid "Exclude inactive sales orders from search preview window" msgstr "" -#: common/models.py:1576 +#: common/models.py:1595 msgid "Search Preview Results" msgstr "" -#: common/models.py:1577 +#: common/models.py:1596 msgid "Number of results to show in each section of the search preview window" msgstr "" -#: common/models.py:1583 +#: common/models.py:1602 msgid "Show Quantity in Forms" msgstr "" -#: common/models.py:1584 +#: common/models.py:1603 msgid "Display available part quantity in some forms" msgstr "" -#: common/models.py:1590 +#: common/models.py:1609 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:1591 +#: common/models.py:1610 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:1597 +#: common/models.py:1616 msgid "Fixed Navbar" msgstr "" -#: common/models.py:1598 +#: common/models.py:1617 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:1604 +#: common/models.py:1623 msgid "Date Format" msgstr "" -#: common/models.py:1605 +#: common/models.py:1624 msgid "Preferred format for displaying dates" msgstr "Format préféré pour l'affichage des dates" -#: common/models.py:1619 part/templates/part/detail.html:41 +#: common/models.py:1638 part/templates/part/detail.html:41 msgid "Part Scheduling" msgstr "" -#: common/models.py:1620 +#: common/models.py:1639 msgid "Display part scheduling information" msgstr "" -#: common/models.py:1679 +#: common/models.py:1698 msgid "Price break quantity" msgstr "" -#: common/models.py:1686 company/serializers.py:366 +#: common/models.py:1705 company/serializers.py:366 #: company/templates/company/supplier_part.html:284 order/models.py:938 -#: templates/js/translated/part.js:1065 templates/js/translated/part.js:2152 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2161 msgid "Price" msgstr "Prix" -#: common/models.py:1687 +#: common/models.py:1706 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:1847 common/models.py:2025 +#: common/models.py:1866 common/models.py:2044 msgid "Endpoint" msgstr "" -#: common/models.py:1848 +#: common/models.py:1867 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:1857 +#: common/models.py:1876 msgid "Name for this webhook" msgstr "" -#: common/models.py:1862 part/models.py:914 plugin/models.py:99 +#: common/models.py:1881 part/models.py:921 plugin/models.py:100 #: templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:104 #: templates/js/translated/table_filters.js:316 @@ -2591,67 +2619,67 @@ msgstr "" msgid "Active" msgstr "Actif" -#: common/models.py:1863 +#: common/models.py:1882 msgid "Is this webhook active" msgstr "" -#: common/models.py:1877 +#: common/models.py:1896 msgid "Token" msgstr "" -#: common/models.py:1878 +#: common/models.py:1897 msgid "Token for access" msgstr "" -#: common/models.py:1885 +#: common/models.py:1904 msgid "Secret" msgstr "" -#: common/models.py:1886 +#: common/models.py:1905 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:1992 +#: common/models.py:2011 msgid "Message ID" msgstr "" -#: common/models.py:1993 +#: common/models.py:2012 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2001 +#: common/models.py:2020 msgid "Host" msgstr "" -#: common/models.py:2002 +#: common/models.py:2021 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2009 +#: common/models.py:2028 msgid "Header" msgstr "" -#: common/models.py:2010 +#: common/models.py:2029 msgid "Header of this message" msgstr "" -#: common/models.py:2016 +#: common/models.py:2035 msgid "Body" msgstr "" -#: common/models.py:2017 +#: common/models.py:2036 msgid "Body of this message" msgstr "" -#: common/models.py:2026 +#: common/models.py:2045 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2031 +#: common/models.py:2050 msgid "Worked on" msgstr "" -#: common/models.py:2032 +#: common/models.py:2051 msgid "Was the work on this message finished?" msgstr "" @@ -2758,7 +2786,7 @@ msgstr "Point de contact" msgid "Link to external company information" msgstr "Lien externe vers les informations de l'entreprise" -#: company/models.py:135 part/models.py:808 +#: company/models.py:135 part/models.py:815 msgid "Image" msgstr "" @@ -2791,8 +2819,8 @@ msgid "Does this company manufacture parts?" msgstr "Cette entreprise fabrique-t-elle des pièces?" #: company/models.py:148 company/serializers.py:372 -#: company/templates/company/company_base.html:106 part/serializers.py:151 -#: part/serializers.py:182 stock/serializers.py:180 +#: company/templates/company/company_base.html:106 part/serializers.py:153 +#: part/serializers.py:184 stock/serializers.py:180 msgid "Currency" msgstr "Devise" @@ -2800,7 +2828,7 @@ msgstr "Devise" msgid "Default currency used for this company" msgstr "" -#: company/models.py:248 company/models.py:481 stock/models.py:591 +#: company/models.py:248 company/models.py:481 stock/models.py:598 #: stock/serializers.py:87 stock/templates/stock/item_base.html:148 #: templates/js/translated/bom.js:543 msgid "Base Part" @@ -2832,7 +2860,7 @@ msgstr "Sélectionner un fabricant" #: templates/js/translated/company.js:497 #: templates/js/translated/company.js:649 #: templates/js/translated/company.js:937 templates/js/translated/order.js:1971 -#: templates/js/translated/part.js:247 templates/js/translated/part.js:1023 +#: templates/js/translated/part.js:247 templates/js/translated/part.js:1027 msgid "MPN" msgstr "" @@ -2861,9 +2889,9 @@ msgstr "" #: company/models.py:365 #: report/templates/report/inventree_test_report_base.html:95 -#: stock/models.py:2088 templates/js/translated/company.js:546 -#: templates/js/translated/company.js:764 templates/js/translated/part.js:845 -#: templates/js/translated/stock.js:1356 +#: stock/models.py:2095 templates/js/translated/company.js:546 +#: templates/js/translated/company.js:764 templates/js/translated/part.js:849 +#: templates/js/translated/stock.js:1360 msgid "Value" msgstr "Valeur" @@ -2871,10 +2899,10 @@ msgstr "Valeur" msgid "Parameter value" msgstr "" -#: company/models.py:372 part/models.py:881 part/models.py:2379 +#: company/models.py:372 part/models.py:888 part/models.py:2386 #: part/templates/part/part_base.html:280 #: templates/InvenTree/settings/settings.html:352 -#: templates/js/translated/company.js:770 templates/js/translated/part.js:851 +#: templates/js/translated/company.js:770 templates/js/translated/part.js:855 msgid "Units" msgstr "" @@ -2894,7 +2922,7 @@ msgstr "" #: templates/js/translated/company.js:268 #: templates/js/translated/company.js:401 #: templates/js/translated/company.js:893 templates/js/translated/order.js:1707 -#: templates/js/translated/part.js:217 templates/js/translated/part.js:991 +#: templates/js/translated/part.js:217 templates/js/translated/part.js:995 #: templates/js/translated/table_filters.js:423 msgid "Supplier" msgstr "Fournisseur" @@ -2906,7 +2934,7 @@ msgstr "" #: company/models.py:497 company/templates/company/supplier_part.html:118 #: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267 #: templates/js/translated/order.js:1958 templates/js/translated/part.js:228 -#: templates/js/translated/part.js:1009 +#: templates/js/translated/part.js:1013 msgid "SKU" msgstr "" @@ -2927,23 +2955,23 @@ msgid "Supplier part description" msgstr "" #: company/models.py:522 company/templates/company/supplier_part.html:146 -#: part/models.py:2613 part/templates/part/upload_bom.html:59 +#: part/models.py:2620 part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401 msgid "Note" msgstr "" -#: company/models.py:526 part/models.py:1735 +#: company/models.py:526 part/models.py:1742 msgid "base cost" msgstr "coût de base" -#: company/models.py:526 part/models.py:1735 +#: company/models.py:526 part/models.py:1742 msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:528 company/templates/company/supplier_part.html:139 -#: stock/models.py:617 stock/templates/stock/item_base.html:245 -#: templates/js/translated/company.js:969 templates/js/translated/stock.js:1972 +#: stock/models.py:624 stock/templates/stock/item_base.html:245 +#: templates/js/translated/company.js:969 templates/js/translated/stock.js:1976 msgid "Packaging" msgstr "" @@ -2951,7 +2979,7 @@ msgstr "" msgid "Part packaging" msgstr "" -#: company/models.py:530 part/models.py:1737 +#: company/models.py:530 part/models.py:1744 msgid "multiple" msgstr "" @@ -2964,7 +2992,7 @@ msgstr "Commande multiple" #: templates/email/low_stock_notification.html:18 #: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789 #: templates/js/translated/build.js:2645 templates/js/translated/company.js:979 -#: templates/js/translated/part.js:596 templates/js/translated/part.js:599 +#: templates/js/translated/part.js:600 templates/js/translated/part.js:603 #: templates/js/translated/table_filters.js:186 msgid "Available" msgstr "Disponible" @@ -3037,12 +3065,12 @@ msgid "Download image from URL" msgstr "Télécharger l'image depuis l'URL" #: company/templates/company/company_base.html:86 order/models.py:637 -#: order/templates/order/sales_order_base.html:116 stock/models.py:636 -#: stock/models.py:637 stock/serializers.py:809 +#: order/templates/order/sales_order_base.html:116 stock/models.py:643 +#: stock/models.py:644 stock/serializers.py:811 #: stock/templates/stock/item_base.html:401 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:393 templates/js/translated/order.js:2513 -#: templates/js/translated/stock.js:2550 +#: templates/js/translated/stock.js:2559 #: templates/js/translated/table_filters.js:427 msgid "Customer" msgstr "" @@ -3083,7 +3111,7 @@ msgstr "" #: company/templates/company/detail.html:36 #: company/templates/company/detail.html:84 -#: part/templates/part/category.html:176 +#: part/templates/part/category.html:182 msgid "Order parts" msgstr "Commander des composants" @@ -3231,7 +3259,7 @@ msgstr "Paramètres" #: company/templates/company/manufacturer_part.html:170 #: part/templates/part/detail.html:186 #: templates/InvenTree/settings/category.html:12 -#: templates/InvenTree/settings/part.html:66 +#: templates/InvenTree/settings/part.html:68 msgid "New Parameter" msgstr "Nouveau paramètre" @@ -3261,10 +3289,10 @@ msgid "Assigned Stock Items" msgstr "" #: company/templates/company/supplier_part.html:7 -#: company/templates/company/supplier_part.html:24 stock/models.py:600 +#: company/templates/company/supplier_part.html:24 stock/models.py:607 #: stock/templates/stock/item_base.html:238 #: templates/js/translated/company.js:909 templates/js/translated/order.js:935 -#: templates/js/translated/stock.js:1929 +#: templates/js/translated/stock.js:1933 msgid "Supplier Part" msgstr "" @@ -3308,13 +3336,13 @@ msgid "Supplier Part Stock" msgstr "" #: company/templates/company/supplier_part.html:168 -#: part/templates/part/detail.html:24 stock/templates/stock/location.html:176 +#: part/templates/part/detail.html:24 stock/templates/stock/location.html:181 msgid "Create new stock item" msgstr "" #: company/templates/company/supplier_part.html:169 -#: part/templates/part/detail.html:25 stock/templates/stock/location.html:177 -#: templates/js/translated/stock.js:431 +#: part/templates/part/detail.html:25 stock/templates/stock/location.html:182 +#: templates/js/translated/stock.js:435 msgid "New Stock Item" msgstr "" @@ -3330,7 +3358,7 @@ msgstr "Information sur les prix" #: company/templates/company/supplier_part.html:212 #: company/templates/company/supplier_part.html:326 -#: part/templates/part/prices.html:276 templates/js/translated/part.js:2224 +#: part/templates/part/prices.html:276 templates/js/translated/part.js:2233 msgid "Add Price Break" msgstr "" @@ -3339,12 +3367,12 @@ msgid "No price break information found" msgstr "" #: company/templates/company/supplier_part.html:252 -#: templates/js/translated/part.js:2234 +#: templates/js/translated/part.js:2243 msgid "Delete Price Break" msgstr "" #: company/templates/company/supplier_part.html:266 -#: templates/js/translated/part.js:2248 +#: templates/js/translated/part.js:2257 msgid "Edit Price Break" msgstr "" @@ -3366,13 +3394,13 @@ msgstr "" #: company/templates/company/supplier_part_navbar.html:15 #: part/templates/part/part_sidebar.html:14 -#: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:19 +#: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:24 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:151 #: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/bom.js:555 templates/js/translated/part.js:747 -#: templates/js/translated/part.js:1295 templates/js/translated/part.js:1456 -#: templates/js/translated/stock.js:955 templates/js/translated/stock.js:1750 +#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751 +#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460 +#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754 #: templates/navbar.html:31 msgid "Stock" msgstr "" @@ -3392,14 +3420,14 @@ msgid "Pricing" msgstr "Tarif" #: company/templates/company/supplier_part_sidebar.html:5 -#: part/templates/part/category.html:197 +#: part/templates/part/category.html:203 #: part/templates/part/category_sidebar.html:17 -#: stock/templates/stock/location.html:147 -#: stock/templates/stock/location.html:161 -#: stock/templates/stock/location.html:173 +#: stock/templates/stock/location.html:152 +#: stock/templates/stock/location.html:166 +#: stock/templates/stock/location.html:178 #: stock/templates/stock/location_sidebar.html:7 #: templates/InvenTree/search.html:153 templates/js/translated/search.js:223 -#: templates/js/translated/stock.js:2427 users/models.py:40 +#: templates/js/translated/stock.js:2436 users/models.py:40 msgid "Stock Items" msgstr "Éléments en stock" @@ -3656,8 +3684,8 @@ msgstr "Commande" #: stock/templates/stock/item_base.html:184 #: templates/email/overdue_purchase_order.html:15 #: templates/js/translated/order.js:936 templates/js/translated/order.js:1691 -#: templates/js/translated/part.js:968 templates/js/translated/stock.js:1909 -#: templates/js/translated/stock.js:2531 +#: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913 +#: templates/js/translated/stock.js:2540 msgid "Purchase Order" msgstr "Commande d’achat" @@ -3667,7 +3695,7 @@ msgstr "Pièce fournisseur" #: order/models.py:1009 order/templates/order/order_base.html:169 #: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073 -#: templates/js/translated/part.js:1060 templates/js/translated/part.js:1087 +#: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091 #: templates/js/translated/table_filters.js:338 msgid "Received" msgstr "Reçu" @@ -3676,9 +3704,9 @@ msgstr "Reçu" msgid "Number of items received" msgstr "Nombre d'éléments reçus" -#: order/models.py:1017 part/templates/part/prices.html:181 stock/models.py:727 +#: order/models.py:1017 part/templates/part/prices.html:181 stock/models.py:734 #: stock/serializers.py:171 stock/templates/stock/item_base.html:191 -#: templates/js/translated/stock.js:1960 +#: templates/js/translated/stock.js:1964 msgid "Purchase Price" msgstr "Prix d'achat" @@ -4066,8 +4094,8 @@ msgstr "" #: templates/js/translated/bom.js:77 templates/js/translated/build.js:431 #: templates/js/translated/build.js:583 templates/js/translated/build.js:1974 #: templates/js/translated/order.js:884 templates/js/translated/order.js:1337 -#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:621 -#: templates/js/translated/stock.js:789 +#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625 +#: templates/js/translated/stock.js:793 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "Supprimer la ligne" @@ -4261,8 +4289,8 @@ msgstr "" msgid "This field is required" msgstr "" -#: part/bom.py:127 part/models.py:98 part/models.py:817 -#: part/templates/part/category.html:108 part/templates/part/part_base.html:330 +#: part/bom.py:127 part/models.py:98 part/models.py:824 +#: part/templates/part/category.html:114 part/templates/part/part_base.html:330 msgid "Default Location" msgstr "" @@ -4276,9 +4304,9 @@ msgid "Available Stock" msgstr "" #: part/bom.py:130 part/templates/part/part_base.html:207 -#: templates/js/translated/bom.js:947 templates/js/translated/part.js:586 -#: templates/js/translated/part.js:606 templates/js/translated/part.js:1298 -#: templates/js/translated/part.js:1470 templates/js/translated/part.js:1486 +#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590 +#: templates/js/translated/part.js:610 templates/js/translated/part.js:1302 +#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "En Commande" @@ -4299,516 +4327,524 @@ msgstr "" msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:115 part/models.py:2455 part/templates/part/category.html:15 +#: part/models.py:107 stock/models.py:84 +msgid "Icon" +msgstr "" + +#: part/models.py:108 stock/models.py:85 +msgid "Icon (optional)" +msgstr "" + +#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "Catégorie de composant" -#: part/models.py:116 part/templates/part/category.html:128 +#: part/models.py:123 part/templates/part/category.html:134 #: templates/InvenTree/search.html:95 templates/js/translated/search.js:198 #: users/models.py:37 msgid "Part Categories" msgstr "Catégories de composants" -#: part/models.py:337 part/templates/part/cat_link.html:3 -#: part/templates/part/category.html:17 part/templates/part/category.html:133 -#: part/templates/part/category.html:153 +#: part/models.py:344 part/templates/part/cat_link.html:3 +#: part/templates/part/category.html:23 part/templates/part/category.html:139 +#: part/templates/part/category.html:159 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82 #: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:1946 templates/js/translated/search.js:144 +#: templates/js/translated/part.js:1955 templates/js/translated/search.js:144 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "Composantes" -#: part/models.py:422 +#: part/models.py:429 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:492 part/models.py:504 +#: part/models.py:499 part/models.py:511 #, python-brace-format msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)" msgstr "" -#: part/models.py:621 +#: part/models.py:628 msgid "Next available serial numbers are" msgstr "Les prochains numéros de série disponibles sont" -#: part/models.py:625 +#: part/models.py:632 msgid "Next available serial number is" msgstr "Le prochain numéro de série disponible est" -#: part/models.py:630 +#: part/models.py:637 msgid "Most recent serial number is" msgstr "Le numéro de série le plus récent est" -#: part/models.py:711 +#: part/models.py:718 msgid "Duplicate IPN not allowed in part settings" msgstr "IPN dupliqué non autorisé dans les paramètres de la pièce" -#: part/models.py:738 part/models.py:2509 +#: part/models.py:745 part/models.py:2516 msgid "Part name" msgstr "" -#: part/models.py:745 +#: part/models.py:752 msgid "Is Template" msgstr "" -#: part/models.py:746 +#: part/models.py:753 msgid "Is this part a template part?" msgstr "" -#: part/models.py:756 +#: part/models.py:763 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:757 +#: part/models.py:764 msgid "Variant Of" msgstr "" -#: part/models.py:763 +#: part/models.py:770 msgid "Part description" msgstr "Description du composant" -#: part/models.py:768 part/templates/part/category.html:86 +#: part/models.py:775 part/templates/part/category.html:92 #: part/templates/part/part_base.html:294 msgid "Keywords" msgstr "" -#: part/models.py:769 +#: part/models.py:776 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:776 part/models.py:2211 part/models.py:2454 +#: part/models.py:783 part/models.py:2218 part/models.py:2461 #: part/templates/part/part_base.html:257 #: templates/InvenTree/settings/settings.html:232 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1438 templates/js/translated/part.js:1664 +#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1668 msgid "Category" msgstr "Catégorie" -#: part/models.py:777 +#: part/models.py:784 msgid "Part category" msgstr "Catégorie de la pièce" -#: part/models.py:782 part/templates/part/part_base.html:266 -#: templates/js/translated/part.js:735 templates/js/translated/part.js:1391 -#: templates/js/translated/stock.js:1722 +#: part/models.py:789 part/templates/part/part_base.html:266 +#: templates/js/translated/part.js:739 templates/js/translated/part.js:1395 +#: templates/js/translated/stock.js:1726 msgid "IPN" msgstr "" -#: part/models.py:783 +#: part/models.py:790 msgid "Internal Part Number" msgstr "" -#: part/models.py:789 +#: part/models.py:796 msgid "Part revision or version number" msgstr "" -#: part/models.py:790 part/templates/part/part_base.html:273 -#: report/models.py:171 templates/js/translated/part.js:739 +#: part/models.py:797 part/templates/part/part_base.html:273 +#: report/models.py:171 templates/js/translated/part.js:743 msgid "Revision" msgstr "Révision" -#: part/models.py:815 +#: part/models.py:822 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:860 part/templates/part/part_base.html:339 +#: part/models.py:867 part/templates/part/part_base.html:339 msgid "Default Supplier" msgstr "" -#: part/models.py:861 +#: part/models.py:868 msgid "Default supplier part" msgstr "" -#: part/models.py:868 +#: part/models.py:875 msgid "Default Expiry" msgstr "" -#: part/models.py:869 +#: part/models.py:876 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:874 part/templates/part/part_base.html:200 +#: part/models.py:881 part/templates/part/part_base.html:200 msgid "Minimum Stock" msgstr "" -#: part/models.py:875 +#: part/models.py:882 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:882 +#: part/models.py:889 msgid "Stock keeping units for this part" msgstr "" -#: part/models.py:888 +#: part/models.py:895 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:894 +#: part/models.py:901 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:900 +#: part/models.py:907 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:905 +#: part/models.py:912 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:910 +#: part/models.py:917 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:915 +#: part/models.py:922 msgid "Is this part active?" msgstr "" -#: part/models.py:920 +#: part/models.py:927 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:922 +#: part/models.py:929 msgid "Part notes" msgstr "" -#: part/models.py:924 +#: part/models.py:931 msgid "BOM checksum" msgstr "" -#: part/models.py:924 +#: part/models.py:931 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:927 +#: part/models.py:934 msgid "BOM checked by" msgstr "" -#: part/models.py:929 +#: part/models.py:936 msgid "BOM checked date" msgstr "" -#: part/models.py:933 +#: part/models.py:940 msgid "Creation User" msgstr "" -#: part/models.py:1737 +#: part/models.py:1744 msgid "Sell multiple" msgstr "Ventes multiples" -#: part/models.py:2258 +#: part/models.py:2265 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:2275 +#: part/models.py:2282 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:2295 templates/js/translated/part.js:1997 -#: templates/js/translated/stock.js:1336 +#: part/models.py:2302 templates/js/translated/part.js:2006 +#: templates/js/translated/stock.js:1340 msgid "Test Name" msgstr "Nom de test" -#: part/models.py:2296 +#: part/models.py:2303 msgid "Enter a name for the test" msgstr "" -#: part/models.py:2301 +#: part/models.py:2308 msgid "Test Description" msgstr "" -#: part/models.py:2302 +#: part/models.py:2309 msgid "Enter description for this test" msgstr "" -#: part/models.py:2307 templates/js/translated/part.js:2006 +#: part/models.py:2314 templates/js/translated/part.js:2015 #: templates/js/translated/table_filters.js:302 msgid "Required" msgstr "Requis" -#: part/models.py:2308 +#: part/models.py:2315 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:2313 templates/js/translated/part.js:2014 +#: part/models.py:2320 templates/js/translated/part.js:2023 msgid "Requires Value" msgstr "" -#: part/models.py:2314 +#: part/models.py:2321 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:2319 templates/js/translated/part.js:2021 +#: part/models.py:2326 templates/js/translated/part.js:2030 msgid "Requires Attachment" msgstr "" -#: part/models.py:2320 +#: part/models.py:2327 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:2328 +#: part/models.py:2335 #, python-brace-format msgid "Illegal character in template name ({c})" msgstr "" -#: part/models.py:2364 +#: part/models.py:2371 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:2372 +#: part/models.py:2379 msgid "Parameter Name" msgstr "" -#: part/models.py:2379 +#: part/models.py:2386 msgid "Parameter Units" msgstr "" -#: part/models.py:2410 +#: part/models.py:2417 msgid "Parent Part" msgstr "" -#: part/models.py:2412 part/models.py:2460 part/models.py:2461 +#: part/models.py:2419 part/models.py:2467 part/models.py:2468 #: templates/InvenTree/settings/settings.html:227 msgid "Parameter Template" msgstr "" -#: part/models.py:2414 +#: part/models.py:2421 msgid "Data" msgstr "Données" -#: part/models.py:2414 +#: part/models.py:2421 msgid "Parameter Value" msgstr "" -#: part/models.py:2465 templates/InvenTree/settings/settings.html:236 +#: part/models.py:2472 templates/InvenTree/settings/settings.html:236 msgid "Default Value" msgstr "" -#: part/models.py:2466 +#: part/models.py:2473 msgid "Default Parameter Value" msgstr "" -#: part/models.py:2501 +#: part/models.py:2508 msgid "Part ID or part name" msgstr "" -#: part/models.py:2504 templates/js/translated/model_renderers.js:212 +#: part/models.py:2511 templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "ID de composant" -#: part/models.py:2505 +#: part/models.py:2512 msgid "Unique part ID value" msgstr "" -#: part/models.py:2508 +#: part/models.py:2515 msgid "Part Name" msgstr "" -#: part/models.py:2512 +#: part/models.py:2519 msgid "Part IPN" msgstr "" -#: part/models.py:2513 +#: part/models.py:2520 msgid "Part IPN value" msgstr "" -#: part/models.py:2516 +#: part/models.py:2523 msgid "Level" msgstr "" -#: part/models.py:2517 +#: part/models.py:2524 msgid "BOM level" msgstr "" -#: part/models.py:2586 +#: part/models.py:2593 msgid "Select parent part" msgstr "" -#: part/models.py:2594 +#: part/models.py:2601 msgid "Sub part" msgstr "" -#: part/models.py:2595 +#: part/models.py:2602 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:2601 +#: part/models.py:2608 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:2603 part/templates/part/upload_bom.html:58 +#: part/models.py:2610 part/templates/part/upload_bom.html:58 #: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999 #: templates/js/translated/table_filters.js:100 msgid "Optional" msgstr "" -#: part/models.py:2603 +#: part/models.py:2610 msgid "This BOM item is optional" msgstr "" -#: part/models.py:2606 part/templates/part/upload_bom.html:55 +#: part/models.py:2613 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "Surplus" -#: part/models.py:2607 +#: part/models.py:2614 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:2610 +#: part/models.py:2617 msgid "BOM item reference" msgstr "" -#: part/models.py:2613 +#: part/models.py:2620 msgid "BOM item notes" msgstr "" -#: part/models.py:2615 +#: part/models.py:2622 msgid "Checksum" msgstr "" -#: part/models.py:2615 +#: part/models.py:2622 msgid "BOM line checksum" msgstr "" -#: part/models.py:2619 part/templates/part/upload_bom.html:57 +#: part/models.py:2626 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1016 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:96 msgid "Inherited" msgstr "" -#: part/models.py:2620 +#: part/models.py:2627 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:2625 part/templates/part/upload_bom.html:56 +#: part/models.py:2632 part/templates/part/upload_bom.html:56 #: templates/js/translated/bom.js:1008 msgid "Allow Variants" msgstr "" -#: part/models.py:2626 +#: part/models.py:2633 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:2704 stock/models.py:461 +#: part/models.py:2711 stock/models.py:468 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:2713 part/models.py:2715 +#: part/models.py:2720 part/models.py:2722 msgid "Sub part must be specified" msgstr "" -#: part/models.py:2820 +#: part/models.py:2827 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:2841 +#: part/models.py:2848 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:2854 +#: part/models.py:2861 msgid "Parent BOM item" msgstr "" -#: part/models.py:2862 +#: part/models.py:2869 msgid "Substitute part" msgstr "" -#: part/models.py:2877 +#: part/models.py:2884 msgid "Part 1" msgstr "" -#: part/models.py:2881 +#: part/models.py:2888 msgid "Part 2" msgstr "" -#: part/models.py:2881 +#: part/models.py:2888 msgid "Select Related Part" msgstr "" -#: part/models.py:2899 +#: part/models.py:2906 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:2903 +#: part/models.py:2910 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:152 part/serializers.py:183 stock/serializers.py:181 +#: part/serializers.py:154 part/serializers.py:185 stock/serializers.py:181 msgid "Purchase currency of this stock item" msgstr "Devise d'achat de l'item" -#: part/serializers.py:812 +#: part/serializers.py:814 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:820 +#: part/serializers.py:822 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:821 +#: part/serializers.py:823 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:826 +#: part/serializers.py:828 msgid "Include Inherited" msgstr "" -#: part/serializers.py:827 +#: part/serializers.py:829 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:832 +#: part/serializers.py:834 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:833 +#: part/serializers.py:835 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:838 +#: part/serializers.py:840 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:839 +#: part/serializers.py:841 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:879 +#: part/serializers.py:881 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:880 +#: part/serializers.py:882 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:910 +#: part/serializers.py:912 msgid "No part column specified" msgstr "" -#: part/serializers.py:953 +#: part/serializers.py:955 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:956 +#: part/serializers.py:958 msgid "No matching part found" msgstr "" -#: part/serializers.py:959 +#: part/serializers.py:961 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:968 +#: part/serializers.py:970 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:976 +#: part/serializers.py:978 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:997 +#: part/serializers.py:999 msgid "At least one BOM item is required" msgstr "" @@ -4848,101 +4884,101 @@ msgstr "" msgid "Delete Items" msgstr "Supprimer l'élément" -#: part/templates/part/category.html:28 part/templates/part/category.html:32 +#: part/templates/part/category.html:34 part/templates/part/category.html:38 msgid "You are subscribed to notifications for this category" msgstr "" -#: part/templates/part/category.html:36 +#: part/templates/part/category.html:42 msgid "Subscribe to notifications for this category" msgstr "" -#: part/templates/part/category.html:42 +#: part/templates/part/category.html:48 msgid "Category Actions" msgstr "" -#: part/templates/part/category.html:47 +#: part/templates/part/category.html:53 msgid "Edit category" msgstr "Modifier la catégorie" -#: part/templates/part/category.html:48 +#: part/templates/part/category.html:54 msgid "Edit Category" msgstr "Modifier la catégorie" -#: part/templates/part/category.html:52 +#: part/templates/part/category.html:58 msgid "Delete category" msgstr "Supprimer la catégorie" -#: part/templates/part/category.html:53 +#: part/templates/part/category.html:59 msgid "Delete Category" msgstr "Supprimer la catégorie" -#: part/templates/part/category.html:61 +#: part/templates/part/category.html:67 msgid "Create new part category" msgstr "" -#: part/templates/part/category.html:62 +#: part/templates/part/category.html:68 msgid "New Category" msgstr "Nouvelle catégorie" -#: part/templates/part/category.html:80 part/templates/part/category.html:93 +#: part/templates/part/category.html:86 part/templates/part/category.html:99 msgid "Category Path" msgstr "" -#: part/templates/part/category.html:94 +#: part/templates/part/category.html:100 msgid "Top level part category" msgstr "" -#: part/templates/part/category.html:114 part/templates/part/category.html:222 +#: part/templates/part/category.html:120 part/templates/part/category.html:228 #: part/templates/part/category_sidebar.html:7 msgid "Subcategories" msgstr "" -#: part/templates/part/category.html:119 +#: part/templates/part/category.html:125 msgid "Parts (Including subcategories)" msgstr "Composantes (incluant sous-catégories)" -#: part/templates/part/category.html:157 +#: part/templates/part/category.html:163 msgid "Create new part" msgstr "" -#: part/templates/part/category.html:158 templates/js/translated/bom.js:367 +#: part/templates/part/category.html:164 templates/js/translated/bom.js:367 msgid "New Part" msgstr "" -#: part/templates/part/category.html:168 part/templates/part/detail.html:363 +#: part/templates/part/category.html:174 part/templates/part/detail.html:363 #: part/templates/part/detail.html:394 msgid "Options" msgstr "" -#: part/templates/part/category.html:172 +#: part/templates/part/category.html:178 msgid "Set category" msgstr "" -#: part/templates/part/category.html:173 +#: part/templates/part/category.html:179 msgid "Set Category" msgstr "" -#: part/templates/part/category.html:180 part/templates/part/category.html:181 +#: part/templates/part/category.html:186 part/templates/part/category.html:187 msgid "Print Labels" msgstr "" -#: part/templates/part/category.html:206 +#: part/templates/part/category.html:212 msgid "Part Parameters" msgstr "" -#: part/templates/part/category.html:320 +#: part/templates/part/category.html:327 msgid "Create Part Category" msgstr "" -#: part/templates/part/category.html:340 +#: part/templates/part/category.html:347 msgid "Create Part" msgstr "" -#: part/templates/part/category.html:343 +#: part/templates/part/category.html:350 msgid "Create another part after this one" msgstr "" -#: part/templates/part/category.html:344 +#: part/templates/part/category.html:351 msgid "Part created successfully" msgstr "Composant créé avec succès" @@ -4950,7 +4986,7 @@ msgstr "Composant créé avec succès" msgid "Import Parts" msgstr "" -#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:375 +#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:379 msgid "Duplicate Part" msgstr "" @@ -5172,19 +5208,19 @@ msgstr "" #: part/templates/part/part_base.html:43 #: stock/templates/stock/item_base.html:41 -#: stock/templates/stock/location.html:43 +#: stock/templates/stock/location.html:48 msgid "Barcode actions" msgstr "" #: part/templates/part/part_base.html:46 #: stock/templates/stock/item_base.html:45 -#: stock/templates/stock/location.html:45 templates/qr_button.html:1 +#: stock/templates/stock/location.html:50 templates/qr_button.html:1 msgid "Show QR Code" msgstr "" #: part/templates/part/part_base.html:49 #: stock/templates/stock/item_base.html:63 -#: stock/templates/stock/location.html:47 +#: stock/templates/stock/location.html:52 msgid "Print Label" msgstr "Impression étiquette" @@ -5194,7 +5230,7 @@ msgstr "" #: part/templates/part/part_base.html:60 #: stock/templates/stock/item_base.html:116 -#: stock/templates/stock/location.html:56 +#: stock/templates/stock/location.html:61 msgid "Stock actions" msgstr "" @@ -5255,7 +5291,7 @@ msgstr "" #: templates/js/translated/company.js:624 #: templates/js/translated/company.js:884 #: templates/js/translated/model_renderers.js:204 -#: templates/js/translated/part.js:650 templates/js/translated/part.js:727 +#: templates/js/translated/part.js:654 templates/js/translated/part.js:731 msgid "Inactive" msgstr "" @@ -5289,9 +5325,9 @@ msgstr "" msgid "Can Build" msgstr "" -#: part/templates/part/part_base.html:238 templates/js/translated/part.js:589 -#: templates/js/translated/part.js:609 templates/js/translated/part.js:1302 -#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490 +#: part/templates/part/part_base.html:238 templates/js/translated/part.js:593 +#: templates/js/translated/part.js:613 templates/js/translated/part.js:1306 +#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1494 msgid "Building" msgstr "" @@ -5464,8 +5500,8 @@ msgstr "" msgid "No sale pice history available for this part." msgstr "" -#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:612 -#: templates/js/translated/part.js:1290 templates/js/translated/part.js:1494 +#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616 +#: templates/js/translated/part.js:1294 templates/js/translated/part.js:1498 msgid "No Stock" msgstr "" @@ -5630,51 +5666,55 @@ msgstr "" msgid "Allow sending of emails for event notifications" msgstr "" -#: plugin/models.py:32 +#: plugin/models.py:33 msgid "Plugin Metadata" msgstr "" -#: plugin/models.py:33 +#: plugin/models.py:34 msgid "JSON metadata field, for use by external plugins" msgstr "" -#: plugin/models.py:79 +#: plugin/models.py:80 msgid "Plugin Configuration" msgstr "" -#: plugin/models.py:80 +#: plugin/models.py:81 msgid "Plugin Configurations" msgstr "" -#: plugin/models.py:85 +#: plugin/models.py:86 msgid "Key" msgstr "" -#: plugin/models.py:86 +#: plugin/models.py:87 msgid "Key of plugin" msgstr "" -#: plugin/models.py:94 +#: plugin/models.py:95 msgid "PluginName of the plugin" msgstr "Non du Plugin" -#: plugin/models.py:100 +#: plugin/models.py:101 msgid "Is the plugin active" msgstr "" -#: plugin/models.py:168 +#: plugin/models.py:158 +msgid "Sample plugin" +msgstr "" + +#: plugin/models.py:186 msgid "Plugin" msgstr "" -#: plugin/models.py:231 +#: plugin/models.py:249 msgid "Method" msgstr "" -#: plugin/plugin.py:228 +#: plugin/plugin.py:251 msgid "No author found" msgstr "" -#: plugin/plugin.py:240 +#: plugin/plugin.py:263 msgid "No date found" msgstr "" @@ -5746,12 +5786,12 @@ msgstr "" msgid "No valid objects provided to template" msgstr "Aucun objet valide n'a été fourni au modèle" -#: report/api.py:216 report/api.py:257 +#: report/api.py:216 report/api.py:252 #, python-brace-format msgid "Template file '{template}' is missing or does not exist" msgstr "" -#: report/api.py:360 +#: report/api.py:355 msgid "Test report" msgstr "" @@ -5852,12 +5892,12 @@ msgid "Stock Item Test Report" msgstr "" #: report/templates/report/inventree_test_report_base.html:79 -#: stock/models.py:641 stock/templates/stock/item_base.html:322 +#: stock/models.py:648 stock/templates/stock/item_base.html:322 #: templates/js/translated/build.js:424 templates/js/translated/build.js:576 #: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673 #: templates/js/translated/model_renderers.js:118 #: templates/js/translated/order.js:118 templates/js/translated/order.js:3297 -#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:486 +#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490 msgid "Serial Number" msgstr "Numéro de série" @@ -5866,19 +5906,19 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report_base.html:93 -#: stock/models.py:2076 +#: stock/models.py:2083 msgid "Test" msgstr "" #: report/templates/report/inventree_test_report_base.html:94 -#: stock/models.py:2082 +#: stock/models.py:2089 msgid "Result" msgstr "Résultat" #: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:51 +#: templates/InvenTree/settings/plugin.html:53 #: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2459 +#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468 msgid "Date" msgstr "" @@ -5896,8 +5936,8 @@ msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report_base.html:137 -#: templates/js/translated/stock.js:606 templates/js/translated/stock.js:776 -#: templates/js/translated/stock.js:2708 +#: templates/js/translated/stock.js:610 templates/js/translated/stock.js:780 +#: templates/js/translated/stock.js:2717 msgid "Serial" msgstr "" @@ -5913,241 +5953,241 @@ msgstr "" msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" -#: stock/models.py:82 stock/models.py:732 +#: stock/models.py:89 stock/models.py:739 #: stock/templates/stock/item_base.html:252 msgid "Owner" msgstr "Propriétaire" -#: stock/models.py:83 stock/models.py:733 +#: stock/models.py:90 stock/models.py:740 msgid "Select Owner" msgstr "Sélectionner un propriétaire" -#: stock/models.py:435 +#: stock/models.py:442 msgid "StockItem with this serial number already exists" msgstr "Il existe déjà un article en stock avec ce numéro de série" -#: stock/models.py:467 stock/serializers.py:95 +#: stock/models.py:474 stock/serializers.py:95 msgid "Stock item cannot be created for virtual parts" msgstr "" -#: stock/models.py:484 +#: stock/models.py:491 #, python-brace-format msgid "Part type ('{pf}') must be {pe}" msgstr "" -#: stock/models.py:494 stock/models.py:503 +#: stock/models.py:501 stock/models.py:510 msgid "Quantity must be 1 for item with a serial number" msgstr "La quantité doit être de 1 pour un article avec un numéro de série" -#: stock/models.py:495 +#: stock/models.py:502 msgid "Serial number cannot be set if quantity greater than 1" msgstr "Le numéro de série ne peut pas être défini si la quantité est supérieure à 1" -#: stock/models.py:517 +#: stock/models.py:524 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:523 +#: stock/models.py:530 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:537 +#: stock/models.py:544 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:583 +#: stock/models.py:590 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:593 +#: stock/models.py:600 msgid "Base part" msgstr "" -#: stock/models.py:601 +#: stock/models.py:608 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:608 stock/templates/stock/location.html:17 +#: stock/models.py:615 stock/templates/stock/location.html:17 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" msgstr "" -#: stock/models.py:611 +#: stock/models.py:618 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:618 +#: stock/models.py:625 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:624 stock/templates/stock/item_base.html:361 +#: stock/models.py:631 stock/templates/stock/item_base.html:361 msgid "Installed In" msgstr "" -#: stock/models.py:627 +#: stock/models.py:634 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:643 +#: stock/models.py:650 msgid "Serial number for this item" msgstr "Numéro de série pour cet article" -#: stock/models.py:657 +#: stock/models.py:664 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:662 +#: stock/models.py:669 msgid "Stock Quantity" msgstr "" -#: stock/models.py:671 +#: stock/models.py:678 msgid "Source Build" msgstr "" -#: stock/models.py:673 +#: stock/models.py:680 msgid "Build for this stock item" msgstr "" -#: stock/models.py:684 +#: stock/models.py:691 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:687 +#: stock/models.py:694 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:693 +#: stock/models.py:700 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:699 stock/templates/stock/item_base.html:429 -#: templates/js/translated/stock.js:1879 +#: stock/models.py:706 stock/templates/stock/item_base.html:429 +#: templates/js/translated/stock.js:1883 msgid "Expiry Date" msgstr "" -#: stock/models.py:700 +#: stock/models.py:707 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:713 +#: stock/models.py:720 msgid "Delete on deplete" msgstr "" -#: stock/models.py:713 +#: stock/models.py:720 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:720 stock/templates/stock/item.html:132 +#: stock/models.py:727 stock/templates/stock/item.html:132 msgid "Stock Item Notes" msgstr "" -#: stock/models.py:728 +#: stock/models.py:735 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:756 +#: stock/models.py:763 msgid "Converted to part" msgstr "" -#: stock/models.py:1235 +#: stock/models.py:1242 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1241 +#: stock/models.py:1248 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1247 +#: stock/models.py:1254 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({n})" msgstr "" -#: stock/models.py:1250 +#: stock/models.py:1257 msgid "Serial numbers must be a list of integers" msgstr "Les numéros de série doivent être une liste de nombres entiers" -#: stock/models.py:1253 +#: stock/models.py:1260 msgid "Quantity does not match serial numbers" msgstr "La quantité ne correspond pas au nombre de numéros de série" -#: stock/models.py:1260 +#: stock/models.py:1267 #, python-brace-format msgid "Serial numbers already exist: {exists}" msgstr "Les numéros de série existent déja : {exists}" -#: stock/models.py:1330 +#: stock/models.py:1337 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1333 +#: stock/models.py:1340 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1336 +#: stock/models.py:1343 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1339 +#: stock/models.py:1346 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1342 +#: stock/models.py:1349 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1345 +#: stock/models.py:1352 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1352 stock/serializers.py:959 +#: stock/models.py:1359 stock/serializers.py:961 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1356 +#: stock/models.py:1363 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1360 +#: stock/models.py:1367 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1364 +#: stock/models.py:1371 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:1533 +#: stock/models.py:1540 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:1994 +#: stock/models.py:2001 msgid "Entry notes" msgstr "" -#: stock/models.py:2052 +#: stock/models.py:2059 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2058 +#: stock/models.py:2065 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2077 +#: stock/models.py:2084 msgid "Test name" msgstr "" -#: stock/models.py:2083 +#: stock/models.py:2090 msgid "Test result" msgstr "" -#: stock/models.py:2089 +#: stock/models.py:2096 msgid "Test output value" msgstr "" -#: stock/models.py:2096 +#: stock/models.py:2103 msgid "Test result attachment" msgstr "" -#: stock/models.py:2102 +#: stock/models.py:2109 msgid "Test notes" msgstr "" @@ -6172,7 +6212,7 @@ msgstr "" msgid "Enter serial numbers for new items" msgstr "Entrez les numéros de série pour les nouveaux articles" -#: stock/serializers.py:323 stock/serializers.py:916 stock/serializers.py:1149 +#: stock/serializers.py:323 stock/serializers.py:918 stock/serializers.py:1151 msgid "Destination stock location" msgstr "" @@ -6220,63 +6260,63 @@ msgstr "" msgid "Destination location for returned item" msgstr "" -#: stock/serializers.py:771 +#: stock/serializers.py:773 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:775 +#: stock/serializers.py:777 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:779 +#: stock/serializers.py:781 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:810 +#: stock/serializers.py:812 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:816 +#: stock/serializers.py:818 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:824 +#: stock/serializers.py:826 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:834 stock/serializers.py:1065 +#: stock/serializers.py:836 stock/serializers.py:1067 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:923 +#: stock/serializers.py:925 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:928 +#: stock/serializers.py:930 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:929 +#: stock/serializers.py:931 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:934 +#: stock/serializers.py:936 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:935 +#: stock/serializers.py:937 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:945 +#: stock/serializers.py:947 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1027 +#: stock/serializers.py:1029 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1055 +#: stock/serializers.py:1057 msgid "Stock transaction notes" msgstr "" @@ -6313,7 +6353,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2852 +#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2861 msgid "Install Stock Item" msgstr "" @@ -6321,7 +6361,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1518 +#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1522 msgid "Add Test Result" msgstr "" @@ -6352,7 +6392,7 @@ msgid "Stock adjustment actions" msgstr "" #: stock/templates/stock/item_base.html:80 -#: stock/templates/stock/location.html:63 templates/stock_table.html:47 +#: stock/templates/stock/location.html:68 templates/stock_table.html:47 msgid "Count stock" msgstr "" @@ -6369,7 +6409,7 @@ msgid "Serialize stock" msgstr "" #: stock/templates/stock/item_base.html:93 -#: stock/templates/stock/location.html:69 templates/stock_table.html:48 +#: stock/templates/stock/location.html:74 templates/stock_table.html:48 msgid "Transfer stock" msgstr "" @@ -6430,7 +6470,7 @@ msgid "You are not in the list of owners of this item. This stock item cannot be msgstr "" #: stock/templates/stock/item_base.html:257 -#: stock/templates/stock/location.html:127 +#: stock/templates/stock/location.html:132 msgid "Read only" msgstr "" @@ -6508,7 +6548,7 @@ msgid "Stale" msgstr "" #: stock/templates/stock/item_base.html:442 -#: templates/js/translated/company.js:985 templates/js/translated/stock.js:1895 +#: templates/js/translated/company.js:985 templates/js/translated/stock.js:1899 msgid "Last Updated" msgstr "" @@ -6552,58 +6592,58 @@ msgstr "" msgid "Select quantity to serialize, and unique serial numbers." msgstr "Sélectionner la quantité à sérialiser et les numéros de série uniques." -#: stock/templates/stock/location.html:33 +#: stock/templates/stock/location.html:38 msgid "Locate stock location" msgstr "" -#: stock/templates/stock/location.html:49 +#: stock/templates/stock/location.html:54 msgid "Check-in Items" msgstr "" -#: stock/templates/stock/location.html:77 +#: stock/templates/stock/location.html:82 msgid "Location actions" msgstr "" -#: stock/templates/stock/location.html:79 +#: stock/templates/stock/location.html:84 msgid "Edit location" msgstr "" -#: stock/templates/stock/location.html:81 +#: stock/templates/stock/location.html:86 msgid "Delete location" msgstr "" -#: stock/templates/stock/location.html:90 +#: stock/templates/stock/location.html:95 msgid "Create new stock location" msgstr "" -#: stock/templates/stock/location.html:91 +#: stock/templates/stock/location.html:96 msgid "New Location" msgstr "" -#: stock/templates/stock/location.html:109 -#: stock/templates/stock/location.html:115 +#: stock/templates/stock/location.html:114 +#: stock/templates/stock/location.html:120 msgid "Location Path" msgstr "" -#: stock/templates/stock/location.html:116 +#: stock/templates/stock/location.html:121 msgid "Top level stock location" msgstr "" -#: stock/templates/stock/location.html:122 +#: stock/templates/stock/location.html:127 msgid "Location Owner" msgstr "" -#: stock/templates/stock/location.html:126 +#: stock/templates/stock/location.html:131 msgid "You are not in the list of owners of this location. This stock location cannot be edited." msgstr "" -#: stock/templates/stock/location.html:142 -#: stock/templates/stock/location.html:189 +#: stock/templates/stock/location.html:147 +#: stock/templates/stock/location.html:194 #: stock/templates/stock/location_sidebar.html:5 msgid "Sublocations" msgstr "" -#: stock/templates/stock/location.html:156 templates/InvenTree/search.html:165 +#: stock/templates/stock/location.html:161 templates/InvenTree/search.html:165 #: templates/js/translated/search.js:238 users/models.py:39 msgid "Stock Locations" msgstr "" @@ -6875,15 +6915,15 @@ msgstr "" msgid "Part Settings" msgstr "" -#: templates/InvenTree/settings/part.html:44 +#: templates/InvenTree/settings/part.html:46 msgid "Part Import" msgstr "" -#: templates/InvenTree/settings/part.html:48 +#: templates/InvenTree/settings/part.html:50 msgid "Import Part" msgstr "" -#: templates/InvenTree/settings/part.html:62 +#: templates/InvenTree/settings/part.html:64 msgid "Part Parameter Templates" msgstr "" @@ -6895,47 +6935,47 @@ msgstr "" msgid "Changing the settings below require you to immediately restart the server. Do not change this while under active usage." msgstr "" -#: templates/InvenTree/settings/plugin.html:34 +#: templates/InvenTree/settings/plugin.html:36 msgid "Plugins" msgstr "" -#: templates/InvenTree/settings/plugin.html:39 +#: templates/InvenTree/settings/plugin.html:41 #: templates/js/translated/plugin.js:16 msgid "Install Plugin" msgstr "" -#: templates/InvenTree/settings/plugin.html:48 templates/navbar.html:137 +#: templates/InvenTree/settings/plugin.html:50 templates/navbar.html:137 #: users/models.py:36 msgid "Admin" msgstr "" -#: templates/InvenTree/settings/plugin.html:50 +#: templates/InvenTree/settings/plugin.html:52 #: templates/InvenTree/settings/plugin_settings.html:28 msgid "Author" msgstr "" -#: templates/InvenTree/settings/plugin.html:52 +#: templates/InvenTree/settings/plugin.html:54 #: templates/InvenTree/settings/plugin_settings.html:43 msgid "Version" msgstr "" -#: templates/InvenTree/settings/plugin.html:74 +#: templates/InvenTree/settings/plugin.html:76 msgid "Sample" msgstr "" -#: templates/InvenTree/settings/plugin.html:99 +#: templates/InvenTree/settings/plugin.html:101 msgid "Inactive plugins" msgstr "" -#: templates/InvenTree/settings/plugin.html:122 +#: templates/InvenTree/settings/plugin.html:124 msgid "Plugin Error Stack" msgstr "" -#: templates/InvenTree/settings/plugin.html:131 +#: templates/InvenTree/settings/plugin.html:133 msgid "Stage" msgstr "" -#: templates/InvenTree/settings/plugin.html:133 +#: templates/InvenTree/settings/plugin.html:135 #: templates/js/translated/notification.js:75 msgid "Message" msgstr "" @@ -6999,11 +7039,11 @@ msgstr "Hash du commit" msgid "Commit Message" msgstr "Message du commit" -#: templates/InvenTree/settings/plugin_settings.html:117 +#: templates/InvenTree/settings/plugin_settings.html:120 msgid "Sign Status" msgstr "Statut de la signature" -#: templates/InvenTree/settings/plugin_settings.html:122 +#: templates/InvenTree/settings/plugin_settings.html:125 msgid "Sign Key" msgstr "Clé de signature" @@ -7828,7 +7868,7 @@ msgstr "Ceci supprimera l'association entre cet article de stock et le code-barr msgid "Unlink" msgstr "Délier" -#: templates/js/translated/barcode.js:456 templates/js/translated/stock.js:1050 +#: templates/js/translated/barcode.js:456 templates/js/translated/stock.js:1054 msgid "Remove stock item" msgstr "Supprimer l'article de stock" @@ -8001,7 +8041,7 @@ msgid "Includes variant and substitute stock" msgstr "" #: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822 -#: templates/js/translated/part.js:759 +#: templates/js/translated/part.js:763 msgid "Includes variant stock" msgstr "" @@ -8098,12 +8138,12 @@ msgid "Complete Build Order" msgstr "" #: templates/js/translated/build.js:263 templates/js/translated/stock.js:92 -#: templates/js/translated/stock.js:210 +#: templates/js/translated/stock.js:214 msgid "Next available serial number" msgstr "Prochain numéro de série disponible" #: templates/js/translated/build.js:265 templates/js/translated/stock.js:94 -#: templates/js/translated/stock.js:212 +#: templates/js/translated/stock.js:216 msgid "Latest serial number" msgstr "Dernier numéro de série" @@ -8316,9 +8356,9 @@ msgstr "" msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1383 -#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1682 -#: templates/js/translated/stock.js:2382 +#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387 +#: templates/js/translated/part.js:1899 templates/js/translated/stock.js:1686 +#: templates/js/translated/stock.js:2386 msgid "Select" msgstr "" @@ -8330,7 +8370,7 @@ msgstr "" msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2638 +#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647 msgid "No user information" msgstr "Pas d'informations sur l'utilisateur" @@ -8403,34 +8443,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:616 -#: templates/js/translated/company.js:876 templates/js/translated/part.js:634 -#: templates/js/translated/part.js:719 +#: templates/js/translated/company.js:876 templates/js/translated/part.js:638 +#: templates/js/translated/part.js:723 msgid "Template part" msgstr "" #: templates/js/translated/company.js:620 -#: templates/js/translated/company.js:880 templates/js/translated/part.js:638 -#: templates/js/translated/part.js:723 +#: templates/js/translated/company.js:880 templates/js/translated/part.js:642 +#: templates/js/translated/part.js:727 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:748 templates/js/translated/part.js:826 +#: templates/js/translated/company.js:748 templates/js/translated/part.js:830 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:785 templates/js/translated/part.js:868 +#: templates/js/translated/company.js:785 templates/js/translated/part.js:872 msgid "Edit parameter" msgstr "" -#: templates/js/translated/company.js:786 templates/js/translated/part.js:869 +#: templates/js/translated/company.js:786 templates/js/translated/part.js:873 msgid "Delete parameter" msgstr "" -#: templates/js/translated/company.js:805 templates/js/translated/part.js:886 +#: templates/js/translated/company.js:805 templates/js/translated/part.js:890 msgid "Edit Parameter" msgstr "" -#: templates/js/translated/company.js:816 templates/js/translated/part.js:898 +#: templates/js/translated/company.js:816 templates/js/translated/part.js:902 msgid "Delete Parameter" msgstr "" @@ -8555,7 +8595,7 @@ msgid "Labels sent to printer" msgstr "" #: templates/js/translated/label.js:60 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1078 msgid "Select Stock Items" msgstr "" @@ -8865,7 +8905,7 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2140 +#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144 msgid "Stock Status" msgstr "" @@ -8889,7 +8929,7 @@ msgstr "" msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:1672 templates/js/translated/part.js:939 +#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943 msgid "No purchase orders found" msgstr "" @@ -8924,7 +8964,7 @@ msgstr "" #: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203 #: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050 -#: templates/js/translated/part.js:2126 templates/js/translated/part.js:2479 +#: templates/js/translated/part.js:2135 templates/js/translated/part.js:2488 msgid "Unit Price" msgstr "" @@ -8934,11 +8974,11 @@ msgid "Total Price" msgstr "" #: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600 -#: templates/js/translated/part.js:1046 +#: templates/js/translated/part.js:1050 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1092 +#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096 msgid "Receive line item" msgstr "" @@ -9059,7 +9099,7 @@ msgid "Delete Stock Allocation" msgstr "" #: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398 -#: templates/js/translated/stock.js:1598 +#: templates/js/translated/stock.js:1602 msgid "Shipped to customer" msgstr "Livré au client" @@ -9183,241 +9223,245 @@ msgstr "" msgid "Parent part category" msgstr "" -#: templates/js/translated/part.js:318 +#: templates/js/translated/part.js:306 templates/js/translated/stock.js:118 +msgid "Icon (optional) - Explore all available icons on" +msgstr "" + +#: templates/js/translated/part.js:322 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:331 +#: templates/js/translated/part.js:335 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:333 +#: templates/js/translated/part.js:337 msgid "Any child categories will be moved to the parent of this category" msgstr "" -#: templates/js/translated/part.js:334 +#: templates/js/translated/part.js:338 msgid "Any parts in this category will be moved to the parent of this category" msgstr "" -#: templates/js/translated/part.js:339 +#: templates/js/translated/part.js:343 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:365 +#: templates/js/translated/part.js:369 msgid "Edit Part" msgstr "Modifier la pièce" -#: templates/js/translated/part.js:367 +#: templates/js/translated/part.js:371 msgid "Part edited" msgstr "Pièce modifiée" -#: templates/js/translated/part.js:378 +#: templates/js/translated/part.js:382 msgid "Create Part Variant" msgstr "Créer une variante de pièce" -#: templates/js/translated/part.js:430 +#: templates/js/translated/part.js:434 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:431 +#: templates/js/translated/part.js:435 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:445 +#: templates/js/translated/part.js:449 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:447 +#: templates/js/translated/part.js:451 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:448 +#: templates/js/translated/part.js:452 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:449 +#: templates/js/translated/part.js:453 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:456 +#: templates/js/translated/part.js:460 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:492 +#: templates/js/translated/part.js:496 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:494 +#: templates/js/translated/part.js:498 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:499 +#: templates/js/translated/part.js:503 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:501 +#: templates/js/translated/part.js:505 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:518 +#: templates/js/translated/part.js:522 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:528 +#: templates/js/translated/part.js:532 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:531 +#: templates/js/translated/part.js:535 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:556 +#: templates/js/translated/part.js:560 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:582 templates/js/translated/part.js:1466 +#: templates/js/translated/part.js:586 templates/js/translated/part.js:1470 #: templates/js/translated/table_filters.js:468 msgid "Low stock" msgstr "Stock bas" -#: templates/js/translated/part.js:592 templates/js/translated/part.js:1478 +#: templates/js/translated/part.js:596 templates/js/translated/part.js:1482 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:626 templates/js/translated/part.js:711 +#: templates/js/translated/part.js:630 templates/js/translated/part.js:715 msgid "Trackable part" msgstr "Pièce traçable" -#: templates/js/translated/part.js:630 templates/js/translated/part.js:715 +#: templates/js/translated/part.js:634 templates/js/translated/part.js:719 msgid "Virtual part" msgstr "Pièce virtuelle" -#: templates/js/translated/part.js:642 +#: templates/js/translated/part.js:646 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:646 +#: templates/js/translated/part.js:650 msgid "Salable part" msgstr "Pièce vendable" -#: templates/js/translated/part.js:774 +#: templates/js/translated/part.js:778 msgid "No variants found" msgstr "Aucune variante trouvée" -#: templates/js/translated/part.js:1162 +#: templates/js/translated/part.js:1166 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1186 +#: templates/js/translated/part.js:1190 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:1253 templates/js/translated/part.js:1549 +#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1553 msgid "No parts found" msgstr "Aucune pièce trouvée" -#: templates/js/translated/part.js:1292 +#: templates/js/translated/part.js:1296 msgid "Not available" msgstr "" -#: templates/js/translated/part.js:1443 +#: templates/js/translated/part.js:1447 msgid "No category" msgstr "Aucune catégorie" -#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816 -#: templates/js/translated/stock.js:2343 +#: templates/js/translated/part.js:1577 templates/js/translated/part.js:1820 +#: templates/js/translated/stock.js:2347 msgid "Display as list" msgstr "Afficher sous forme de liste" -#: templates/js/translated/part.js:1589 +#: templates/js/translated/part.js:1593 msgid "Display as grid" msgstr "Afficher sous forme de grille" -#: templates/js/translated/part.js:1655 +#: templates/js/translated/part.js:1659 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:1660 +#: templates/js/translated/part.js:1664 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:1665 +#: templates/js/translated/part.js:1669 msgid "Select Part Category" msgstr "" -#: templates/js/translated/part.js:1678 +#: templates/js/translated/part.js:1682 msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2362 +#: templates/js/translated/part.js:1839 templates/js/translated/stock.js:2366 msgid "Display as tree" msgstr "Afficher sous forme d'arborescence" -#: templates/js/translated/part.js:1914 +#: templates/js/translated/part.js:1918 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:1925 +#: templates/js/translated/part.js:1934 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:1983 +#: templates/js/translated/part.js:1992 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2034 templates/js/translated/stock.js:1295 +#: templates/js/translated/part.js:2043 templates/js/translated/stock.js:1299 msgid "Edit test result" msgstr "Modifier le résultat du test" -#: templates/js/translated/part.js:2035 templates/js/translated/stock.js:1296 -#: templates/js/translated/stock.js:1556 +#: templates/js/translated/part.js:2044 templates/js/translated/stock.js:1300 +#: templates/js/translated/stock.js:1560 msgid "Delete test result" msgstr "Supprimer le résultat du test" -#: templates/js/translated/part.js:2041 +#: templates/js/translated/part.js:2050 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2063 +#: templates/js/translated/part.js:2072 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2077 +#: templates/js/translated/part.js:2086 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2102 +#: templates/js/translated/part.js:2111 #, python-brace-format msgid "No ${human_name} information found" msgstr "" -#: templates/js/translated/part.js:2159 +#: templates/js/translated/part.js:2168 #, python-brace-format msgid "Edit ${human_name}" msgstr "" -#: templates/js/translated/part.js:2160 +#: templates/js/translated/part.js:2169 #, python-brace-format msgid "Delete ${human_name}" msgstr "" -#: templates/js/translated/part.js:2274 +#: templates/js/translated/part.js:2283 msgid "Current Stock" msgstr "" -#: templates/js/translated/part.js:2307 +#: templates/js/translated/part.js:2316 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2333 +#: templates/js/translated/part.js:2342 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2403 +#: templates/js/translated/part.js:2412 msgid "Single Price" msgstr "" -#: templates/js/translated/part.js:2422 +#: templates/js/translated/part.js:2431 msgid "Single Price Difference" msgstr "" @@ -9511,376 +9555,376 @@ msgstr "" msgid "Parent stock location" msgstr "" -#: templates/js/translated/stock.js:140 +#: templates/js/translated/stock.js:144 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:155 +#: templates/js/translated/stock.js:159 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:169 +#: templates/js/translated/stock.js:173 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:171 +#: templates/js/translated/stock.js:175 msgid "Any child locations will be moved to the parent of this location" msgstr "" -#: templates/js/translated/stock.js:172 +#: templates/js/translated/stock.js:176 msgid "Any stock items in this location will be moved to the parent of this location" msgstr "" -#: templates/js/translated/stock.js:178 +#: templates/js/translated/stock.js:182 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:223 +#: templates/js/translated/stock.js:227 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:262 +#: templates/js/translated/stock.js:266 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:268 +#: templates/js/translated/stock.js:272 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "Entrez les numéros de série pour le nouveau stock (ou laisser vide)" -#: templates/js/translated/stock.js:333 +#: templates/js/translated/stock.js:337 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:353 +#: templates/js/translated/stock.js:357 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:369 +#: templates/js/translated/stock.js:373 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:374 +#: templates/js/translated/stock.js:378 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:395 +#: templates/js/translated/stock.js:399 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:445 +#: templates/js/translated/stock.js:449 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:458 +#: templates/js/translated/stock.js:462 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:483 +#: templates/js/translated/stock.js:487 msgid "Find Serial Number" msgstr "Trouver un numéro de série" -#: templates/js/translated/stock.js:487 templates/js/translated/stock.js:488 +#: templates/js/translated/stock.js:491 templates/js/translated/stock.js:492 msgid "Enter serial number" msgstr "Entrer le numéro de série" -#: templates/js/translated/stock.js:504 +#: templates/js/translated/stock.js:508 msgid "Enter a serial number" msgstr "Entrer un numéro de série" -#: templates/js/translated/stock.js:524 +#: templates/js/translated/stock.js:528 msgid "No matching serial number" msgstr "Aucun numéro de série correspondant" -#: templates/js/translated/stock.js:533 +#: templates/js/translated/stock.js:537 msgid "More than one matching result found" msgstr "Plus d'un résultat correspondant trouvé" -#: templates/js/translated/stock.js:656 +#: templates/js/translated/stock.js:660 msgid "Confirm stock assignment" msgstr "Confirmer l'assignation de stock" -#: templates/js/translated/stock.js:657 +#: templates/js/translated/stock.js:661 msgid "Assign Stock to Customer" msgstr "Assigner le stock au client" -#: templates/js/translated/stock.js:734 +#: templates/js/translated/stock.js:738 msgid "Warning: Merge operation cannot be reversed" msgstr "Attention : l'opération de fusion est irréversible" -#: templates/js/translated/stock.js:735 +#: templates/js/translated/stock.js:739 msgid "Some information will be lost when merging stock items" msgstr "Certaines informations seront perdues lors de la fusion des articles en stock" -#: templates/js/translated/stock.js:737 +#: templates/js/translated/stock.js:741 msgid "Stock transaction history will be deleted for merged items" msgstr "L'historique des transactions de stock sera supprimé pour les éléments fusionnés" -#: templates/js/translated/stock.js:738 +#: templates/js/translated/stock.js:742 msgid "Supplier part information will be deleted for merged items" msgstr "Les informations sur la pièce du fournisseur seront supprimées pour les éléments fusionnés" -#: templates/js/translated/stock.js:824 +#: templates/js/translated/stock.js:828 msgid "Confirm stock item merge" msgstr "Confirmer la fusion de l'article en stock" -#: templates/js/translated/stock.js:825 +#: templates/js/translated/stock.js:829 msgid "Merge Stock Items" msgstr "Fusionner les articles en stock" -#: templates/js/translated/stock.js:920 +#: templates/js/translated/stock.js:924 msgid "Transfer Stock" msgstr "Transférer le stock" -#: templates/js/translated/stock.js:921 +#: templates/js/translated/stock.js:925 msgid "Move" msgstr "Transférer" -#: templates/js/translated/stock.js:927 +#: templates/js/translated/stock.js:931 msgid "Count Stock" msgstr "Compter le stock" -#: templates/js/translated/stock.js:928 +#: templates/js/translated/stock.js:932 msgid "Count" msgstr "Compter" -#: templates/js/translated/stock.js:932 +#: templates/js/translated/stock.js:936 msgid "Remove Stock" msgstr "Supprimer du stock" -#: templates/js/translated/stock.js:933 +#: templates/js/translated/stock.js:937 msgid "Take" msgstr "Supprimer" -#: templates/js/translated/stock.js:937 +#: templates/js/translated/stock.js:941 msgid "Add Stock" msgstr "Ajouter du stock" -#: templates/js/translated/stock.js:938 users/models.py:216 +#: templates/js/translated/stock.js:942 users/models.py:216 msgid "Add" msgstr "Ajouter" -#: templates/js/translated/stock.js:942 +#: templates/js/translated/stock.js:946 msgid "Delete Stock" msgstr "Supprimer le stock" -#: templates/js/translated/stock.js:1035 +#: templates/js/translated/stock.js:1039 msgid "Quantity cannot be adjusted for serialized stock" msgstr "La quantité ne peut pas être ajustée pour un stock sérialisé" -#: templates/js/translated/stock.js:1035 +#: templates/js/translated/stock.js:1039 msgid "Specify stock quantity" msgstr "Spécifiez la quantité du stock" -#: templates/js/translated/stock.js:1075 +#: templates/js/translated/stock.js:1079 msgid "You must select at least one available stock item" msgstr "Vous devez sélectionner au moins un article en stock disponible" -#: templates/js/translated/stock.js:1098 +#: templates/js/translated/stock.js:1102 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1234 +#: templates/js/translated/stock.js:1238 msgid "PASS" msgstr "RÉUSSI" -#: templates/js/translated/stock.js:1236 +#: templates/js/translated/stock.js:1240 msgid "FAIL" msgstr "ÉCHEC" -#: templates/js/translated/stock.js:1241 +#: templates/js/translated/stock.js:1245 msgid "NO RESULT" msgstr "AUCUN RÉSULTAT" -#: templates/js/translated/stock.js:1288 +#: templates/js/translated/stock.js:1292 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1291 +#: templates/js/translated/stock.js:1295 msgid "Add test result" msgstr "Ajouter un résultat de test" -#: templates/js/translated/stock.js:1317 +#: templates/js/translated/stock.js:1321 msgid "No test results found" msgstr "Aucun résultat de test trouvé" -#: templates/js/translated/stock.js:1374 +#: templates/js/translated/stock.js:1378 msgid "Test Date" msgstr "Date du test" -#: templates/js/translated/stock.js:1539 +#: templates/js/translated/stock.js:1543 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1561 +#: templates/js/translated/stock.js:1565 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1590 +#: templates/js/translated/stock.js:1594 msgid "In production" msgstr "En production" -#: templates/js/translated/stock.js:1594 +#: templates/js/translated/stock.js:1598 msgid "Installed in Stock Item" msgstr "Article en stock installé dans un autre article en stock" -#: templates/js/translated/stock.js:1602 +#: templates/js/translated/stock.js:1606 msgid "Assigned to Sales Order" msgstr "Assigné à une commande de vente" -#: templates/js/translated/stock.js:1608 +#: templates/js/translated/stock.js:1612 msgid "No stock location set" msgstr "Aucun emplacement de stock défini" -#: templates/js/translated/stock.js:1775 +#: templates/js/translated/stock.js:1779 msgid "Stock item is in production" msgstr "L'article de stock est en production" -#: templates/js/translated/stock.js:1780 +#: templates/js/translated/stock.js:1784 msgid "Stock item assigned to sales order" msgstr "L'article en stock a été assigné à une commande de vente" -#: templates/js/translated/stock.js:1783 +#: templates/js/translated/stock.js:1787 msgid "Stock item assigned to customer" msgstr "L'article en stock a été assigné à un client" -#: templates/js/translated/stock.js:1786 +#: templates/js/translated/stock.js:1790 msgid "Serialized stock item has been allocated" msgstr "L'article de stock sérialisé a été alloué" -#: templates/js/translated/stock.js:1788 +#: templates/js/translated/stock.js:1792 msgid "Stock item has been fully allocated" msgstr "L'article de stock a été complètement alloué" -#: templates/js/translated/stock.js:1790 +#: templates/js/translated/stock.js:1794 msgid "Stock item has been partially allocated" msgstr "L'article de stock a été partiellement alloué" -#: templates/js/translated/stock.js:1793 +#: templates/js/translated/stock.js:1797 msgid "Stock item has been installed in another item" msgstr "L'article en stock a été installé dans un autre article" -#: templates/js/translated/stock.js:1797 +#: templates/js/translated/stock.js:1801 msgid "Stock item has expired" msgstr "L'article en stock a expiré" -#: templates/js/translated/stock.js:1799 +#: templates/js/translated/stock.js:1803 msgid "Stock item will expire soon" msgstr "L'article en stock va bientôt expirer" -#: templates/js/translated/stock.js:1806 +#: templates/js/translated/stock.js:1810 msgid "Stock item has been rejected" msgstr "L'article de stock a été rejeté" -#: templates/js/translated/stock.js:1808 +#: templates/js/translated/stock.js:1812 msgid "Stock item is lost" msgstr "L'article de stock est perdu" -#: templates/js/translated/stock.js:1810 +#: templates/js/translated/stock.js:1814 msgid "Stock item is destroyed" msgstr "L'article de stock est détruit" -#: templates/js/translated/stock.js:1814 +#: templates/js/translated/stock.js:1818 #: templates/js/translated/table_filters.js:196 msgid "Depleted" msgstr "Epuisé" -#: templates/js/translated/stock.js:1865 +#: templates/js/translated/stock.js:1869 msgid "Stocktake" msgstr "Prise d'inventaire" -#: templates/js/translated/stock.js:1944 +#: templates/js/translated/stock.js:1948 msgid "Supplier part not specified" msgstr "Pièce de fournisseur non précisée" -#: templates/js/translated/stock.js:1982 +#: templates/js/translated/stock.js:1986 msgid "No stock items matching query" msgstr "Aucun article de stock ne correspond à la requête" -#: templates/js/translated/stock.js:2155 +#: templates/js/translated/stock.js:2159 msgid "Set Stock Status" msgstr "Définir l'état du stock" -#: templates/js/translated/stock.js:2169 +#: templates/js/translated/stock.js:2173 msgid "Select Status Code" msgstr "Sélectionner le code de statut" -#: templates/js/translated/stock.js:2170 +#: templates/js/translated/stock.js:2174 msgid "Status code must be selected" msgstr "Le code de statut doit être sélectionné" -#: templates/js/translated/stock.js:2400 +#: templates/js/translated/stock.js:2404 msgid "Load Subloactions" msgstr "" -#: templates/js/translated/stock.js:2484 +#: templates/js/translated/stock.js:2493 msgid "Details" msgstr "Détails" -#: templates/js/translated/stock.js:2500 +#: templates/js/translated/stock.js:2509 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2522 +#: templates/js/translated/stock.js:2531 msgid "Location no longer exists" msgstr "L'emplacement n'existe plus" -#: templates/js/translated/stock.js:2541 +#: templates/js/translated/stock.js:2550 msgid "Purchase order no longer exists" msgstr "La commande d'achat n'existe plus" -#: templates/js/translated/stock.js:2560 +#: templates/js/translated/stock.js:2569 msgid "Customer no longer exists" msgstr "Le client n'existe plus" -#: templates/js/translated/stock.js:2578 +#: templates/js/translated/stock.js:2587 msgid "Stock item no longer exists" msgstr "L'article de stock n'existe plus" -#: templates/js/translated/stock.js:2601 +#: templates/js/translated/stock.js:2610 msgid "Added" msgstr "Ajouté" -#: templates/js/translated/stock.js:2609 +#: templates/js/translated/stock.js:2618 msgid "Removed" msgstr "Supprimé" -#: templates/js/translated/stock.js:2685 +#: templates/js/translated/stock.js:2694 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:2736 templates/js/translated/stock.js:2772 +#: templates/js/translated/stock.js:2745 templates/js/translated/stock.js:2781 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:2785 +#: templates/js/translated/stock.js:2794 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:2806 +#: templates/js/translated/stock.js:2815 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:2807 +#: templates/js/translated/stock.js:2816 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:2809 +#: templates/js/translated/stock.js:2818 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:2810 +#: templates/js/translated/stock.js:2819 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:2811 +#: templates/js/translated/stock.js:2820 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:2812 +#: templates/js/translated/stock.js:2821 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:2825 +#: templates/js/translated/stock.js:2834 msgid "Select part to install" msgstr "" diff --git a/InvenTree/locale/he/LC_MESSAGES/django.po b/InvenTree/locale/he/LC_MESSAGES/django.po index 68e514d8ad..ee92ef3a0d 100644 --- a/InvenTree/locale/he/LC_MESSAGES/django.po +++ b/InvenTree/locale/he/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-11 02:47+0000\n" -"PO-Revision-Date: 2022-08-11 13:49\n" +"POT-Creation-Date: 2022-08-16 11:53+0000\n" +"PO-Revision-Date: 2022-08-16 21:36\n" "Last-Translator: \n" "Language-Team: Hebrew\n" "Language: he_IL\n" @@ -36,15 +36,15 @@ msgstr "הזן תאריך סיום" #: order/templates/order/so_sidebar.html:17 #: part/templates/part/part_sidebar.html:59 #: report/templates/report/inventree_build_order_base.html:172 -#: stock/models.py:1993 stock/models.py:2101 stock/serializers.py:329 -#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:823 -#: stock/serializers.py:922 stock/serializers.py:1054 +#: stock/models.py:2000 stock/models.py:2108 stock/serializers.py:329 +#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825 +#: stock/serializers.py:924 stock/serializers.py:1056 #: stock/templates/stock/stock_sidebar.html:25 #: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101 #: templates/js/translated/company.js:964 templates/js/translated/order.js:2104 #: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753 #: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102 -#: templates/js/translated/stock.js:1370 templates/js/translated/stock.js:1976 +#: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980 msgid "Notes" msgstr "" @@ -163,6 +163,10 @@ msgstr "מספרים סידוריים לא נמצאו" msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "" +#: InvenTree/mixins.py:71 +msgid "Remove HTML tags from this value" +msgstr "" + #: InvenTree/models.py:236 msgid "Improperly formatted pattern" msgstr "" @@ -195,7 +199,7 @@ msgstr "קובץ חסר" msgid "Missing external link" msgstr "חסר קישור חיצוני" -#: InvenTree/models.py:395 stock/models.py:2095 +#: InvenTree/models.py:395 stock/models.py:2102 #: templates/js/translated/attachment.js:103 #: templates/js/translated/attachment.js:241 msgid "Attachment" @@ -207,16 +211,16 @@ msgstr "בחר קובץ לצירוף" #: InvenTree/models.py:402 company/models.py:124 company/models.py:276 #: company/models.py:510 order/models.py:84 order/models.py:1245 -#: part/models.py:795 +#: part/models.py:802 #: report/templates/report/inventree_build_order_base.html:164 #: templates/js/translated/company.js:656 #: templates/js/translated/company.js:948 templates/js/translated/order.js:2742 -#: templates/js/translated/part.js:1510 +#: templates/js/translated/part.js:1514 msgid "Link" msgstr "קישור" -#: InvenTree/models.py:403 build/models.py:296 part/models.py:796 -#: stock/models.py:651 +#: InvenTree/models.py:403 build/models.py:296 part/models.py:803 +#: stock/models.py:658 msgid "Link to external URL" msgstr "קישור חיצוני" @@ -229,12 +233,12 @@ msgstr "הערה" msgid "File comment" msgstr "הערת קובץ" -#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1646 -#: common/models.py:1647 common/models.py:1870 common/models.py:1871 -#: common/models.py:2133 common/models.py:2134 part/models.py:2193 -#: part/models.py:2213 plugin/models.py:238 plugin/models.py:239 +#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665 +#: common/models.py:1666 common/models.py:1889 common/models.py:1890 +#: common/models.py:2152 common/models.py:2153 part/models.py:2200 +#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2632 +#: templates/js/translated/stock.js:2641 msgid "User" msgstr "משתמש" @@ -271,19 +275,19 @@ msgstr "שגיאה בשינוי שם פריט" msgid "Invalid choice" msgstr "בחירה שגויה" -#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1856 -#: company/models.py:358 label/models.py:101 part/models.py:739 -#: part/models.py:2371 plugin/models.py:93 report/models.py:152 +#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875 +#: company/models.py:358 label/models.py:101 part/models.py:746 +#: part/models.py:2378 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 -#: templates/InvenTree/settings/plugin.html:49 -#: templates/InvenTree/settings/plugin.html:132 +#: templates/InvenTree/settings/plugin.html:51 +#: templates/InvenTree/settings/plugin.html:134 #: templates/InvenTree/settings/plugin_settings.html:23 #: templates/InvenTree/settings/settings.html:347 #: templates/js/translated/company.js:545 #: templates/js/translated/company.js:758 #: templates/js/translated/notification.js:71 -#: templates/js/translated/part.js:684 templates/js/translated/part.js:836 -#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2388 +#: templates/js/translated/part.js:688 templates/js/translated/part.js:840 +#: templates/js/translated/part.js:1906 templates/js/translated/stock.js:2392 msgid "Name" msgstr "שם" @@ -292,21 +296,21 @@ msgstr "שם" #: company/models.py:516 company/templates/company/company_base.html:71 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:87 label/models.py:108 -#: order/models.py:82 part/models.py:762 part/templates/part/category.html:74 +#: order/models.py:82 part/models.py:769 part/templates/part/category.html:80 #: part/templates/part/part_base.html:167 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 -#: stock/templates/stock/location.html:103 +#: stock/templates/stock/location.html:108 #: templates/InvenTree/settings/plugin_settings.html:33 #: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848 #: templates/js/translated/build.js:2471 templates/js/translated/company.js:409 #: templates/js/translated/company.js:667 #: templates/js/translated/company.js:959 templates/js/translated/order.js:1720 #: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531 -#: templates/js/translated/part.js:743 templates/js/translated/part.js:1149 -#: templates/js/translated/part.js:1424 templates/js/translated/part.js:1933 -#: templates/js/translated/part.js:2002 templates/js/translated/stock.js:1739 -#: templates/js/translated/stock.js:2415 templates/js/translated/stock.js:2469 +#: templates/js/translated/part.js:747 templates/js/translated/part.js:1153 +#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1942 +#: templates/js/translated/part.js:2011 templates/js/translated/stock.js:1743 +#: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478 msgid "Description" msgstr "תיאור" @@ -319,7 +323,7 @@ msgid "parent" msgstr "מקור" #: InvenTree/models.py:560 InvenTree/models.py:561 -#: templates/js/translated/part.js:1939 templates/js/translated/stock.js:2421 +#: templates/js/translated/part.js:1948 templates/js/translated/stock.js:2430 msgid "Path" msgstr "" @@ -331,7 +335,7 @@ msgstr "" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:55 part/models.py:2692 +#: InvenTree/serializers.py:55 part/models.py:2699 msgid "Must be a valid number" msgstr "המספר חייב להיות תקין" @@ -398,99 +402,99 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/settings.py:609 +#: InvenTree/settings.py:607 msgid "Czech" msgstr "" -#: InvenTree/settings.py:610 +#: InvenTree/settings.py:608 msgid "German" msgstr "גרמנית" -#: InvenTree/settings.py:611 +#: InvenTree/settings.py:609 msgid "Greek" msgstr "יוונית" -#: InvenTree/settings.py:612 +#: InvenTree/settings.py:610 msgid "English" msgstr "אנגלית" -#: InvenTree/settings.py:613 +#: InvenTree/settings.py:611 msgid "Spanish" msgstr "ספרדית" -#: InvenTree/settings.py:614 +#: InvenTree/settings.py:612 msgid "Spanish (Mexican)" msgstr "ספרדית (מקסיקנית)" -#: InvenTree/settings.py:615 +#: InvenTree/settings.py:613 msgid "Farsi / Persian" msgstr "" -#: InvenTree/settings.py:616 +#: InvenTree/settings.py:614 msgid "French" msgstr "צרפתית" -#: InvenTree/settings.py:617 +#: InvenTree/settings.py:615 msgid "Hebrew" msgstr "עברית" -#: InvenTree/settings.py:618 +#: InvenTree/settings.py:616 msgid "Hungarian" msgstr "" -#: InvenTree/settings.py:619 +#: InvenTree/settings.py:617 msgid "Italian" msgstr "איטלקית" -#: InvenTree/settings.py:620 +#: InvenTree/settings.py:618 msgid "Japanese" msgstr "יפנית" -#: InvenTree/settings.py:621 +#: InvenTree/settings.py:619 msgid "Korean" msgstr "קוריאנית" -#: InvenTree/settings.py:622 +#: InvenTree/settings.py:620 msgid "Dutch" msgstr "הולנדית" -#: InvenTree/settings.py:623 +#: InvenTree/settings.py:621 msgid "Norwegian" msgstr "נורווגית" -#: InvenTree/settings.py:624 +#: InvenTree/settings.py:622 msgid "Polish" msgstr "פולנית" -#: InvenTree/settings.py:625 +#: InvenTree/settings.py:623 msgid "Portuguese" msgstr "" -#: InvenTree/settings.py:626 +#: InvenTree/settings.py:624 msgid "Portuguese (Brazilian)" msgstr "" -#: InvenTree/settings.py:627 +#: InvenTree/settings.py:625 msgid "Russian" msgstr "רוסית" -#: InvenTree/settings.py:628 +#: InvenTree/settings.py:626 msgid "Swedish" msgstr "שוודית" -#: InvenTree/settings.py:629 +#: InvenTree/settings.py:627 msgid "Thai" msgstr "תאילנדית" -#: InvenTree/settings.py:630 +#: InvenTree/settings.py:628 msgid "Turkish" msgstr "טורקית" -#: InvenTree/settings.py:631 +#: InvenTree/settings.py:629 msgid "Vietnamese" msgstr "ווייטנאמית" -#: InvenTree/settings.py:632 +#: InvenTree/settings.py:630 msgid "Chinese" msgstr "סינית" @@ -621,7 +625,7 @@ msgstr "" msgid "Split child item" msgstr "" -#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2080 +#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2084 msgid "Merged stock items" msgstr "" @@ -743,7 +747,7 @@ msgid "Build Order Reference" msgstr "" #: build/models.py:166 order/models.py:240 order/models.py:623 -#: order/models.py:904 part/models.py:2610 +#: order/models.py:904 part/models.py:2617 #: part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 @@ -770,10 +774,10 @@ msgstr "" #: build/models.py:191 build/templates/build/build_base.html:77 #: build/templates/build/detail.html:29 company/models.py:670 #: order/models.py:1001 order/models.py:1112 order/models.py:1113 -#: part/models.py:336 part/models.py:2139 part/models.py:2154 -#: part/models.py:2173 part/models.py:2191 part/models.py:2290 -#: part/models.py:2410 part/models.py:2500 part/models.py:2585 -#: part/models.py:2861 part/serializers.py:811 +#: part/models.py:343 part/models.py:2146 part/models.py:2161 +#: part/models.py:2180 part/models.py:2198 part/models.py:2297 +#: part/models.py:2417 part/models.py:2507 part/models.py:2592 +#: part/models.py:2868 part/serializers.py:813 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -796,11 +800,11 @@ msgstr "" #: templates/js/translated/order.js:934 templates/js/translated/order.js:1387 #: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885 #: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507 -#: templates/js/translated/part.js:1134 templates/js/translated/part.js:1206 -#: templates/js/translated/part.js:1402 templates/js/translated/stock.js:582 -#: templates/js/translated/stock.js:747 templates/js/translated/stock.js:954 -#: templates/js/translated/stock.js:1696 templates/js/translated/stock.js:2495 -#: templates/js/translated/stock.js:2690 templates/js/translated/stock.js:2824 +#: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210 +#: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586 +#: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958 +#: templates/js/translated/stock.js:1700 templates/js/translated/stock.js:2504 +#: templates/js/translated/stock.js:2699 templates/js/translated/stock.js:2833 msgid "Part" msgstr "רכיב" @@ -858,7 +862,7 @@ msgid "Build status code" msgstr "" #: build/models.py:251 build/serializers.py:225 order/serializers.py:447 -#: stock/models.py:655 templates/js/translated/order.js:1247 +#: stock/models.py:662 templates/js/translated/order.js:1247 msgid "Batch Code" msgstr "" @@ -866,7 +870,7 @@ msgstr "" msgid "Batch code for this build output" msgstr "" -#: build/models.py:258 order/models.py:86 part/models.py:931 +#: build/models.py:258 order/models.py:86 part/models.py:938 #: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544 msgid "Creation Date" msgstr "" @@ -899,7 +903,7 @@ msgstr "" #: build/models.py:289 build/templates/build/build_base.html:190 #: build/templates/build/detail.html:115 order/models.py:100 #: order/templates/order/order_base.html:176 -#: order/templates/order/sales_order_base.html:183 part/models.py:935 +#: order/templates/order/sales_order_base.html:183 part/models.py:942 #: report/templates/report/inventree_build_order_base.html:158 #: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754 msgid "Responsible" @@ -912,7 +916,7 @@ msgstr "" #: build/models.py:295 build/templates/build/detail.html:101 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:153 -#: part/templates/part/part_base.html:346 stock/models.py:649 +#: part/templates/part/part_base.html:346 stock/models.py:656 #: stock/templates/stock/item_base.html:205 msgid "External Link" msgstr "" @@ -978,8 +982,8 @@ msgid "Build to allocate parts" msgstr "" #: build/models.py:1345 build/serializers.py:645 order/serializers.py:1015 -#: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 -#: stock/serializers.py:880 stock/templates/stock/item_base.html:10 +#: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:756 +#: stock/serializers.py:882 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:199 #: templates/js/translated/build.js:741 templates/js/translated/build.js:746 @@ -987,8 +991,8 @@ msgstr "" #: templates/js/translated/order.js:104 templates/js/translated/order.js:2886 #: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193 #: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380 -#: templates/js/translated/stock.js:583 templates/js/translated/stock.js:748 -#: templates/js/translated/stock.js:2568 +#: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752 +#: templates/js/translated/stock.js:2577 msgid "Stock Item" msgstr "" @@ -998,11 +1002,11 @@ msgstr "" #: build/models.py:1358 build/serializers.py:193 #: build/templates/build/build_base.html:82 -#: build/templates/build/detail.html:34 common/models.py:1678 +#: build/templates/build/detail.html:34 common/models.py:1697 #: company/templates/company/supplier_part.html:279 order/models.py:897 #: order/models.py:1423 order/serializers.py:1155 #: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40 -#: part/models.py:2601 part/templates/part/detail.html:937 +#: part/models.py:2608 part/templates/part/detail.html:937 #: part/templates/part/detail.html:1023 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 @@ -1025,11 +1029,11 @@ msgstr "" #: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207 #: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386 #: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037 -#: templates/js/translated/part.js:1034 templates/js/translated/part.js:2147 -#: templates/js/translated/part.js:2378 templates/js/translated/part.js:2412 -#: templates/js/translated/part.js:2490 templates/js/translated/stock.js:454 -#: templates/js/translated/stock.js:608 templates/js/translated/stock.js:778 -#: templates/js/translated/stock.js:2617 templates/js/translated/stock.js:2702 +#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2156 +#: templates/js/translated/part.js:2387 templates/js/translated/part.js:2421 +#: templates/js/translated/part.js:2499 templates/js/translated/stock.js:458 +#: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782 +#: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711 msgid "Quantity" msgstr "כמות" @@ -1071,8 +1075,8 @@ msgid "Enter quantity for build output" msgstr "" #: build/serializers.py:208 build/serializers.py:665 order/models.py:318 -#: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 -#: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 +#: order/serializers.py:287 order/serializers.py:442 part/serializers.py:544 +#: part/serializers.py:976 stock/models.py:484 stock/models.py:1251 #: stock/serializers.py:302 msgid "Quantity must be greater than zero" msgstr "" @@ -1087,7 +1091,7 @@ msgstr "" #: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159 #: stock/serializers.py:311 templates/js/translated/order.js:1258 -#: templates/js/translated/stock.js:267 templates/js/translated/stock.js:455 +#: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459 msgid "Serial Numbers" msgstr "מספרים סידוריים" @@ -1113,16 +1117,16 @@ msgstr "" #: build/serializers.py:366 order/serializers.py:428 order/serializers.py:532 #: stock/serializers.py:322 stock/serializers.py:453 stock/serializers.py:534 -#: stock/serializers.py:915 stock/serializers.py:1148 +#: stock/serializers.py:917 stock/serializers.py:1150 #: stock/templates/stock/item_base.html:390 #: templates/js/translated/barcode.js:436 #: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753 #: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285 #: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305 #: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394 -#: templates/js/translated/part.js:181 templates/js/translated/stock.js:584 -#: templates/js/translated/stock.js:749 templates/js/translated/stock.js:956 -#: templates/js/translated/stock.js:1850 templates/js/translated/stock.js:2509 +#: templates/js/translated/part.js:181 templates/js/translated/stock.js:588 +#: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960 +#: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518 msgid "Location" msgstr "" @@ -1135,8 +1139,8 @@ msgstr "" #: order/serializers.py:465 stock/templates/stock/item_base.html:423 #: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505 #: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724 -#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1825 -#: templates/js/translated/stock.js:2586 templates/js/translated/stock.js:2718 +#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829 +#: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727 msgid "Status" msgstr "" @@ -1212,8 +1216,8 @@ msgstr "" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:577 build/serializers.py:622 part/models.py:2719 -#: part/models.py:2853 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726 +#: part/models.py:2860 msgid "BOM Item" msgstr "" @@ -1229,7 +1233,7 @@ msgstr "" msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:651 stock/serializers.py:767 +#: build/serializers.py:651 stock/serializers.py:769 msgid "Item must be in stock" msgstr "" @@ -1367,7 +1371,7 @@ msgstr "" #: report/templates/report/inventree_build_order_base.html:125 #: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741 #: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552 -#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1038 +#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042 msgid "Target Date" msgstr "" @@ -1445,8 +1449,8 @@ msgstr "" #: stock/templates/stock/item_base.html:170 #: templates/js/translated/build.js:1182 #: templates/js/translated/model_renderers.js:124 -#: templates/js/translated/stock.js:1022 templates/js/translated/stock.js:1839 -#: templates/js/translated/stock.js:2725 +#: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843 +#: templates/js/translated/stock.js:2734 #: templates/js/translated/table_filters.js:159 #: templates/js/translated/table_filters.js:250 msgid "Batch" @@ -1506,7 +1510,7 @@ msgstr "" #: build/templates/build/detail.html:187 #: company/templates/company/detail.html:37 #: company/templates/company/detail.html:85 -#: part/templates/part/category.html:177 templates/js/translated/order.js:977 +#: part/templates/part/category.html:183 templates/js/translated/order.js:977 msgid "Order Parts" msgstr "" @@ -1559,12 +1563,12 @@ msgid "Delete outputs" msgstr "" #: build/templates/build/detail.html:267 -#: stock/templates/stock/location.html:197 templates/stock_table.html:27 +#: stock/templates/stock/location.html:202 templates/stock_table.html:27 msgid "Printing Actions" msgstr "" #: build/templates/build/detail.html:271 build/templates/build/detail.html:272 -#: stock/templates/stock/location.html:201 templates/stock_table.html:31 +#: stock/templates/stock/location.html:206 templates/stock_table.html:31 msgid "Print labels" msgstr "" @@ -1841,7 +1845,7 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:951 part/models.py:2412 report/models.py:158 +#: common/models.py:951 part/models.py:2419 report/models.py:158 #: templates/js/translated/table_filters.js:38 #: templates/js/translated/table_filters.js:484 msgid "Template" @@ -1851,7 +1855,7 @@ msgstr "" msgid "Parts are templates by default" msgstr "" -#: common/models.py:958 part/models.py:887 templates/js/translated/bom.js:1448 +#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448 #: templates/js/translated/table_filters.js:176 #: templates/js/translated/table_filters.js:447 msgid "Assembly" @@ -1861,7 +1865,7 @@ msgstr "" msgid "Parts can be assembled from other components by default" msgstr "" -#: common/models.py:965 part/models.py:893 +#: common/models.py:965 part/models.py:900 #: templates/js/translated/table_filters.js:455 msgid "Component" msgstr "" @@ -1870,7 +1874,7 @@ msgstr "" msgid "Parts can be used as sub-components by default" msgstr "" -#: common/models.py:972 part/models.py:904 +#: common/models.py:972 part/models.py:911 msgid "Purchaseable" msgstr "" @@ -1878,7 +1882,7 @@ msgstr "" msgid "Parts are purchaseable by default" msgstr "" -#: common/models.py:979 part/models.py:909 +#: common/models.py:979 part/models.py:916 #: templates/js/translated/table_filters.js:476 msgid "Salable" msgstr "" @@ -1887,7 +1891,7 @@ msgstr "" msgid "Parts are salable by default" msgstr "" -#: common/models.py:986 part/models.py:899 +#: common/models.py:986 part/models.py:906 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:108 #: templates/js/translated/table_filters.js:488 @@ -1898,7 +1902,7 @@ msgstr "" msgid "Parts are trackable by default" msgstr "" -#: common/models.py:993 part/models.py:919 +#: common/models.py:993 part/models.py:926 #: part/templates/part/part_base.html:151 #: templates/js/translated/table_filters.js:42 #: templates/js/translated/table_filters.js:492 @@ -1982,608 +1986,632 @@ msgid "Format to display the part name" msgstr "" #: common/models.py:1074 -msgid "Enable label printing" +msgid "Part Category Default Icon" msgstr "" #: common/models.py:1075 -msgid "Enable label printing from the web interface" +msgid "Part category default icon (empty means no icon)" +msgstr "" + +#: common/models.py:1080 +msgid "Enable label printing" msgstr "" #: common/models.py:1081 +msgid "Enable label printing from the web interface" +msgstr "" + +#: common/models.py:1087 msgid "Label Image DPI" msgstr "" -#: common/models.py:1082 +#: common/models.py:1088 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/models.py:1091 +#: common/models.py:1097 msgid "Enable Reports" msgstr "" -#: common/models.py:1092 +#: common/models.py:1098 msgid "Enable generation of reports" msgstr "" -#: common/models.py:1098 templates/stats.html:25 +#: common/models.py:1104 templates/stats.html:25 msgid "Debug Mode" msgstr "" -#: common/models.py:1099 +#: common/models.py:1105 msgid "Generate reports in debug mode (HTML output)" msgstr "" -#: common/models.py:1105 +#: common/models.py:1111 msgid "Page Size" msgstr "" -#: common/models.py:1106 +#: common/models.py:1112 msgid "Default page size for PDF reports" msgstr "" -#: common/models.py:1116 +#: common/models.py:1122 msgid "Enable Test Reports" msgstr "" -#: common/models.py:1117 +#: common/models.py:1123 msgid "Enable generation of test reports" msgstr "" -#: common/models.py:1123 +#: common/models.py:1129 msgid "Attach Test Reports" msgstr "" -#: common/models.py:1124 +#: common/models.py:1130 msgid "When printing a Test Report, attach a copy of the Test Report to the associated Stock Item" msgstr "" -#: common/models.py:1130 +#: common/models.py:1136 msgid "Batch Code Template" msgstr "" -#: common/models.py:1131 +#: common/models.py:1137 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/models.py:1136 +#: common/models.py:1142 msgid "Stock Expiry" msgstr "" -#: common/models.py:1137 +#: common/models.py:1143 msgid "Enable stock expiry functionality" msgstr "" -#: common/models.py:1143 +#: common/models.py:1149 msgid "Sell Expired Stock" msgstr "" -#: common/models.py:1144 +#: common/models.py:1150 msgid "Allow sale of expired stock" msgstr "" -#: common/models.py:1150 +#: common/models.py:1156 msgid "Stock Stale Time" msgstr "" -#: common/models.py:1151 +#: common/models.py:1157 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/models.py:1153 +#: common/models.py:1159 msgid "days" msgstr "" -#: common/models.py:1158 +#: common/models.py:1164 msgid "Build Expired Stock" msgstr "" -#: common/models.py:1159 +#: common/models.py:1165 msgid "Allow building with expired stock" msgstr "" -#: common/models.py:1165 +#: common/models.py:1171 msgid "Stock Ownership Control" msgstr "" -#: common/models.py:1166 +#: common/models.py:1172 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/models.py:1172 -msgid "Build Order Reference Pattern" -msgstr "" - -#: common/models.py:1173 -msgid "Required pattern for generating Build Order reference field" +#: common/models.py:1178 +msgid "Stock Location Default Icon" msgstr "" #: common/models.py:1179 +msgid "Stock location default icon (empty means no icon)" +msgstr "" + +#: common/models.py:1184 +msgid "Build Order Reference Pattern" +msgstr "" + +#: common/models.py:1185 +msgid "Required pattern for generating Build Order reference field" +msgstr "" + +#: common/models.py:1191 msgid "Sales Order Reference Pattern" msgstr "" -#: common/models.py:1180 +#: common/models.py:1192 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/models.py:1186 +#: common/models.py:1198 msgid "Sales Order Default Shipment" msgstr "" -#: common/models.py:1187 +#: common/models.py:1199 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/models.py:1193 +#: common/models.py:1205 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/models.py:1194 +#: common/models.py:1206 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/models.py:1201 +#: common/models.py:1213 msgid "Enable password forgot" msgstr "" -#: common/models.py:1202 +#: common/models.py:1214 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/models.py:1208 +#: common/models.py:1220 msgid "Enable registration" msgstr "" -#: common/models.py:1209 +#: common/models.py:1221 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/models.py:1215 +#: common/models.py:1227 msgid "Enable SSO" msgstr "" -#: common/models.py:1216 +#: common/models.py:1228 msgid "Enable SSO on the login pages" msgstr "" -#: common/models.py:1222 +#: common/models.py:1234 msgid "Email required" msgstr "" -#: common/models.py:1223 +#: common/models.py:1235 msgid "Require user to supply mail on signup" msgstr "" -#: common/models.py:1229 +#: common/models.py:1241 msgid "Auto-fill SSO users" msgstr "" -#: common/models.py:1230 +#: common/models.py:1242 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/models.py:1236 +#: common/models.py:1248 msgid "Mail twice" msgstr "" -#: common/models.py:1237 +#: common/models.py:1249 msgid "On signup ask users twice for their mail" msgstr "" -#: common/models.py:1243 +#: common/models.py:1255 msgid "Password twice" msgstr "" -#: common/models.py:1244 +#: common/models.py:1256 msgid "On signup ask users twice for their password" msgstr "" -#: common/models.py:1250 +#: common/models.py:1262 msgid "Group on signup" msgstr "" -#: common/models.py:1251 +#: common/models.py:1263 msgid "Group to which new users are assigned on registration" msgstr "" -#: common/models.py:1257 +#: common/models.py:1269 msgid "Enforce MFA" msgstr "" -#: common/models.py:1258 +#: common/models.py:1270 msgid "Users must use multifactor security." msgstr "" -#: common/models.py:1264 +#: common/models.py:1276 msgid "Check plugins on startup" msgstr "" -#: common/models.py:1265 +#: common/models.py:1277 msgid "Check that all plugins are installed on startup - enable in container enviroments" msgstr "" -#: common/models.py:1273 +#: common/models.py:1284 +msgid "Check plugin signatures" +msgstr "" + +#: common/models.py:1285 +msgid "Check and show signatures for plugins" +msgstr "" + +#: common/models.py:1292 msgid "Enable URL integration" msgstr "" -#: common/models.py:1274 +#: common/models.py:1293 msgid "Enable plugins to add URL routes" msgstr "" -#: common/models.py:1281 +#: common/models.py:1300 msgid "Enable navigation integration" msgstr "" -#: common/models.py:1282 +#: common/models.py:1301 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/models.py:1289 +#: common/models.py:1308 msgid "Enable app integration" msgstr "" -#: common/models.py:1290 +#: common/models.py:1309 msgid "Enable plugins to add apps" msgstr "" -#: common/models.py:1297 +#: common/models.py:1316 msgid "Enable schedule integration" msgstr "" -#: common/models.py:1298 +#: common/models.py:1317 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/models.py:1305 +#: common/models.py:1324 msgid "Enable event integration" msgstr "" -#: common/models.py:1306 +#: common/models.py:1325 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:1323 common/models.py:1639 +#: common/models.py:1342 common/models.py:1658 msgid "Settings key (must be unique - case insensitive" msgstr "" -#: common/models.py:1345 +#: common/models.py:1364 msgid "Show subscribed parts" msgstr "" -#: common/models.py:1346 +#: common/models.py:1365 msgid "Show subscribed parts on the homepage" msgstr "" -#: common/models.py:1352 +#: common/models.py:1371 msgid "Show subscribed categories" msgstr "" -#: common/models.py:1353 +#: common/models.py:1372 msgid "Show subscribed part categories on the homepage" msgstr "" -#: common/models.py:1359 +#: common/models.py:1378 msgid "Show latest parts" msgstr "" -#: common/models.py:1360 +#: common/models.py:1379 msgid "Show latest parts on the homepage" msgstr "" -#: common/models.py:1366 +#: common/models.py:1385 msgid "Recent Part Count" msgstr "" -#: common/models.py:1367 +#: common/models.py:1386 msgid "Number of recent parts to display on index page" msgstr "" -#: common/models.py:1373 +#: common/models.py:1392 msgid "Show unvalidated BOMs" msgstr "" -#: common/models.py:1374 +#: common/models.py:1393 msgid "Show BOMs that await validation on the homepage" msgstr "" -#: common/models.py:1380 +#: common/models.py:1399 msgid "Show recent stock changes" msgstr "" -#: common/models.py:1381 +#: common/models.py:1400 msgid "Show recently changed stock items on the homepage" msgstr "" -#: common/models.py:1387 +#: common/models.py:1406 msgid "Recent Stock Count" msgstr "" -#: common/models.py:1388 +#: common/models.py:1407 msgid "Number of recent stock items to display on index page" msgstr "" -#: common/models.py:1394 +#: common/models.py:1413 msgid "Show low stock" msgstr "" -#: common/models.py:1395 +#: common/models.py:1414 msgid "Show low stock items on the homepage" msgstr "" -#: common/models.py:1401 +#: common/models.py:1420 msgid "Show depleted stock" msgstr "" -#: common/models.py:1402 +#: common/models.py:1421 msgid "Show depleted stock items on the homepage" msgstr "" -#: common/models.py:1408 +#: common/models.py:1427 msgid "Show needed stock" msgstr "" -#: common/models.py:1409 +#: common/models.py:1428 msgid "Show stock items needed for builds on the homepage" msgstr "" -#: common/models.py:1415 +#: common/models.py:1434 msgid "Show expired stock" msgstr "" -#: common/models.py:1416 +#: common/models.py:1435 msgid "Show expired stock items on the homepage" msgstr "" -#: common/models.py:1422 +#: common/models.py:1441 msgid "Show stale stock" msgstr "" -#: common/models.py:1423 +#: common/models.py:1442 msgid "Show stale stock items on the homepage" msgstr "" -#: common/models.py:1429 +#: common/models.py:1448 msgid "Show pending builds" msgstr "" -#: common/models.py:1430 +#: common/models.py:1449 msgid "Show pending builds on the homepage" msgstr "" -#: common/models.py:1436 +#: common/models.py:1455 msgid "Show overdue builds" msgstr "" -#: common/models.py:1437 +#: common/models.py:1456 msgid "Show overdue builds on the homepage" msgstr "" -#: common/models.py:1443 +#: common/models.py:1462 msgid "Show outstanding POs" msgstr "" -#: common/models.py:1444 +#: common/models.py:1463 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:1450 +#: common/models.py:1469 msgid "Show overdue POs" msgstr "" -#: common/models.py:1451 +#: common/models.py:1470 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:1457 +#: common/models.py:1476 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:1458 +#: common/models.py:1477 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:1464 +#: common/models.py:1483 msgid "Show overdue SOs" msgstr "" -#: common/models.py:1465 +#: common/models.py:1484 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:1471 +#: common/models.py:1490 msgid "Inline label display" msgstr "" -#: common/models.py:1472 +#: common/models.py:1491 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1478 +#: common/models.py:1497 msgid "Inline report display" msgstr "" -#: common/models.py:1479 +#: common/models.py:1498 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1485 +#: common/models.py:1504 msgid "Search Parts" msgstr "" -#: common/models.py:1486 +#: common/models.py:1505 msgid "Display parts in search preview window" msgstr "" -#: common/models.py:1492 +#: common/models.py:1511 msgid "Seach Supplier Parts" msgstr "" -#: common/models.py:1493 +#: common/models.py:1512 msgid "Display supplier parts in search preview window" msgstr "" -#: common/models.py:1499 +#: common/models.py:1518 msgid "Search Manufacturer Parts" msgstr "" -#: common/models.py:1500 +#: common/models.py:1519 msgid "Display manufacturer parts in search preview window" msgstr "" -#: common/models.py:1506 +#: common/models.py:1525 msgid "Hide Inactive Parts" msgstr "" -#: common/models.py:1507 +#: common/models.py:1526 msgid "Excluded inactive parts from search preview window" msgstr "" -#: common/models.py:1513 +#: common/models.py:1532 msgid "Search Categories" msgstr "" -#: common/models.py:1514 +#: common/models.py:1533 msgid "Display part categories in search preview window" msgstr "" -#: common/models.py:1520 +#: common/models.py:1539 msgid "Search Stock" msgstr "" -#: common/models.py:1521 +#: common/models.py:1540 msgid "Display stock items in search preview window" msgstr "" -#: common/models.py:1527 +#: common/models.py:1546 msgid "Hide Unavailable Stock Items" msgstr "" -#: common/models.py:1528 +#: common/models.py:1547 msgid "Exclude stock items which are not available from the search preview window" msgstr "" -#: common/models.py:1534 +#: common/models.py:1553 msgid "Search Locations" msgstr "" -#: common/models.py:1535 +#: common/models.py:1554 msgid "Display stock locations in search preview window" msgstr "" -#: common/models.py:1541 +#: common/models.py:1560 msgid "Search Companies" msgstr "" -#: common/models.py:1542 +#: common/models.py:1561 msgid "Display companies in search preview window" msgstr "" -#: common/models.py:1548 +#: common/models.py:1567 msgid "Search Purchase Orders" msgstr "" -#: common/models.py:1549 +#: common/models.py:1568 msgid "Display purchase orders in search preview window" msgstr "" -#: common/models.py:1555 +#: common/models.py:1574 msgid "Exclude Inactive Purchase Orders" msgstr "" -#: common/models.py:1556 +#: common/models.py:1575 msgid "Exclude inactive purchase orders from search preview window" msgstr "" -#: common/models.py:1562 +#: common/models.py:1581 msgid "Search Sales Orders" msgstr "" -#: common/models.py:1563 +#: common/models.py:1582 msgid "Display sales orders in search preview window" msgstr "" -#: common/models.py:1569 +#: common/models.py:1588 msgid "Exclude Inactive Sales Orders" msgstr "" -#: common/models.py:1570 +#: common/models.py:1589 msgid "Exclude inactive sales orders from search preview window" msgstr "" -#: common/models.py:1576 +#: common/models.py:1595 msgid "Search Preview Results" msgstr "" -#: common/models.py:1577 +#: common/models.py:1596 msgid "Number of results to show in each section of the search preview window" msgstr "" -#: common/models.py:1583 +#: common/models.py:1602 msgid "Show Quantity in Forms" msgstr "" -#: common/models.py:1584 +#: common/models.py:1603 msgid "Display available part quantity in some forms" msgstr "" -#: common/models.py:1590 +#: common/models.py:1609 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:1591 +#: common/models.py:1610 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:1597 +#: common/models.py:1616 msgid "Fixed Navbar" msgstr "" -#: common/models.py:1598 +#: common/models.py:1617 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:1604 +#: common/models.py:1623 msgid "Date Format" msgstr "" -#: common/models.py:1605 +#: common/models.py:1624 msgid "Preferred format for displaying dates" msgstr "" -#: common/models.py:1619 part/templates/part/detail.html:41 +#: common/models.py:1638 part/templates/part/detail.html:41 msgid "Part Scheduling" msgstr "" -#: common/models.py:1620 +#: common/models.py:1639 msgid "Display part scheduling information" msgstr "" -#: common/models.py:1679 +#: common/models.py:1698 msgid "Price break quantity" msgstr "" -#: common/models.py:1686 company/serializers.py:366 +#: common/models.py:1705 company/serializers.py:366 #: company/templates/company/supplier_part.html:284 order/models.py:938 -#: templates/js/translated/part.js:1065 templates/js/translated/part.js:2152 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2161 msgid "Price" msgstr "" -#: common/models.py:1687 +#: common/models.py:1706 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:1847 common/models.py:2025 +#: common/models.py:1866 common/models.py:2044 msgid "Endpoint" msgstr "" -#: common/models.py:1848 +#: common/models.py:1867 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:1857 +#: common/models.py:1876 msgid "Name for this webhook" msgstr "" -#: common/models.py:1862 part/models.py:914 plugin/models.py:99 +#: common/models.py:1881 part/models.py:921 plugin/models.py:100 #: templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:104 #: templates/js/translated/table_filters.js:316 @@ -2591,67 +2619,67 @@ msgstr "" msgid "Active" msgstr "" -#: common/models.py:1863 +#: common/models.py:1882 msgid "Is this webhook active" msgstr "" -#: common/models.py:1877 +#: common/models.py:1896 msgid "Token" msgstr "" -#: common/models.py:1878 +#: common/models.py:1897 msgid "Token for access" msgstr "" -#: common/models.py:1885 +#: common/models.py:1904 msgid "Secret" msgstr "" -#: common/models.py:1886 +#: common/models.py:1905 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:1992 +#: common/models.py:2011 msgid "Message ID" msgstr "" -#: common/models.py:1993 +#: common/models.py:2012 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2001 +#: common/models.py:2020 msgid "Host" msgstr "" -#: common/models.py:2002 +#: common/models.py:2021 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2009 +#: common/models.py:2028 msgid "Header" msgstr "" -#: common/models.py:2010 +#: common/models.py:2029 msgid "Header of this message" msgstr "" -#: common/models.py:2016 +#: common/models.py:2035 msgid "Body" msgstr "" -#: common/models.py:2017 +#: common/models.py:2036 msgid "Body of this message" msgstr "" -#: common/models.py:2026 +#: common/models.py:2045 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2031 +#: common/models.py:2050 msgid "Worked on" msgstr "" -#: common/models.py:2032 +#: common/models.py:2051 msgid "Was the work on this message finished?" msgstr "" @@ -2758,7 +2786,7 @@ msgstr "" msgid "Link to external company information" msgstr "" -#: company/models.py:135 part/models.py:808 +#: company/models.py:135 part/models.py:815 msgid "Image" msgstr "" @@ -2791,8 +2819,8 @@ msgid "Does this company manufacture parts?" msgstr "" #: company/models.py:148 company/serializers.py:372 -#: company/templates/company/company_base.html:106 part/serializers.py:151 -#: part/serializers.py:182 stock/serializers.py:180 +#: company/templates/company/company_base.html:106 part/serializers.py:153 +#: part/serializers.py:184 stock/serializers.py:180 msgid "Currency" msgstr "" @@ -2800,7 +2828,7 @@ msgstr "" msgid "Default currency used for this company" msgstr "" -#: company/models.py:248 company/models.py:481 stock/models.py:591 +#: company/models.py:248 company/models.py:481 stock/models.py:598 #: stock/serializers.py:87 stock/templates/stock/item_base.html:148 #: templates/js/translated/bom.js:543 msgid "Base Part" @@ -2832,7 +2860,7 @@ msgstr "" #: templates/js/translated/company.js:497 #: templates/js/translated/company.js:649 #: templates/js/translated/company.js:937 templates/js/translated/order.js:1971 -#: templates/js/translated/part.js:247 templates/js/translated/part.js:1023 +#: templates/js/translated/part.js:247 templates/js/translated/part.js:1027 msgid "MPN" msgstr "" @@ -2861,9 +2889,9 @@ msgstr "" #: company/models.py:365 #: report/templates/report/inventree_test_report_base.html:95 -#: stock/models.py:2088 templates/js/translated/company.js:546 -#: templates/js/translated/company.js:764 templates/js/translated/part.js:845 -#: templates/js/translated/stock.js:1356 +#: stock/models.py:2095 templates/js/translated/company.js:546 +#: templates/js/translated/company.js:764 templates/js/translated/part.js:849 +#: templates/js/translated/stock.js:1360 msgid "Value" msgstr "" @@ -2871,10 +2899,10 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:372 part/models.py:881 part/models.py:2379 +#: company/models.py:372 part/models.py:888 part/models.py:2386 #: part/templates/part/part_base.html:280 #: templates/InvenTree/settings/settings.html:352 -#: templates/js/translated/company.js:770 templates/js/translated/part.js:851 +#: templates/js/translated/company.js:770 templates/js/translated/part.js:855 msgid "Units" msgstr "" @@ -2894,7 +2922,7 @@ msgstr "" #: templates/js/translated/company.js:268 #: templates/js/translated/company.js:401 #: templates/js/translated/company.js:893 templates/js/translated/order.js:1707 -#: templates/js/translated/part.js:217 templates/js/translated/part.js:991 +#: templates/js/translated/part.js:217 templates/js/translated/part.js:995 #: templates/js/translated/table_filters.js:423 msgid "Supplier" msgstr "" @@ -2906,7 +2934,7 @@ msgstr "" #: company/models.py:497 company/templates/company/supplier_part.html:118 #: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267 #: templates/js/translated/order.js:1958 templates/js/translated/part.js:228 -#: templates/js/translated/part.js:1009 +#: templates/js/translated/part.js:1013 msgid "SKU" msgstr "" @@ -2927,23 +2955,23 @@ msgid "Supplier part description" msgstr "" #: company/models.py:522 company/templates/company/supplier_part.html:146 -#: part/models.py:2613 part/templates/part/upload_bom.html:59 +#: part/models.py:2620 part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401 msgid "Note" msgstr "" -#: company/models.py:526 part/models.py:1735 +#: company/models.py:526 part/models.py:1742 msgid "base cost" msgstr "" -#: company/models.py:526 part/models.py:1735 +#: company/models.py:526 part/models.py:1742 msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:528 company/templates/company/supplier_part.html:139 -#: stock/models.py:617 stock/templates/stock/item_base.html:245 -#: templates/js/translated/company.js:969 templates/js/translated/stock.js:1972 +#: stock/models.py:624 stock/templates/stock/item_base.html:245 +#: templates/js/translated/company.js:969 templates/js/translated/stock.js:1976 msgid "Packaging" msgstr "" @@ -2951,7 +2979,7 @@ msgstr "" msgid "Part packaging" msgstr "" -#: company/models.py:530 part/models.py:1737 +#: company/models.py:530 part/models.py:1744 msgid "multiple" msgstr "" @@ -2964,7 +2992,7 @@ msgstr "" #: templates/email/low_stock_notification.html:18 #: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789 #: templates/js/translated/build.js:2645 templates/js/translated/company.js:979 -#: templates/js/translated/part.js:596 templates/js/translated/part.js:599 +#: templates/js/translated/part.js:600 templates/js/translated/part.js:603 #: templates/js/translated/table_filters.js:186 msgid "Available" msgstr "" @@ -3037,12 +3065,12 @@ msgid "Download image from URL" msgstr "" #: company/templates/company/company_base.html:86 order/models.py:637 -#: order/templates/order/sales_order_base.html:116 stock/models.py:636 -#: stock/models.py:637 stock/serializers.py:809 +#: order/templates/order/sales_order_base.html:116 stock/models.py:643 +#: stock/models.py:644 stock/serializers.py:811 #: stock/templates/stock/item_base.html:401 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:393 templates/js/translated/order.js:2513 -#: templates/js/translated/stock.js:2550 +#: templates/js/translated/stock.js:2559 #: templates/js/translated/table_filters.js:427 msgid "Customer" msgstr "" @@ -3083,7 +3111,7 @@ msgstr "" #: company/templates/company/detail.html:36 #: company/templates/company/detail.html:84 -#: part/templates/part/category.html:176 +#: part/templates/part/category.html:182 msgid "Order parts" msgstr "" @@ -3231,7 +3259,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:170 #: part/templates/part/detail.html:186 #: templates/InvenTree/settings/category.html:12 -#: templates/InvenTree/settings/part.html:66 +#: templates/InvenTree/settings/part.html:68 msgid "New Parameter" msgstr "" @@ -3261,10 +3289,10 @@ msgid "Assigned Stock Items" msgstr "" #: company/templates/company/supplier_part.html:7 -#: company/templates/company/supplier_part.html:24 stock/models.py:600 +#: company/templates/company/supplier_part.html:24 stock/models.py:607 #: stock/templates/stock/item_base.html:238 #: templates/js/translated/company.js:909 templates/js/translated/order.js:935 -#: templates/js/translated/stock.js:1929 +#: templates/js/translated/stock.js:1933 msgid "Supplier Part" msgstr "" @@ -3308,13 +3336,13 @@ msgid "Supplier Part Stock" msgstr "" #: company/templates/company/supplier_part.html:168 -#: part/templates/part/detail.html:24 stock/templates/stock/location.html:176 +#: part/templates/part/detail.html:24 stock/templates/stock/location.html:181 msgid "Create new stock item" msgstr "" #: company/templates/company/supplier_part.html:169 -#: part/templates/part/detail.html:25 stock/templates/stock/location.html:177 -#: templates/js/translated/stock.js:431 +#: part/templates/part/detail.html:25 stock/templates/stock/location.html:182 +#: templates/js/translated/stock.js:435 msgid "New Stock Item" msgstr "" @@ -3330,7 +3358,7 @@ msgstr "" #: company/templates/company/supplier_part.html:212 #: company/templates/company/supplier_part.html:326 -#: part/templates/part/prices.html:276 templates/js/translated/part.js:2224 +#: part/templates/part/prices.html:276 templates/js/translated/part.js:2233 msgid "Add Price Break" msgstr "" @@ -3339,12 +3367,12 @@ msgid "No price break information found" msgstr "" #: company/templates/company/supplier_part.html:252 -#: templates/js/translated/part.js:2234 +#: templates/js/translated/part.js:2243 msgid "Delete Price Break" msgstr "" #: company/templates/company/supplier_part.html:266 -#: templates/js/translated/part.js:2248 +#: templates/js/translated/part.js:2257 msgid "Edit Price Break" msgstr "" @@ -3366,13 +3394,13 @@ msgstr "" #: company/templates/company/supplier_part_navbar.html:15 #: part/templates/part/part_sidebar.html:14 -#: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:19 +#: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:24 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:151 #: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/bom.js:555 templates/js/translated/part.js:747 -#: templates/js/translated/part.js:1295 templates/js/translated/part.js:1456 -#: templates/js/translated/stock.js:955 templates/js/translated/stock.js:1750 +#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751 +#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460 +#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754 #: templates/navbar.html:31 msgid "Stock" msgstr "" @@ -3392,14 +3420,14 @@ msgid "Pricing" msgstr "" #: company/templates/company/supplier_part_sidebar.html:5 -#: part/templates/part/category.html:197 +#: part/templates/part/category.html:203 #: part/templates/part/category_sidebar.html:17 -#: stock/templates/stock/location.html:147 -#: stock/templates/stock/location.html:161 -#: stock/templates/stock/location.html:173 +#: stock/templates/stock/location.html:152 +#: stock/templates/stock/location.html:166 +#: stock/templates/stock/location.html:178 #: stock/templates/stock/location_sidebar.html:7 #: templates/InvenTree/search.html:153 templates/js/translated/search.js:223 -#: templates/js/translated/stock.js:2427 users/models.py:40 +#: templates/js/translated/stock.js:2436 users/models.py:40 msgid "Stock Items" msgstr "" @@ -3656,8 +3684,8 @@ msgstr "" #: stock/templates/stock/item_base.html:184 #: templates/email/overdue_purchase_order.html:15 #: templates/js/translated/order.js:936 templates/js/translated/order.js:1691 -#: templates/js/translated/part.js:968 templates/js/translated/stock.js:1909 -#: templates/js/translated/stock.js:2531 +#: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913 +#: templates/js/translated/stock.js:2540 msgid "Purchase Order" msgstr "" @@ -3667,7 +3695,7 @@ msgstr "" #: order/models.py:1009 order/templates/order/order_base.html:169 #: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073 -#: templates/js/translated/part.js:1060 templates/js/translated/part.js:1087 +#: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091 #: templates/js/translated/table_filters.js:338 msgid "Received" msgstr "" @@ -3676,9 +3704,9 @@ msgstr "" msgid "Number of items received" msgstr "" -#: order/models.py:1017 part/templates/part/prices.html:181 stock/models.py:727 +#: order/models.py:1017 part/templates/part/prices.html:181 stock/models.py:734 #: stock/serializers.py:171 stock/templates/stock/item_base.html:191 -#: templates/js/translated/stock.js:1960 +#: templates/js/translated/stock.js:1964 msgid "Purchase Price" msgstr "" @@ -4066,8 +4094,8 @@ msgstr "" #: templates/js/translated/bom.js:77 templates/js/translated/build.js:431 #: templates/js/translated/build.js:583 templates/js/translated/build.js:1974 #: templates/js/translated/order.js:884 templates/js/translated/order.js:1337 -#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:621 -#: templates/js/translated/stock.js:789 +#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625 +#: templates/js/translated/stock.js:793 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "" @@ -4261,8 +4289,8 @@ msgstr "" msgid "This field is required" msgstr "" -#: part/bom.py:127 part/models.py:98 part/models.py:817 -#: part/templates/part/category.html:108 part/templates/part/part_base.html:330 +#: part/bom.py:127 part/models.py:98 part/models.py:824 +#: part/templates/part/category.html:114 part/templates/part/part_base.html:330 msgid "Default Location" msgstr "" @@ -4276,9 +4304,9 @@ msgid "Available Stock" msgstr "" #: part/bom.py:130 part/templates/part/part_base.html:207 -#: templates/js/translated/bom.js:947 templates/js/translated/part.js:586 -#: templates/js/translated/part.js:606 templates/js/translated/part.js:1298 -#: templates/js/translated/part.js:1470 templates/js/translated/part.js:1486 +#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590 +#: templates/js/translated/part.js:610 templates/js/translated/part.js:1302 +#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "" @@ -4299,516 +4327,524 @@ msgstr "" msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:115 part/models.py:2455 part/templates/part/category.html:15 +#: part/models.py:107 stock/models.py:84 +msgid "Icon" +msgstr "" + +#: part/models.py:108 stock/models.py:85 +msgid "Icon (optional)" +msgstr "" + +#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" -#: part/models.py:116 part/templates/part/category.html:128 +#: part/models.py:123 part/templates/part/category.html:134 #: templates/InvenTree/search.html:95 templates/js/translated/search.js:198 #: users/models.py:37 msgid "Part Categories" msgstr "" -#: part/models.py:337 part/templates/part/cat_link.html:3 -#: part/templates/part/category.html:17 part/templates/part/category.html:133 -#: part/templates/part/category.html:153 +#: part/models.py:344 part/templates/part/cat_link.html:3 +#: part/templates/part/category.html:23 part/templates/part/category.html:139 +#: part/templates/part/category.html:159 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82 #: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:1946 templates/js/translated/search.js:144 +#: templates/js/translated/part.js:1955 templates/js/translated/search.js:144 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "" -#: part/models.py:422 +#: part/models.py:429 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:492 part/models.py:504 +#: part/models.py:499 part/models.py:511 #, python-brace-format msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)" msgstr "" -#: part/models.py:621 +#: part/models.py:628 msgid "Next available serial numbers are" msgstr "" -#: part/models.py:625 +#: part/models.py:632 msgid "Next available serial number is" msgstr "" -#: part/models.py:630 +#: part/models.py:637 msgid "Most recent serial number is" msgstr "" -#: part/models.py:711 +#: part/models.py:718 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:738 part/models.py:2509 +#: part/models.py:745 part/models.py:2516 msgid "Part name" msgstr "" -#: part/models.py:745 +#: part/models.py:752 msgid "Is Template" msgstr "" -#: part/models.py:746 +#: part/models.py:753 msgid "Is this part a template part?" msgstr "" -#: part/models.py:756 +#: part/models.py:763 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:757 +#: part/models.py:764 msgid "Variant Of" msgstr "" -#: part/models.py:763 +#: part/models.py:770 msgid "Part description" msgstr "" -#: part/models.py:768 part/templates/part/category.html:86 +#: part/models.py:775 part/templates/part/category.html:92 #: part/templates/part/part_base.html:294 msgid "Keywords" msgstr "" -#: part/models.py:769 +#: part/models.py:776 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:776 part/models.py:2211 part/models.py:2454 +#: part/models.py:783 part/models.py:2218 part/models.py:2461 #: part/templates/part/part_base.html:257 #: templates/InvenTree/settings/settings.html:232 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1438 templates/js/translated/part.js:1664 +#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1668 msgid "Category" msgstr "" -#: part/models.py:777 +#: part/models.py:784 msgid "Part category" msgstr "" -#: part/models.py:782 part/templates/part/part_base.html:266 -#: templates/js/translated/part.js:735 templates/js/translated/part.js:1391 -#: templates/js/translated/stock.js:1722 +#: part/models.py:789 part/templates/part/part_base.html:266 +#: templates/js/translated/part.js:739 templates/js/translated/part.js:1395 +#: templates/js/translated/stock.js:1726 msgid "IPN" msgstr "" -#: part/models.py:783 +#: part/models.py:790 msgid "Internal Part Number" msgstr "" -#: part/models.py:789 +#: part/models.py:796 msgid "Part revision or version number" msgstr "" -#: part/models.py:790 part/templates/part/part_base.html:273 -#: report/models.py:171 templates/js/translated/part.js:739 +#: part/models.py:797 part/templates/part/part_base.html:273 +#: report/models.py:171 templates/js/translated/part.js:743 msgid "Revision" msgstr "" -#: part/models.py:815 +#: part/models.py:822 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:860 part/templates/part/part_base.html:339 +#: part/models.py:867 part/templates/part/part_base.html:339 msgid "Default Supplier" msgstr "" -#: part/models.py:861 +#: part/models.py:868 msgid "Default supplier part" msgstr "" -#: part/models.py:868 +#: part/models.py:875 msgid "Default Expiry" msgstr "" -#: part/models.py:869 +#: part/models.py:876 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:874 part/templates/part/part_base.html:200 +#: part/models.py:881 part/templates/part/part_base.html:200 msgid "Minimum Stock" msgstr "" -#: part/models.py:875 +#: part/models.py:882 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:882 +#: part/models.py:889 msgid "Stock keeping units for this part" msgstr "" -#: part/models.py:888 +#: part/models.py:895 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:894 +#: part/models.py:901 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:900 +#: part/models.py:907 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:905 +#: part/models.py:912 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:910 +#: part/models.py:917 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:915 +#: part/models.py:922 msgid "Is this part active?" msgstr "" -#: part/models.py:920 +#: part/models.py:927 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:922 +#: part/models.py:929 msgid "Part notes" msgstr "" -#: part/models.py:924 +#: part/models.py:931 msgid "BOM checksum" msgstr "" -#: part/models.py:924 +#: part/models.py:931 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:927 +#: part/models.py:934 msgid "BOM checked by" msgstr "" -#: part/models.py:929 +#: part/models.py:936 msgid "BOM checked date" msgstr "" -#: part/models.py:933 +#: part/models.py:940 msgid "Creation User" msgstr "" -#: part/models.py:1737 +#: part/models.py:1744 msgid "Sell multiple" msgstr "" -#: part/models.py:2258 +#: part/models.py:2265 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:2275 +#: part/models.py:2282 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:2295 templates/js/translated/part.js:1997 -#: templates/js/translated/stock.js:1336 +#: part/models.py:2302 templates/js/translated/part.js:2006 +#: templates/js/translated/stock.js:1340 msgid "Test Name" msgstr "" -#: part/models.py:2296 +#: part/models.py:2303 msgid "Enter a name for the test" msgstr "" -#: part/models.py:2301 +#: part/models.py:2308 msgid "Test Description" msgstr "" -#: part/models.py:2302 +#: part/models.py:2309 msgid "Enter description for this test" msgstr "" -#: part/models.py:2307 templates/js/translated/part.js:2006 +#: part/models.py:2314 templates/js/translated/part.js:2015 #: templates/js/translated/table_filters.js:302 msgid "Required" msgstr "" -#: part/models.py:2308 +#: part/models.py:2315 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:2313 templates/js/translated/part.js:2014 +#: part/models.py:2320 templates/js/translated/part.js:2023 msgid "Requires Value" msgstr "" -#: part/models.py:2314 +#: part/models.py:2321 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:2319 templates/js/translated/part.js:2021 +#: part/models.py:2326 templates/js/translated/part.js:2030 msgid "Requires Attachment" msgstr "" -#: part/models.py:2320 +#: part/models.py:2327 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:2328 +#: part/models.py:2335 #, python-brace-format msgid "Illegal character in template name ({c})" msgstr "" -#: part/models.py:2364 +#: part/models.py:2371 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:2372 +#: part/models.py:2379 msgid "Parameter Name" msgstr "" -#: part/models.py:2379 +#: part/models.py:2386 msgid "Parameter Units" msgstr "" -#: part/models.py:2410 +#: part/models.py:2417 msgid "Parent Part" msgstr "" -#: part/models.py:2412 part/models.py:2460 part/models.py:2461 +#: part/models.py:2419 part/models.py:2467 part/models.py:2468 #: templates/InvenTree/settings/settings.html:227 msgid "Parameter Template" msgstr "" -#: part/models.py:2414 +#: part/models.py:2421 msgid "Data" msgstr "" -#: part/models.py:2414 +#: part/models.py:2421 msgid "Parameter Value" msgstr "" -#: part/models.py:2465 templates/InvenTree/settings/settings.html:236 +#: part/models.py:2472 templates/InvenTree/settings/settings.html:236 msgid "Default Value" msgstr "" -#: part/models.py:2466 +#: part/models.py:2473 msgid "Default Parameter Value" msgstr "" -#: part/models.py:2501 +#: part/models.py:2508 msgid "Part ID or part name" msgstr "" -#: part/models.py:2504 templates/js/translated/model_renderers.js:212 +#: part/models.py:2511 templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "" -#: part/models.py:2505 +#: part/models.py:2512 msgid "Unique part ID value" msgstr "" -#: part/models.py:2508 +#: part/models.py:2515 msgid "Part Name" msgstr "" -#: part/models.py:2512 +#: part/models.py:2519 msgid "Part IPN" msgstr "" -#: part/models.py:2513 +#: part/models.py:2520 msgid "Part IPN value" msgstr "" -#: part/models.py:2516 +#: part/models.py:2523 msgid "Level" msgstr "" -#: part/models.py:2517 +#: part/models.py:2524 msgid "BOM level" msgstr "" -#: part/models.py:2586 +#: part/models.py:2593 msgid "Select parent part" msgstr "" -#: part/models.py:2594 +#: part/models.py:2601 msgid "Sub part" msgstr "" -#: part/models.py:2595 +#: part/models.py:2602 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:2601 +#: part/models.py:2608 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:2603 part/templates/part/upload_bom.html:58 +#: part/models.py:2610 part/templates/part/upload_bom.html:58 #: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999 #: templates/js/translated/table_filters.js:100 msgid "Optional" msgstr "" -#: part/models.py:2603 +#: part/models.py:2610 msgid "This BOM item is optional" msgstr "" -#: part/models.py:2606 part/templates/part/upload_bom.html:55 +#: part/models.py:2613 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:2607 +#: part/models.py:2614 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:2610 +#: part/models.py:2617 msgid "BOM item reference" msgstr "" -#: part/models.py:2613 +#: part/models.py:2620 msgid "BOM item notes" msgstr "" -#: part/models.py:2615 +#: part/models.py:2622 msgid "Checksum" msgstr "" -#: part/models.py:2615 +#: part/models.py:2622 msgid "BOM line checksum" msgstr "" -#: part/models.py:2619 part/templates/part/upload_bom.html:57 +#: part/models.py:2626 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1016 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:96 msgid "Inherited" msgstr "" -#: part/models.py:2620 +#: part/models.py:2627 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:2625 part/templates/part/upload_bom.html:56 +#: part/models.py:2632 part/templates/part/upload_bom.html:56 #: templates/js/translated/bom.js:1008 msgid "Allow Variants" msgstr "" -#: part/models.py:2626 +#: part/models.py:2633 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:2704 stock/models.py:461 +#: part/models.py:2711 stock/models.py:468 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:2713 part/models.py:2715 +#: part/models.py:2720 part/models.py:2722 msgid "Sub part must be specified" msgstr "" -#: part/models.py:2820 +#: part/models.py:2827 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:2841 +#: part/models.py:2848 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:2854 +#: part/models.py:2861 msgid "Parent BOM item" msgstr "" -#: part/models.py:2862 +#: part/models.py:2869 msgid "Substitute part" msgstr "" -#: part/models.py:2877 +#: part/models.py:2884 msgid "Part 1" msgstr "" -#: part/models.py:2881 +#: part/models.py:2888 msgid "Part 2" msgstr "" -#: part/models.py:2881 +#: part/models.py:2888 msgid "Select Related Part" msgstr "" -#: part/models.py:2899 +#: part/models.py:2906 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:2903 +#: part/models.py:2910 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:152 part/serializers.py:183 stock/serializers.py:181 +#: part/serializers.py:154 part/serializers.py:185 stock/serializers.py:181 msgid "Purchase currency of this stock item" msgstr "" -#: part/serializers.py:812 +#: part/serializers.py:814 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:820 +#: part/serializers.py:822 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:821 +#: part/serializers.py:823 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:826 +#: part/serializers.py:828 msgid "Include Inherited" msgstr "" -#: part/serializers.py:827 +#: part/serializers.py:829 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:832 +#: part/serializers.py:834 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:833 +#: part/serializers.py:835 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:838 +#: part/serializers.py:840 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:839 +#: part/serializers.py:841 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:879 +#: part/serializers.py:881 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:880 +#: part/serializers.py:882 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:910 +#: part/serializers.py:912 msgid "No part column specified" msgstr "" -#: part/serializers.py:953 +#: part/serializers.py:955 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:956 +#: part/serializers.py:958 msgid "No matching part found" msgstr "" -#: part/serializers.py:959 +#: part/serializers.py:961 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:968 +#: part/serializers.py:970 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:976 +#: part/serializers.py:978 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:997 +#: part/serializers.py:999 msgid "At least one BOM item is required" msgstr "" @@ -4848,101 +4884,101 @@ msgstr "" msgid "Delete Items" msgstr "" -#: part/templates/part/category.html:28 part/templates/part/category.html:32 +#: part/templates/part/category.html:34 part/templates/part/category.html:38 msgid "You are subscribed to notifications for this category" msgstr "" -#: part/templates/part/category.html:36 +#: part/templates/part/category.html:42 msgid "Subscribe to notifications for this category" msgstr "" -#: part/templates/part/category.html:42 +#: part/templates/part/category.html:48 msgid "Category Actions" msgstr "" -#: part/templates/part/category.html:47 +#: part/templates/part/category.html:53 msgid "Edit category" msgstr "" -#: part/templates/part/category.html:48 +#: part/templates/part/category.html:54 msgid "Edit Category" msgstr "" -#: part/templates/part/category.html:52 +#: part/templates/part/category.html:58 msgid "Delete category" msgstr "" -#: part/templates/part/category.html:53 +#: part/templates/part/category.html:59 msgid "Delete Category" msgstr "" -#: part/templates/part/category.html:61 +#: part/templates/part/category.html:67 msgid "Create new part category" msgstr "" -#: part/templates/part/category.html:62 +#: part/templates/part/category.html:68 msgid "New Category" msgstr "" -#: part/templates/part/category.html:80 part/templates/part/category.html:93 +#: part/templates/part/category.html:86 part/templates/part/category.html:99 msgid "Category Path" msgstr "" -#: part/templates/part/category.html:94 +#: part/templates/part/category.html:100 msgid "Top level part category" msgstr "" -#: part/templates/part/category.html:114 part/templates/part/category.html:222 +#: part/templates/part/category.html:120 part/templates/part/category.html:228 #: part/templates/part/category_sidebar.html:7 msgid "Subcategories" msgstr "" -#: part/templates/part/category.html:119 +#: part/templates/part/category.html:125 msgid "Parts (Including subcategories)" msgstr "" -#: part/templates/part/category.html:157 +#: part/templates/part/category.html:163 msgid "Create new part" msgstr "" -#: part/templates/part/category.html:158 templates/js/translated/bom.js:367 +#: part/templates/part/category.html:164 templates/js/translated/bom.js:367 msgid "New Part" msgstr "" -#: part/templates/part/category.html:168 part/templates/part/detail.html:363 +#: part/templates/part/category.html:174 part/templates/part/detail.html:363 #: part/templates/part/detail.html:394 msgid "Options" msgstr "" -#: part/templates/part/category.html:172 +#: part/templates/part/category.html:178 msgid "Set category" msgstr "" -#: part/templates/part/category.html:173 +#: part/templates/part/category.html:179 msgid "Set Category" msgstr "" -#: part/templates/part/category.html:180 part/templates/part/category.html:181 +#: part/templates/part/category.html:186 part/templates/part/category.html:187 msgid "Print Labels" msgstr "" -#: part/templates/part/category.html:206 +#: part/templates/part/category.html:212 msgid "Part Parameters" msgstr "" -#: part/templates/part/category.html:320 +#: part/templates/part/category.html:327 msgid "Create Part Category" msgstr "" -#: part/templates/part/category.html:340 +#: part/templates/part/category.html:347 msgid "Create Part" msgstr "" -#: part/templates/part/category.html:343 +#: part/templates/part/category.html:350 msgid "Create another part after this one" msgstr "" -#: part/templates/part/category.html:344 +#: part/templates/part/category.html:351 msgid "Part created successfully" msgstr "" @@ -4950,7 +4986,7 @@ msgstr "" msgid "Import Parts" msgstr "" -#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:375 +#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:379 msgid "Duplicate Part" msgstr "" @@ -5172,19 +5208,19 @@ msgstr "" #: part/templates/part/part_base.html:43 #: stock/templates/stock/item_base.html:41 -#: stock/templates/stock/location.html:43 +#: stock/templates/stock/location.html:48 msgid "Barcode actions" msgstr "" #: part/templates/part/part_base.html:46 #: stock/templates/stock/item_base.html:45 -#: stock/templates/stock/location.html:45 templates/qr_button.html:1 +#: stock/templates/stock/location.html:50 templates/qr_button.html:1 msgid "Show QR Code" msgstr "" #: part/templates/part/part_base.html:49 #: stock/templates/stock/item_base.html:63 -#: stock/templates/stock/location.html:47 +#: stock/templates/stock/location.html:52 msgid "Print Label" msgstr "" @@ -5194,7 +5230,7 @@ msgstr "" #: part/templates/part/part_base.html:60 #: stock/templates/stock/item_base.html:116 -#: stock/templates/stock/location.html:56 +#: stock/templates/stock/location.html:61 msgid "Stock actions" msgstr "" @@ -5255,7 +5291,7 @@ msgstr "" #: templates/js/translated/company.js:624 #: templates/js/translated/company.js:884 #: templates/js/translated/model_renderers.js:204 -#: templates/js/translated/part.js:650 templates/js/translated/part.js:727 +#: templates/js/translated/part.js:654 templates/js/translated/part.js:731 msgid "Inactive" msgstr "" @@ -5289,9 +5325,9 @@ msgstr "" msgid "Can Build" msgstr "" -#: part/templates/part/part_base.html:238 templates/js/translated/part.js:589 -#: templates/js/translated/part.js:609 templates/js/translated/part.js:1302 -#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490 +#: part/templates/part/part_base.html:238 templates/js/translated/part.js:593 +#: templates/js/translated/part.js:613 templates/js/translated/part.js:1306 +#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1494 msgid "Building" msgstr "" @@ -5464,8 +5500,8 @@ msgstr "" msgid "No sale pice history available for this part." msgstr "" -#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:612 -#: templates/js/translated/part.js:1290 templates/js/translated/part.js:1494 +#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616 +#: templates/js/translated/part.js:1294 templates/js/translated/part.js:1498 msgid "No Stock" msgstr "" @@ -5630,51 +5666,55 @@ msgstr "" msgid "Allow sending of emails for event notifications" msgstr "" -#: plugin/models.py:32 +#: plugin/models.py:33 msgid "Plugin Metadata" msgstr "" -#: plugin/models.py:33 +#: plugin/models.py:34 msgid "JSON metadata field, for use by external plugins" msgstr "" -#: plugin/models.py:79 +#: plugin/models.py:80 msgid "Plugin Configuration" msgstr "" -#: plugin/models.py:80 +#: plugin/models.py:81 msgid "Plugin Configurations" msgstr "" -#: plugin/models.py:85 +#: plugin/models.py:86 msgid "Key" msgstr "" -#: plugin/models.py:86 +#: plugin/models.py:87 msgid "Key of plugin" msgstr "" -#: plugin/models.py:94 +#: plugin/models.py:95 msgid "PluginName of the plugin" msgstr "" -#: plugin/models.py:100 +#: plugin/models.py:101 msgid "Is the plugin active" msgstr "" -#: plugin/models.py:168 +#: plugin/models.py:158 +msgid "Sample plugin" +msgstr "" + +#: plugin/models.py:186 msgid "Plugin" msgstr "" -#: plugin/models.py:231 +#: plugin/models.py:249 msgid "Method" msgstr "" -#: plugin/plugin.py:228 +#: plugin/plugin.py:251 msgid "No author found" msgstr "" -#: plugin/plugin.py:240 +#: plugin/plugin.py:263 msgid "No date found" msgstr "" @@ -5746,12 +5786,12 @@ msgstr "" msgid "No valid objects provided to template" msgstr "" -#: report/api.py:216 report/api.py:257 +#: report/api.py:216 report/api.py:252 #, python-brace-format msgid "Template file '{template}' is missing or does not exist" msgstr "" -#: report/api.py:360 +#: report/api.py:355 msgid "Test report" msgstr "" @@ -5852,12 +5892,12 @@ msgid "Stock Item Test Report" msgstr "" #: report/templates/report/inventree_test_report_base.html:79 -#: stock/models.py:641 stock/templates/stock/item_base.html:322 +#: stock/models.py:648 stock/templates/stock/item_base.html:322 #: templates/js/translated/build.js:424 templates/js/translated/build.js:576 #: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673 #: templates/js/translated/model_renderers.js:118 #: templates/js/translated/order.js:118 templates/js/translated/order.js:3297 -#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:486 +#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490 msgid "Serial Number" msgstr "" @@ -5866,19 +5906,19 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report_base.html:93 -#: stock/models.py:2076 +#: stock/models.py:2083 msgid "Test" msgstr "" #: report/templates/report/inventree_test_report_base.html:94 -#: stock/models.py:2082 +#: stock/models.py:2089 msgid "Result" msgstr "" #: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:51 +#: templates/InvenTree/settings/plugin.html:53 #: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2459 +#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468 msgid "Date" msgstr "" @@ -5896,8 +5936,8 @@ msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report_base.html:137 -#: templates/js/translated/stock.js:606 templates/js/translated/stock.js:776 -#: templates/js/translated/stock.js:2708 +#: templates/js/translated/stock.js:610 templates/js/translated/stock.js:780 +#: templates/js/translated/stock.js:2717 msgid "Serial" msgstr "" @@ -5913,241 +5953,241 @@ msgstr "" msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" -#: stock/models.py:82 stock/models.py:732 +#: stock/models.py:89 stock/models.py:739 #: stock/templates/stock/item_base.html:252 msgid "Owner" msgstr "" -#: stock/models.py:83 stock/models.py:733 +#: stock/models.py:90 stock/models.py:740 msgid "Select Owner" msgstr "" -#: stock/models.py:435 +#: stock/models.py:442 msgid "StockItem with this serial number already exists" msgstr "" -#: stock/models.py:467 stock/serializers.py:95 +#: stock/models.py:474 stock/serializers.py:95 msgid "Stock item cannot be created for virtual parts" msgstr "" -#: stock/models.py:484 +#: stock/models.py:491 #, python-brace-format msgid "Part type ('{pf}') must be {pe}" msgstr "" -#: stock/models.py:494 stock/models.py:503 +#: stock/models.py:501 stock/models.py:510 msgid "Quantity must be 1 for item with a serial number" msgstr "" -#: stock/models.py:495 +#: stock/models.py:502 msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:517 +#: stock/models.py:524 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:523 +#: stock/models.py:530 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:537 +#: stock/models.py:544 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:583 +#: stock/models.py:590 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:593 +#: stock/models.py:600 msgid "Base part" msgstr "" -#: stock/models.py:601 +#: stock/models.py:608 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:608 stock/templates/stock/location.html:17 +#: stock/models.py:615 stock/templates/stock/location.html:17 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" msgstr "" -#: stock/models.py:611 +#: stock/models.py:618 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:618 +#: stock/models.py:625 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:624 stock/templates/stock/item_base.html:361 +#: stock/models.py:631 stock/templates/stock/item_base.html:361 msgid "Installed In" msgstr "" -#: stock/models.py:627 +#: stock/models.py:634 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:643 +#: stock/models.py:650 msgid "Serial number for this item" msgstr "" -#: stock/models.py:657 +#: stock/models.py:664 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:662 +#: stock/models.py:669 msgid "Stock Quantity" msgstr "" -#: stock/models.py:671 +#: stock/models.py:678 msgid "Source Build" msgstr "" -#: stock/models.py:673 +#: stock/models.py:680 msgid "Build for this stock item" msgstr "" -#: stock/models.py:684 +#: stock/models.py:691 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:687 +#: stock/models.py:694 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:693 +#: stock/models.py:700 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:699 stock/templates/stock/item_base.html:429 -#: templates/js/translated/stock.js:1879 +#: stock/models.py:706 stock/templates/stock/item_base.html:429 +#: templates/js/translated/stock.js:1883 msgid "Expiry Date" msgstr "" -#: stock/models.py:700 +#: stock/models.py:707 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:713 +#: stock/models.py:720 msgid "Delete on deplete" msgstr "" -#: stock/models.py:713 +#: stock/models.py:720 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:720 stock/templates/stock/item.html:132 +#: stock/models.py:727 stock/templates/stock/item.html:132 msgid "Stock Item Notes" msgstr "" -#: stock/models.py:728 +#: stock/models.py:735 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:756 +#: stock/models.py:763 msgid "Converted to part" msgstr "" -#: stock/models.py:1235 +#: stock/models.py:1242 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1241 +#: stock/models.py:1248 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1247 +#: stock/models.py:1254 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({n})" msgstr "" -#: stock/models.py:1250 +#: stock/models.py:1257 msgid "Serial numbers must be a list of integers" msgstr "" -#: stock/models.py:1253 +#: stock/models.py:1260 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1260 +#: stock/models.py:1267 #, python-brace-format msgid "Serial numbers already exist: {exists}" msgstr "" -#: stock/models.py:1330 +#: stock/models.py:1337 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1333 +#: stock/models.py:1340 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1336 +#: stock/models.py:1343 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1339 +#: stock/models.py:1346 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1342 +#: stock/models.py:1349 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1345 +#: stock/models.py:1352 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1352 stock/serializers.py:959 +#: stock/models.py:1359 stock/serializers.py:961 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1356 +#: stock/models.py:1363 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1360 +#: stock/models.py:1367 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1364 +#: stock/models.py:1371 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:1533 +#: stock/models.py:1540 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:1994 +#: stock/models.py:2001 msgid "Entry notes" msgstr "" -#: stock/models.py:2052 +#: stock/models.py:2059 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2058 +#: stock/models.py:2065 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2077 +#: stock/models.py:2084 msgid "Test name" msgstr "" -#: stock/models.py:2083 +#: stock/models.py:2090 msgid "Test result" msgstr "" -#: stock/models.py:2089 +#: stock/models.py:2096 msgid "Test output value" msgstr "" -#: stock/models.py:2096 +#: stock/models.py:2103 msgid "Test result attachment" msgstr "" -#: stock/models.py:2102 +#: stock/models.py:2109 msgid "Test notes" msgstr "" @@ -6172,7 +6212,7 @@ msgstr "" msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:323 stock/serializers.py:916 stock/serializers.py:1149 +#: stock/serializers.py:323 stock/serializers.py:918 stock/serializers.py:1151 msgid "Destination stock location" msgstr "" @@ -6220,63 +6260,63 @@ msgstr "" msgid "Destination location for returned item" msgstr "" -#: stock/serializers.py:771 +#: stock/serializers.py:773 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:775 +#: stock/serializers.py:777 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:779 +#: stock/serializers.py:781 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:810 +#: stock/serializers.py:812 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:816 +#: stock/serializers.py:818 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:824 +#: stock/serializers.py:826 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:834 stock/serializers.py:1065 +#: stock/serializers.py:836 stock/serializers.py:1067 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:923 +#: stock/serializers.py:925 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:928 +#: stock/serializers.py:930 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:929 +#: stock/serializers.py:931 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:934 +#: stock/serializers.py:936 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:935 +#: stock/serializers.py:937 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:945 +#: stock/serializers.py:947 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1027 +#: stock/serializers.py:1029 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1055 +#: stock/serializers.py:1057 msgid "Stock transaction notes" msgstr "" @@ -6313,7 +6353,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2852 +#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2861 msgid "Install Stock Item" msgstr "" @@ -6321,7 +6361,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1518 +#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1522 msgid "Add Test Result" msgstr "" @@ -6352,7 +6392,7 @@ msgid "Stock adjustment actions" msgstr "" #: stock/templates/stock/item_base.html:80 -#: stock/templates/stock/location.html:63 templates/stock_table.html:47 +#: stock/templates/stock/location.html:68 templates/stock_table.html:47 msgid "Count stock" msgstr "" @@ -6369,7 +6409,7 @@ msgid "Serialize stock" msgstr "" #: stock/templates/stock/item_base.html:93 -#: stock/templates/stock/location.html:69 templates/stock_table.html:48 +#: stock/templates/stock/location.html:74 templates/stock_table.html:48 msgid "Transfer stock" msgstr "" @@ -6430,7 +6470,7 @@ msgid "You are not in the list of owners of this item. This stock item cannot be msgstr "" #: stock/templates/stock/item_base.html:257 -#: stock/templates/stock/location.html:127 +#: stock/templates/stock/location.html:132 msgid "Read only" msgstr "" @@ -6508,7 +6548,7 @@ msgid "Stale" msgstr "" #: stock/templates/stock/item_base.html:442 -#: templates/js/translated/company.js:985 templates/js/translated/stock.js:1895 +#: templates/js/translated/company.js:985 templates/js/translated/stock.js:1899 msgid "Last Updated" msgstr "" @@ -6552,58 +6592,58 @@ msgstr "" msgid "Select quantity to serialize, and unique serial numbers." msgstr "" -#: stock/templates/stock/location.html:33 +#: stock/templates/stock/location.html:38 msgid "Locate stock location" msgstr "" -#: stock/templates/stock/location.html:49 +#: stock/templates/stock/location.html:54 msgid "Check-in Items" msgstr "" -#: stock/templates/stock/location.html:77 +#: stock/templates/stock/location.html:82 msgid "Location actions" msgstr "" -#: stock/templates/stock/location.html:79 +#: stock/templates/stock/location.html:84 msgid "Edit location" msgstr "" -#: stock/templates/stock/location.html:81 +#: stock/templates/stock/location.html:86 msgid "Delete location" msgstr "" -#: stock/templates/stock/location.html:90 +#: stock/templates/stock/location.html:95 msgid "Create new stock location" msgstr "" -#: stock/templates/stock/location.html:91 +#: stock/templates/stock/location.html:96 msgid "New Location" msgstr "" -#: stock/templates/stock/location.html:109 -#: stock/templates/stock/location.html:115 +#: stock/templates/stock/location.html:114 +#: stock/templates/stock/location.html:120 msgid "Location Path" msgstr "" -#: stock/templates/stock/location.html:116 +#: stock/templates/stock/location.html:121 msgid "Top level stock location" msgstr "" -#: stock/templates/stock/location.html:122 +#: stock/templates/stock/location.html:127 msgid "Location Owner" msgstr "" -#: stock/templates/stock/location.html:126 +#: stock/templates/stock/location.html:131 msgid "You are not in the list of owners of this location. This stock location cannot be edited." msgstr "" -#: stock/templates/stock/location.html:142 -#: stock/templates/stock/location.html:189 +#: stock/templates/stock/location.html:147 +#: stock/templates/stock/location.html:194 #: stock/templates/stock/location_sidebar.html:5 msgid "Sublocations" msgstr "" -#: stock/templates/stock/location.html:156 templates/InvenTree/search.html:165 +#: stock/templates/stock/location.html:161 templates/InvenTree/search.html:165 #: templates/js/translated/search.js:238 users/models.py:39 msgid "Stock Locations" msgstr "" @@ -6875,15 +6915,15 @@ msgstr "" msgid "Part Settings" msgstr "" -#: templates/InvenTree/settings/part.html:44 +#: templates/InvenTree/settings/part.html:46 msgid "Part Import" msgstr "" -#: templates/InvenTree/settings/part.html:48 +#: templates/InvenTree/settings/part.html:50 msgid "Import Part" msgstr "" -#: templates/InvenTree/settings/part.html:62 +#: templates/InvenTree/settings/part.html:64 msgid "Part Parameter Templates" msgstr "" @@ -6895,47 +6935,47 @@ msgstr "" msgid "Changing the settings below require you to immediately restart the server. Do not change this while under active usage." msgstr "" -#: templates/InvenTree/settings/plugin.html:34 +#: templates/InvenTree/settings/plugin.html:36 msgid "Plugins" msgstr "" -#: templates/InvenTree/settings/plugin.html:39 +#: templates/InvenTree/settings/plugin.html:41 #: templates/js/translated/plugin.js:16 msgid "Install Plugin" msgstr "" -#: templates/InvenTree/settings/plugin.html:48 templates/navbar.html:137 +#: templates/InvenTree/settings/plugin.html:50 templates/navbar.html:137 #: users/models.py:36 msgid "Admin" msgstr "" -#: templates/InvenTree/settings/plugin.html:50 +#: templates/InvenTree/settings/plugin.html:52 #: templates/InvenTree/settings/plugin_settings.html:28 msgid "Author" msgstr "" -#: templates/InvenTree/settings/plugin.html:52 +#: templates/InvenTree/settings/plugin.html:54 #: templates/InvenTree/settings/plugin_settings.html:43 msgid "Version" msgstr "" -#: templates/InvenTree/settings/plugin.html:74 +#: templates/InvenTree/settings/plugin.html:76 msgid "Sample" msgstr "" -#: templates/InvenTree/settings/plugin.html:99 +#: templates/InvenTree/settings/plugin.html:101 msgid "Inactive plugins" msgstr "" -#: templates/InvenTree/settings/plugin.html:122 +#: templates/InvenTree/settings/plugin.html:124 msgid "Plugin Error Stack" msgstr "" -#: templates/InvenTree/settings/plugin.html:131 +#: templates/InvenTree/settings/plugin.html:133 msgid "Stage" msgstr "" -#: templates/InvenTree/settings/plugin.html:133 +#: templates/InvenTree/settings/plugin.html:135 #: templates/js/translated/notification.js:75 msgid "Message" msgstr "" @@ -6999,11 +7039,11 @@ msgstr "" msgid "Commit Message" msgstr "" -#: templates/InvenTree/settings/plugin_settings.html:117 +#: templates/InvenTree/settings/plugin_settings.html:120 msgid "Sign Status" msgstr "" -#: templates/InvenTree/settings/plugin_settings.html:122 +#: templates/InvenTree/settings/plugin_settings.html:125 msgid "Sign Key" msgstr "" @@ -7828,7 +7868,7 @@ msgstr "" msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:456 templates/js/translated/stock.js:1050 +#: templates/js/translated/barcode.js:456 templates/js/translated/stock.js:1054 msgid "Remove stock item" msgstr "" @@ -8001,7 +8041,7 @@ msgid "Includes variant and substitute stock" msgstr "" #: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822 -#: templates/js/translated/part.js:759 +#: templates/js/translated/part.js:763 msgid "Includes variant stock" msgstr "" @@ -8098,12 +8138,12 @@ msgid "Complete Build Order" msgstr "" #: templates/js/translated/build.js:263 templates/js/translated/stock.js:92 -#: templates/js/translated/stock.js:210 +#: templates/js/translated/stock.js:214 msgid "Next available serial number" msgstr "" #: templates/js/translated/build.js:265 templates/js/translated/stock.js:94 -#: templates/js/translated/stock.js:212 +#: templates/js/translated/stock.js:216 msgid "Latest serial number" msgstr "" @@ -8316,9 +8356,9 @@ msgstr "" msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1383 -#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1682 -#: templates/js/translated/stock.js:2382 +#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387 +#: templates/js/translated/part.js:1899 templates/js/translated/stock.js:1686 +#: templates/js/translated/stock.js:2386 msgid "Select" msgstr "" @@ -8330,7 +8370,7 @@ msgstr "" msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2638 +#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647 msgid "No user information" msgstr "" @@ -8403,34 +8443,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:616 -#: templates/js/translated/company.js:876 templates/js/translated/part.js:634 -#: templates/js/translated/part.js:719 +#: templates/js/translated/company.js:876 templates/js/translated/part.js:638 +#: templates/js/translated/part.js:723 msgid "Template part" msgstr "" #: templates/js/translated/company.js:620 -#: templates/js/translated/company.js:880 templates/js/translated/part.js:638 -#: templates/js/translated/part.js:723 +#: templates/js/translated/company.js:880 templates/js/translated/part.js:642 +#: templates/js/translated/part.js:727 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:748 templates/js/translated/part.js:826 +#: templates/js/translated/company.js:748 templates/js/translated/part.js:830 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:785 templates/js/translated/part.js:868 +#: templates/js/translated/company.js:785 templates/js/translated/part.js:872 msgid "Edit parameter" msgstr "" -#: templates/js/translated/company.js:786 templates/js/translated/part.js:869 +#: templates/js/translated/company.js:786 templates/js/translated/part.js:873 msgid "Delete parameter" msgstr "" -#: templates/js/translated/company.js:805 templates/js/translated/part.js:886 +#: templates/js/translated/company.js:805 templates/js/translated/part.js:890 msgid "Edit Parameter" msgstr "" -#: templates/js/translated/company.js:816 templates/js/translated/part.js:898 +#: templates/js/translated/company.js:816 templates/js/translated/part.js:902 msgid "Delete Parameter" msgstr "" @@ -8555,7 +8595,7 @@ msgid "Labels sent to printer" msgstr "" #: templates/js/translated/label.js:60 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1078 msgid "Select Stock Items" msgstr "" @@ -8865,7 +8905,7 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2140 +#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144 msgid "Stock Status" msgstr "" @@ -8889,7 +8929,7 @@ msgstr "" msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:1672 templates/js/translated/part.js:939 +#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943 msgid "No purchase orders found" msgstr "" @@ -8924,7 +8964,7 @@ msgstr "" #: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203 #: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050 -#: templates/js/translated/part.js:2126 templates/js/translated/part.js:2479 +#: templates/js/translated/part.js:2135 templates/js/translated/part.js:2488 msgid "Unit Price" msgstr "" @@ -8934,11 +8974,11 @@ msgid "Total Price" msgstr "" #: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600 -#: templates/js/translated/part.js:1046 +#: templates/js/translated/part.js:1050 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1092 +#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096 msgid "Receive line item" msgstr "" @@ -9059,7 +9099,7 @@ msgid "Delete Stock Allocation" msgstr "" #: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398 -#: templates/js/translated/stock.js:1598 +#: templates/js/translated/stock.js:1602 msgid "Shipped to customer" msgstr "" @@ -9183,241 +9223,245 @@ msgstr "" msgid "Parent part category" msgstr "" -#: templates/js/translated/part.js:318 +#: templates/js/translated/part.js:306 templates/js/translated/stock.js:118 +msgid "Icon (optional) - Explore all available icons on" +msgstr "" + +#: templates/js/translated/part.js:322 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:331 +#: templates/js/translated/part.js:335 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:333 +#: templates/js/translated/part.js:337 msgid "Any child categories will be moved to the parent of this category" msgstr "" -#: templates/js/translated/part.js:334 +#: templates/js/translated/part.js:338 msgid "Any parts in this category will be moved to the parent of this category" msgstr "" -#: templates/js/translated/part.js:339 +#: templates/js/translated/part.js:343 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:365 +#: templates/js/translated/part.js:369 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:367 +#: templates/js/translated/part.js:371 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:378 +#: templates/js/translated/part.js:382 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:430 +#: templates/js/translated/part.js:434 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:431 +#: templates/js/translated/part.js:435 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:445 +#: templates/js/translated/part.js:449 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:447 +#: templates/js/translated/part.js:451 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:448 +#: templates/js/translated/part.js:452 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:449 +#: templates/js/translated/part.js:453 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:456 +#: templates/js/translated/part.js:460 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:492 +#: templates/js/translated/part.js:496 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:494 +#: templates/js/translated/part.js:498 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:499 +#: templates/js/translated/part.js:503 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:501 +#: templates/js/translated/part.js:505 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:518 +#: templates/js/translated/part.js:522 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:528 +#: templates/js/translated/part.js:532 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:531 +#: templates/js/translated/part.js:535 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:556 +#: templates/js/translated/part.js:560 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:582 templates/js/translated/part.js:1466 +#: templates/js/translated/part.js:586 templates/js/translated/part.js:1470 #: templates/js/translated/table_filters.js:468 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:592 templates/js/translated/part.js:1478 +#: templates/js/translated/part.js:596 templates/js/translated/part.js:1482 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:626 templates/js/translated/part.js:711 +#: templates/js/translated/part.js:630 templates/js/translated/part.js:715 msgid "Trackable part" msgstr "" -#: templates/js/translated/part.js:630 templates/js/translated/part.js:715 +#: templates/js/translated/part.js:634 templates/js/translated/part.js:719 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:642 +#: templates/js/translated/part.js:646 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:646 +#: templates/js/translated/part.js:650 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:774 +#: templates/js/translated/part.js:778 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1162 +#: templates/js/translated/part.js:1166 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1186 +#: templates/js/translated/part.js:1190 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:1253 templates/js/translated/part.js:1549 +#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1553 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:1292 +#: templates/js/translated/part.js:1296 msgid "Not available" msgstr "" -#: templates/js/translated/part.js:1443 +#: templates/js/translated/part.js:1447 msgid "No category" msgstr "" -#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816 -#: templates/js/translated/stock.js:2343 +#: templates/js/translated/part.js:1577 templates/js/translated/part.js:1820 +#: templates/js/translated/stock.js:2347 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:1589 +#: templates/js/translated/part.js:1593 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:1655 +#: templates/js/translated/part.js:1659 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:1660 +#: templates/js/translated/part.js:1664 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:1665 +#: templates/js/translated/part.js:1669 msgid "Select Part Category" msgstr "" -#: templates/js/translated/part.js:1678 +#: templates/js/translated/part.js:1682 msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2362 +#: templates/js/translated/part.js:1839 templates/js/translated/stock.js:2366 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:1914 +#: templates/js/translated/part.js:1918 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:1925 +#: templates/js/translated/part.js:1934 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:1983 +#: templates/js/translated/part.js:1992 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2034 templates/js/translated/stock.js:1295 +#: templates/js/translated/part.js:2043 templates/js/translated/stock.js:1299 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:2035 templates/js/translated/stock.js:1296 -#: templates/js/translated/stock.js:1556 +#: templates/js/translated/part.js:2044 templates/js/translated/stock.js:1300 +#: templates/js/translated/stock.js:1560 msgid "Delete test result" msgstr "" -#: templates/js/translated/part.js:2041 +#: templates/js/translated/part.js:2050 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2063 +#: templates/js/translated/part.js:2072 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2077 +#: templates/js/translated/part.js:2086 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2102 +#: templates/js/translated/part.js:2111 #, python-brace-format msgid "No ${human_name} information found" msgstr "" -#: templates/js/translated/part.js:2159 +#: templates/js/translated/part.js:2168 #, python-brace-format msgid "Edit ${human_name}" msgstr "" -#: templates/js/translated/part.js:2160 +#: templates/js/translated/part.js:2169 #, python-brace-format msgid "Delete ${human_name}" msgstr "" -#: templates/js/translated/part.js:2274 +#: templates/js/translated/part.js:2283 msgid "Current Stock" msgstr "" -#: templates/js/translated/part.js:2307 +#: templates/js/translated/part.js:2316 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2333 +#: templates/js/translated/part.js:2342 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2403 +#: templates/js/translated/part.js:2412 msgid "Single Price" msgstr "" -#: templates/js/translated/part.js:2422 +#: templates/js/translated/part.js:2431 msgid "Single Price Difference" msgstr "" @@ -9511,376 +9555,376 @@ msgstr "" msgid "Parent stock location" msgstr "" -#: templates/js/translated/stock.js:140 +#: templates/js/translated/stock.js:144 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:155 +#: templates/js/translated/stock.js:159 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:169 +#: templates/js/translated/stock.js:173 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:171 +#: templates/js/translated/stock.js:175 msgid "Any child locations will be moved to the parent of this location" msgstr "" -#: templates/js/translated/stock.js:172 +#: templates/js/translated/stock.js:176 msgid "Any stock items in this location will be moved to the parent of this location" msgstr "" -#: templates/js/translated/stock.js:178 +#: templates/js/translated/stock.js:182 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:223 +#: templates/js/translated/stock.js:227 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:262 +#: templates/js/translated/stock.js:266 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:268 +#: templates/js/translated/stock.js:272 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:333 +#: templates/js/translated/stock.js:337 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:353 +#: templates/js/translated/stock.js:357 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:369 +#: templates/js/translated/stock.js:373 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:374 +#: templates/js/translated/stock.js:378 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:395 +#: templates/js/translated/stock.js:399 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:445 +#: templates/js/translated/stock.js:449 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:458 +#: templates/js/translated/stock.js:462 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:483 +#: templates/js/translated/stock.js:487 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:487 templates/js/translated/stock.js:488 +#: templates/js/translated/stock.js:491 templates/js/translated/stock.js:492 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:504 +#: templates/js/translated/stock.js:508 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:524 +#: templates/js/translated/stock.js:528 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:533 +#: templates/js/translated/stock.js:537 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:656 +#: templates/js/translated/stock.js:660 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:657 +#: templates/js/translated/stock.js:661 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:734 +#: templates/js/translated/stock.js:738 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:735 +#: templates/js/translated/stock.js:739 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:737 +#: templates/js/translated/stock.js:741 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:738 +#: templates/js/translated/stock.js:742 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:824 +#: templates/js/translated/stock.js:828 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:825 +#: templates/js/translated/stock.js:829 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:920 +#: templates/js/translated/stock.js:924 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:921 +#: templates/js/translated/stock.js:925 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:927 +#: templates/js/translated/stock.js:931 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:928 +#: templates/js/translated/stock.js:932 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:932 +#: templates/js/translated/stock.js:936 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:933 +#: templates/js/translated/stock.js:937 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:937 +#: templates/js/translated/stock.js:941 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:938 users/models.py:216 +#: templates/js/translated/stock.js:942 users/models.py:216 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:942 +#: templates/js/translated/stock.js:946 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1035 +#: templates/js/translated/stock.js:1039 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1035 +#: templates/js/translated/stock.js:1039 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1075 +#: templates/js/translated/stock.js:1079 msgid "You must select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1098 +#: templates/js/translated/stock.js:1102 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1234 +#: templates/js/translated/stock.js:1238 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1236 +#: templates/js/translated/stock.js:1240 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1241 +#: templates/js/translated/stock.js:1245 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1288 +#: templates/js/translated/stock.js:1292 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1291 +#: templates/js/translated/stock.js:1295 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1317 +#: templates/js/translated/stock.js:1321 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1374 +#: templates/js/translated/stock.js:1378 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1539 +#: templates/js/translated/stock.js:1543 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1561 +#: templates/js/translated/stock.js:1565 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1590 +#: templates/js/translated/stock.js:1594 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1594 +#: templates/js/translated/stock.js:1598 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1602 +#: templates/js/translated/stock.js:1606 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1608 +#: templates/js/translated/stock.js:1612 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1775 +#: templates/js/translated/stock.js:1779 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:1780 +#: templates/js/translated/stock.js:1784 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:1783 +#: templates/js/translated/stock.js:1787 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:1786 +#: templates/js/translated/stock.js:1790 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:1788 +#: templates/js/translated/stock.js:1792 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:1790 +#: templates/js/translated/stock.js:1794 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:1793 +#: templates/js/translated/stock.js:1797 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:1797 +#: templates/js/translated/stock.js:1801 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:1799 +#: templates/js/translated/stock.js:1803 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:1806 +#: templates/js/translated/stock.js:1810 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:1808 +#: templates/js/translated/stock.js:1812 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:1810 +#: templates/js/translated/stock.js:1814 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:1814 +#: templates/js/translated/stock.js:1818 #: templates/js/translated/table_filters.js:196 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:1865 +#: templates/js/translated/stock.js:1869 msgid "Stocktake" msgstr "" -#: templates/js/translated/stock.js:1944 +#: templates/js/translated/stock.js:1948 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:1982 +#: templates/js/translated/stock.js:1986 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2155 +#: templates/js/translated/stock.js:2159 msgid "Set Stock Status" msgstr "" -#: templates/js/translated/stock.js:2169 +#: templates/js/translated/stock.js:2173 msgid "Select Status Code" msgstr "" -#: templates/js/translated/stock.js:2170 +#: templates/js/translated/stock.js:2174 msgid "Status code must be selected" msgstr "" -#: templates/js/translated/stock.js:2400 +#: templates/js/translated/stock.js:2404 msgid "Load Subloactions" msgstr "" -#: templates/js/translated/stock.js:2484 +#: templates/js/translated/stock.js:2493 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2500 +#: templates/js/translated/stock.js:2509 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2522 +#: templates/js/translated/stock.js:2531 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2541 +#: templates/js/translated/stock.js:2550 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2560 +#: templates/js/translated/stock.js:2569 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2578 +#: templates/js/translated/stock.js:2587 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:2601 +#: templates/js/translated/stock.js:2610 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:2609 +#: templates/js/translated/stock.js:2618 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:2685 +#: templates/js/translated/stock.js:2694 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:2736 templates/js/translated/stock.js:2772 +#: templates/js/translated/stock.js:2745 templates/js/translated/stock.js:2781 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:2785 +#: templates/js/translated/stock.js:2794 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:2806 +#: templates/js/translated/stock.js:2815 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:2807 +#: templates/js/translated/stock.js:2816 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:2809 +#: templates/js/translated/stock.js:2818 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:2810 +#: templates/js/translated/stock.js:2819 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:2811 +#: templates/js/translated/stock.js:2820 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:2812 +#: templates/js/translated/stock.js:2821 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:2825 +#: templates/js/translated/stock.js:2834 msgid "Select part to install" msgstr "" diff --git a/InvenTree/locale/hu/LC_MESSAGES/django.po b/InvenTree/locale/hu/LC_MESSAGES/django.po index 2f53b977cb..5b359bb46c 100644 --- a/InvenTree/locale/hu/LC_MESSAGES/django.po +++ b/InvenTree/locale/hu/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-11 02:47+0000\n" -"PO-Revision-Date: 2022-08-11 13:49\n" +"POT-Creation-Date: 2022-08-16 11:53+0000\n" +"PO-Revision-Date: 2022-08-16 21:36\n" "Last-Translator: \n" "Language-Team: Hungarian\n" "Language: hu_HU\n" @@ -36,15 +36,15 @@ msgstr "Dátum megadása" #: order/templates/order/so_sidebar.html:17 #: part/templates/part/part_sidebar.html:59 #: report/templates/report/inventree_build_order_base.html:172 -#: stock/models.py:1993 stock/models.py:2101 stock/serializers.py:329 -#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:823 -#: stock/serializers.py:922 stock/serializers.py:1054 +#: stock/models.py:2000 stock/models.py:2108 stock/serializers.py:329 +#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825 +#: stock/serializers.py:924 stock/serializers.py:1056 #: stock/templates/stock/stock_sidebar.html:25 #: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101 #: templates/js/translated/company.js:964 templates/js/translated/order.js:2104 #: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753 #: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102 -#: templates/js/translated/stock.js:1370 templates/js/translated/stock.js:1976 +#: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980 msgid "Notes" msgstr "Megjegyzések" @@ -163,6 +163,10 @@ msgstr "Nem található sorozatszám" msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "A megadott számú egyedi sorozatszám ({s}) meg kell egyezzen a darabszámmal ({q})" +#: InvenTree/mixins.py:71 +msgid "Remove HTML tags from this value" +msgstr "" + #: InvenTree/models.py:236 msgid "Improperly formatted pattern" msgstr "Helytelenül formázott minta" @@ -195,7 +199,7 @@ msgstr "Hiányzó fájl" msgid "Missing external link" msgstr "Hiányzó külső link" -#: InvenTree/models.py:395 stock/models.py:2095 +#: InvenTree/models.py:395 stock/models.py:2102 #: templates/js/translated/attachment.js:103 #: templates/js/translated/attachment.js:241 msgid "Attachment" @@ -207,16 +211,16 @@ msgstr "Válaszd ki a mellekelni kívánt fájlt" #: InvenTree/models.py:402 company/models.py:124 company/models.py:276 #: company/models.py:510 order/models.py:84 order/models.py:1245 -#: part/models.py:795 +#: part/models.py:802 #: report/templates/report/inventree_build_order_base.html:164 #: templates/js/translated/company.js:656 #: templates/js/translated/company.js:948 templates/js/translated/order.js:2742 -#: templates/js/translated/part.js:1510 +#: templates/js/translated/part.js:1514 msgid "Link" msgstr "Link" -#: InvenTree/models.py:403 build/models.py:296 part/models.py:796 -#: stock/models.py:651 +#: InvenTree/models.py:403 build/models.py:296 part/models.py:803 +#: stock/models.py:658 msgid "Link to external URL" msgstr "Link külső URL-re" @@ -229,12 +233,12 @@ msgstr "Megjegyzés" msgid "File comment" msgstr "Leírás, bővebb infó" -#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1646 -#: common/models.py:1647 common/models.py:1870 common/models.py:1871 -#: common/models.py:2133 common/models.py:2134 part/models.py:2193 -#: part/models.py:2213 plugin/models.py:238 plugin/models.py:239 +#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665 +#: common/models.py:1666 common/models.py:1889 common/models.py:1890 +#: common/models.py:2152 common/models.py:2153 part/models.py:2200 +#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2632 +#: templates/js/translated/stock.js:2641 msgid "User" msgstr "Felhasználó" @@ -271,19 +275,19 @@ msgstr "Hiba a fájl átnevezésekor" msgid "Invalid choice" msgstr "Érvénytelen választás" -#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1856 -#: company/models.py:358 label/models.py:101 part/models.py:739 -#: part/models.py:2371 plugin/models.py:93 report/models.py:152 +#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875 +#: company/models.py:358 label/models.py:101 part/models.py:746 +#: part/models.py:2378 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 -#: templates/InvenTree/settings/plugin.html:49 -#: templates/InvenTree/settings/plugin.html:132 +#: templates/InvenTree/settings/plugin.html:51 +#: templates/InvenTree/settings/plugin.html:134 #: templates/InvenTree/settings/plugin_settings.html:23 #: templates/InvenTree/settings/settings.html:347 #: templates/js/translated/company.js:545 #: templates/js/translated/company.js:758 #: templates/js/translated/notification.js:71 -#: templates/js/translated/part.js:684 templates/js/translated/part.js:836 -#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2388 +#: templates/js/translated/part.js:688 templates/js/translated/part.js:840 +#: templates/js/translated/part.js:1906 templates/js/translated/stock.js:2392 msgid "Name" msgstr "Név" @@ -292,21 +296,21 @@ msgstr "Név" #: company/models.py:516 company/templates/company/company_base.html:71 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:87 label/models.py:108 -#: order/models.py:82 part/models.py:762 part/templates/part/category.html:74 +#: order/models.py:82 part/models.py:769 part/templates/part/category.html:80 #: part/templates/part/part_base.html:167 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 -#: stock/templates/stock/location.html:103 +#: stock/templates/stock/location.html:108 #: templates/InvenTree/settings/plugin_settings.html:33 #: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848 #: templates/js/translated/build.js:2471 templates/js/translated/company.js:409 #: templates/js/translated/company.js:667 #: templates/js/translated/company.js:959 templates/js/translated/order.js:1720 #: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531 -#: templates/js/translated/part.js:743 templates/js/translated/part.js:1149 -#: templates/js/translated/part.js:1424 templates/js/translated/part.js:1933 -#: templates/js/translated/part.js:2002 templates/js/translated/stock.js:1739 -#: templates/js/translated/stock.js:2415 templates/js/translated/stock.js:2469 +#: templates/js/translated/part.js:747 templates/js/translated/part.js:1153 +#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1942 +#: templates/js/translated/part.js:2011 templates/js/translated/stock.js:1743 +#: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478 msgid "Description" msgstr "Leírás" @@ -319,7 +323,7 @@ msgid "parent" msgstr "szülő" #: InvenTree/models.py:560 InvenTree/models.py:561 -#: templates/js/translated/part.js:1939 templates/js/translated/stock.js:2421 +#: templates/js/translated/part.js:1948 templates/js/translated/stock.js:2430 msgid "Path" msgstr "Elérési út" @@ -331,7 +335,7 @@ msgstr "Kiszolgálóhiba" msgid "An error has been logged by the server." msgstr "A kiszolgáló egy hibaüzenetet rögzített." -#: InvenTree/serializers.py:55 part/models.py:2692 +#: InvenTree/serializers.py:55 part/models.py:2699 msgid "Must be a valid number" msgstr "Érvényes számnak kell lennie" @@ -398,99 +402,99 @@ msgstr "A távoli kép URL-je" msgid "Downloading images from remote URL is not enabled" msgstr "Képek letöltése távoli URL-ről nem engedélyezett" -#: InvenTree/settings.py:609 +#: InvenTree/settings.py:607 msgid "Czech" msgstr "Cseh" -#: InvenTree/settings.py:610 +#: InvenTree/settings.py:608 msgid "German" msgstr "Német" -#: InvenTree/settings.py:611 +#: InvenTree/settings.py:609 msgid "Greek" msgstr "Görög" -#: InvenTree/settings.py:612 +#: InvenTree/settings.py:610 msgid "English" msgstr "Angol" -#: InvenTree/settings.py:613 +#: InvenTree/settings.py:611 msgid "Spanish" msgstr "Spanyol" -#: InvenTree/settings.py:614 +#: InvenTree/settings.py:612 msgid "Spanish (Mexican)" msgstr "Spanyol (Mexikói)" -#: InvenTree/settings.py:615 +#: InvenTree/settings.py:613 msgid "Farsi / Persian" msgstr "Fárszi/Perzsa" -#: InvenTree/settings.py:616 +#: InvenTree/settings.py:614 msgid "French" msgstr "Francia" -#: InvenTree/settings.py:617 +#: InvenTree/settings.py:615 msgid "Hebrew" msgstr "Héber" -#: InvenTree/settings.py:618 +#: InvenTree/settings.py:616 msgid "Hungarian" msgstr "Magyar" -#: InvenTree/settings.py:619 +#: InvenTree/settings.py:617 msgid "Italian" msgstr "Olasz" -#: InvenTree/settings.py:620 +#: InvenTree/settings.py:618 msgid "Japanese" msgstr "Japán" -#: InvenTree/settings.py:621 +#: InvenTree/settings.py:619 msgid "Korean" msgstr "Koreai" -#: InvenTree/settings.py:622 +#: InvenTree/settings.py:620 msgid "Dutch" msgstr "Holland" -#: InvenTree/settings.py:623 +#: InvenTree/settings.py:621 msgid "Norwegian" msgstr "Norvég" -#: InvenTree/settings.py:624 +#: InvenTree/settings.py:622 msgid "Polish" msgstr "Lengyel" -#: InvenTree/settings.py:625 +#: InvenTree/settings.py:623 msgid "Portuguese" msgstr "Portugál" -#: InvenTree/settings.py:626 +#: InvenTree/settings.py:624 msgid "Portuguese (Brazilian)" msgstr "Portugál (Brazíliai)" -#: InvenTree/settings.py:627 +#: InvenTree/settings.py:625 msgid "Russian" msgstr "Orosz" -#: InvenTree/settings.py:628 +#: InvenTree/settings.py:626 msgid "Swedish" msgstr "Svéd" -#: InvenTree/settings.py:629 +#: InvenTree/settings.py:627 msgid "Thai" msgstr "Tháj" -#: InvenTree/settings.py:630 +#: InvenTree/settings.py:628 msgid "Turkish" msgstr "Török" -#: InvenTree/settings.py:631 +#: InvenTree/settings.py:629 msgid "Vietnamese" msgstr "Vietnámi" -#: InvenTree/settings.py:632 +#: InvenTree/settings.py:630 msgid "Chinese" msgstr "Kínai" @@ -621,7 +625,7 @@ msgstr "Szülő tételből szétválasztva" msgid "Split child item" msgstr "Szétválasztott gyermek tétel" -#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2080 +#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2084 msgid "Merged stock items" msgstr "Összevont készlet tétel" @@ -743,7 +747,7 @@ msgid "Build Order Reference" msgstr "Gyártási utasítás azonosító" #: build/models.py:166 order/models.py:240 order/models.py:623 -#: order/models.py:904 part/models.py:2610 +#: order/models.py:904 part/models.py:2617 #: part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 @@ -770,10 +774,10 @@ msgstr "Gyártás, amihez ez a gyártás hozzá van rendelve" #: build/models.py:191 build/templates/build/build_base.html:77 #: build/templates/build/detail.html:29 company/models.py:670 #: order/models.py:1001 order/models.py:1112 order/models.py:1113 -#: part/models.py:336 part/models.py:2139 part/models.py:2154 -#: part/models.py:2173 part/models.py:2191 part/models.py:2290 -#: part/models.py:2410 part/models.py:2500 part/models.py:2585 -#: part/models.py:2861 part/serializers.py:811 +#: part/models.py:343 part/models.py:2146 part/models.py:2161 +#: part/models.py:2180 part/models.py:2198 part/models.py:2297 +#: part/models.py:2417 part/models.py:2507 part/models.py:2592 +#: part/models.py:2868 part/serializers.py:813 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -796,11 +800,11 @@ msgstr "Gyártás, amihez ez a gyártás hozzá van rendelve" #: templates/js/translated/order.js:934 templates/js/translated/order.js:1387 #: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885 #: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507 -#: templates/js/translated/part.js:1134 templates/js/translated/part.js:1206 -#: templates/js/translated/part.js:1402 templates/js/translated/stock.js:582 -#: templates/js/translated/stock.js:747 templates/js/translated/stock.js:954 -#: templates/js/translated/stock.js:1696 templates/js/translated/stock.js:2495 -#: templates/js/translated/stock.js:2690 templates/js/translated/stock.js:2824 +#: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210 +#: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586 +#: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958 +#: templates/js/translated/stock.js:1700 templates/js/translated/stock.js:2504 +#: templates/js/translated/stock.js:2699 templates/js/translated/stock.js:2833 msgid "Part" msgstr "Alkatrész" @@ -858,7 +862,7 @@ msgid "Build status code" msgstr "Gyártás státusz kód" #: build/models.py:251 build/serializers.py:225 order/serializers.py:447 -#: stock/models.py:655 templates/js/translated/order.js:1247 +#: stock/models.py:662 templates/js/translated/order.js:1247 msgid "Batch Code" msgstr "Batch kód" @@ -866,7 +870,7 @@ msgstr "Batch kód" msgid "Batch code for this build output" msgstr "Batch kód a gyártás kimenetéhez" -#: build/models.py:258 order/models.py:86 part/models.py:931 +#: build/models.py:258 order/models.py:86 part/models.py:938 #: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544 msgid "Creation Date" msgstr "Létrehozás dátuma" @@ -899,7 +903,7 @@ msgstr "Felhasználó aki ezt a gyártási utasítást kiállította" #: build/models.py:289 build/templates/build/build_base.html:190 #: build/templates/build/detail.html:115 order/models.py:100 #: order/templates/order/order_base.html:176 -#: order/templates/order/sales_order_base.html:183 part/models.py:935 +#: order/templates/order/sales_order_base.html:183 part/models.py:942 #: report/templates/report/inventree_build_order_base.html:158 #: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754 msgid "Responsible" @@ -912,7 +916,7 @@ msgstr "Felhasználó aki felelős ezért a gyártási utasításért" #: build/models.py:295 build/templates/build/detail.html:101 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:153 -#: part/templates/part/part_base.html:346 stock/models.py:649 +#: part/templates/part/part_base.html:346 stock/models.py:656 #: stock/templates/stock/item_base.html:205 msgid "External Link" msgstr "Külső link" @@ -978,8 +982,8 @@ msgid "Build to allocate parts" msgstr "Gyártás amihez készletet foglaljunk" #: build/models.py:1345 build/serializers.py:645 order/serializers.py:1015 -#: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 -#: stock/serializers.py:880 stock/templates/stock/item_base.html:10 +#: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:756 +#: stock/serializers.py:882 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:199 #: templates/js/translated/build.js:741 templates/js/translated/build.js:746 @@ -987,8 +991,8 @@ msgstr "Gyártás amihez készletet foglaljunk" #: templates/js/translated/order.js:104 templates/js/translated/order.js:2886 #: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193 #: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380 -#: templates/js/translated/stock.js:583 templates/js/translated/stock.js:748 -#: templates/js/translated/stock.js:2568 +#: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752 +#: templates/js/translated/stock.js:2577 msgid "Stock Item" msgstr "Készlet tétel" @@ -998,11 +1002,11 @@ msgstr "Forrás készlet tétel" #: build/models.py:1358 build/serializers.py:193 #: build/templates/build/build_base.html:82 -#: build/templates/build/detail.html:34 common/models.py:1678 +#: build/templates/build/detail.html:34 common/models.py:1697 #: company/templates/company/supplier_part.html:279 order/models.py:897 #: order/models.py:1423 order/serializers.py:1155 #: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40 -#: part/models.py:2601 part/templates/part/detail.html:937 +#: part/models.py:2608 part/templates/part/detail.html:937 #: part/templates/part/detail.html:1023 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 @@ -1025,11 +1029,11 @@ msgstr "Forrás készlet tétel" #: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207 #: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386 #: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037 -#: templates/js/translated/part.js:1034 templates/js/translated/part.js:2147 -#: templates/js/translated/part.js:2378 templates/js/translated/part.js:2412 -#: templates/js/translated/part.js:2490 templates/js/translated/stock.js:454 -#: templates/js/translated/stock.js:608 templates/js/translated/stock.js:778 -#: templates/js/translated/stock.js:2617 templates/js/translated/stock.js:2702 +#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2156 +#: templates/js/translated/part.js:2387 templates/js/translated/part.js:2421 +#: templates/js/translated/part.js:2499 templates/js/translated/stock.js:458 +#: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782 +#: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711 msgid "Quantity" msgstr "Mennyiség" @@ -1071,8 +1075,8 @@ msgid "Enter quantity for build output" msgstr "Add meg a mennyiséget a gyártás kimenetéhez" #: build/serializers.py:208 build/serializers.py:665 order/models.py:318 -#: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 -#: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 +#: order/serializers.py:287 order/serializers.py:442 part/serializers.py:544 +#: part/serializers.py:976 stock/models.py:484 stock/models.py:1251 #: stock/serializers.py:302 msgid "Quantity must be greater than zero" msgstr "Mennyiségnek nullánál többnek kell lennie" @@ -1087,7 +1091,7 @@ msgstr "Egész számú mennyiség szükséges, mivel az alkatrészjegyzék egyed #: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159 #: stock/serializers.py:311 templates/js/translated/order.js:1258 -#: templates/js/translated/stock.js:267 templates/js/translated/stock.js:455 +#: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459 msgid "Serial Numbers" msgstr "Sorozatszámok" @@ -1113,16 +1117,16 @@ msgstr "A gyártási kimenetek listáját meg kell adni" #: build/serializers.py:366 order/serializers.py:428 order/serializers.py:532 #: stock/serializers.py:322 stock/serializers.py:453 stock/serializers.py:534 -#: stock/serializers.py:915 stock/serializers.py:1148 +#: stock/serializers.py:917 stock/serializers.py:1150 #: stock/templates/stock/item_base.html:390 #: templates/js/translated/barcode.js:436 #: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753 #: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285 #: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305 #: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394 -#: templates/js/translated/part.js:181 templates/js/translated/stock.js:584 -#: templates/js/translated/stock.js:749 templates/js/translated/stock.js:956 -#: templates/js/translated/stock.js:1850 templates/js/translated/stock.js:2509 +#: templates/js/translated/part.js:181 templates/js/translated/stock.js:588 +#: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960 +#: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518 msgid "Location" msgstr "Hely" @@ -1135,8 +1139,8 @@ msgstr "A kész gyártási kimenetek helye" #: order/serializers.py:465 stock/templates/stock/item_base.html:423 #: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505 #: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724 -#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1825 -#: templates/js/translated/stock.js:2586 templates/js/translated/stock.js:2718 +#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829 +#: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727 msgid "Status" msgstr "Állapot" @@ -1167,19 +1171,19 @@ msgstr "A nem befejezett gyártási kimenetek törlése" #: build/serializers.py:485 msgid "Accept as consumed by this build order" -msgstr "" +msgstr "Gyártásban fel lett használva" #: build/serializers.py:486 msgid "Deallocate before completing this build order" -msgstr "" +msgstr "Foglalás felszabadítása a készre jelentés előtt" #: build/serializers.py:494 msgid "Overallocated Stock" -msgstr "" +msgstr "Túlfoglalt készlet" #: build/serializers.py:496 msgid "How do you want to handle extra stock items assigned to the build order" -msgstr "" +msgstr "Hogyyan kezeljük az gyártáshoz rendelt extra készletet" #: build/serializers.py:506 msgid "Some stock items have been overallocated" @@ -1213,8 +1217,8 @@ msgstr "Szükséges gyártási mennyiség nem lett elérve" msgid "Build order has incomplete outputs" msgstr "A gyártási utasítás befejezetlen kimeneteket tartalmaz" -#: build/serializers.py:577 build/serializers.py:622 part/models.py:2719 -#: part/models.py:2853 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726 +#: part/models.py:2860 msgid "BOM Item" msgstr "Alkatrészjegyzék tétel" @@ -1230,7 +1234,7 @@ msgstr "A gyártási kimenetnek ugyanarra a gyártásra kell mutatnia" msgid "bom_item.part must point to the same part as the build order" msgstr "bom_item.part ugyanarra az alkatrészre kell mutasson mint a gyártási utasítás" -#: build/serializers.py:651 stock/serializers.py:767 +#: build/serializers.py:651 stock/serializers.py:769 msgid "Item must be in stock" msgstr "A tételnek kell legyen készlete" @@ -1368,7 +1372,7 @@ msgstr "Még nincs lefoglalva a szükséges készlet" #: report/templates/report/inventree_build_order_base.html:125 #: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741 #: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552 -#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1038 +#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042 msgid "Target Date" msgstr "Cél dátum" @@ -1446,8 +1450,8 @@ msgstr "Lefoglalt alkatrészek" #: stock/templates/stock/item_base.html:170 #: templates/js/translated/build.js:1182 #: templates/js/translated/model_renderers.js:124 -#: templates/js/translated/stock.js:1022 templates/js/translated/stock.js:1839 -#: templates/js/translated/stock.js:2725 +#: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843 +#: templates/js/translated/stock.js:2734 #: templates/js/translated/table_filters.js:159 #: templates/js/translated/table_filters.js:250 msgid "Batch" @@ -1507,7 +1511,7 @@ msgstr "Szükséges alkatrészek rendelése" #: build/templates/build/detail.html:187 #: company/templates/company/detail.html:37 #: company/templates/company/detail.html:85 -#: part/templates/part/category.html:177 templates/js/translated/order.js:977 +#: part/templates/part/category.html:183 templates/js/translated/order.js:977 msgid "Order Parts" msgstr "Alkatrész rendelés" @@ -1560,12 +1564,12 @@ msgid "Delete outputs" msgstr "Kimenetek törlése" #: build/templates/build/detail.html:267 -#: stock/templates/stock/location.html:197 templates/stock_table.html:27 +#: stock/templates/stock/location.html:202 templates/stock_table.html:27 msgid "Printing Actions" msgstr "Nyomtatási műveletek" #: build/templates/build/detail.html:271 build/templates/build/detail.html:272 -#: stock/templates/stock/location.html:201 templates/stock_table.html:31 +#: stock/templates/stock/location.html:206 templates/stock_table.html:31 msgid "Print labels" msgstr "Címke nyomtatása" @@ -1764,11 +1768,11 @@ msgstr "Kérjen felhasználói megerősítést bizonyos műveletekhez" #: common/models.py:880 msgid "Tree Depth" -msgstr "" +msgstr "Fa mélység" #: common/models.py:881 msgid "Default tree depth for treeview. Deeper levels can be lazy loaded as they are needed." -msgstr "" +msgstr "Alapértelmezett mélység a fa nézetekben. A mélyebb szintek betöltődnek ha szükségesek." #: common/models.py:890 templates/InvenTree/settings/sidebar.html:33 msgid "Barcode Support" @@ -1842,7 +1846,7 @@ msgstr "Kategória paraméter sablonok másolása" msgid "Copy category parameter templates when creating a part" msgstr "Kategória paraméter sablonok másolása alkatrész létrehozásakor" -#: common/models.py:951 part/models.py:2412 report/models.py:158 +#: common/models.py:951 part/models.py:2419 report/models.py:158 #: templates/js/translated/table_filters.js:38 #: templates/js/translated/table_filters.js:484 msgid "Template" @@ -1852,7 +1856,7 @@ msgstr "Sablon" msgid "Parts are templates by default" msgstr "Alkatrészek alapból sablon alkatrészek legyenek" -#: common/models.py:958 part/models.py:887 templates/js/translated/bom.js:1448 +#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448 #: templates/js/translated/table_filters.js:176 #: templates/js/translated/table_filters.js:447 msgid "Assembly" @@ -1862,7 +1866,7 @@ msgstr "Gyártmány" msgid "Parts can be assembled from other components by default" msgstr "Alkatrészeket alapból lehessen gyártani másik alkatrészekből" -#: common/models.py:965 part/models.py:893 +#: common/models.py:965 part/models.py:900 #: templates/js/translated/table_filters.js:455 msgid "Component" msgstr "Összetevő" @@ -1871,7 +1875,7 @@ msgstr "Összetevő" msgid "Parts can be used as sub-components by default" msgstr "Alkatrészek alapból használhatók összetevőként más alkatrészekhez" -#: common/models.py:972 part/models.py:904 +#: common/models.py:972 part/models.py:911 msgid "Purchaseable" msgstr "Beszerezhető" @@ -1879,7 +1883,7 @@ msgstr "Beszerezhető" msgid "Parts are purchaseable by default" msgstr "Alkatrészek alapból beszerezhetők legyenek" -#: common/models.py:979 part/models.py:909 +#: common/models.py:979 part/models.py:916 #: templates/js/translated/table_filters.js:476 msgid "Salable" msgstr "Értékesíthető" @@ -1888,7 +1892,7 @@ msgstr "Értékesíthető" msgid "Parts are salable by default" msgstr "Alkatrészek alapból eladhatók legyenek" -#: common/models.py:986 part/models.py:899 +#: common/models.py:986 part/models.py:906 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:108 #: templates/js/translated/table_filters.js:488 @@ -1899,7 +1903,7 @@ msgstr "Követésre kötelezett" msgid "Parts are trackable by default" msgstr "Alkatrészek alapból követésre kötelezettek legyenek" -#: common/models.py:993 part/models.py:919 +#: common/models.py:993 part/models.py:926 #: part/templates/part/part_base.html:151 #: templates/js/translated/table_filters.js:42 #: templates/js/translated/table_filters.js:492 @@ -1983,608 +1987,632 @@ msgid "Format to display the part name" msgstr "Formátum az alkatrész név megjelenítéséhez" #: common/models.py:1074 +msgid "Part Category Default Icon" +msgstr "" + +#: common/models.py:1075 +msgid "Part category default icon (empty means no icon)" +msgstr "" + +#: common/models.py:1080 msgid "Enable label printing" msgstr "Címke nyomtatás engedélyezése" -#: common/models.py:1075 +#: common/models.py:1081 msgid "Enable label printing from the web interface" msgstr "Címke nyomtatás engedélyezése a web felületről" -#: common/models.py:1081 +#: common/models.py:1087 msgid "Label Image DPI" msgstr "Címke kép DPI" -#: common/models.py:1082 +#: common/models.py:1088 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "Képek felbontása amik átadásra kerülnek címkenyomtató pluginoknak" -#: common/models.py:1091 +#: common/models.py:1097 msgid "Enable Reports" msgstr "Riportok engedélyezése" -#: common/models.py:1092 +#: common/models.py:1098 msgid "Enable generation of reports" msgstr "Riportok előállításának engedélyezése" -#: common/models.py:1098 templates/stats.html:25 +#: common/models.py:1104 templates/stats.html:25 msgid "Debug Mode" msgstr "Debug mód" -#: common/models.py:1099 +#: common/models.py:1105 msgid "Generate reports in debug mode (HTML output)" msgstr "Riportok előállítása HTML formátumban (hibakereséshez)" -#: common/models.py:1105 +#: common/models.py:1111 msgid "Page Size" msgstr "Lapméret" -#: common/models.py:1106 +#: common/models.py:1112 msgid "Default page size for PDF reports" msgstr "Alapértelmezett lapméret a PDF riportokhoz" -#: common/models.py:1116 +#: common/models.py:1122 msgid "Enable Test Reports" msgstr "Teszt riportok engedélyezése" -#: common/models.py:1117 +#: common/models.py:1123 msgid "Enable generation of test reports" msgstr "Teszt riportok előállításának engedélyezése" -#: common/models.py:1123 +#: common/models.py:1129 msgid "Attach Test Reports" msgstr "Teszt riportok hozzáadása" -#: common/models.py:1124 +#: common/models.py:1130 msgid "When printing a Test Report, attach a copy of the Test Report to the associated Stock Item" msgstr "Teszt riport nyomtatáskor egy másolat hozzáadása a készlet tételhez" -#: common/models.py:1130 +#: common/models.py:1136 msgid "Batch Code Template" msgstr "Batch kód sablon" -#: common/models.py:1131 +#: common/models.py:1137 msgid "Template for generating default batch codes for stock items" msgstr "Sablon a készlet tételekhez alapértelmezett batch kódok előállításához" -#: common/models.py:1136 +#: common/models.py:1142 msgid "Stock Expiry" msgstr "Készlet lejárata" -#: common/models.py:1137 +#: common/models.py:1143 msgid "Enable stock expiry functionality" msgstr "Készlet lejárat kezelésének engedélyezése" -#: common/models.py:1143 +#: common/models.py:1149 msgid "Sell Expired Stock" msgstr "Lejárt készlet értékesítése" -#: common/models.py:1144 +#: common/models.py:1150 msgid "Allow sale of expired stock" msgstr "Lejárt készlet értékesítésének engedélyezése" -#: common/models.py:1150 +#: common/models.py:1156 msgid "Stock Stale Time" msgstr "Álló készlet ideje" -#: common/models.py:1151 +#: common/models.py:1157 msgid "Number of days stock items are considered stale before expiring" msgstr "Napok száma amennyivel a lejárat előtt a készlet tételeket állottnak vesszük" -#: common/models.py:1153 +#: common/models.py:1159 msgid "days" msgstr "nap" -#: common/models.py:1158 +#: common/models.py:1164 msgid "Build Expired Stock" msgstr "Lejárt készlet gyártása" -#: common/models.py:1159 +#: common/models.py:1165 msgid "Allow building with expired stock" msgstr "Gyártás engedélyezése lejárt készletből" -#: common/models.py:1165 +#: common/models.py:1171 msgid "Stock Ownership Control" msgstr "Készlet tulajdonosok kezelése" -#: common/models.py:1166 +#: common/models.py:1172 msgid "Enable ownership control over stock locations and items" msgstr "Tuajdonosok kezelésének engedélyezése a készlet helyekre és tételekre" -#: common/models.py:1172 +#: common/models.py:1178 +msgid "Stock Location Default Icon" +msgstr "" + +#: common/models.py:1179 +msgid "Stock location default icon (empty means no icon)" +msgstr "" + +#: common/models.py:1184 msgid "Build Order Reference Pattern" msgstr "Gyártási utasítás azonosító minta" -#: common/models.py:1173 +#: common/models.py:1185 msgid "Required pattern for generating Build Order reference field" msgstr "Szükséges minta a gyártási utasítás azonosító mező előállításához" -#: common/models.py:1179 +#: common/models.py:1191 msgid "Sales Order Reference Pattern" msgstr "Vevői rendelés azonosító minta" -#: common/models.py:1180 +#: common/models.py:1192 msgid "Required pattern for generating Sales Order reference field" msgstr "Szükséges minta a vevői rendelés azonosító mező előállításához" -#: common/models.py:1186 +#: common/models.py:1198 msgid "Sales Order Default Shipment" msgstr "Vevői rendeléshez alapértelmezett szállítmány" -#: common/models.py:1187 +#: common/models.py:1199 msgid "Enable creation of default shipment with sales orders" msgstr "Szállítmány automatikus létrehozása az új vevő rendelésekhez" -#: common/models.py:1193 +#: common/models.py:1205 msgid "Purchase Order Reference Pattern" msgstr "Beszerzési rendelés azonosító minta" -#: common/models.py:1194 +#: common/models.py:1206 msgid "Required pattern for generating Purchase Order reference field" msgstr "Szükséges minta a beszerzési rendelés azonosító mező előállításához" -#: common/models.py:1201 +#: common/models.py:1213 msgid "Enable password forgot" msgstr "Elfelejtett jelszó engedélyezése" -#: common/models.py:1202 +#: common/models.py:1214 msgid "Enable password forgot function on the login pages" msgstr "Elfelejtett jelszó funkció engedélyezése a bejentkező oldalon" -#: common/models.py:1208 +#: common/models.py:1220 msgid "Enable registration" msgstr "Regisztráció engedélyezése" -#: common/models.py:1209 +#: common/models.py:1221 msgid "Enable self-registration for users on the login pages" msgstr "Felhaszálók önkéntes regisztrációjának engedélyezése a bejelentkező oldalon" -#: common/models.py:1215 +#: common/models.py:1227 msgid "Enable SSO" msgstr "SSO engedélyezése" -#: common/models.py:1216 +#: common/models.py:1228 msgid "Enable SSO on the login pages" msgstr "SSO engedélyezése a bejelentkező oldalon" -#: common/models.py:1222 +#: common/models.py:1234 msgid "Email required" msgstr "Email szükséges" -#: common/models.py:1223 +#: common/models.py:1235 msgid "Require user to supply mail on signup" msgstr "Kötelező email megadás regisztrációkor" -#: common/models.py:1229 +#: common/models.py:1241 msgid "Auto-fill SSO users" msgstr "SSO felhasználók automatikus kitöltése" -#: common/models.py:1230 +#: common/models.py:1242 msgid "Automatically fill out user-details from SSO account-data" msgstr "Felhasználó adatainak automatikus kitöltése az SSO fiókadatokból" -#: common/models.py:1236 +#: common/models.py:1248 msgid "Mail twice" msgstr "Email kétszer" -#: common/models.py:1237 +#: common/models.py:1249 msgid "On signup ask users twice for their mail" msgstr "Regisztráláskor kétszer kérdezze a felhasználó email címét" -#: common/models.py:1243 +#: common/models.py:1255 msgid "Password twice" msgstr "Jelszó kétszer" -#: common/models.py:1244 +#: common/models.py:1256 msgid "On signup ask users twice for their password" msgstr "Regisztráláskor kétszer kérdezze a felhasználó jelszavát" -#: common/models.py:1250 +#: common/models.py:1262 msgid "Group on signup" msgstr "Csoport regisztráláskor" -#: common/models.py:1251 +#: common/models.py:1263 msgid "Group to which new users are assigned on registration" msgstr "Csoport amihez a frissen regisztrált felhasználók hozzá lesznek rendelve" -#: common/models.py:1257 +#: common/models.py:1269 msgid "Enforce MFA" msgstr "Többfaktoros hitelesítés kényszerítése" -#: common/models.py:1258 +#: common/models.py:1270 msgid "Users must use multifactor security." msgstr "A felhasználóknak többfaktoros hitelesítést kell használniuk." -#: common/models.py:1264 +#: common/models.py:1276 msgid "Check plugins on startup" msgstr "Pluginok ellenőrzése indításkor" -#: common/models.py:1265 +#: common/models.py:1277 msgid "Check that all plugins are installed on startup - enable in container enviroments" msgstr "Ellenőrizze induláskor hogy minden plugin telepítve van - engedélyezd konténer környezetben (docker)" -#: common/models.py:1273 +#: common/models.py:1284 +msgid "Check plugin signatures" +msgstr "" + +#: common/models.py:1285 +msgid "Check and show signatures for plugins" +msgstr "" + +#: common/models.py:1292 msgid "Enable URL integration" msgstr "URL integráció engedélyezése" -#: common/models.py:1274 +#: common/models.py:1293 msgid "Enable plugins to add URL routes" msgstr "URL útvonalalak hozzáadásának engedélyezése a pluginok számára" -#: common/models.py:1281 +#: common/models.py:1300 msgid "Enable navigation integration" msgstr "Navigációs integráció engedélyezése" -#: common/models.py:1282 +#: common/models.py:1301 msgid "Enable plugins to integrate into navigation" msgstr "Navigációs integráció engedélyezése a pluginok számára" -#: common/models.py:1289 +#: common/models.py:1308 msgid "Enable app integration" msgstr "App integráció engedélyezése" -#: common/models.py:1290 +#: common/models.py:1309 msgid "Enable plugins to add apps" msgstr "App hozzáadásának engedélyezése a pluginok számára" -#: common/models.py:1297 +#: common/models.py:1316 msgid "Enable schedule integration" msgstr "Ütemezés integráció engedélyezése" -#: common/models.py:1298 +#: common/models.py:1317 msgid "Enable plugins to run scheduled tasks" msgstr "Háttérben futó feladatok hozzáadásának engedélyezése a pluginok számára" -#: common/models.py:1305 +#: common/models.py:1324 msgid "Enable event integration" msgstr "Esemény integráció engedélyezése" -#: common/models.py:1306 +#: common/models.py:1325 msgid "Enable plugins to respond to internal events" msgstr "Belső eseményekre reagálás engedélyezése a pluginok számára" -#: common/models.py:1323 common/models.py:1639 +#: common/models.py:1342 common/models.py:1658 msgid "Settings key (must be unique - case insensitive" msgstr "Beállítások kulcs (egyedinek kell lennie, nem kis- nagybetű érzékeny" -#: common/models.py:1345 +#: common/models.py:1364 msgid "Show subscribed parts" msgstr "Értesítésre beállított alkatrészek megjelenítése" -#: common/models.py:1346 +#: common/models.py:1365 msgid "Show subscribed parts on the homepage" msgstr "Alkatrész értesítések megjelenítése a főoldalon" -#: common/models.py:1352 +#: common/models.py:1371 msgid "Show subscribed categories" msgstr "Értesítésre beállított kategóriák megjelenítése" -#: common/models.py:1353 +#: common/models.py:1372 msgid "Show subscribed part categories on the homepage" msgstr "Alkatrész kategória értesítések megjelenítése a főoldalon" -#: common/models.py:1359 +#: common/models.py:1378 msgid "Show latest parts" msgstr "Legújabb alkatrészek megjelenítése" -#: common/models.py:1360 +#: common/models.py:1379 msgid "Show latest parts on the homepage" msgstr "Legújabb alkatrészek megjelenítése a főoldalon" -#: common/models.py:1366 +#: common/models.py:1385 msgid "Recent Part Count" msgstr "Legfrissebb alkatrész szám" -#: common/models.py:1367 +#: common/models.py:1386 msgid "Number of recent parts to display on index page" msgstr "Főoldalon megjelenítendő legújabb alkatrészek" -#: common/models.py:1373 +#: common/models.py:1392 msgid "Show unvalidated BOMs" msgstr "Jóváhagyás nélküli alkatrészjegyzékek megjelenítése" -#: common/models.py:1374 +#: common/models.py:1393 msgid "Show BOMs that await validation on the homepage" msgstr "Jóváhagyásra váró alkatrészjegyzékek megjelenítése a főoldalon" -#: common/models.py:1380 +#: common/models.py:1399 msgid "Show recent stock changes" msgstr "Legfrissebb készlet változások megjelenítése" -#: common/models.py:1381 +#: common/models.py:1400 msgid "Show recently changed stock items on the homepage" msgstr "Legutóbb megváltozott alkatrészek megjelenítése a főoldalon" -#: common/models.py:1387 +#: common/models.py:1406 msgid "Recent Stock Count" msgstr "Legfrissebb készlet mennyiség" -#: common/models.py:1388 +#: common/models.py:1407 msgid "Number of recent stock items to display on index page" msgstr "Főoldalon megjelenítendő legújabb készlet tételek száma" -#: common/models.py:1394 +#: common/models.py:1413 msgid "Show low stock" msgstr "Alacsony készlet megjelenítése" -#: common/models.py:1395 +#: common/models.py:1414 msgid "Show low stock items on the homepage" msgstr "Alacsony készletek megjelenítése a főoldalon" -#: common/models.py:1401 +#: common/models.py:1420 msgid "Show depleted stock" msgstr "Kimerült készlet megjelenítése" -#: common/models.py:1402 +#: common/models.py:1421 msgid "Show depleted stock items on the homepage" msgstr "Kimerült készletek megjelenítése a főoldalon" -#: common/models.py:1408 +#: common/models.py:1427 msgid "Show needed stock" msgstr "Gyártáshoz szükséges készlet megjelenítése" -#: common/models.py:1409 +#: common/models.py:1428 msgid "Show stock items needed for builds on the homepage" msgstr "Gyártáshoz szükséges készletek megjelenítése a főoldalon" -#: common/models.py:1415 +#: common/models.py:1434 msgid "Show expired stock" msgstr "Lejárt készlet megjelenítése" -#: common/models.py:1416 +#: common/models.py:1435 msgid "Show expired stock items on the homepage" msgstr "Lejárt készletek megjelenítése a főoldalon" -#: common/models.py:1422 +#: common/models.py:1441 msgid "Show stale stock" msgstr "Állott készlet megjelenítése" -#: common/models.py:1423 +#: common/models.py:1442 msgid "Show stale stock items on the homepage" msgstr "Álló készletek megjelenítése a főoldalon" -#: common/models.py:1429 +#: common/models.py:1448 msgid "Show pending builds" msgstr "Függő gyártások megjelenítése" -#: common/models.py:1430 +#: common/models.py:1449 msgid "Show pending builds on the homepage" msgstr "Folyamatban lévő gyártások megjelenítése a főoldalon" -#: common/models.py:1436 +#: common/models.py:1455 msgid "Show overdue builds" msgstr "Késésben lévő gyártások megjelenítése" -#: common/models.py:1437 +#: common/models.py:1456 msgid "Show overdue builds on the homepage" msgstr "Késésben lévő gyártások megjelenítése a főoldalon" -#: common/models.py:1443 +#: common/models.py:1462 msgid "Show outstanding POs" msgstr "Kintlévő beszerzési rendelések megjelenítése" -#: common/models.py:1444 +#: common/models.py:1463 msgid "Show outstanding POs on the homepage" msgstr "Kintlévő beszerzési rendelések megjelenítése a főoldalon" -#: common/models.py:1450 +#: common/models.py:1469 msgid "Show overdue POs" msgstr "Késésben lévő megrendelések megjelenítése" -#: common/models.py:1451 +#: common/models.py:1470 msgid "Show overdue POs on the homepage" msgstr "Késésben lévő megrendelések megjelenítése a főoldalon" -#: common/models.py:1457 +#: common/models.py:1476 msgid "Show outstanding SOs" msgstr "Függő vevői rendelések megjelenítése" -#: common/models.py:1458 +#: common/models.py:1477 msgid "Show outstanding SOs on the homepage" msgstr "Függő vevői rendelések megjelenítése a főoldalon" -#: common/models.py:1464 +#: common/models.py:1483 msgid "Show overdue SOs" msgstr "Késésben lévő vevői rendelések megjelenítése" -#: common/models.py:1465 +#: common/models.py:1484 msgid "Show overdue SOs on the homepage" msgstr "Késésben lévő vevői rendelések megjelenítése a főoldalon" -#: common/models.py:1471 +#: common/models.py:1490 msgid "Inline label display" msgstr "Beágyazott címke megjelenítés" -#: common/models.py:1472 +#: common/models.py:1491 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "PDF címkék megjelenítése a böngészőben letöltés helyett" -#: common/models.py:1478 +#: common/models.py:1497 msgid "Inline report display" msgstr "Beágyazott riport megjelenítés" -#: common/models.py:1479 +#: common/models.py:1498 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "PDF riport megjelenítése a böngészőben letöltés helyett" -#: common/models.py:1485 +#: common/models.py:1504 msgid "Search Parts" msgstr "Alkatrészek keresése" -#: common/models.py:1486 +#: common/models.py:1505 msgid "Display parts in search preview window" msgstr "Alkatrészek megjelenítése a keresési előnézetben" -#: common/models.py:1492 +#: common/models.py:1511 msgid "Seach Supplier Parts" msgstr "Beszállítói alkatrészek keresése" -#: common/models.py:1493 +#: common/models.py:1512 msgid "Display supplier parts in search preview window" msgstr "Beszállítói alkatrészek megjelenítése a keresési előnézetben" -#: common/models.py:1499 +#: common/models.py:1518 msgid "Search Manufacturer Parts" msgstr "Gyártói alkatrészek keresése" -#: common/models.py:1500 +#: common/models.py:1519 msgid "Display manufacturer parts in search preview window" msgstr "Gyártói alkatrészek megjelenítése a keresési előnézetben" -#: common/models.py:1506 +#: common/models.py:1525 msgid "Hide Inactive Parts" msgstr "Inaktív alkatrészek elrejtése" -#: common/models.py:1507 +#: common/models.py:1526 msgid "Excluded inactive parts from search preview window" msgstr "Inaktív alkatrészek kihagyása a keresési előnézet találataiból" -#: common/models.py:1513 +#: common/models.py:1532 msgid "Search Categories" msgstr "Kategóriák keresése" -#: common/models.py:1514 +#: common/models.py:1533 msgid "Display part categories in search preview window" msgstr "Alkatrész kategóriák megjelenítése a keresési előnézetben" -#: common/models.py:1520 +#: common/models.py:1539 msgid "Search Stock" msgstr "Készlet keresése" -#: common/models.py:1521 +#: common/models.py:1540 msgid "Display stock items in search preview window" msgstr "Készlet tételek megjelenítése a keresési előnézetben" -#: common/models.py:1527 +#: common/models.py:1546 msgid "Hide Unavailable Stock Items" msgstr "Nem elérhető készlet tételek elrejtése" -#: common/models.py:1528 +#: common/models.py:1547 msgid "Exclude stock items which are not available from the search preview window" msgstr "Nem elérhető készlet kihagyása a keresési előnézet találataiból" -#: common/models.py:1534 +#: common/models.py:1553 msgid "Search Locations" msgstr "Helyek keresése" -#: common/models.py:1535 +#: common/models.py:1554 msgid "Display stock locations in search preview window" msgstr "Készlet helyek megjelenítése a keresési előnézetben" -#: common/models.py:1541 +#: common/models.py:1560 msgid "Search Companies" msgstr "Cégek keresése" -#: common/models.py:1542 +#: common/models.py:1561 msgid "Display companies in search preview window" msgstr "Cégek megjelenítése a keresési előnézetben" -#: common/models.py:1548 +#: common/models.py:1567 msgid "Search Purchase Orders" msgstr "Beszerzési rendelések keresése" -#: common/models.py:1549 +#: common/models.py:1568 msgid "Display purchase orders in search preview window" msgstr "Beszerzési rendelések megjelenítése a keresési előnézetben" -#: common/models.py:1555 +#: common/models.py:1574 msgid "Exclude Inactive Purchase Orders" msgstr "Inaktív beszerzési rendelések kihagyása" -#: common/models.py:1556 +#: common/models.py:1575 msgid "Exclude inactive purchase orders from search preview window" msgstr "Inaktív beszerzési rendelések kihagyása a keresési előnézet találataiból" -#: common/models.py:1562 +#: common/models.py:1581 msgid "Search Sales Orders" msgstr "Vevői rendelések keresése" -#: common/models.py:1563 +#: common/models.py:1582 msgid "Display sales orders in search preview window" msgstr "Vevői rendelések megjelenítése a keresési előnézetben" -#: common/models.py:1569 +#: common/models.py:1588 msgid "Exclude Inactive Sales Orders" msgstr "Inaktív vevői rendelések kihagyása" -#: common/models.py:1570 +#: common/models.py:1589 msgid "Exclude inactive sales orders from search preview window" msgstr "Inaktív vevői rendelések kihagyása a keresési előnézet találataiból" -#: common/models.py:1576 +#: common/models.py:1595 msgid "Search Preview Results" msgstr "Keresési előnézet eredményei" -#: common/models.py:1577 +#: common/models.py:1596 msgid "Number of results to show in each section of the search preview window" msgstr "A keresési előnézetben megjelenítendő eredmények száma szekciónként" -#: common/models.py:1583 +#: common/models.py:1602 msgid "Show Quantity in Forms" msgstr "Mennyiség megjelenítése a formokon" -#: common/models.py:1584 +#: common/models.py:1603 msgid "Display available part quantity in some forms" msgstr "Rendelkezésre álló alkatrész mennyiség megjelenítése néhány formon" -#: common/models.py:1590 +#: common/models.py:1609 msgid "Escape Key Closes Forms" msgstr "ESC billentyű zárja be a formot" -#: common/models.py:1591 +#: common/models.py:1610 msgid "Use the escape key to close modal forms" msgstr "ESC billentyű használata a modális formok bezárásához" -#: common/models.py:1597 +#: common/models.py:1616 msgid "Fixed Navbar" msgstr "Rögzített menüsor" -#: common/models.py:1598 +#: common/models.py:1617 msgid "The navbar position is fixed to the top of the screen" msgstr "A menü pozíciója mindig rögzítve a lap tetején" -#: common/models.py:1604 +#: common/models.py:1623 msgid "Date Format" msgstr "Dátum formátum" -#: common/models.py:1605 +#: common/models.py:1624 msgid "Preferred format for displaying dates" msgstr "Preferált dátum formátum a dátumok kijelzésekor" -#: common/models.py:1619 part/templates/part/detail.html:41 +#: common/models.py:1638 part/templates/part/detail.html:41 msgid "Part Scheduling" msgstr "Alkatrész ütemezés" -#: common/models.py:1620 +#: common/models.py:1639 msgid "Display part scheduling information" msgstr "Alkatrész ütemezési információk megjelenítése" -#: common/models.py:1679 +#: common/models.py:1698 msgid "Price break quantity" msgstr "Árlépcső mennyiség" -#: common/models.py:1686 company/serializers.py:366 +#: common/models.py:1705 company/serializers.py:366 #: company/templates/company/supplier_part.html:284 order/models.py:938 -#: templates/js/translated/part.js:1065 templates/js/translated/part.js:2152 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2161 msgid "Price" msgstr "Ár" -#: common/models.py:1687 +#: common/models.py:1706 msgid "Unit price at specified quantity" msgstr "Egységár egy meghatározott mennyiség esetén" -#: common/models.py:1847 common/models.py:2025 +#: common/models.py:1866 common/models.py:2044 msgid "Endpoint" msgstr "Végpont" -#: common/models.py:1848 +#: common/models.py:1867 msgid "Endpoint at which this webhook is received" msgstr "Végpont ahol ez a webhook érkezik" -#: common/models.py:1857 +#: common/models.py:1876 msgid "Name for this webhook" msgstr "Webhook neve" -#: common/models.py:1862 part/models.py:914 plugin/models.py:99 +#: common/models.py:1881 part/models.py:921 plugin/models.py:100 #: templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:104 #: templates/js/translated/table_filters.js:316 @@ -2592,67 +2620,67 @@ msgstr "Webhook neve" msgid "Active" msgstr "Aktív" -#: common/models.py:1863 +#: common/models.py:1882 msgid "Is this webhook active" msgstr "Aktív-e ez a webhook" -#: common/models.py:1877 +#: common/models.py:1896 msgid "Token" msgstr "Token" -#: common/models.py:1878 +#: common/models.py:1897 msgid "Token for access" msgstr "Token a hozzáféréshez" -#: common/models.py:1885 +#: common/models.py:1904 msgid "Secret" msgstr "Titok" -#: common/models.py:1886 +#: common/models.py:1905 msgid "Shared secret for HMAC" msgstr "Megosztott titok a HMAC-hoz" -#: common/models.py:1992 +#: common/models.py:2011 msgid "Message ID" msgstr "Üzenet azonosító" -#: common/models.py:1993 +#: common/models.py:2012 msgid "Unique identifier for this message" msgstr "Egyedi azonosító ehhez az üzenethez" -#: common/models.py:2001 +#: common/models.py:2020 msgid "Host" msgstr "Kiszolgáló" -#: common/models.py:2002 +#: common/models.py:2021 msgid "Host from which this message was received" msgstr "Kiszolgáló ahonnan ez az üzenet érkezett" -#: common/models.py:2009 +#: common/models.py:2028 msgid "Header" msgstr "Fejléc" -#: common/models.py:2010 +#: common/models.py:2029 msgid "Header of this message" msgstr "Üzenet fejléce" -#: common/models.py:2016 +#: common/models.py:2035 msgid "Body" msgstr "Törzs" -#: common/models.py:2017 +#: common/models.py:2036 msgid "Body of this message" msgstr "Üzenet törzse" -#: common/models.py:2026 +#: common/models.py:2045 msgid "Endpoint on which this message was received" msgstr "Végpont amin ez az üzenet érkezett" -#: common/models.py:2031 +#: common/models.py:2050 msgid "Worked on" msgstr "Dolgozott rajta" -#: common/models.py:2032 +#: common/models.py:2051 msgid "Was the work on this message finished?" msgstr "Befejeződött a munka ezzel az üzenettel?" @@ -2759,7 +2787,7 @@ msgstr "Kapcsolattartó" msgid "Link to external company information" msgstr "Link a külső céginformációhoz" -#: company/models.py:135 part/models.py:808 +#: company/models.py:135 part/models.py:815 msgid "Image" msgstr "Kép" @@ -2792,8 +2820,8 @@ msgid "Does this company manufacture parts?" msgstr "Gyárt ez a cég alkatrészeket?" #: company/models.py:148 company/serializers.py:372 -#: company/templates/company/company_base.html:106 part/serializers.py:151 -#: part/serializers.py:182 stock/serializers.py:180 +#: company/templates/company/company_base.html:106 part/serializers.py:153 +#: part/serializers.py:184 stock/serializers.py:180 msgid "Currency" msgstr "Pénznem" @@ -2801,7 +2829,7 @@ msgstr "Pénznem" msgid "Default currency used for this company" msgstr "Cég által használt alapértelmezett pénznem" -#: company/models.py:248 company/models.py:481 stock/models.py:591 +#: company/models.py:248 company/models.py:481 stock/models.py:598 #: stock/serializers.py:87 stock/templates/stock/item_base.html:148 #: templates/js/translated/bom.js:543 msgid "Base Part" @@ -2833,7 +2861,7 @@ msgstr "Gyártó kiválasztása" #: templates/js/translated/company.js:497 #: templates/js/translated/company.js:649 #: templates/js/translated/company.js:937 templates/js/translated/order.js:1971 -#: templates/js/translated/part.js:247 templates/js/translated/part.js:1023 +#: templates/js/translated/part.js:247 templates/js/translated/part.js:1027 msgid "MPN" msgstr "MPN" @@ -2862,9 +2890,9 @@ msgstr "Paraméter neve" #: company/models.py:365 #: report/templates/report/inventree_test_report_base.html:95 -#: stock/models.py:2088 templates/js/translated/company.js:546 -#: templates/js/translated/company.js:764 templates/js/translated/part.js:845 -#: templates/js/translated/stock.js:1356 +#: stock/models.py:2095 templates/js/translated/company.js:546 +#: templates/js/translated/company.js:764 templates/js/translated/part.js:849 +#: templates/js/translated/stock.js:1360 msgid "Value" msgstr "Érték" @@ -2872,10 +2900,10 @@ msgstr "Érték" msgid "Parameter value" msgstr "Paraméter értéke" -#: company/models.py:372 part/models.py:881 part/models.py:2379 +#: company/models.py:372 part/models.py:888 part/models.py:2386 #: part/templates/part/part_base.html:280 #: templates/InvenTree/settings/settings.html:352 -#: templates/js/translated/company.js:770 templates/js/translated/part.js:851 +#: templates/js/translated/company.js:770 templates/js/translated/part.js:855 msgid "Units" msgstr "Mértékegységek" @@ -2895,7 +2923,7 @@ msgstr "Kapcsolódó gyártói alkatrésznek ugyanarra a kiindulási alkatrészr #: templates/js/translated/company.js:268 #: templates/js/translated/company.js:401 #: templates/js/translated/company.js:893 templates/js/translated/order.js:1707 -#: templates/js/translated/part.js:217 templates/js/translated/part.js:991 +#: templates/js/translated/part.js:217 templates/js/translated/part.js:995 #: templates/js/translated/table_filters.js:423 msgid "Supplier" msgstr "Beszállító" @@ -2907,7 +2935,7 @@ msgstr "Beszállító kiválasztása" #: company/models.py:497 company/templates/company/supplier_part.html:118 #: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267 #: templates/js/translated/order.js:1958 templates/js/translated/part.js:228 -#: templates/js/translated/part.js:1009 +#: templates/js/translated/part.js:1013 msgid "SKU" msgstr "SKU" @@ -2928,23 +2956,23 @@ msgid "Supplier part description" msgstr "Beszállítói alkatrész leírása" #: company/models.py:522 company/templates/company/supplier_part.html:146 -#: part/models.py:2613 part/templates/part/upload_bom.html:59 +#: part/models.py:2620 part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401 msgid "Note" msgstr "Megjegyzés" -#: company/models.py:526 part/models.py:1735 +#: company/models.py:526 part/models.py:1742 msgid "base cost" msgstr "alap költség" -#: company/models.py:526 part/models.py:1735 +#: company/models.py:526 part/models.py:1742 msgid "Minimum charge (e.g. stocking fee)" msgstr "Minimális díj (pl. tárolási díj)" #: company/models.py:528 company/templates/company/supplier_part.html:139 -#: stock/models.py:617 stock/templates/stock/item_base.html:245 -#: templates/js/translated/company.js:969 templates/js/translated/stock.js:1972 +#: stock/models.py:624 stock/templates/stock/item_base.html:245 +#: templates/js/translated/company.js:969 templates/js/translated/stock.js:1976 msgid "Packaging" msgstr "Csomagolás" @@ -2952,7 +2980,7 @@ msgstr "Csomagolás" msgid "Part packaging" msgstr "Alkatrész csomagolás" -#: company/models.py:530 part/models.py:1737 +#: company/models.py:530 part/models.py:1744 msgid "multiple" msgstr "többszörös" @@ -2965,7 +2993,7 @@ msgstr "Többszörös rendelés" #: templates/email/low_stock_notification.html:18 #: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789 #: templates/js/translated/build.js:2645 templates/js/translated/company.js:979 -#: templates/js/translated/part.js:596 templates/js/translated/part.js:599 +#: templates/js/translated/part.js:600 templates/js/translated/part.js:603 #: templates/js/translated/table_filters.js:186 msgid "Available" msgstr "Elérhető" @@ -3038,12 +3066,12 @@ msgid "Download image from URL" msgstr "Kép letöltése URL-ről" #: company/templates/company/company_base.html:86 order/models.py:637 -#: order/templates/order/sales_order_base.html:116 stock/models.py:636 -#: stock/models.py:637 stock/serializers.py:809 +#: order/templates/order/sales_order_base.html:116 stock/models.py:643 +#: stock/models.py:644 stock/serializers.py:811 #: stock/templates/stock/item_base.html:401 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:393 templates/js/translated/order.js:2513 -#: templates/js/translated/stock.js:2550 +#: templates/js/translated/stock.js:2559 #: templates/js/translated/table_filters.js:427 msgid "Customer" msgstr "Vevő" @@ -3084,7 +3112,7 @@ msgstr "Új beszállítói alkatrész" #: company/templates/company/detail.html:36 #: company/templates/company/detail.html:84 -#: part/templates/part/category.html:176 +#: part/templates/part/category.html:182 msgid "Order parts" msgstr "Alkatrész rendelés" @@ -3232,7 +3260,7 @@ msgstr "Paraméterek" #: company/templates/company/manufacturer_part.html:170 #: part/templates/part/detail.html:186 #: templates/InvenTree/settings/category.html:12 -#: templates/InvenTree/settings/part.html:66 +#: templates/InvenTree/settings/part.html:68 msgid "New Parameter" msgstr "Új paraméter" @@ -3262,10 +3290,10 @@ msgid "Assigned Stock Items" msgstr "Hozzárendelt készlet tételek" #: company/templates/company/supplier_part.html:7 -#: company/templates/company/supplier_part.html:24 stock/models.py:600 +#: company/templates/company/supplier_part.html:24 stock/models.py:607 #: stock/templates/stock/item_base.html:238 #: templates/js/translated/company.js:909 templates/js/translated/order.js:935 -#: templates/js/translated/stock.js:1929 +#: templates/js/translated/stock.js:1933 msgid "Supplier Part" msgstr "Beszállítói alkatrész" @@ -3309,13 +3337,13 @@ msgid "Supplier Part Stock" msgstr "Beszállítói készlet" #: company/templates/company/supplier_part.html:168 -#: part/templates/part/detail.html:24 stock/templates/stock/location.html:176 +#: part/templates/part/detail.html:24 stock/templates/stock/location.html:181 msgid "Create new stock item" msgstr "Új készlet tétel létrehozása" #: company/templates/company/supplier_part.html:169 -#: part/templates/part/detail.html:25 stock/templates/stock/location.html:177 -#: templates/js/translated/stock.js:431 +#: part/templates/part/detail.html:25 stock/templates/stock/location.html:182 +#: templates/js/translated/stock.js:435 msgid "New Stock Item" msgstr "Új készlet tétel" @@ -3331,7 +3359,7 @@ msgstr "Árinformációk" #: company/templates/company/supplier_part.html:212 #: company/templates/company/supplier_part.html:326 -#: part/templates/part/prices.html:276 templates/js/translated/part.js:2224 +#: part/templates/part/prices.html:276 templates/js/translated/part.js:2233 msgid "Add Price Break" msgstr "Árlépcső hozzáadása" @@ -3340,12 +3368,12 @@ msgid "No price break information found" msgstr "Nincs árlépcső információ" #: company/templates/company/supplier_part.html:252 -#: templates/js/translated/part.js:2234 +#: templates/js/translated/part.js:2243 msgid "Delete Price Break" msgstr "Árlépcső törlése" #: company/templates/company/supplier_part.html:266 -#: templates/js/translated/part.js:2248 +#: templates/js/translated/part.js:2257 msgid "Edit Price Break" msgstr "Árlépcső szerkesztése" @@ -3367,13 +3395,13 @@ msgstr "Alkatrész elérhetőség frissítése" #: company/templates/company/supplier_part_navbar.html:15 #: part/templates/part/part_sidebar.html:14 -#: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:19 +#: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:24 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:151 #: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/bom.js:555 templates/js/translated/part.js:747 -#: templates/js/translated/part.js:1295 templates/js/translated/part.js:1456 -#: templates/js/translated/stock.js:955 templates/js/translated/stock.js:1750 +#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751 +#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460 +#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754 #: templates/navbar.html:31 msgid "Stock" msgstr "Készlet" @@ -3393,14 +3421,14 @@ msgid "Pricing" msgstr "Árazás" #: company/templates/company/supplier_part_sidebar.html:5 -#: part/templates/part/category.html:197 +#: part/templates/part/category.html:203 #: part/templates/part/category_sidebar.html:17 -#: stock/templates/stock/location.html:147 -#: stock/templates/stock/location.html:161 -#: stock/templates/stock/location.html:173 +#: stock/templates/stock/location.html:152 +#: stock/templates/stock/location.html:166 +#: stock/templates/stock/location.html:178 #: stock/templates/stock/location_sidebar.html:7 #: templates/InvenTree/search.html:153 templates/js/translated/search.js:223 -#: templates/js/translated/stock.js:2427 users/models.py:40 +#: templates/js/translated/stock.js:2436 users/models.py:40 msgid "Stock Items" msgstr "Készlet tételek" @@ -3657,8 +3685,8 @@ msgstr "Rendelés" #: stock/templates/stock/item_base.html:184 #: templates/email/overdue_purchase_order.html:15 #: templates/js/translated/order.js:936 templates/js/translated/order.js:1691 -#: templates/js/translated/part.js:968 templates/js/translated/stock.js:1909 -#: templates/js/translated/stock.js:2531 +#: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913 +#: templates/js/translated/stock.js:2540 msgid "Purchase Order" msgstr "Beszerzési rendelés" @@ -3668,7 +3696,7 @@ msgstr "Beszállítói alkatrész" #: order/models.py:1009 order/templates/order/order_base.html:169 #: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073 -#: templates/js/translated/part.js:1060 templates/js/translated/part.js:1087 +#: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091 #: templates/js/translated/table_filters.js:338 msgid "Received" msgstr "Beérkezett" @@ -3677,9 +3705,9 @@ msgstr "Beérkezett" msgid "Number of items received" msgstr "Érkezett tételek száma" -#: order/models.py:1017 part/templates/part/prices.html:181 stock/models.py:727 +#: order/models.py:1017 part/templates/part/prices.html:181 stock/models.py:734 #: stock/serializers.py:171 stock/templates/stock/item_base.html:191 -#: templates/js/translated/stock.js:1960 +#: templates/js/translated/stock.js:1964 msgid "Purchase Price" msgstr "Beszerzési ár" @@ -4067,8 +4095,8 @@ msgstr "Beszállítói alkatrész kiválasztása" #: templates/js/translated/bom.js:77 templates/js/translated/build.js:431 #: templates/js/translated/build.js:583 templates/js/translated/build.js:1974 #: templates/js/translated/order.js:884 templates/js/translated/order.js:1337 -#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:621 -#: templates/js/translated/stock.js:789 +#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625 +#: templates/js/translated/stock.js:793 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "Sor törlése" @@ -4262,8 +4290,8 @@ msgstr "Hely megadása a kezdeti alkarész készlethez" msgid "This field is required" msgstr "Ez a mező kötelező" -#: part/bom.py:127 part/models.py:98 part/models.py:817 -#: part/templates/part/category.html:108 part/templates/part/part_base.html:330 +#: part/bom.py:127 part/models.py:98 part/models.py:824 +#: part/templates/part/category.html:114 part/templates/part/part_base.html:330 msgid "Default Location" msgstr "Alapértelmezett hely" @@ -4277,9 +4305,9 @@ msgid "Available Stock" msgstr "Elérhető készlet" #: part/bom.py:130 part/templates/part/part_base.html:207 -#: templates/js/translated/bom.js:947 templates/js/translated/part.js:586 -#: templates/js/translated/part.js:606 templates/js/translated/part.js:1298 -#: templates/js/translated/part.js:1470 templates/js/translated/part.js:1486 +#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590 +#: templates/js/translated/part.js:610 templates/js/translated/part.js:1302 +#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "Rendelve" @@ -4300,516 +4328,524 @@ msgstr "Alapértelmezett kulcsszavak" msgid "Default keywords for parts in this category" msgstr "Ebben a kategóriában évő alkatrészek kulcsszavai alapban" -#: part/models.py:115 part/models.py:2455 part/templates/part/category.html:15 +#: part/models.py:107 stock/models.py:84 +msgid "Icon" +msgstr "" + +#: part/models.py:108 stock/models.py:85 +msgid "Icon (optional)" +msgstr "" + +#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "Alkatrész kategória" -#: part/models.py:116 part/templates/part/category.html:128 +#: part/models.py:123 part/templates/part/category.html:134 #: templates/InvenTree/search.html:95 templates/js/translated/search.js:198 #: users/models.py:37 msgid "Part Categories" msgstr "Alkatrész kategóriák" -#: part/models.py:337 part/templates/part/cat_link.html:3 -#: part/templates/part/category.html:17 part/templates/part/category.html:133 -#: part/templates/part/category.html:153 +#: part/models.py:344 part/templates/part/cat_link.html:3 +#: part/templates/part/category.html:23 part/templates/part/category.html:139 +#: part/templates/part/category.html:159 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82 #: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:1946 templates/js/translated/search.js:144 +#: templates/js/translated/part.js:1955 templates/js/translated/search.js:144 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "Alkatrészek" -#: part/models.py:422 +#: part/models.py:429 msgid "Invalid choice for parent part" msgstr "Hibás választás a szülő alkatrészre" -#: part/models.py:492 part/models.py:504 +#: part/models.py:499 part/models.py:511 #, python-brace-format msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)" msgstr "A '{p1}' alkatrész a '{p2}' alkatrészjegyzékében már szerepel (rekurzív)" -#: part/models.py:621 +#: part/models.py:628 msgid "Next available serial numbers are" msgstr "A következő szabad sorozatszámok" -#: part/models.py:625 +#: part/models.py:632 msgid "Next available serial number is" msgstr "A következő szabad sorozatszám" -#: part/models.py:630 +#: part/models.py:637 msgid "Most recent serial number is" msgstr "A legutóbbi sorozatszám" -#: part/models.py:711 +#: part/models.py:718 msgid "Duplicate IPN not allowed in part settings" msgstr "Azonos IPN nem engedélyezett az alkatrész beállításokban" -#: part/models.py:738 part/models.py:2509 +#: part/models.py:745 part/models.py:2516 msgid "Part name" msgstr "Alkatrész neve" -#: part/models.py:745 +#: part/models.py:752 msgid "Is Template" msgstr "Sablon-e" -#: part/models.py:746 +#: part/models.py:753 msgid "Is this part a template part?" msgstr "Ez egy sablon alkatrész?" -#: part/models.py:756 +#: part/models.py:763 msgid "Is this part a variant of another part?" msgstr "Ez az alkatrész egy másik változata?" -#: part/models.py:757 +#: part/models.py:764 msgid "Variant Of" msgstr "Ebből a sablonból" -#: part/models.py:763 +#: part/models.py:770 msgid "Part description" msgstr "Alkatrész leírása" -#: part/models.py:768 part/templates/part/category.html:86 +#: part/models.py:775 part/templates/part/category.html:92 #: part/templates/part/part_base.html:294 msgid "Keywords" msgstr "Kulcsszavak" -#: part/models.py:769 +#: part/models.py:776 msgid "Part keywords to improve visibility in search results" msgstr "Alkatrész kulcsszavak amik segítik a megjelenést a keresési eredményekben" -#: part/models.py:776 part/models.py:2211 part/models.py:2454 +#: part/models.py:783 part/models.py:2218 part/models.py:2461 #: part/templates/part/part_base.html:257 #: templates/InvenTree/settings/settings.html:232 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1438 templates/js/translated/part.js:1664 +#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1668 msgid "Category" msgstr "Kategória" -#: part/models.py:777 +#: part/models.py:784 msgid "Part category" msgstr "Alkatrész kategória" -#: part/models.py:782 part/templates/part/part_base.html:266 -#: templates/js/translated/part.js:735 templates/js/translated/part.js:1391 -#: templates/js/translated/stock.js:1722 +#: part/models.py:789 part/templates/part/part_base.html:266 +#: templates/js/translated/part.js:739 templates/js/translated/part.js:1395 +#: templates/js/translated/stock.js:1726 msgid "IPN" msgstr "IPN" -#: part/models.py:783 +#: part/models.py:790 msgid "Internal Part Number" msgstr "Belső cikkszám" -#: part/models.py:789 +#: part/models.py:796 msgid "Part revision or version number" msgstr "Alkatrész változat vagy verziószám (pl. szín, hossz, revízió, stb.)" -#: part/models.py:790 part/templates/part/part_base.html:273 -#: report/models.py:171 templates/js/translated/part.js:739 +#: part/models.py:797 part/templates/part/part_base.html:273 +#: report/models.py:171 templates/js/translated/part.js:743 msgid "Revision" msgstr "Változat" -#: part/models.py:815 +#: part/models.py:822 msgid "Where is this item normally stored?" msgstr "Alapban hol tároljuk ezt az alkatrészt?" -#: part/models.py:860 part/templates/part/part_base.html:339 +#: part/models.py:867 part/templates/part/part_base.html:339 msgid "Default Supplier" msgstr "Alapértelmezett beszállító" -#: part/models.py:861 +#: part/models.py:868 msgid "Default supplier part" msgstr "Alapértelmezett beszállítói alkatrész" -#: part/models.py:868 +#: part/models.py:875 msgid "Default Expiry" msgstr "Alapértelmezett lejárat" -#: part/models.py:869 +#: part/models.py:876 msgid "Expiry time (in days) for stock items of this part" msgstr "Lejárati idő (napban) ennek az alkatrésznek a készleteire" -#: part/models.py:874 part/templates/part/part_base.html:200 +#: part/models.py:881 part/templates/part/part_base.html:200 msgid "Minimum Stock" msgstr "Minimális készlet" -#: part/models.py:875 +#: part/models.py:882 msgid "Minimum allowed stock level" msgstr "Minimálisan megengedett készlet mennyiség" -#: part/models.py:882 +#: part/models.py:889 msgid "Stock keeping units for this part" msgstr "Az alkatrész raktározási mértékegységei" -#: part/models.py:888 +#: part/models.py:895 msgid "Can this part be built from other parts?" msgstr "Gyártható-e ez az alkatrész más alkatrészekből?" -#: part/models.py:894 +#: part/models.py:901 msgid "Can this part be used to build other parts?" msgstr "Felhasználható-e ez az alkatrész más alkatrészek gyártásához?" -#: part/models.py:900 +#: part/models.py:907 msgid "Does this part have tracking for unique items?" msgstr "Kell-e külön követni az egyes példányait ennek az alkatrésznek?" -#: part/models.py:905 +#: part/models.py:912 msgid "Can this part be purchased from external suppliers?" msgstr "Rendelhető-e ez az alkatrész egy külső beszállítótól?" -#: part/models.py:910 +#: part/models.py:917 msgid "Can this part be sold to customers?" msgstr "Értékesíthető-e önmagában ez az alkatrész a vevőknek?" -#: part/models.py:915 +#: part/models.py:922 msgid "Is this part active?" msgstr "Aktív-e ez az alkatrész?" -#: part/models.py:920 +#: part/models.py:927 msgid "Is this a virtual part, such as a software product or license?" msgstr "Ez egy virtuális nem megfogható alkatrész, pl. szoftver vagy licenc?" -#: part/models.py:922 +#: part/models.py:929 msgid "Part notes" msgstr "Alkatrész megjegyzések" -#: part/models.py:924 +#: part/models.py:931 msgid "BOM checksum" msgstr "Alkatrészjegyzék ellenőrző összeg" -#: part/models.py:924 +#: part/models.py:931 msgid "Stored BOM checksum" msgstr "Tárolt alkatrészjegyzék ellenőrző összeg" -#: part/models.py:927 +#: part/models.py:934 msgid "BOM checked by" msgstr "Alkatrészjegyzéket ellenőrizte" -#: part/models.py:929 +#: part/models.py:936 msgid "BOM checked date" msgstr "Alkatrészjegyzék ellenőrzési dátuma" -#: part/models.py:933 +#: part/models.py:940 msgid "Creation User" msgstr "Létrehozó" -#: part/models.py:1737 +#: part/models.py:1744 msgid "Sell multiple" msgstr "Több értékesítése" -#: part/models.py:2258 +#: part/models.py:2265 msgid "Test templates can only be created for trackable parts" msgstr "Teszt sablont csak követésre kötelezett alkatrészhez lehet csinálni" -#: part/models.py:2275 +#: part/models.py:2282 msgid "Test with this name already exists for this part" msgstr "Erre az alkatrészre már létezik teszt ilyen névvel" -#: part/models.py:2295 templates/js/translated/part.js:1997 -#: templates/js/translated/stock.js:1336 +#: part/models.py:2302 templates/js/translated/part.js:2006 +#: templates/js/translated/stock.js:1340 msgid "Test Name" msgstr "Teszt név" -#: part/models.py:2296 +#: part/models.py:2303 msgid "Enter a name for the test" msgstr "Add meg a teszt nevét" -#: part/models.py:2301 +#: part/models.py:2308 msgid "Test Description" msgstr "Teszt leírása" -#: part/models.py:2302 +#: part/models.py:2309 msgid "Enter description for this test" msgstr "Adj hozzá egy leírást ehhez a teszthez" -#: part/models.py:2307 templates/js/translated/part.js:2006 +#: part/models.py:2314 templates/js/translated/part.js:2015 #: templates/js/translated/table_filters.js:302 msgid "Required" msgstr "Kötelező" -#: part/models.py:2308 +#: part/models.py:2315 msgid "Is this test required to pass?" msgstr "Szükséges-e hogy ez a teszt sikeres legyen?" -#: part/models.py:2313 templates/js/translated/part.js:2014 +#: part/models.py:2320 templates/js/translated/part.js:2023 msgid "Requires Value" msgstr "Kötelező érték" -#: part/models.py:2314 +#: part/models.py:2321 msgid "Does this test require a value when adding a test result?" msgstr "Szükséges-e hogy ennek a tesztnek az eredményéhez kötelezően érték legyen rendelve?" -#: part/models.py:2319 templates/js/translated/part.js:2021 +#: part/models.py:2326 templates/js/translated/part.js:2030 msgid "Requires Attachment" msgstr "Kötelező melléklet" -#: part/models.py:2320 +#: part/models.py:2327 msgid "Does this test require a file attachment when adding a test result?" msgstr "Szükséges-e hogy ennek a tesztnek az eredményéhez kötelezően fájl melléklet legyen rendelve?" -#: part/models.py:2328 +#: part/models.py:2335 #, python-brace-format msgid "Illegal character in template name ({c})" msgstr "Érvénytelen karakter ({c}) a sablon nevében" -#: part/models.py:2364 +#: part/models.py:2371 msgid "Parameter template name must be unique" msgstr "A paraméter sablon nevének egyedinek kell lennie" -#: part/models.py:2372 +#: part/models.py:2379 msgid "Parameter Name" msgstr "Paraméter neve" -#: part/models.py:2379 +#: part/models.py:2386 msgid "Parameter Units" msgstr "Paraméter mértékegysége" -#: part/models.py:2410 +#: part/models.py:2417 msgid "Parent Part" msgstr "Szülő alkatrész" -#: part/models.py:2412 part/models.py:2460 part/models.py:2461 +#: part/models.py:2419 part/models.py:2467 part/models.py:2468 #: templates/InvenTree/settings/settings.html:227 msgid "Parameter Template" msgstr "Paraméter sablon" -#: part/models.py:2414 +#: part/models.py:2421 msgid "Data" msgstr "Adat" -#: part/models.py:2414 +#: part/models.py:2421 msgid "Parameter Value" msgstr "Paraméter értéke" -#: part/models.py:2465 templates/InvenTree/settings/settings.html:236 +#: part/models.py:2472 templates/InvenTree/settings/settings.html:236 msgid "Default Value" msgstr "Alapértelmezett érték" -#: part/models.py:2466 +#: part/models.py:2473 msgid "Default Parameter Value" msgstr "Alapértelmezett paraméter érték" -#: part/models.py:2501 +#: part/models.py:2508 msgid "Part ID or part name" msgstr "Alkatrész ID vagy alkatrész név" -#: part/models.py:2504 templates/js/translated/model_renderers.js:212 +#: part/models.py:2511 templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "Alkatrész ID" -#: part/models.py:2505 +#: part/models.py:2512 msgid "Unique part ID value" msgstr "Egyedi alkatrész ID értéke" -#: part/models.py:2508 +#: part/models.py:2515 msgid "Part Name" msgstr "Alkatrész neve" -#: part/models.py:2512 +#: part/models.py:2519 msgid "Part IPN" msgstr "Alkatrész IPN" -#: part/models.py:2513 +#: part/models.py:2520 msgid "Part IPN value" msgstr "Alkatrész IPN érték" -#: part/models.py:2516 +#: part/models.py:2523 msgid "Level" msgstr "Szint" -#: part/models.py:2517 +#: part/models.py:2524 msgid "BOM level" msgstr "Alkatrészjegyzék szint" -#: part/models.py:2586 +#: part/models.py:2593 msgid "Select parent part" msgstr "Szülő alkatrész kiválasztása" -#: part/models.py:2594 +#: part/models.py:2601 msgid "Sub part" msgstr "Al alkatrész" -#: part/models.py:2595 +#: part/models.py:2602 msgid "Select part to be used in BOM" msgstr "Válaszd ki az alkatrészjegyzékben használandó alkatrészt" -#: part/models.py:2601 +#: part/models.py:2608 msgid "BOM quantity for this BOM item" msgstr "Alkatrészjegyzék mennyiség ehhez az alkatrészjegyzék tételhez" -#: part/models.py:2603 part/templates/part/upload_bom.html:58 +#: part/models.py:2610 part/templates/part/upload_bom.html:58 #: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999 #: templates/js/translated/table_filters.js:100 msgid "Optional" msgstr "Opcionális" -#: part/models.py:2603 +#: part/models.py:2610 msgid "This BOM item is optional" msgstr "Ez az alkatrészjegyzék tétel opcionális" -#: part/models.py:2606 part/templates/part/upload_bom.html:55 +#: part/models.py:2613 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "Többlet" -#: part/models.py:2607 +#: part/models.py:2614 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "Becsült gyártási veszteség (abszolút vagy százalékos)" -#: part/models.py:2610 +#: part/models.py:2617 msgid "BOM item reference" msgstr "Alkatrészjegyzék tétel azonosító" -#: part/models.py:2613 +#: part/models.py:2620 msgid "BOM item notes" msgstr "Alkatrészjegyzék tétel megjegyzései" -#: part/models.py:2615 +#: part/models.py:2622 msgid "Checksum" msgstr "Ellenőrző összeg" -#: part/models.py:2615 +#: part/models.py:2622 msgid "BOM line checksum" msgstr "Alkatrészjegyzék sor ellenőrző összeg" -#: part/models.py:2619 part/templates/part/upload_bom.html:57 +#: part/models.py:2626 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1016 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:96 msgid "Inherited" msgstr "Örökölt" -#: part/models.py:2620 +#: part/models.py:2627 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "Ezt az alkatrészjegyzék tételt az alkatrész változatok alkatrészjegyzékei is öröklik" -#: part/models.py:2625 part/templates/part/upload_bom.html:56 +#: part/models.py:2632 part/templates/part/upload_bom.html:56 #: templates/js/translated/bom.js:1008 msgid "Allow Variants" msgstr "Változatok" -#: part/models.py:2626 +#: part/models.py:2633 msgid "Stock items for variant parts can be used for this BOM item" msgstr "Alkatrészváltozatok készlet tételei használhatók ehhez az alkatrészjegyzék tételhez" -#: part/models.py:2704 stock/models.py:461 +#: part/models.py:2711 stock/models.py:468 msgid "Quantity must be integer value for trackable parts" msgstr "A mennyiség egész szám kell legyen a követésre kötelezett alkatrészek esetén" -#: part/models.py:2713 part/models.py:2715 +#: part/models.py:2720 part/models.py:2722 msgid "Sub part must be specified" msgstr "Al alkatrészt kötelező megadni" -#: part/models.py:2820 +#: part/models.py:2827 msgid "BOM Item Substitute" msgstr "Alkatrészjegyzék tétel helyettesítő" -#: part/models.py:2841 +#: part/models.py:2848 msgid "Substitute part cannot be the same as the master part" msgstr "A helyettesítő alkatrész nem lehet ugyanaz mint a fő alkatrész" -#: part/models.py:2854 +#: part/models.py:2861 msgid "Parent BOM item" msgstr "Szülő alkatrészjegyzék tétel" -#: part/models.py:2862 +#: part/models.py:2869 msgid "Substitute part" msgstr "Helyettesítő alkatrész" -#: part/models.py:2877 +#: part/models.py:2884 msgid "Part 1" msgstr "1.rész" -#: part/models.py:2881 +#: part/models.py:2888 msgid "Part 2" msgstr "2.rész" -#: part/models.py:2881 +#: part/models.py:2888 msgid "Select Related Part" msgstr "Válassz kapcsolódó alkatrészt" -#: part/models.py:2899 +#: part/models.py:2906 msgid "Part relationship cannot be created between a part and itself" msgstr "Alkatrész kapcsolat nem hozható létre önmagával" -#: part/models.py:2903 +#: part/models.py:2910 msgid "Duplicate relationship already exists" msgstr "Már létezik duplikált alkatrész kapcsolat" -#: part/serializers.py:152 part/serializers.py:183 stock/serializers.py:181 +#: part/serializers.py:154 part/serializers.py:185 stock/serializers.py:181 msgid "Purchase currency of this stock item" msgstr "Beszerzési pénzneme ennek a készlet tételnek" -#: part/serializers.py:812 +#: part/serializers.py:814 msgid "Select part to copy BOM from" msgstr "Válassz alkatrészt ahonnan az alkatrészjegyzéket másoljuk" -#: part/serializers.py:820 +#: part/serializers.py:822 msgid "Remove Existing Data" msgstr "Létező adat törlése" -#: part/serializers.py:821 +#: part/serializers.py:823 msgid "Remove existing BOM items before copying" msgstr "Meglévő alkatrészjegyzék tételek törlése a másolás előtt" -#: part/serializers.py:826 +#: part/serializers.py:828 msgid "Include Inherited" msgstr "Örököltekkel együtt" -#: part/serializers.py:827 +#: part/serializers.py:829 msgid "Include BOM items which are inherited from templated parts" msgstr "Sablon alkatrészektől örökölt alkatrészjegyzék tételek használata" -#: part/serializers.py:832 +#: part/serializers.py:834 msgid "Skip Invalid Rows" msgstr "Hibás sorok kihagyása" -#: part/serializers.py:833 +#: part/serializers.py:835 msgid "Enable this option to skip invalid rows" msgstr "Engedély a hibás sorok kihagyására" -#: part/serializers.py:838 +#: part/serializers.py:840 msgid "Copy Substitute Parts" msgstr "Helyettesítő alkatrészek másolása" -#: part/serializers.py:839 +#: part/serializers.py:841 msgid "Copy substitute parts when duplicate BOM items" msgstr "Helyettesítő alkatrészek másolása az alkatrészjegyzék tételek másolásakor" -#: part/serializers.py:879 +#: part/serializers.py:881 msgid "Clear Existing BOM" msgstr "Meglévő alkatrészjegyzék törlése" -#: part/serializers.py:880 +#: part/serializers.py:882 msgid "Delete existing BOM items before uploading" msgstr "Meglévő alkatrészjegyzék tételek törlése a feltöltés előtt" -#: part/serializers.py:910 +#: part/serializers.py:912 msgid "No part column specified" msgstr "Nincs megadva alkatrész oszlop" -#: part/serializers.py:953 +#: part/serializers.py:955 msgid "Multiple matching parts found" msgstr "Több egyező alkatrész is található" -#: part/serializers.py:956 +#: part/serializers.py:958 msgid "No matching part found" msgstr "Nincs egyező alkatrész" -#: part/serializers.py:959 +#: part/serializers.py:961 msgid "Part is not designated as a component" msgstr "Az alkatrész nem lett összetevőként jelölve" -#: part/serializers.py:968 +#: part/serializers.py:970 msgid "Quantity not provided" msgstr "Mennyiség nincs megadva" -#: part/serializers.py:976 +#: part/serializers.py:978 msgid "Invalid quantity" msgstr "Érvénytelen mennyiség" -#: part/serializers.py:997 +#: part/serializers.py:999 msgid "At least one BOM item is required" msgstr "Legalább egy alkatrészjegyzék tétel szükséges" @@ -4849,101 +4885,101 @@ msgstr "Alkatrészjegyzék műveletek" msgid "Delete Items" msgstr "Tételek törlése" -#: part/templates/part/category.html:28 part/templates/part/category.html:32 +#: part/templates/part/category.html:34 part/templates/part/category.html:38 msgid "You are subscribed to notifications for this category" msgstr "Értesítések beállítva erre a kategóriára" -#: part/templates/part/category.html:36 +#: part/templates/part/category.html:42 msgid "Subscribe to notifications for this category" msgstr "Értesítések kérése erre a kategóriára" -#: part/templates/part/category.html:42 +#: part/templates/part/category.html:48 msgid "Category Actions" msgstr "Kategória műveletek" -#: part/templates/part/category.html:47 +#: part/templates/part/category.html:53 msgid "Edit category" msgstr "Kategória szerkesztése" -#: part/templates/part/category.html:48 +#: part/templates/part/category.html:54 msgid "Edit Category" msgstr "Kategória szerkesztése" -#: part/templates/part/category.html:52 +#: part/templates/part/category.html:58 msgid "Delete category" msgstr "Kategória törlése" -#: part/templates/part/category.html:53 +#: part/templates/part/category.html:59 msgid "Delete Category" msgstr "Kategória törlése" -#: part/templates/part/category.html:61 +#: part/templates/part/category.html:67 msgid "Create new part category" msgstr "Alkatrész kategória létrehozása" -#: part/templates/part/category.html:62 +#: part/templates/part/category.html:68 msgid "New Category" msgstr "Új kategória" -#: part/templates/part/category.html:80 part/templates/part/category.html:93 +#: part/templates/part/category.html:86 part/templates/part/category.html:99 msgid "Category Path" msgstr "Kategória elérési út" -#: part/templates/part/category.html:94 +#: part/templates/part/category.html:100 msgid "Top level part category" msgstr "Legfelső szintű alkatrész kategória" -#: part/templates/part/category.html:114 part/templates/part/category.html:222 +#: part/templates/part/category.html:120 part/templates/part/category.html:228 #: part/templates/part/category_sidebar.html:7 msgid "Subcategories" msgstr "Alkategóriák" -#: part/templates/part/category.html:119 +#: part/templates/part/category.html:125 msgid "Parts (Including subcategories)" msgstr "Alkatrészek száma (alkategóriákkal együtt)" -#: part/templates/part/category.html:157 +#: part/templates/part/category.html:163 msgid "Create new part" msgstr "Alkatrész létrehozása" -#: part/templates/part/category.html:158 templates/js/translated/bom.js:367 +#: part/templates/part/category.html:164 templates/js/translated/bom.js:367 msgid "New Part" msgstr "Új alkatrész" -#: part/templates/part/category.html:168 part/templates/part/detail.html:363 +#: part/templates/part/category.html:174 part/templates/part/detail.html:363 #: part/templates/part/detail.html:394 msgid "Options" msgstr "Opciók" -#: part/templates/part/category.html:172 +#: part/templates/part/category.html:178 msgid "Set category" msgstr "Kategória beállítása" -#: part/templates/part/category.html:173 +#: part/templates/part/category.html:179 msgid "Set Category" msgstr "Kategória beállítása" -#: part/templates/part/category.html:180 part/templates/part/category.html:181 +#: part/templates/part/category.html:186 part/templates/part/category.html:187 msgid "Print Labels" msgstr "Címkék nyomtatása" -#: part/templates/part/category.html:206 +#: part/templates/part/category.html:212 msgid "Part Parameters" msgstr "Alkatrész paraméterek" -#: part/templates/part/category.html:320 +#: part/templates/part/category.html:327 msgid "Create Part Category" msgstr "Alkatrész kategória létrehozása" -#: part/templates/part/category.html:340 +#: part/templates/part/category.html:347 msgid "Create Part" msgstr "Alkatrész létrehozása" -#: part/templates/part/category.html:343 +#: part/templates/part/category.html:350 msgid "Create another part after this one" msgstr "Új alkatrész létrehozása ez után" -#: part/templates/part/category.html:344 +#: part/templates/part/category.html:351 msgid "Part created successfully" msgstr "Alkatrész sikeresen létrehozva" @@ -4951,7 +4987,7 @@ msgstr "Alkatrész sikeresen létrehozva" msgid "Import Parts" msgstr "Alkatrészek importálása" -#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:375 +#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:379 msgid "Duplicate Part" msgstr "Alkatrész másolása" @@ -5173,19 +5209,19 @@ msgstr "Értesítések kérése erre az alkatrészre" #: part/templates/part/part_base.html:43 #: stock/templates/stock/item_base.html:41 -#: stock/templates/stock/location.html:43 +#: stock/templates/stock/location.html:48 msgid "Barcode actions" msgstr "Vonalkód műveletek" #: part/templates/part/part_base.html:46 #: stock/templates/stock/item_base.html:45 -#: stock/templates/stock/location.html:45 templates/qr_button.html:1 +#: stock/templates/stock/location.html:50 templates/qr_button.html:1 msgid "Show QR Code" msgstr "QR kód megjelenítése" #: part/templates/part/part_base.html:49 #: stock/templates/stock/item_base.html:63 -#: stock/templates/stock/location.html:47 +#: stock/templates/stock/location.html:52 msgid "Print Label" msgstr "Címke nyomtatása" @@ -5195,7 +5231,7 @@ msgstr "Árinformációk megjelenítése" #: part/templates/part/part_base.html:60 #: stock/templates/stock/item_base.html:116 -#: stock/templates/stock/location.html:56 +#: stock/templates/stock/location.html:61 msgid "Stock actions" msgstr "Készlet műveletek" @@ -5256,7 +5292,7 @@ msgstr "Virtuális (nem kézzelfogható alkatrész)" #: templates/js/translated/company.js:624 #: templates/js/translated/company.js:884 #: templates/js/translated/model_renderers.js:204 -#: templates/js/translated/part.js:650 templates/js/translated/part.js:727 +#: templates/js/translated/part.js:654 templates/js/translated/part.js:731 msgid "Inactive" msgstr "Inaktív" @@ -5290,9 +5326,9 @@ msgstr "Vevő rendeléshez lefoglalva" msgid "Can Build" msgstr "Gyártható" -#: part/templates/part/part_base.html:238 templates/js/translated/part.js:589 -#: templates/js/translated/part.js:609 templates/js/translated/part.js:1302 -#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490 +#: part/templates/part/part_base.html:238 templates/js/translated/part.js:593 +#: templates/js/translated/part.js:613 templates/js/translated/part.js:1306 +#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1494 msgid "Building" msgstr "Gyártásban" @@ -5465,8 +5501,8 @@ msgstr "Eladási költség" msgid "No sale pice history available for this part." msgstr "Az alkatrészhez nem áll rendelkezésre eladási ártörténet." -#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:612 -#: templates/js/translated/part.js:1290 templates/js/translated/part.js:1494 +#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616 +#: templates/js/translated/part.js:1294 templates/js/translated/part.js:1498 msgid "No Stock" msgstr "Nincs készlet" @@ -5631,51 +5667,55 @@ msgstr "Email értesítések engedélyezése" msgid "Allow sending of emails for event notifications" msgstr "Email küldés engedélyezése esemény értesítésekre" -#: plugin/models.py:32 +#: plugin/models.py:33 msgid "Plugin Metadata" msgstr "Plugin meta adatok" -#: plugin/models.py:33 +#: plugin/models.py:34 msgid "JSON metadata field, for use by external plugins" msgstr "JSON meta adat mező, külső pluginok számára" -#: plugin/models.py:79 +#: plugin/models.py:80 msgid "Plugin Configuration" msgstr "Plugin beállítás" -#: plugin/models.py:80 +#: plugin/models.py:81 msgid "Plugin Configurations" msgstr "Plugin beállítások" -#: plugin/models.py:85 +#: plugin/models.py:86 msgid "Key" msgstr "Kulcs" -#: plugin/models.py:86 +#: plugin/models.py:87 msgid "Key of plugin" msgstr "Plugin kulcsa" -#: plugin/models.py:94 +#: plugin/models.py:95 msgid "PluginName of the plugin" msgstr "PluginNeve a pluginnak" -#: plugin/models.py:100 +#: plugin/models.py:101 msgid "Is the plugin active" msgstr "Aktív-e a plugin" -#: plugin/models.py:168 +#: plugin/models.py:158 +msgid "Sample plugin" +msgstr "" + +#: plugin/models.py:186 msgid "Plugin" msgstr "Plugin" -#: plugin/models.py:231 +#: plugin/models.py:249 msgid "Method" msgstr "Módszer" -#: plugin/plugin.py:228 +#: plugin/plugin.py:251 msgid "No author found" msgstr "Nincs szerző" -#: plugin/plugin.py:240 +#: plugin/plugin.py:263 msgid "No date found" msgstr "Nincs dátum" @@ -5747,12 +5787,12 @@ msgstr "Vagy csomag nevet vagy URL-t meg kell adni" msgid "No valid objects provided to template" msgstr "Nincs érvényes objektum megadva a sablonhoz" -#: report/api.py:216 report/api.py:257 +#: report/api.py:216 report/api.py:252 #, python-brace-format msgid "Template file '{template}' is missing or does not exist" msgstr "A '{template}' sablon fájl hiányzik vagy nem érhető el" -#: report/api.py:360 +#: report/api.py:355 msgid "Test report" msgstr "Teszt riport" @@ -5853,12 +5893,12 @@ msgid "Stock Item Test Report" msgstr "Készlet tétel teszt riport" #: report/templates/report/inventree_test_report_base.html:79 -#: stock/models.py:641 stock/templates/stock/item_base.html:322 +#: stock/models.py:648 stock/templates/stock/item_base.html:322 #: templates/js/translated/build.js:424 templates/js/translated/build.js:576 #: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673 #: templates/js/translated/model_renderers.js:118 #: templates/js/translated/order.js:118 templates/js/translated/order.js:3297 -#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:486 +#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490 msgid "Serial Number" msgstr "Sorozatszám" @@ -5867,19 +5907,19 @@ msgid "Test Results" msgstr "Teszt eredmények" #: report/templates/report/inventree_test_report_base.html:93 -#: stock/models.py:2076 +#: stock/models.py:2083 msgid "Test" msgstr "Teszt" #: report/templates/report/inventree_test_report_base.html:94 -#: stock/models.py:2082 +#: stock/models.py:2089 msgid "Result" msgstr "Eredmény" #: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:51 +#: templates/InvenTree/settings/plugin.html:53 #: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2459 +#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468 msgid "Date" msgstr "Dátum" @@ -5897,8 +5937,8 @@ msgid "Installed Items" msgstr "Beépített tételek" #: report/templates/report/inventree_test_report_base.html:137 -#: templates/js/translated/stock.js:606 templates/js/translated/stock.js:776 -#: templates/js/translated/stock.js:2708 +#: templates/js/translated/stock.js:610 templates/js/translated/stock.js:780 +#: templates/js/translated/stock.js:2717 msgid "Serial" msgstr "Sorozatszám" @@ -5914,241 +5954,241 @@ msgstr "Egy érvényes alkatrészt meg kell adni" msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "Sorozatszámot nem lehet megadni nem követésre kötelezett alkatrész esetén" -#: stock/models.py:82 stock/models.py:732 +#: stock/models.py:89 stock/models.py:739 #: stock/templates/stock/item_base.html:252 msgid "Owner" msgstr "Tulajdonos" -#: stock/models.py:83 stock/models.py:733 +#: stock/models.py:90 stock/models.py:740 msgid "Select Owner" msgstr "Tulajdonos kiválasztása" -#: stock/models.py:435 +#: stock/models.py:442 msgid "StockItem with this serial number already exists" msgstr "Létezik már készlet tétel ilyen a sorozatszámmal" -#: stock/models.py:467 stock/serializers.py:95 +#: stock/models.py:474 stock/serializers.py:95 msgid "Stock item cannot be created for virtual parts" msgstr "Virtuális alkatrészből nem lehet készletet létrehozni" -#: stock/models.py:484 +#: stock/models.py:491 #, python-brace-format msgid "Part type ('{pf}') must be {pe}" msgstr "A alkatrész típus ('{pf}') {pe} kell legyen" -#: stock/models.py:494 stock/models.py:503 +#: stock/models.py:501 stock/models.py:510 msgid "Quantity must be 1 for item with a serial number" msgstr "Mennyiség 1 kell legyen a sorozatszámmal rendelkező tételnél" -#: stock/models.py:495 +#: stock/models.py:502 msgid "Serial number cannot be set if quantity greater than 1" msgstr "Nem lehet sorozatszámot megadni ha a mennyiség több mint egy" -#: stock/models.py:517 +#: stock/models.py:524 msgid "Item cannot belong to itself" msgstr "A tétel nem tartozhat saját magához" -#: stock/models.py:523 +#: stock/models.py:530 msgid "Item must have a build reference if is_building=True" msgstr "A tételnek kell legyen gyártási azonosítója ha az is_bulding igaz" -#: stock/models.py:537 +#: stock/models.py:544 msgid "Build reference does not point to the same part object" msgstr "Gyártási azonosító nem ugyanarra az alkatrész objektumra mutat" -#: stock/models.py:583 +#: stock/models.py:590 msgid "Parent Stock Item" msgstr "Szülő készlet tétel" -#: stock/models.py:593 +#: stock/models.py:600 msgid "Base part" msgstr "Kiindulási alkatrész" -#: stock/models.py:601 +#: stock/models.py:608 msgid "Select a matching supplier part for this stock item" msgstr "Válassz egy egyező beszállítói alkatrészt ehhez a készlet tételhez" -#: stock/models.py:608 stock/templates/stock/location.html:17 +#: stock/models.py:615 stock/templates/stock/location.html:17 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" msgstr "Készlet hely" -#: stock/models.py:611 +#: stock/models.py:618 msgid "Where is this stock item located?" msgstr "Hol található ez az alkatrész?" -#: stock/models.py:618 +#: stock/models.py:625 msgid "Packaging this stock item is stored in" msgstr "A csomagolása ennek a készlet tételnek itt van tárolva" -#: stock/models.py:624 stock/templates/stock/item_base.html:361 +#: stock/models.py:631 stock/templates/stock/item_base.html:361 msgid "Installed In" msgstr "Beépítve ebbe" -#: stock/models.py:627 +#: stock/models.py:634 msgid "Is this item installed in another item?" msgstr "Ez a tétel be van építve egy másik tételbe?" -#: stock/models.py:643 +#: stock/models.py:650 msgid "Serial number for this item" msgstr "Sorozatszám ehhez a tételhez" -#: stock/models.py:657 +#: stock/models.py:664 msgid "Batch code for this stock item" msgstr "Batch kód ehhez a készlet tételhez" -#: stock/models.py:662 +#: stock/models.py:669 msgid "Stock Quantity" msgstr "Készlet mennyiség" -#: stock/models.py:671 +#: stock/models.py:678 msgid "Source Build" msgstr "Forrás gyártás" -#: stock/models.py:673 +#: stock/models.py:680 msgid "Build for this stock item" msgstr "Gyártás ehhez a készlet tételhez" -#: stock/models.py:684 +#: stock/models.py:691 msgid "Source Purchase Order" msgstr "Forrás beszerzési rendelés" -#: stock/models.py:687 +#: stock/models.py:694 msgid "Purchase order for this stock item" msgstr "Beszerzés ehhez a készlet tételhez" -#: stock/models.py:693 +#: stock/models.py:700 msgid "Destination Sales Order" msgstr "Cél vevői rendelés" -#: stock/models.py:699 stock/templates/stock/item_base.html:429 -#: templates/js/translated/stock.js:1879 +#: stock/models.py:706 stock/templates/stock/item_base.html:429 +#: templates/js/translated/stock.js:1883 msgid "Expiry Date" msgstr "Lejárati dátum" -#: stock/models.py:700 +#: stock/models.py:707 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "Készlet tétel lejárati dátuma. A készlet lejártnak tekinthető ezután a dátum után" -#: stock/models.py:713 +#: stock/models.py:720 msgid "Delete on deplete" msgstr "Törlés ha kimerül" -#: stock/models.py:713 +#: stock/models.py:720 msgid "Delete this Stock Item when stock is depleted" msgstr "Készlet tétel törlése ha kimerül" -#: stock/models.py:720 stock/templates/stock/item.html:132 +#: stock/models.py:727 stock/templates/stock/item.html:132 msgid "Stock Item Notes" msgstr "Készlet tétel megjegyzések" -#: stock/models.py:728 +#: stock/models.py:735 msgid "Single unit purchase price at time of purchase" msgstr "Egy egység beszerzési ára a beszerzés időpontjában" -#: stock/models.py:756 +#: stock/models.py:763 msgid "Converted to part" msgstr "Alkatrésszé alakítva" -#: stock/models.py:1235 +#: stock/models.py:1242 msgid "Part is not set as trackable" msgstr "Az alkatrész nem követésre kötelezett" -#: stock/models.py:1241 +#: stock/models.py:1248 msgid "Quantity must be integer" msgstr "Mennyiség egész szám kell legyen" -#: stock/models.py:1247 +#: stock/models.py:1254 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({n})" msgstr "A mennyiség nem lépheti túl a készletet ({n})" -#: stock/models.py:1250 +#: stock/models.py:1257 msgid "Serial numbers must be a list of integers" msgstr "A sorozatszám egész számok listája kell legyen" -#: stock/models.py:1253 +#: stock/models.py:1260 msgid "Quantity does not match serial numbers" msgstr "A mennyiség nem egyezik a megadott sorozatszámok számával" -#: stock/models.py:1260 +#: stock/models.py:1267 #, python-brace-format msgid "Serial numbers already exist: {exists}" msgstr "Ezek a sorozatszámok már léteznek: {exists}" -#: stock/models.py:1330 +#: stock/models.py:1337 msgid "Stock item has been assigned to a sales order" msgstr "Készlet tétel hozzárendelve egy vevői rendeléshez" -#: stock/models.py:1333 +#: stock/models.py:1340 msgid "Stock item is installed in another item" msgstr "Készlet tétel beépül egy másikba" -#: stock/models.py:1336 +#: stock/models.py:1343 msgid "Stock item contains other items" msgstr "A készlet tétel más tételeket tartalmaz" -#: stock/models.py:1339 +#: stock/models.py:1346 msgid "Stock item has been assigned to a customer" msgstr "Készlet tétel hozzárendelve egy vevőhöz" -#: stock/models.py:1342 +#: stock/models.py:1349 msgid "Stock item is currently in production" msgstr "Készlet tétel gyártás alatt" -#: stock/models.py:1345 +#: stock/models.py:1352 msgid "Serialized stock cannot be merged" msgstr "Követésre kötelezett készlet nem vonható össze" -#: stock/models.py:1352 stock/serializers.py:959 +#: stock/models.py:1359 stock/serializers.py:961 msgid "Duplicate stock items" msgstr "Duplikált készlet tételek vannak" -#: stock/models.py:1356 +#: stock/models.py:1363 msgid "Stock items must refer to the same part" msgstr "A készlet tétel ugyanarra az alkatrészre kell vonatkozzon" -#: stock/models.py:1360 +#: stock/models.py:1367 msgid "Stock items must refer to the same supplier part" msgstr "A készlet tétel ugyanarra a beszállítói alkatrészre kell vonatkozzon" -#: stock/models.py:1364 +#: stock/models.py:1371 msgid "Stock status codes must match" msgstr "Készlet tételek állapotainak egyeznie kell" -#: stock/models.py:1533 +#: stock/models.py:1540 msgid "StockItem cannot be moved as it is not in stock" msgstr "Készlet tétel nem mozgatható mivel nincs készleten" -#: stock/models.py:1994 +#: stock/models.py:2001 msgid "Entry notes" msgstr "Bejegyzés megjegyzései" -#: stock/models.py:2052 +#: stock/models.py:2059 msgid "Value must be provided for this test" msgstr "Ehhez a teszthez meg kell adni értéket" -#: stock/models.py:2058 +#: stock/models.py:2065 msgid "Attachment must be uploaded for this test" msgstr "Ehhez a teszthez fel kell tölteni mellékletet" -#: stock/models.py:2077 +#: stock/models.py:2084 msgid "Test name" msgstr "Teszt neve" -#: stock/models.py:2083 +#: stock/models.py:2090 msgid "Test result" msgstr "Teszt eredménye" -#: stock/models.py:2089 +#: stock/models.py:2096 msgid "Test output value" msgstr "Teszt kimeneti értéke" -#: stock/models.py:2096 +#: stock/models.py:2103 msgid "Test result attachment" msgstr "Teszt eredmény melléklet" -#: stock/models.py:2102 +#: stock/models.py:2109 msgid "Test notes" msgstr "Tesztek megjegyzései" @@ -6173,7 +6213,7 @@ msgstr "A mennyiség nem lépheti túl a rendelkezésre álló készletet ({q})" msgid "Enter serial numbers for new items" msgstr "Írd be a sorozatszámokat az új tételekhez" -#: stock/serializers.py:323 stock/serializers.py:916 stock/serializers.py:1149 +#: stock/serializers.py:323 stock/serializers.py:918 stock/serializers.py:1151 msgid "Destination stock location" msgstr "Cél készlet hely" @@ -6221,63 +6261,63 @@ msgstr "A kiválasztott alkatrész nem megfelelő a konverzióhoz" msgid "Destination location for returned item" msgstr "Cél hely a visszatérő tételeknek" -#: stock/serializers.py:771 +#: stock/serializers.py:773 msgid "Part must be salable" msgstr "Az alkatrésznek értékesíthetőnek kell lennie" -#: stock/serializers.py:775 +#: stock/serializers.py:777 msgid "Item is allocated to a sales order" msgstr "A tétel egy vevő rendeléshez foglalt" -#: stock/serializers.py:779 +#: stock/serializers.py:781 msgid "Item is allocated to a build order" msgstr "A tétel egy gyártási utasításhoz foglalt" -#: stock/serializers.py:810 +#: stock/serializers.py:812 msgid "Customer to assign stock items" msgstr "Vevő akihez rendeljük a készlet tételeket" -#: stock/serializers.py:816 +#: stock/serializers.py:818 msgid "Selected company is not a customer" msgstr "A kiválasztott cég nem egy vevő" -#: stock/serializers.py:824 +#: stock/serializers.py:826 msgid "Stock assignment notes" msgstr "Készlet hozzárendelés megjegyzései" -#: stock/serializers.py:834 stock/serializers.py:1065 +#: stock/serializers.py:836 stock/serializers.py:1067 msgid "A list of stock items must be provided" msgstr "A készlet tételek listáját meg kell adni" -#: stock/serializers.py:923 +#: stock/serializers.py:925 msgid "Stock merging notes" msgstr "Készlet összevonás megjegyzései" -#: stock/serializers.py:928 +#: stock/serializers.py:930 msgid "Allow mismatched suppliers" msgstr "Nem egyező beszállítók megengedése" -#: stock/serializers.py:929 +#: stock/serializers.py:931 msgid "Allow stock items with different supplier parts to be merged" msgstr "Különböző beszállítói alkatrészekből származó készletek összevonásának engedélyezése" -#: stock/serializers.py:934 +#: stock/serializers.py:936 msgid "Allow mismatched status" msgstr "Nem egyező állapotok megjelenítése" -#: stock/serializers.py:935 +#: stock/serializers.py:937 msgid "Allow stock items with different status codes to be merged" msgstr "Különböző állapotú készletek összevonásának engedélyezése" -#: stock/serializers.py:945 +#: stock/serializers.py:947 msgid "At least two stock items must be provided" msgstr "Legalább két készlet tételt meg kell adni" -#: stock/serializers.py:1027 +#: stock/serializers.py:1029 msgid "StockItem primary key value" msgstr "Készlet tétel elsődleges kulcs értéke" -#: stock/serializers.py:1055 +#: stock/serializers.py:1057 msgid "Stock transaction notes" msgstr "Készlet tranzakció megjegyzései" @@ -6314,7 +6354,7 @@ msgstr "Teszt adatok hozzáadása" msgid "Installed Stock Items" msgstr "Beépített készlet tételek" -#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2852 +#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2861 msgid "Install Stock Item" msgstr "Készlet tétel beépítése" @@ -6322,7 +6362,7 @@ msgstr "Készlet tétel beépítése" msgid "Delete all test results for this stock item" msgstr "Készlet tétel összes teszt eredményének törlése" -#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1518 +#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1522 msgid "Add Test Result" msgstr "Teszt eredmény hozzáadása" @@ -6353,7 +6393,7 @@ msgid "Stock adjustment actions" msgstr "Készlet módosítási műveletek" #: stock/templates/stock/item_base.html:80 -#: stock/templates/stock/location.html:63 templates/stock_table.html:47 +#: stock/templates/stock/location.html:68 templates/stock_table.html:47 msgid "Count stock" msgstr "Leltározás" @@ -6370,7 +6410,7 @@ msgid "Serialize stock" msgstr "Sorozatszámok előállítása" #: stock/templates/stock/item_base.html:93 -#: stock/templates/stock/location.html:69 templates/stock_table.html:48 +#: stock/templates/stock/location.html:74 templates/stock_table.html:48 msgid "Transfer stock" msgstr "Készlet áthelyezése" @@ -6431,7 +6471,7 @@ msgid "You are not in the list of owners of this item. This stock item cannot be msgstr "Úgytűnik nem vagy ennek a tételnek a tulajdonosa. Ezt így nem tudod módosítani." #: stock/templates/stock/item_base.html:257 -#: stock/templates/stock/location.html:127 +#: stock/templates/stock/location.html:132 msgid "Read only" msgstr "Csak olvasható" @@ -6509,7 +6549,7 @@ msgid "Stale" msgstr "Állott" #: stock/templates/stock/item_base.html:442 -#: templates/js/translated/company.js:985 templates/js/translated/stock.js:1895 +#: templates/js/translated/company.js:985 templates/js/translated/stock.js:1899 msgid "Last Updated" msgstr "Utoljára módosítva" @@ -6553,58 +6593,58 @@ msgstr "Sorszámozott készletek létrehozása ebből a készlet tételből." msgid "Select quantity to serialize, and unique serial numbers." msgstr "Válassz mennyiséget és egyedi sorozatszámokat a sorozatszámozáshoz." -#: stock/templates/stock/location.html:33 +#: stock/templates/stock/location.html:38 msgid "Locate stock location" msgstr "Készlet hely keresése" -#: stock/templates/stock/location.html:49 +#: stock/templates/stock/location.html:54 msgid "Check-in Items" msgstr "Tételek bevételezése" -#: stock/templates/stock/location.html:77 +#: stock/templates/stock/location.html:82 msgid "Location actions" msgstr "Hely műveletek" -#: stock/templates/stock/location.html:79 +#: stock/templates/stock/location.html:84 msgid "Edit location" msgstr "Hely szerkesztése" -#: stock/templates/stock/location.html:81 +#: stock/templates/stock/location.html:86 msgid "Delete location" msgstr "Hely törlése" -#: stock/templates/stock/location.html:90 +#: stock/templates/stock/location.html:95 msgid "Create new stock location" msgstr "Új készlet hely létrehozása" -#: stock/templates/stock/location.html:91 +#: stock/templates/stock/location.html:96 msgid "New Location" msgstr "Új hely" -#: stock/templates/stock/location.html:109 -#: stock/templates/stock/location.html:115 +#: stock/templates/stock/location.html:114 +#: stock/templates/stock/location.html:120 msgid "Location Path" msgstr "Hely elérési út" -#: stock/templates/stock/location.html:116 +#: stock/templates/stock/location.html:121 msgid "Top level stock location" msgstr "Legfelső szintű készlet hely" -#: stock/templates/stock/location.html:122 +#: stock/templates/stock/location.html:127 msgid "Location Owner" msgstr "Hely tulajdonosa" -#: stock/templates/stock/location.html:126 +#: stock/templates/stock/location.html:131 msgid "You are not in the list of owners of this location. This stock location cannot be edited." msgstr "Úgytűnik nem vagy ennek a készlethelynek a tulajdonosa. Ezt így nem tudod módosítani." -#: stock/templates/stock/location.html:142 -#: stock/templates/stock/location.html:189 +#: stock/templates/stock/location.html:147 +#: stock/templates/stock/location.html:194 #: stock/templates/stock/location_sidebar.html:5 msgid "Sublocations" msgstr "Alhelyek" -#: stock/templates/stock/location.html:156 templates/InvenTree/search.html:165 +#: stock/templates/stock/location.html:161 templates/InvenTree/search.html:165 #: templates/js/translated/search.js:238 users/models.py:39 msgid "Stock Locations" msgstr "Készlethelyek" @@ -6876,15 +6916,15 @@ msgstr "Megnyitás új fülön" msgid "Part Settings" msgstr "Alkatrész beállítások" -#: templates/InvenTree/settings/part.html:44 +#: templates/InvenTree/settings/part.html:46 msgid "Part Import" msgstr "Alkatrész importálás" -#: templates/InvenTree/settings/part.html:48 +#: templates/InvenTree/settings/part.html:50 msgid "Import Part" msgstr "Alkatrész importálása" -#: templates/InvenTree/settings/part.html:62 +#: templates/InvenTree/settings/part.html:64 msgid "Part Parameter Templates" msgstr "Alkatrész paraméter sablonok" @@ -6896,47 +6936,47 @@ msgstr "Plugin beállítások" msgid "Changing the settings below require you to immediately restart the server. Do not change this while under active usage." msgstr "Az alábbi beállítások módosításához a kiszolgáló azonnali újraindítása szükséges. Aktív használat közben ne változtass ezeken." -#: templates/InvenTree/settings/plugin.html:34 +#: templates/InvenTree/settings/plugin.html:36 msgid "Plugins" msgstr "Pluginok" -#: templates/InvenTree/settings/plugin.html:39 +#: templates/InvenTree/settings/plugin.html:41 #: templates/js/translated/plugin.js:16 msgid "Install Plugin" msgstr "Plugin Telepítése" -#: templates/InvenTree/settings/plugin.html:48 templates/navbar.html:137 +#: templates/InvenTree/settings/plugin.html:50 templates/navbar.html:137 #: users/models.py:36 msgid "Admin" msgstr "Admin" -#: templates/InvenTree/settings/plugin.html:50 +#: templates/InvenTree/settings/plugin.html:52 #: templates/InvenTree/settings/plugin_settings.html:28 msgid "Author" msgstr "Szerző" -#: templates/InvenTree/settings/plugin.html:52 +#: templates/InvenTree/settings/plugin.html:54 #: templates/InvenTree/settings/plugin_settings.html:43 msgid "Version" msgstr "Verzió" -#: templates/InvenTree/settings/plugin.html:74 +#: templates/InvenTree/settings/plugin.html:76 msgid "Sample" msgstr "Minta" -#: templates/InvenTree/settings/plugin.html:99 +#: templates/InvenTree/settings/plugin.html:101 msgid "Inactive plugins" msgstr "Inaktív pluginok" -#: templates/InvenTree/settings/plugin.html:122 +#: templates/InvenTree/settings/plugin.html:124 msgid "Plugin Error Stack" msgstr "Plugin hibatároló" -#: templates/InvenTree/settings/plugin.html:131 +#: templates/InvenTree/settings/plugin.html:133 msgid "Stage" msgstr "Szakasz" -#: templates/InvenTree/settings/plugin.html:133 +#: templates/InvenTree/settings/plugin.html:135 #: templates/js/translated/notification.js:75 msgid "Message" msgstr "Üzenet" @@ -7000,11 +7040,11 @@ msgstr "Commit hash" msgid "Commit Message" msgstr "Commit üzenet" -#: templates/InvenTree/settings/plugin_settings.html:117 +#: templates/InvenTree/settings/plugin_settings.html:120 msgid "Sign Status" msgstr "Aláírás státusza" -#: templates/InvenTree/settings/plugin_settings.html:122 +#: templates/InvenTree/settings/plugin_settings.html:125 msgid "Sign Key" msgstr "Aláíró kulcs" @@ -7829,7 +7869,7 @@ msgstr "Ez törli az összerendelést a készlet tétel és a vonalkód között msgid "Unlink" msgstr "Leválasztás" -#: templates/js/translated/barcode.js:456 templates/js/translated/stock.js:1050 +#: templates/js/translated/barcode.js:456 templates/js/translated/stock.js:1054 msgid "Remove stock item" msgstr "Készlet tétel törlése" @@ -8002,7 +8042,7 @@ msgid "Includes variant and substitute stock" msgstr "Változatokkal és helyettesítőkkel együtt" #: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822 -#: templates/js/translated/part.js:759 +#: templates/js/translated/part.js:763 msgid "Includes variant stock" msgstr "Változatokkal együtt" @@ -8099,12 +8139,12 @@ msgid "Complete Build Order" msgstr "Gyártási utasítás befejezése" #: templates/js/translated/build.js:263 templates/js/translated/stock.js:92 -#: templates/js/translated/stock.js:210 +#: templates/js/translated/stock.js:214 msgid "Next available serial number" msgstr "Következő szabad sorozatszám" #: templates/js/translated/build.js:265 templates/js/translated/stock.js:94 -#: templates/js/translated/stock.js:212 +#: templates/js/translated/stock.js:216 msgid "Latest serial number" msgstr "Legutolsó sorozatszám" @@ -8317,9 +8357,9 @@ msgstr "Készlet tételek foglalása" msgid "No builds matching query" msgstr "Nincs a lekérdezéssel egyező gyártási utasítás" -#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1383 -#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1682 -#: templates/js/translated/stock.js:2382 +#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387 +#: templates/js/translated/part.js:1899 templates/js/translated/stock.js:1686 +#: templates/js/translated/stock.js:2386 msgid "Select" msgstr "Kiválaszt" @@ -8331,7 +8371,7 @@ msgstr "Gyártás késésben van" msgid "Progress" msgstr "Haladás" -#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2638 +#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647 msgid "No user information" msgstr "Nincs felhasználói információ" @@ -8404,34 +8444,34 @@ msgid "No manufacturer parts found" msgstr "Nincs gyártói alkatrész" #: templates/js/translated/company.js:616 -#: templates/js/translated/company.js:876 templates/js/translated/part.js:634 -#: templates/js/translated/part.js:719 +#: templates/js/translated/company.js:876 templates/js/translated/part.js:638 +#: templates/js/translated/part.js:723 msgid "Template part" msgstr "Sablon alkatrész" #: templates/js/translated/company.js:620 -#: templates/js/translated/company.js:880 templates/js/translated/part.js:638 -#: templates/js/translated/part.js:723 +#: templates/js/translated/company.js:880 templates/js/translated/part.js:642 +#: templates/js/translated/part.js:727 msgid "Assembled part" msgstr "Gyártmány alkatrész" -#: templates/js/translated/company.js:748 templates/js/translated/part.js:826 +#: templates/js/translated/company.js:748 templates/js/translated/part.js:830 msgid "No parameters found" msgstr "Nem található paraméter" -#: templates/js/translated/company.js:785 templates/js/translated/part.js:868 +#: templates/js/translated/company.js:785 templates/js/translated/part.js:872 msgid "Edit parameter" msgstr "Paraméter szerkesztése" -#: templates/js/translated/company.js:786 templates/js/translated/part.js:869 +#: templates/js/translated/company.js:786 templates/js/translated/part.js:873 msgid "Delete parameter" msgstr "Paraméter törlése" -#: templates/js/translated/company.js:805 templates/js/translated/part.js:886 +#: templates/js/translated/company.js:805 templates/js/translated/part.js:890 msgid "Edit Parameter" msgstr "Paraméter szerkesztése" -#: templates/js/translated/company.js:816 templates/js/translated/part.js:898 +#: templates/js/translated/company.js:816 templates/js/translated/part.js:902 msgid "Delete Parameter" msgstr "Paraméter törlése" @@ -8556,7 +8596,7 @@ msgid "Labels sent to printer" msgstr "Címkék nyomtatónak elküldve" #: templates/js/translated/label.js:60 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1078 msgid "Select Stock Items" msgstr "Készlet tételek kiválasztása" @@ -8866,7 +8906,7 @@ msgstr "Sorozatszám hozzáadása" msgid "Quantity to receive" msgstr "Érkező mennyiség" -#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2140 +#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144 msgid "Stock Status" msgstr "Készlet állapota" @@ -8890,7 +8930,7 @@ msgstr "Bevételezés megerősítése" msgid "Receive Purchase Order Items" msgstr "Beszerzési rendelés tételeinek bevételezése" -#: templates/js/translated/order.js:1672 templates/js/translated/part.js:939 +#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943 msgid "No purchase orders found" msgstr "Nem található beszerzési rendelés" @@ -8925,7 +8965,7 @@ msgstr "Összesen" #: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203 #: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050 -#: templates/js/translated/part.js:2126 templates/js/translated/part.js:2479 +#: templates/js/translated/part.js:2135 templates/js/translated/part.js:2488 msgid "Unit Price" msgstr "Egységár" @@ -8935,11 +8975,11 @@ msgid "Total Price" msgstr "Teljes ár" #: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600 -#: templates/js/translated/part.js:1046 +#: templates/js/translated/part.js:1050 msgid "This line item is overdue" msgstr "Ez a sortétel késésben van" -#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1092 +#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096 msgid "Receive line item" msgstr "Sortétel bevételezése" @@ -9060,7 +9100,7 @@ msgid "Delete Stock Allocation" msgstr "Készlet foglalások törlése" #: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398 -#: templates/js/translated/stock.js:1598 +#: templates/js/translated/stock.js:1602 msgid "Shipped to customer" msgstr "Vevőnek kiszállítva" @@ -9184,241 +9224,245 @@ msgstr "Parméterek másolása az eredeti alkatrészről" msgid "Parent part category" msgstr "Felsőbb szintű alkatrész kategória" -#: templates/js/translated/part.js:318 +#: templates/js/translated/part.js:306 templates/js/translated/stock.js:118 +msgid "Icon (optional) - Explore all available icons on" +msgstr "" + +#: templates/js/translated/part.js:322 msgid "Edit Part Category" msgstr "Alkatrész kategória szerkesztése" -#: templates/js/translated/part.js:331 +#: templates/js/translated/part.js:335 msgid "Are you sure you want to delete this part category?" msgstr "Biztos hogy törölni szeretnéd ezt az alkatrész kategóriát?" -#: templates/js/translated/part.js:333 +#: templates/js/translated/part.js:337 msgid "Any child categories will be moved to the parent of this category" msgstr "A lentebbi kategóriák a szülő kategóriába lesznek mozgatva" -#: templates/js/translated/part.js:334 +#: templates/js/translated/part.js:338 msgid "Any parts in this category will be moved to the parent of this category" msgstr "A kategória alkatrészei a szülő kategóriába lesznek mozgatva" -#: templates/js/translated/part.js:339 +#: templates/js/translated/part.js:343 msgid "Delete Part Category" msgstr "Alkatrész kategória törlése" -#: templates/js/translated/part.js:365 +#: templates/js/translated/part.js:369 msgid "Edit Part" msgstr "Alkatrész szerkesztése" -#: templates/js/translated/part.js:367 +#: templates/js/translated/part.js:371 msgid "Part edited" msgstr "Alkatrész módosítva" -#: templates/js/translated/part.js:378 +#: templates/js/translated/part.js:382 msgid "Create Part Variant" msgstr "Alkatrész változat létrehozása" -#: templates/js/translated/part.js:430 +#: templates/js/translated/part.js:434 msgid "Active Part" msgstr "Aktív alkatrész" -#: templates/js/translated/part.js:431 +#: templates/js/translated/part.js:435 msgid "Part cannot be deleted as it is currently active" msgstr "Alkatrész nem törölhető mivel még aktív" -#: templates/js/translated/part.js:445 +#: templates/js/translated/part.js:449 msgid "Deleting this part cannot be reversed" msgstr "Ezen alkatrész törlése nem vonható vissza" -#: templates/js/translated/part.js:447 +#: templates/js/translated/part.js:451 msgid "Any stock items for this part will be deleted" msgstr "Ennek az alkatrésznek a teljes készlete törölve lesz" -#: templates/js/translated/part.js:448 +#: templates/js/translated/part.js:452 msgid "This part will be removed from any Bills of Material" msgstr "Ez az alkatrész minden alkatrészjegyzékből törölve lesz" -#: templates/js/translated/part.js:449 +#: templates/js/translated/part.js:453 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "Ehhez az alkatrészhez rendelt minden beszállítói és gyártói információ törölve lesz" -#: templates/js/translated/part.js:456 +#: templates/js/translated/part.js:460 msgid "Delete Part" msgstr "Alkatrész törlése" -#: templates/js/translated/part.js:492 +#: templates/js/translated/part.js:496 msgid "You are subscribed to notifications for this item" msgstr "Értesítések beállítva erre a tételre" -#: templates/js/translated/part.js:494 +#: templates/js/translated/part.js:498 msgid "You have subscribed to notifications for this item" msgstr "Értesítések beállítva erre a tételre" -#: templates/js/translated/part.js:499 +#: templates/js/translated/part.js:503 msgid "Subscribe to notifications for this item" msgstr "Értesítések kérése erre a tételre" -#: templates/js/translated/part.js:501 +#: templates/js/translated/part.js:505 msgid "You have unsubscribed to notifications for this item" msgstr "Értesítések letiltva erre a tételre" -#: templates/js/translated/part.js:518 +#: templates/js/translated/part.js:522 msgid "Validating the BOM will mark each line item as valid" msgstr "Az alkatrészjegyzék jóváhagyása minden sortételt jóvá fog hagyni" -#: templates/js/translated/part.js:528 +#: templates/js/translated/part.js:532 msgid "Validate Bill of Materials" msgstr "Alkatrészjegyzék jóváhagyása" -#: templates/js/translated/part.js:531 +#: templates/js/translated/part.js:535 msgid "Validated Bill of Materials" msgstr "Alkatrészjegyzék jóvá lett hagyva" -#: templates/js/translated/part.js:556 +#: templates/js/translated/part.js:560 msgid "Copy Bill of Materials" msgstr "Alkatrészjegyzék másolása" -#: templates/js/translated/part.js:582 templates/js/translated/part.js:1466 +#: templates/js/translated/part.js:586 templates/js/translated/part.js:1470 #: templates/js/translated/table_filters.js:468 msgid "Low stock" msgstr "Alacsony készlet" -#: templates/js/translated/part.js:592 templates/js/translated/part.js:1478 +#: templates/js/translated/part.js:596 templates/js/translated/part.js:1482 msgid "No stock available" msgstr "Nincs szabad" -#: templates/js/translated/part.js:626 templates/js/translated/part.js:711 +#: templates/js/translated/part.js:630 templates/js/translated/part.js:715 msgid "Trackable part" msgstr "Követésre kötelezett alkatrész" -#: templates/js/translated/part.js:630 templates/js/translated/part.js:715 +#: templates/js/translated/part.js:634 templates/js/translated/part.js:719 msgid "Virtual part" msgstr "Virtuális alkatrész" -#: templates/js/translated/part.js:642 +#: templates/js/translated/part.js:646 msgid "Subscribed part" msgstr "Értesítésre beállított alkatrész" -#: templates/js/translated/part.js:646 +#: templates/js/translated/part.js:650 msgid "Salable part" msgstr "Értékesíthető alkatrész" -#: templates/js/translated/part.js:774 +#: templates/js/translated/part.js:778 msgid "No variants found" msgstr "Nincs több változat" -#: templates/js/translated/part.js:1162 +#: templates/js/translated/part.js:1166 msgid "Delete part relationship" msgstr "Alkatrész kapcsolatok törlése" -#: templates/js/translated/part.js:1186 +#: templates/js/translated/part.js:1190 msgid "Delete Part Relationship" msgstr "Alkatrész kapcsolatok törlése" -#: templates/js/translated/part.js:1253 templates/js/translated/part.js:1549 +#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1553 msgid "No parts found" msgstr "Nincs alkatrész" -#: templates/js/translated/part.js:1292 +#: templates/js/translated/part.js:1296 msgid "Not available" msgstr "Nincs szabad" -#: templates/js/translated/part.js:1443 +#: templates/js/translated/part.js:1447 msgid "No category" msgstr "Nincs kategória" -#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816 -#: templates/js/translated/stock.js:2343 +#: templates/js/translated/part.js:1577 templates/js/translated/part.js:1820 +#: templates/js/translated/stock.js:2347 msgid "Display as list" msgstr "Megjelenítés listaként" -#: templates/js/translated/part.js:1589 +#: templates/js/translated/part.js:1593 msgid "Display as grid" msgstr "Megjelenítés rácsnézetként" -#: templates/js/translated/part.js:1655 +#: templates/js/translated/part.js:1659 msgid "Set the part category for the selected parts" msgstr "Kategória beállítása a kiválasztott alkatrészekhez" -#: templates/js/translated/part.js:1660 +#: templates/js/translated/part.js:1664 msgid "Set Part Category" msgstr "Alkatrész kategória beállítása" -#: templates/js/translated/part.js:1665 +#: templates/js/translated/part.js:1669 msgid "Select Part Category" msgstr "Alkatrész kategória kiválasztása" -#: templates/js/translated/part.js:1678 +#: templates/js/translated/part.js:1682 msgid "Category is required" msgstr "Kategória megadása kötelező" -#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2362 +#: templates/js/translated/part.js:1839 templates/js/translated/stock.js:2366 msgid "Display as tree" msgstr "Megjelenítés fában" -#: templates/js/translated/part.js:1914 +#: templates/js/translated/part.js:1918 msgid "Load Subcategories" -msgstr "" +msgstr "Alkategóriák betöltése" -#: templates/js/translated/part.js:1925 +#: templates/js/translated/part.js:1934 msgid "Subscribed category" msgstr "Értesítésre beállított kategória" -#: templates/js/translated/part.js:1983 +#: templates/js/translated/part.js:1992 msgid "No test templates matching query" msgstr "Nincs a lekérdezéssel egyező teszt sablon" -#: templates/js/translated/part.js:2034 templates/js/translated/stock.js:1295 +#: templates/js/translated/part.js:2043 templates/js/translated/stock.js:1299 msgid "Edit test result" msgstr "Teszt eredmény szerkesztése" -#: templates/js/translated/part.js:2035 templates/js/translated/stock.js:1296 -#: templates/js/translated/stock.js:1556 +#: templates/js/translated/part.js:2044 templates/js/translated/stock.js:1300 +#: templates/js/translated/stock.js:1560 msgid "Delete test result" msgstr "Teszt eredmény törlése" -#: templates/js/translated/part.js:2041 +#: templates/js/translated/part.js:2050 msgid "This test is defined for a parent part" msgstr "Ez a teszt a szülő alkatrészhez lett felvéve" -#: templates/js/translated/part.js:2063 +#: templates/js/translated/part.js:2072 msgid "Edit Test Result Template" msgstr "Teszt eredmény sablon szerkesztése" -#: templates/js/translated/part.js:2077 +#: templates/js/translated/part.js:2086 msgid "Delete Test Result Template" msgstr "Teszt eredmény sablon törlése" -#: templates/js/translated/part.js:2102 +#: templates/js/translated/part.js:2111 #, python-brace-format msgid "No ${human_name} information found" msgstr "Nincs ${human_name} információ" -#: templates/js/translated/part.js:2159 +#: templates/js/translated/part.js:2168 #, python-brace-format msgid "Edit ${human_name}" msgstr "${human_name} szerkesztése" -#: templates/js/translated/part.js:2160 +#: templates/js/translated/part.js:2169 #, python-brace-format msgid "Delete ${human_name}" msgstr "${human_name} törlése" -#: templates/js/translated/part.js:2274 +#: templates/js/translated/part.js:2283 msgid "Current Stock" msgstr "Aktuális készlet" -#: templates/js/translated/part.js:2307 +#: templates/js/translated/part.js:2316 msgid "No scheduling information available for this part" msgstr "Az alkatrészhez nem áll rendelkezésre ütemezési információ" -#: templates/js/translated/part.js:2333 +#: templates/js/translated/part.js:2342 msgid "Scheduled Stock Quantities" msgstr "Ütemezett készlet mennyiség" -#: templates/js/translated/part.js:2403 +#: templates/js/translated/part.js:2412 msgid "Single Price" msgstr "Egységes ár" -#: templates/js/translated/part.js:2422 +#: templates/js/translated/part.js:2431 msgid "Single Price Difference" msgstr "Egységes ár különbség" @@ -9512,376 +9556,376 @@ msgstr "Készlet sorozatszámozás megerősítése" msgid "Parent stock location" msgstr "Felsőbb szintű készlet hely" -#: templates/js/translated/stock.js:140 +#: templates/js/translated/stock.js:144 msgid "Edit Stock Location" msgstr "Készlet hely szerkesztése" -#: templates/js/translated/stock.js:155 +#: templates/js/translated/stock.js:159 msgid "New Stock Location" msgstr "Új készlet hely" -#: templates/js/translated/stock.js:169 +#: templates/js/translated/stock.js:173 msgid "Are you sure you want to delete this stock location?" msgstr "Biztosan törölni szeretnéd ezt a készlet helyet?" -#: templates/js/translated/stock.js:171 +#: templates/js/translated/stock.js:175 msgid "Any child locations will be moved to the parent of this location" msgstr "A lentebbi helyek a szülő helybe lesznek mozgatva" -#: templates/js/translated/stock.js:172 +#: templates/js/translated/stock.js:176 msgid "Any stock items in this location will be moved to the parent of this location" msgstr "A hely készlete a szülő helyre lesz mozgatva" -#: templates/js/translated/stock.js:178 +#: templates/js/translated/stock.js:182 msgid "Delete Stock Location" msgstr "Készlethely törlése" -#: templates/js/translated/stock.js:223 +#: templates/js/translated/stock.js:227 msgid "This part cannot be serialized" msgstr "Ezt az alkatrészt nem lehet sorozatszámozni" -#: templates/js/translated/stock.js:262 +#: templates/js/translated/stock.js:266 msgid "Enter initial quantity for this stock item" msgstr "Add meg a kezdeti mennyiséget ehhez a készlet tételhez" -#: templates/js/translated/stock.js:268 +#: templates/js/translated/stock.js:272 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "Add meg az új készlet tételhez tartozó sorozatszámokat (vagy hagyd üresen)" -#: templates/js/translated/stock.js:333 +#: templates/js/translated/stock.js:337 msgid "Stock item duplicated" msgstr "Készlet tétel lemásolva" -#: templates/js/translated/stock.js:353 +#: templates/js/translated/stock.js:357 msgid "Duplicate Stock Item" msgstr "Készlet tétel másolása" -#: templates/js/translated/stock.js:369 +#: templates/js/translated/stock.js:373 msgid "Are you sure you want to delete this stock item?" msgstr "Biztosan törölni szeretnéd ezt a készlet tételt?" -#: templates/js/translated/stock.js:374 +#: templates/js/translated/stock.js:378 msgid "Delete Stock Item" msgstr "Készlet tétel törlése" -#: templates/js/translated/stock.js:395 +#: templates/js/translated/stock.js:399 msgid "Edit Stock Item" msgstr "Készlet tétel szerkesztése" -#: templates/js/translated/stock.js:445 +#: templates/js/translated/stock.js:449 msgid "Created new stock item" msgstr "Készlet tétel létrehozva" -#: templates/js/translated/stock.js:458 +#: templates/js/translated/stock.js:462 msgid "Created multiple stock items" msgstr "Több készlet tétel létre lett hozva" -#: templates/js/translated/stock.js:483 +#: templates/js/translated/stock.js:487 msgid "Find Serial Number" msgstr "Sorozatszám keresése" -#: templates/js/translated/stock.js:487 templates/js/translated/stock.js:488 +#: templates/js/translated/stock.js:491 templates/js/translated/stock.js:492 msgid "Enter serial number" msgstr "Sorozatszám megadása" -#: templates/js/translated/stock.js:504 +#: templates/js/translated/stock.js:508 msgid "Enter a serial number" msgstr "Adj meg egy sorozatszámot" -#: templates/js/translated/stock.js:524 +#: templates/js/translated/stock.js:528 msgid "No matching serial number" msgstr "Nincs egyező sorozatszám" -#: templates/js/translated/stock.js:533 +#: templates/js/translated/stock.js:537 msgid "More than one matching result found" msgstr "Több egyező eredmény is van" -#: templates/js/translated/stock.js:656 +#: templates/js/translated/stock.js:660 msgid "Confirm stock assignment" msgstr "Készlet hozzárendelés jóváhagyása" -#: templates/js/translated/stock.js:657 +#: templates/js/translated/stock.js:661 msgid "Assign Stock to Customer" msgstr "Készlet vevőhöz rendelése" -#: templates/js/translated/stock.js:734 +#: templates/js/translated/stock.js:738 msgid "Warning: Merge operation cannot be reversed" msgstr "Figyelem: az összevonási művelet nem vonható vissza" -#: templates/js/translated/stock.js:735 +#: templates/js/translated/stock.js:739 msgid "Some information will be lost when merging stock items" msgstr "Némi információ elveszik a készlet összevonás során" -#: templates/js/translated/stock.js:737 +#: templates/js/translated/stock.js:741 msgid "Stock transaction history will be deleted for merged items" msgstr "A készlettörténet törölve lesz az összevont tételeknél" -#: templates/js/translated/stock.js:738 +#: templates/js/translated/stock.js:742 msgid "Supplier part information will be deleted for merged items" msgstr "A beszállítói alkatrész információk törlődnek az összevont tételeknél" -#: templates/js/translated/stock.js:824 +#: templates/js/translated/stock.js:828 msgid "Confirm stock item merge" msgstr "Készlet összevonás megerősítése" -#: templates/js/translated/stock.js:825 +#: templates/js/translated/stock.js:829 msgid "Merge Stock Items" msgstr "Készlet tételek összevonása" -#: templates/js/translated/stock.js:920 +#: templates/js/translated/stock.js:924 msgid "Transfer Stock" msgstr "Készlet áthelyezése" -#: templates/js/translated/stock.js:921 +#: templates/js/translated/stock.js:925 msgid "Move" msgstr "Áthelyezés" -#: templates/js/translated/stock.js:927 +#: templates/js/translated/stock.js:931 msgid "Count Stock" msgstr "Leltározás" -#: templates/js/translated/stock.js:928 +#: templates/js/translated/stock.js:932 msgid "Count" msgstr "Mennyiség" -#: templates/js/translated/stock.js:932 +#: templates/js/translated/stock.js:936 msgid "Remove Stock" msgstr "Készlet csökkentése" -#: templates/js/translated/stock.js:933 +#: templates/js/translated/stock.js:937 msgid "Take" msgstr "Kivesz" -#: templates/js/translated/stock.js:937 +#: templates/js/translated/stock.js:941 msgid "Add Stock" msgstr "Készlet növelése" -#: templates/js/translated/stock.js:938 users/models.py:216 +#: templates/js/translated/stock.js:942 users/models.py:216 msgid "Add" msgstr "Hozzáad" -#: templates/js/translated/stock.js:942 +#: templates/js/translated/stock.js:946 msgid "Delete Stock" msgstr "Készlet törlése" -#: templates/js/translated/stock.js:1035 +#: templates/js/translated/stock.js:1039 msgid "Quantity cannot be adjusted for serialized stock" msgstr "Egyedi követésre kötelezett tételeknél a menyiség nem módosítható" -#: templates/js/translated/stock.js:1035 +#: templates/js/translated/stock.js:1039 msgid "Specify stock quantity" msgstr "Készlet mennyiség megadása" -#: templates/js/translated/stock.js:1075 +#: templates/js/translated/stock.js:1079 msgid "You must select at least one available stock item" msgstr "Ki kell választanod legalább egy rendelkezésre álló készlet tételt" -#: templates/js/translated/stock.js:1098 +#: templates/js/translated/stock.js:1102 msgid "Confirm stock adjustment" msgstr "Készlet módosítás jóváhagyása" -#: templates/js/translated/stock.js:1234 +#: templates/js/translated/stock.js:1238 msgid "PASS" msgstr "SIKER" -#: templates/js/translated/stock.js:1236 +#: templates/js/translated/stock.js:1240 msgid "FAIL" msgstr "SIKERTELEN" -#: templates/js/translated/stock.js:1241 +#: templates/js/translated/stock.js:1245 msgid "NO RESULT" msgstr "NINCS EREDMÉNY" -#: templates/js/translated/stock.js:1288 +#: templates/js/translated/stock.js:1292 msgid "Pass test" msgstr "Teszt sikeres" -#: templates/js/translated/stock.js:1291 +#: templates/js/translated/stock.js:1295 msgid "Add test result" msgstr "Teszt eredmény hozzáadása" -#: templates/js/translated/stock.js:1317 +#: templates/js/translated/stock.js:1321 msgid "No test results found" msgstr "Nincs teszt eredmény" -#: templates/js/translated/stock.js:1374 +#: templates/js/translated/stock.js:1378 msgid "Test Date" msgstr "Teszt dátuma" -#: templates/js/translated/stock.js:1539 +#: templates/js/translated/stock.js:1543 msgid "Edit Test Result" msgstr "Teszt eredmény szerkesztése" -#: templates/js/translated/stock.js:1561 +#: templates/js/translated/stock.js:1565 msgid "Delete Test Result" msgstr "Teszt eredmény törlése" -#: templates/js/translated/stock.js:1590 +#: templates/js/translated/stock.js:1594 msgid "In production" msgstr "Gyártásban" -#: templates/js/translated/stock.js:1594 +#: templates/js/translated/stock.js:1598 msgid "Installed in Stock Item" msgstr "Beépítve készlet tételbe" -#: templates/js/translated/stock.js:1602 +#: templates/js/translated/stock.js:1606 msgid "Assigned to Sales Order" msgstr "Vevő rendeléshez hozzárendelve" -#: templates/js/translated/stock.js:1608 +#: templates/js/translated/stock.js:1612 msgid "No stock location set" msgstr "Nincs hely megadva" -#: templates/js/translated/stock.js:1775 +#: templates/js/translated/stock.js:1779 msgid "Stock item is in production" msgstr "Készlet tétel gyártás alatt" -#: templates/js/translated/stock.js:1780 +#: templates/js/translated/stock.js:1784 msgid "Stock item assigned to sales order" msgstr "Készlet tétel hozzárendelve egy vevői rendeléshez" -#: templates/js/translated/stock.js:1783 +#: templates/js/translated/stock.js:1787 msgid "Stock item assigned to customer" msgstr "Készlet tétel hozzárendelve egy vevőhöz" -#: templates/js/translated/stock.js:1786 +#: templates/js/translated/stock.js:1790 msgid "Serialized stock item has been allocated" msgstr "Egyedi követésre kötelezett készlet tétel lefoglalva" -#: templates/js/translated/stock.js:1788 +#: templates/js/translated/stock.js:1792 msgid "Stock item has been fully allocated" msgstr "Készlet tétel teljes egészében lefoglalva" -#: templates/js/translated/stock.js:1790 +#: templates/js/translated/stock.js:1794 msgid "Stock item has been partially allocated" msgstr "Készlet tétel részben lefoglalva" -#: templates/js/translated/stock.js:1793 +#: templates/js/translated/stock.js:1797 msgid "Stock item has been installed in another item" msgstr "Készlet tétel beépítve egy másikba" -#: templates/js/translated/stock.js:1797 +#: templates/js/translated/stock.js:1801 msgid "Stock item has expired" msgstr "Készlet tétel lejárt" -#: templates/js/translated/stock.js:1799 +#: templates/js/translated/stock.js:1803 msgid "Stock item will expire soon" msgstr "Készlet tétel hamarosan lejár" -#: templates/js/translated/stock.js:1806 +#: templates/js/translated/stock.js:1810 msgid "Stock item has been rejected" msgstr "Készlet tétel elutasítva" -#: templates/js/translated/stock.js:1808 +#: templates/js/translated/stock.js:1812 msgid "Stock item is lost" msgstr "Készlet tétel elveszett" -#: templates/js/translated/stock.js:1810 +#: templates/js/translated/stock.js:1814 msgid "Stock item is destroyed" msgstr "Készlet tétel megsemmisült" -#: templates/js/translated/stock.js:1814 +#: templates/js/translated/stock.js:1818 #: templates/js/translated/table_filters.js:196 msgid "Depleted" msgstr "Kimerült" -#: templates/js/translated/stock.js:1865 +#: templates/js/translated/stock.js:1869 msgid "Stocktake" msgstr "Leltár" -#: templates/js/translated/stock.js:1944 +#: templates/js/translated/stock.js:1948 msgid "Supplier part not specified" msgstr "Beszállítói alkatrész nincs megadva" -#: templates/js/translated/stock.js:1982 +#: templates/js/translated/stock.js:1986 msgid "No stock items matching query" msgstr "Nincs a lekérdezésnek megfelelő készlet tétel" -#: templates/js/translated/stock.js:2155 +#: templates/js/translated/stock.js:2159 msgid "Set Stock Status" msgstr "Készlet állapot beállítása" -#: templates/js/translated/stock.js:2169 +#: templates/js/translated/stock.js:2173 msgid "Select Status Code" msgstr "Státuszkód kiválasztása" -#: templates/js/translated/stock.js:2170 +#: templates/js/translated/stock.js:2174 msgid "Status code must be selected" msgstr "Státuszkódot ki kell választani" -#: templates/js/translated/stock.js:2400 +#: templates/js/translated/stock.js:2404 msgid "Load Subloactions" -msgstr "" +msgstr "Alhelyek betöltése" -#: templates/js/translated/stock.js:2484 +#: templates/js/translated/stock.js:2493 msgid "Details" msgstr "Részletek" -#: templates/js/translated/stock.js:2500 +#: templates/js/translated/stock.js:2509 msgid "Part information unavailable" msgstr "Alkatrész információ nem áll rendelkezésre" -#: templates/js/translated/stock.js:2522 +#: templates/js/translated/stock.js:2531 msgid "Location no longer exists" msgstr "A hely már nem létezik" -#: templates/js/translated/stock.js:2541 +#: templates/js/translated/stock.js:2550 msgid "Purchase order no longer exists" msgstr "Beszerzési megrendelés már nem létezik" -#: templates/js/translated/stock.js:2560 +#: templates/js/translated/stock.js:2569 msgid "Customer no longer exists" msgstr "Vevő már nem létezik" -#: templates/js/translated/stock.js:2578 +#: templates/js/translated/stock.js:2587 msgid "Stock item no longer exists" msgstr "A készlet tétel már nem létezik" -#: templates/js/translated/stock.js:2601 +#: templates/js/translated/stock.js:2610 msgid "Added" msgstr "Hozzáadva" -#: templates/js/translated/stock.js:2609 +#: templates/js/translated/stock.js:2618 msgid "Removed" msgstr "Eltávolítva" -#: templates/js/translated/stock.js:2685 +#: templates/js/translated/stock.js:2694 msgid "No installed items" msgstr "Nincsenek beépített tételek" -#: templates/js/translated/stock.js:2736 templates/js/translated/stock.js:2772 +#: templates/js/translated/stock.js:2745 templates/js/translated/stock.js:2781 msgid "Uninstall Stock Item" msgstr "Készlet tétel kiszedése" -#: templates/js/translated/stock.js:2785 +#: templates/js/translated/stock.js:2794 msgid "Select stock item to uninstall" msgstr "Válaszd ki a kiszedni való készlet tételt" -#: templates/js/translated/stock.js:2806 +#: templates/js/translated/stock.js:2815 msgid "Install another stock item into this item" msgstr "Másik tétel beépítése ebbe a készlet tételbe" -#: templates/js/translated/stock.js:2807 +#: templates/js/translated/stock.js:2816 msgid "Stock items can only be installed if they meet the following criteria" msgstr "Készlet tételek csak akkor építhetők be ha teljesítik a következő kritériumokat" -#: templates/js/translated/stock.js:2809 +#: templates/js/translated/stock.js:2818 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "A készlet tétel egy olyan alkatrészre mutat ami alkatrészjegyzéke ennek a készlet tételnek" -#: templates/js/translated/stock.js:2810 +#: templates/js/translated/stock.js:2819 msgid "The Stock Item is currently available in stock" msgstr "A készlet tétel jelenleg elérhető készleten" -#: templates/js/translated/stock.js:2811 +#: templates/js/translated/stock.js:2820 msgid "The Stock Item is not already installed in another item" msgstr "A készlet tétel még nem épült be egy másik tételbe" -#: templates/js/translated/stock.js:2812 +#: templates/js/translated/stock.js:2821 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "A készlet tétel követett vagy sorozatszámmal vagy batch kóddal" -#: templates/js/translated/stock.js:2825 +#: templates/js/translated/stock.js:2834 msgid "Select part to install" msgstr "Válaszd ki a beépítendő alkatrészt" diff --git a/InvenTree/locale/id/LC_MESSAGES/django.po b/InvenTree/locale/id/LC_MESSAGES/django.po index d346876046..ad26b515ea 100644 --- a/InvenTree/locale/id/LC_MESSAGES/django.po +++ b/InvenTree/locale/id/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-11 02:47+0000\n" -"PO-Revision-Date: 2022-08-11 13:49\n" +"POT-Creation-Date: 2022-08-16 11:53+0000\n" +"PO-Revision-Date: 2022-08-16 21:35\n" "Last-Translator: \n" "Language-Team: Indonesian\n" "Language: id_ID\n" @@ -36,15 +36,15 @@ msgstr "Masukkan tanggal" #: order/templates/order/so_sidebar.html:17 #: part/templates/part/part_sidebar.html:59 #: report/templates/report/inventree_build_order_base.html:172 -#: stock/models.py:1993 stock/models.py:2101 stock/serializers.py:329 -#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:823 -#: stock/serializers.py:922 stock/serializers.py:1054 +#: stock/models.py:2000 stock/models.py:2108 stock/serializers.py:329 +#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825 +#: stock/serializers.py:924 stock/serializers.py:1056 #: stock/templates/stock/stock_sidebar.html:25 #: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101 #: templates/js/translated/company.js:964 templates/js/translated/order.js:2104 #: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753 #: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102 -#: templates/js/translated/stock.js:1370 templates/js/translated/stock.js:1976 +#: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980 msgid "Notes" msgstr "" @@ -163,6 +163,10 @@ msgstr "" msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "" +#: InvenTree/mixins.py:71 +msgid "Remove HTML tags from this value" +msgstr "" + #: InvenTree/models.py:236 msgid "Improperly formatted pattern" msgstr "" @@ -195,7 +199,7 @@ msgstr "" msgid "Missing external link" msgstr "" -#: InvenTree/models.py:395 stock/models.py:2095 +#: InvenTree/models.py:395 stock/models.py:2102 #: templates/js/translated/attachment.js:103 #: templates/js/translated/attachment.js:241 msgid "Attachment" @@ -207,16 +211,16 @@ msgstr "" #: InvenTree/models.py:402 company/models.py:124 company/models.py:276 #: company/models.py:510 order/models.py:84 order/models.py:1245 -#: part/models.py:795 +#: part/models.py:802 #: report/templates/report/inventree_build_order_base.html:164 #: templates/js/translated/company.js:656 #: templates/js/translated/company.js:948 templates/js/translated/order.js:2742 -#: templates/js/translated/part.js:1510 +#: templates/js/translated/part.js:1514 msgid "Link" msgstr "" -#: InvenTree/models.py:403 build/models.py:296 part/models.py:796 -#: stock/models.py:651 +#: InvenTree/models.py:403 build/models.py:296 part/models.py:803 +#: stock/models.py:658 msgid "Link to external URL" msgstr "" @@ -229,12 +233,12 @@ msgstr "" msgid "File comment" msgstr "" -#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1646 -#: common/models.py:1647 common/models.py:1870 common/models.py:1871 -#: common/models.py:2133 common/models.py:2134 part/models.py:2193 -#: part/models.py:2213 plugin/models.py:238 plugin/models.py:239 +#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665 +#: common/models.py:1666 common/models.py:1889 common/models.py:1890 +#: common/models.py:2152 common/models.py:2153 part/models.py:2200 +#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2632 +#: templates/js/translated/stock.js:2641 msgid "User" msgstr "" @@ -271,19 +275,19 @@ msgstr "" msgid "Invalid choice" msgstr "" -#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1856 -#: company/models.py:358 label/models.py:101 part/models.py:739 -#: part/models.py:2371 plugin/models.py:93 report/models.py:152 +#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875 +#: company/models.py:358 label/models.py:101 part/models.py:746 +#: part/models.py:2378 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 -#: templates/InvenTree/settings/plugin.html:49 -#: templates/InvenTree/settings/plugin.html:132 +#: templates/InvenTree/settings/plugin.html:51 +#: templates/InvenTree/settings/plugin.html:134 #: templates/InvenTree/settings/plugin_settings.html:23 #: templates/InvenTree/settings/settings.html:347 #: templates/js/translated/company.js:545 #: templates/js/translated/company.js:758 #: templates/js/translated/notification.js:71 -#: templates/js/translated/part.js:684 templates/js/translated/part.js:836 -#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2388 +#: templates/js/translated/part.js:688 templates/js/translated/part.js:840 +#: templates/js/translated/part.js:1906 templates/js/translated/stock.js:2392 msgid "Name" msgstr "" @@ -292,21 +296,21 @@ msgstr "" #: company/models.py:516 company/templates/company/company_base.html:71 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:87 label/models.py:108 -#: order/models.py:82 part/models.py:762 part/templates/part/category.html:74 +#: order/models.py:82 part/models.py:769 part/templates/part/category.html:80 #: part/templates/part/part_base.html:167 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 -#: stock/templates/stock/location.html:103 +#: stock/templates/stock/location.html:108 #: templates/InvenTree/settings/plugin_settings.html:33 #: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848 #: templates/js/translated/build.js:2471 templates/js/translated/company.js:409 #: templates/js/translated/company.js:667 #: templates/js/translated/company.js:959 templates/js/translated/order.js:1720 #: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531 -#: templates/js/translated/part.js:743 templates/js/translated/part.js:1149 -#: templates/js/translated/part.js:1424 templates/js/translated/part.js:1933 -#: templates/js/translated/part.js:2002 templates/js/translated/stock.js:1739 -#: templates/js/translated/stock.js:2415 templates/js/translated/stock.js:2469 +#: templates/js/translated/part.js:747 templates/js/translated/part.js:1153 +#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1942 +#: templates/js/translated/part.js:2011 templates/js/translated/stock.js:1743 +#: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478 msgid "Description" msgstr "" @@ -319,7 +323,7 @@ msgid "parent" msgstr "" #: InvenTree/models.py:560 InvenTree/models.py:561 -#: templates/js/translated/part.js:1939 templates/js/translated/stock.js:2421 +#: templates/js/translated/part.js:1948 templates/js/translated/stock.js:2430 msgid "Path" msgstr "" @@ -331,7 +335,7 @@ msgstr "" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:55 part/models.py:2692 +#: InvenTree/serializers.py:55 part/models.py:2699 msgid "Must be a valid number" msgstr "" @@ -398,99 +402,99 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/settings.py:609 +#: InvenTree/settings.py:607 msgid "Czech" msgstr "" -#: InvenTree/settings.py:610 +#: InvenTree/settings.py:608 msgid "German" msgstr "" -#: InvenTree/settings.py:611 +#: InvenTree/settings.py:609 msgid "Greek" msgstr "" -#: InvenTree/settings.py:612 +#: InvenTree/settings.py:610 msgid "English" msgstr "" -#: InvenTree/settings.py:613 +#: InvenTree/settings.py:611 msgid "Spanish" msgstr "" -#: InvenTree/settings.py:614 +#: InvenTree/settings.py:612 msgid "Spanish (Mexican)" msgstr "" -#: InvenTree/settings.py:615 +#: InvenTree/settings.py:613 msgid "Farsi / Persian" msgstr "" -#: InvenTree/settings.py:616 +#: InvenTree/settings.py:614 msgid "French" msgstr "" -#: InvenTree/settings.py:617 +#: InvenTree/settings.py:615 msgid "Hebrew" msgstr "" -#: InvenTree/settings.py:618 +#: InvenTree/settings.py:616 msgid "Hungarian" msgstr "" -#: InvenTree/settings.py:619 +#: InvenTree/settings.py:617 msgid "Italian" msgstr "" -#: InvenTree/settings.py:620 +#: InvenTree/settings.py:618 msgid "Japanese" msgstr "" -#: InvenTree/settings.py:621 +#: InvenTree/settings.py:619 msgid "Korean" msgstr "" -#: InvenTree/settings.py:622 +#: InvenTree/settings.py:620 msgid "Dutch" msgstr "" -#: InvenTree/settings.py:623 +#: InvenTree/settings.py:621 msgid "Norwegian" msgstr "" -#: InvenTree/settings.py:624 +#: InvenTree/settings.py:622 msgid "Polish" msgstr "" -#: InvenTree/settings.py:625 +#: InvenTree/settings.py:623 msgid "Portuguese" msgstr "" -#: InvenTree/settings.py:626 +#: InvenTree/settings.py:624 msgid "Portuguese (Brazilian)" msgstr "" -#: InvenTree/settings.py:627 +#: InvenTree/settings.py:625 msgid "Russian" msgstr "" -#: InvenTree/settings.py:628 +#: InvenTree/settings.py:626 msgid "Swedish" msgstr "" -#: InvenTree/settings.py:629 +#: InvenTree/settings.py:627 msgid "Thai" msgstr "" -#: InvenTree/settings.py:630 +#: InvenTree/settings.py:628 msgid "Turkish" msgstr "" -#: InvenTree/settings.py:631 +#: InvenTree/settings.py:629 msgid "Vietnamese" msgstr "" -#: InvenTree/settings.py:632 +#: InvenTree/settings.py:630 msgid "Chinese" msgstr "" @@ -621,7 +625,7 @@ msgstr "" msgid "Split child item" msgstr "" -#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2080 +#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2084 msgid "Merged stock items" msgstr "" @@ -743,7 +747,7 @@ msgid "Build Order Reference" msgstr "" #: build/models.py:166 order/models.py:240 order/models.py:623 -#: order/models.py:904 part/models.py:2610 +#: order/models.py:904 part/models.py:2617 #: part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 @@ -770,10 +774,10 @@ msgstr "" #: build/models.py:191 build/templates/build/build_base.html:77 #: build/templates/build/detail.html:29 company/models.py:670 #: order/models.py:1001 order/models.py:1112 order/models.py:1113 -#: part/models.py:336 part/models.py:2139 part/models.py:2154 -#: part/models.py:2173 part/models.py:2191 part/models.py:2290 -#: part/models.py:2410 part/models.py:2500 part/models.py:2585 -#: part/models.py:2861 part/serializers.py:811 +#: part/models.py:343 part/models.py:2146 part/models.py:2161 +#: part/models.py:2180 part/models.py:2198 part/models.py:2297 +#: part/models.py:2417 part/models.py:2507 part/models.py:2592 +#: part/models.py:2868 part/serializers.py:813 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -796,11 +800,11 @@ msgstr "" #: templates/js/translated/order.js:934 templates/js/translated/order.js:1387 #: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885 #: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507 -#: templates/js/translated/part.js:1134 templates/js/translated/part.js:1206 -#: templates/js/translated/part.js:1402 templates/js/translated/stock.js:582 -#: templates/js/translated/stock.js:747 templates/js/translated/stock.js:954 -#: templates/js/translated/stock.js:1696 templates/js/translated/stock.js:2495 -#: templates/js/translated/stock.js:2690 templates/js/translated/stock.js:2824 +#: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210 +#: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586 +#: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958 +#: templates/js/translated/stock.js:1700 templates/js/translated/stock.js:2504 +#: templates/js/translated/stock.js:2699 templates/js/translated/stock.js:2833 msgid "Part" msgstr "" @@ -858,7 +862,7 @@ msgid "Build status code" msgstr "" #: build/models.py:251 build/serializers.py:225 order/serializers.py:447 -#: stock/models.py:655 templates/js/translated/order.js:1247 +#: stock/models.py:662 templates/js/translated/order.js:1247 msgid "Batch Code" msgstr "" @@ -866,7 +870,7 @@ msgstr "" msgid "Batch code for this build output" msgstr "" -#: build/models.py:258 order/models.py:86 part/models.py:931 +#: build/models.py:258 order/models.py:86 part/models.py:938 #: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544 msgid "Creation Date" msgstr "" @@ -899,7 +903,7 @@ msgstr "" #: build/models.py:289 build/templates/build/build_base.html:190 #: build/templates/build/detail.html:115 order/models.py:100 #: order/templates/order/order_base.html:176 -#: order/templates/order/sales_order_base.html:183 part/models.py:935 +#: order/templates/order/sales_order_base.html:183 part/models.py:942 #: report/templates/report/inventree_build_order_base.html:158 #: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754 msgid "Responsible" @@ -912,7 +916,7 @@ msgstr "" #: build/models.py:295 build/templates/build/detail.html:101 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:153 -#: part/templates/part/part_base.html:346 stock/models.py:649 +#: part/templates/part/part_base.html:346 stock/models.py:656 #: stock/templates/stock/item_base.html:205 msgid "External Link" msgstr "" @@ -978,8 +982,8 @@ msgid "Build to allocate parts" msgstr "" #: build/models.py:1345 build/serializers.py:645 order/serializers.py:1015 -#: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 -#: stock/serializers.py:880 stock/templates/stock/item_base.html:10 +#: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:756 +#: stock/serializers.py:882 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:199 #: templates/js/translated/build.js:741 templates/js/translated/build.js:746 @@ -987,8 +991,8 @@ msgstr "" #: templates/js/translated/order.js:104 templates/js/translated/order.js:2886 #: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193 #: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380 -#: templates/js/translated/stock.js:583 templates/js/translated/stock.js:748 -#: templates/js/translated/stock.js:2568 +#: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752 +#: templates/js/translated/stock.js:2577 msgid "Stock Item" msgstr "" @@ -998,11 +1002,11 @@ msgstr "" #: build/models.py:1358 build/serializers.py:193 #: build/templates/build/build_base.html:82 -#: build/templates/build/detail.html:34 common/models.py:1678 +#: build/templates/build/detail.html:34 common/models.py:1697 #: company/templates/company/supplier_part.html:279 order/models.py:897 #: order/models.py:1423 order/serializers.py:1155 #: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40 -#: part/models.py:2601 part/templates/part/detail.html:937 +#: part/models.py:2608 part/templates/part/detail.html:937 #: part/templates/part/detail.html:1023 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 @@ -1025,11 +1029,11 @@ msgstr "" #: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207 #: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386 #: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037 -#: templates/js/translated/part.js:1034 templates/js/translated/part.js:2147 -#: templates/js/translated/part.js:2378 templates/js/translated/part.js:2412 -#: templates/js/translated/part.js:2490 templates/js/translated/stock.js:454 -#: templates/js/translated/stock.js:608 templates/js/translated/stock.js:778 -#: templates/js/translated/stock.js:2617 templates/js/translated/stock.js:2702 +#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2156 +#: templates/js/translated/part.js:2387 templates/js/translated/part.js:2421 +#: templates/js/translated/part.js:2499 templates/js/translated/stock.js:458 +#: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782 +#: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711 msgid "Quantity" msgstr "" @@ -1071,8 +1075,8 @@ msgid "Enter quantity for build output" msgstr "" #: build/serializers.py:208 build/serializers.py:665 order/models.py:318 -#: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 -#: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 +#: order/serializers.py:287 order/serializers.py:442 part/serializers.py:544 +#: part/serializers.py:976 stock/models.py:484 stock/models.py:1251 #: stock/serializers.py:302 msgid "Quantity must be greater than zero" msgstr "" @@ -1087,7 +1091,7 @@ msgstr "" #: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159 #: stock/serializers.py:311 templates/js/translated/order.js:1258 -#: templates/js/translated/stock.js:267 templates/js/translated/stock.js:455 +#: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459 msgid "Serial Numbers" msgstr "" @@ -1113,16 +1117,16 @@ msgstr "" #: build/serializers.py:366 order/serializers.py:428 order/serializers.py:532 #: stock/serializers.py:322 stock/serializers.py:453 stock/serializers.py:534 -#: stock/serializers.py:915 stock/serializers.py:1148 +#: stock/serializers.py:917 stock/serializers.py:1150 #: stock/templates/stock/item_base.html:390 #: templates/js/translated/barcode.js:436 #: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753 #: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285 #: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305 #: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394 -#: templates/js/translated/part.js:181 templates/js/translated/stock.js:584 -#: templates/js/translated/stock.js:749 templates/js/translated/stock.js:956 -#: templates/js/translated/stock.js:1850 templates/js/translated/stock.js:2509 +#: templates/js/translated/part.js:181 templates/js/translated/stock.js:588 +#: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960 +#: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518 msgid "Location" msgstr "" @@ -1135,8 +1139,8 @@ msgstr "" #: order/serializers.py:465 stock/templates/stock/item_base.html:423 #: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505 #: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724 -#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1825 -#: templates/js/translated/stock.js:2586 templates/js/translated/stock.js:2718 +#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829 +#: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727 msgid "Status" msgstr "" @@ -1212,8 +1216,8 @@ msgstr "" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:577 build/serializers.py:622 part/models.py:2719 -#: part/models.py:2853 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726 +#: part/models.py:2860 msgid "BOM Item" msgstr "" @@ -1229,7 +1233,7 @@ msgstr "" msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:651 stock/serializers.py:767 +#: build/serializers.py:651 stock/serializers.py:769 msgid "Item must be in stock" msgstr "" @@ -1367,7 +1371,7 @@ msgstr "" #: report/templates/report/inventree_build_order_base.html:125 #: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741 #: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552 -#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1038 +#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042 msgid "Target Date" msgstr "" @@ -1445,8 +1449,8 @@ msgstr "" #: stock/templates/stock/item_base.html:170 #: templates/js/translated/build.js:1182 #: templates/js/translated/model_renderers.js:124 -#: templates/js/translated/stock.js:1022 templates/js/translated/stock.js:1839 -#: templates/js/translated/stock.js:2725 +#: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843 +#: templates/js/translated/stock.js:2734 #: templates/js/translated/table_filters.js:159 #: templates/js/translated/table_filters.js:250 msgid "Batch" @@ -1506,7 +1510,7 @@ msgstr "" #: build/templates/build/detail.html:187 #: company/templates/company/detail.html:37 #: company/templates/company/detail.html:85 -#: part/templates/part/category.html:177 templates/js/translated/order.js:977 +#: part/templates/part/category.html:183 templates/js/translated/order.js:977 msgid "Order Parts" msgstr "" @@ -1559,12 +1563,12 @@ msgid "Delete outputs" msgstr "" #: build/templates/build/detail.html:267 -#: stock/templates/stock/location.html:197 templates/stock_table.html:27 +#: stock/templates/stock/location.html:202 templates/stock_table.html:27 msgid "Printing Actions" msgstr "" #: build/templates/build/detail.html:271 build/templates/build/detail.html:272 -#: stock/templates/stock/location.html:201 templates/stock_table.html:31 +#: stock/templates/stock/location.html:206 templates/stock_table.html:31 msgid "Print labels" msgstr "" @@ -1841,7 +1845,7 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:951 part/models.py:2412 report/models.py:158 +#: common/models.py:951 part/models.py:2419 report/models.py:158 #: templates/js/translated/table_filters.js:38 #: templates/js/translated/table_filters.js:484 msgid "Template" @@ -1851,7 +1855,7 @@ msgstr "" msgid "Parts are templates by default" msgstr "" -#: common/models.py:958 part/models.py:887 templates/js/translated/bom.js:1448 +#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448 #: templates/js/translated/table_filters.js:176 #: templates/js/translated/table_filters.js:447 msgid "Assembly" @@ -1861,7 +1865,7 @@ msgstr "" msgid "Parts can be assembled from other components by default" msgstr "" -#: common/models.py:965 part/models.py:893 +#: common/models.py:965 part/models.py:900 #: templates/js/translated/table_filters.js:455 msgid "Component" msgstr "" @@ -1870,7 +1874,7 @@ msgstr "" msgid "Parts can be used as sub-components by default" msgstr "" -#: common/models.py:972 part/models.py:904 +#: common/models.py:972 part/models.py:911 msgid "Purchaseable" msgstr "" @@ -1878,7 +1882,7 @@ msgstr "" msgid "Parts are purchaseable by default" msgstr "" -#: common/models.py:979 part/models.py:909 +#: common/models.py:979 part/models.py:916 #: templates/js/translated/table_filters.js:476 msgid "Salable" msgstr "" @@ -1887,7 +1891,7 @@ msgstr "" msgid "Parts are salable by default" msgstr "" -#: common/models.py:986 part/models.py:899 +#: common/models.py:986 part/models.py:906 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:108 #: templates/js/translated/table_filters.js:488 @@ -1898,7 +1902,7 @@ msgstr "" msgid "Parts are trackable by default" msgstr "" -#: common/models.py:993 part/models.py:919 +#: common/models.py:993 part/models.py:926 #: part/templates/part/part_base.html:151 #: templates/js/translated/table_filters.js:42 #: templates/js/translated/table_filters.js:492 @@ -1982,608 +1986,632 @@ msgid "Format to display the part name" msgstr "" #: common/models.py:1074 -msgid "Enable label printing" +msgid "Part Category Default Icon" msgstr "" #: common/models.py:1075 -msgid "Enable label printing from the web interface" +msgid "Part category default icon (empty means no icon)" +msgstr "" + +#: common/models.py:1080 +msgid "Enable label printing" msgstr "" #: common/models.py:1081 +msgid "Enable label printing from the web interface" +msgstr "" + +#: common/models.py:1087 msgid "Label Image DPI" msgstr "" -#: common/models.py:1082 +#: common/models.py:1088 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/models.py:1091 +#: common/models.py:1097 msgid "Enable Reports" msgstr "" -#: common/models.py:1092 +#: common/models.py:1098 msgid "Enable generation of reports" msgstr "" -#: common/models.py:1098 templates/stats.html:25 +#: common/models.py:1104 templates/stats.html:25 msgid "Debug Mode" msgstr "" -#: common/models.py:1099 +#: common/models.py:1105 msgid "Generate reports in debug mode (HTML output)" msgstr "" -#: common/models.py:1105 +#: common/models.py:1111 msgid "Page Size" msgstr "" -#: common/models.py:1106 +#: common/models.py:1112 msgid "Default page size for PDF reports" msgstr "" -#: common/models.py:1116 +#: common/models.py:1122 msgid "Enable Test Reports" msgstr "" -#: common/models.py:1117 +#: common/models.py:1123 msgid "Enable generation of test reports" msgstr "" -#: common/models.py:1123 +#: common/models.py:1129 msgid "Attach Test Reports" msgstr "" -#: common/models.py:1124 +#: common/models.py:1130 msgid "When printing a Test Report, attach a copy of the Test Report to the associated Stock Item" msgstr "" -#: common/models.py:1130 +#: common/models.py:1136 msgid "Batch Code Template" msgstr "" -#: common/models.py:1131 +#: common/models.py:1137 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/models.py:1136 +#: common/models.py:1142 msgid "Stock Expiry" msgstr "" -#: common/models.py:1137 +#: common/models.py:1143 msgid "Enable stock expiry functionality" msgstr "" -#: common/models.py:1143 +#: common/models.py:1149 msgid "Sell Expired Stock" msgstr "" -#: common/models.py:1144 +#: common/models.py:1150 msgid "Allow sale of expired stock" msgstr "" -#: common/models.py:1150 +#: common/models.py:1156 msgid "Stock Stale Time" msgstr "" -#: common/models.py:1151 +#: common/models.py:1157 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/models.py:1153 +#: common/models.py:1159 msgid "days" msgstr "" -#: common/models.py:1158 +#: common/models.py:1164 msgid "Build Expired Stock" msgstr "" -#: common/models.py:1159 +#: common/models.py:1165 msgid "Allow building with expired stock" msgstr "" -#: common/models.py:1165 +#: common/models.py:1171 msgid "Stock Ownership Control" msgstr "" -#: common/models.py:1166 +#: common/models.py:1172 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/models.py:1172 -msgid "Build Order Reference Pattern" -msgstr "" - -#: common/models.py:1173 -msgid "Required pattern for generating Build Order reference field" +#: common/models.py:1178 +msgid "Stock Location Default Icon" msgstr "" #: common/models.py:1179 +msgid "Stock location default icon (empty means no icon)" +msgstr "" + +#: common/models.py:1184 +msgid "Build Order Reference Pattern" +msgstr "" + +#: common/models.py:1185 +msgid "Required pattern for generating Build Order reference field" +msgstr "" + +#: common/models.py:1191 msgid "Sales Order Reference Pattern" msgstr "" -#: common/models.py:1180 +#: common/models.py:1192 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/models.py:1186 +#: common/models.py:1198 msgid "Sales Order Default Shipment" msgstr "" -#: common/models.py:1187 +#: common/models.py:1199 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/models.py:1193 +#: common/models.py:1205 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/models.py:1194 +#: common/models.py:1206 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/models.py:1201 +#: common/models.py:1213 msgid "Enable password forgot" msgstr "" -#: common/models.py:1202 +#: common/models.py:1214 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/models.py:1208 +#: common/models.py:1220 msgid "Enable registration" msgstr "" -#: common/models.py:1209 +#: common/models.py:1221 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/models.py:1215 +#: common/models.py:1227 msgid "Enable SSO" msgstr "" -#: common/models.py:1216 +#: common/models.py:1228 msgid "Enable SSO on the login pages" msgstr "" -#: common/models.py:1222 +#: common/models.py:1234 msgid "Email required" msgstr "" -#: common/models.py:1223 +#: common/models.py:1235 msgid "Require user to supply mail on signup" msgstr "" -#: common/models.py:1229 +#: common/models.py:1241 msgid "Auto-fill SSO users" msgstr "" -#: common/models.py:1230 +#: common/models.py:1242 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/models.py:1236 +#: common/models.py:1248 msgid "Mail twice" msgstr "" -#: common/models.py:1237 +#: common/models.py:1249 msgid "On signup ask users twice for their mail" msgstr "" -#: common/models.py:1243 +#: common/models.py:1255 msgid "Password twice" msgstr "" -#: common/models.py:1244 +#: common/models.py:1256 msgid "On signup ask users twice for their password" msgstr "" -#: common/models.py:1250 +#: common/models.py:1262 msgid "Group on signup" msgstr "" -#: common/models.py:1251 +#: common/models.py:1263 msgid "Group to which new users are assigned on registration" msgstr "" -#: common/models.py:1257 +#: common/models.py:1269 msgid "Enforce MFA" msgstr "" -#: common/models.py:1258 +#: common/models.py:1270 msgid "Users must use multifactor security." msgstr "" -#: common/models.py:1264 +#: common/models.py:1276 msgid "Check plugins on startup" msgstr "" -#: common/models.py:1265 +#: common/models.py:1277 msgid "Check that all plugins are installed on startup - enable in container enviroments" msgstr "" -#: common/models.py:1273 +#: common/models.py:1284 +msgid "Check plugin signatures" +msgstr "" + +#: common/models.py:1285 +msgid "Check and show signatures for plugins" +msgstr "" + +#: common/models.py:1292 msgid "Enable URL integration" msgstr "" -#: common/models.py:1274 +#: common/models.py:1293 msgid "Enable plugins to add URL routes" msgstr "" -#: common/models.py:1281 +#: common/models.py:1300 msgid "Enable navigation integration" msgstr "" -#: common/models.py:1282 +#: common/models.py:1301 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/models.py:1289 +#: common/models.py:1308 msgid "Enable app integration" msgstr "" -#: common/models.py:1290 +#: common/models.py:1309 msgid "Enable plugins to add apps" msgstr "" -#: common/models.py:1297 +#: common/models.py:1316 msgid "Enable schedule integration" msgstr "" -#: common/models.py:1298 +#: common/models.py:1317 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/models.py:1305 +#: common/models.py:1324 msgid "Enable event integration" msgstr "" -#: common/models.py:1306 +#: common/models.py:1325 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:1323 common/models.py:1639 +#: common/models.py:1342 common/models.py:1658 msgid "Settings key (must be unique - case insensitive" msgstr "" -#: common/models.py:1345 +#: common/models.py:1364 msgid "Show subscribed parts" msgstr "" -#: common/models.py:1346 +#: common/models.py:1365 msgid "Show subscribed parts on the homepage" msgstr "" -#: common/models.py:1352 +#: common/models.py:1371 msgid "Show subscribed categories" msgstr "" -#: common/models.py:1353 +#: common/models.py:1372 msgid "Show subscribed part categories on the homepage" msgstr "" -#: common/models.py:1359 +#: common/models.py:1378 msgid "Show latest parts" msgstr "" -#: common/models.py:1360 +#: common/models.py:1379 msgid "Show latest parts on the homepage" msgstr "" -#: common/models.py:1366 +#: common/models.py:1385 msgid "Recent Part Count" msgstr "" -#: common/models.py:1367 +#: common/models.py:1386 msgid "Number of recent parts to display on index page" msgstr "" -#: common/models.py:1373 +#: common/models.py:1392 msgid "Show unvalidated BOMs" msgstr "" -#: common/models.py:1374 +#: common/models.py:1393 msgid "Show BOMs that await validation on the homepage" msgstr "" -#: common/models.py:1380 +#: common/models.py:1399 msgid "Show recent stock changes" msgstr "" -#: common/models.py:1381 +#: common/models.py:1400 msgid "Show recently changed stock items on the homepage" msgstr "" -#: common/models.py:1387 +#: common/models.py:1406 msgid "Recent Stock Count" msgstr "" -#: common/models.py:1388 +#: common/models.py:1407 msgid "Number of recent stock items to display on index page" msgstr "" -#: common/models.py:1394 +#: common/models.py:1413 msgid "Show low stock" msgstr "" -#: common/models.py:1395 +#: common/models.py:1414 msgid "Show low stock items on the homepage" msgstr "" -#: common/models.py:1401 +#: common/models.py:1420 msgid "Show depleted stock" msgstr "" -#: common/models.py:1402 +#: common/models.py:1421 msgid "Show depleted stock items on the homepage" msgstr "" -#: common/models.py:1408 +#: common/models.py:1427 msgid "Show needed stock" msgstr "" -#: common/models.py:1409 +#: common/models.py:1428 msgid "Show stock items needed for builds on the homepage" msgstr "" -#: common/models.py:1415 +#: common/models.py:1434 msgid "Show expired stock" msgstr "" -#: common/models.py:1416 +#: common/models.py:1435 msgid "Show expired stock items on the homepage" msgstr "" -#: common/models.py:1422 +#: common/models.py:1441 msgid "Show stale stock" msgstr "" -#: common/models.py:1423 +#: common/models.py:1442 msgid "Show stale stock items on the homepage" msgstr "" -#: common/models.py:1429 +#: common/models.py:1448 msgid "Show pending builds" msgstr "" -#: common/models.py:1430 +#: common/models.py:1449 msgid "Show pending builds on the homepage" msgstr "" -#: common/models.py:1436 +#: common/models.py:1455 msgid "Show overdue builds" msgstr "" -#: common/models.py:1437 +#: common/models.py:1456 msgid "Show overdue builds on the homepage" msgstr "" -#: common/models.py:1443 +#: common/models.py:1462 msgid "Show outstanding POs" msgstr "" -#: common/models.py:1444 +#: common/models.py:1463 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:1450 +#: common/models.py:1469 msgid "Show overdue POs" msgstr "" -#: common/models.py:1451 +#: common/models.py:1470 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:1457 +#: common/models.py:1476 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:1458 +#: common/models.py:1477 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:1464 +#: common/models.py:1483 msgid "Show overdue SOs" msgstr "" -#: common/models.py:1465 +#: common/models.py:1484 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:1471 +#: common/models.py:1490 msgid "Inline label display" msgstr "" -#: common/models.py:1472 +#: common/models.py:1491 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1478 +#: common/models.py:1497 msgid "Inline report display" msgstr "" -#: common/models.py:1479 +#: common/models.py:1498 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1485 +#: common/models.py:1504 msgid "Search Parts" msgstr "" -#: common/models.py:1486 +#: common/models.py:1505 msgid "Display parts in search preview window" msgstr "" -#: common/models.py:1492 +#: common/models.py:1511 msgid "Seach Supplier Parts" msgstr "" -#: common/models.py:1493 +#: common/models.py:1512 msgid "Display supplier parts in search preview window" msgstr "" -#: common/models.py:1499 +#: common/models.py:1518 msgid "Search Manufacturer Parts" msgstr "" -#: common/models.py:1500 +#: common/models.py:1519 msgid "Display manufacturer parts in search preview window" msgstr "" -#: common/models.py:1506 +#: common/models.py:1525 msgid "Hide Inactive Parts" msgstr "" -#: common/models.py:1507 +#: common/models.py:1526 msgid "Excluded inactive parts from search preview window" msgstr "" -#: common/models.py:1513 +#: common/models.py:1532 msgid "Search Categories" msgstr "" -#: common/models.py:1514 +#: common/models.py:1533 msgid "Display part categories in search preview window" msgstr "" -#: common/models.py:1520 +#: common/models.py:1539 msgid "Search Stock" msgstr "" -#: common/models.py:1521 +#: common/models.py:1540 msgid "Display stock items in search preview window" msgstr "" -#: common/models.py:1527 +#: common/models.py:1546 msgid "Hide Unavailable Stock Items" msgstr "" -#: common/models.py:1528 +#: common/models.py:1547 msgid "Exclude stock items which are not available from the search preview window" msgstr "" -#: common/models.py:1534 +#: common/models.py:1553 msgid "Search Locations" msgstr "" -#: common/models.py:1535 +#: common/models.py:1554 msgid "Display stock locations in search preview window" msgstr "" -#: common/models.py:1541 +#: common/models.py:1560 msgid "Search Companies" msgstr "" -#: common/models.py:1542 +#: common/models.py:1561 msgid "Display companies in search preview window" msgstr "" -#: common/models.py:1548 +#: common/models.py:1567 msgid "Search Purchase Orders" msgstr "" -#: common/models.py:1549 +#: common/models.py:1568 msgid "Display purchase orders in search preview window" msgstr "" -#: common/models.py:1555 +#: common/models.py:1574 msgid "Exclude Inactive Purchase Orders" msgstr "" -#: common/models.py:1556 +#: common/models.py:1575 msgid "Exclude inactive purchase orders from search preview window" msgstr "" -#: common/models.py:1562 +#: common/models.py:1581 msgid "Search Sales Orders" msgstr "" -#: common/models.py:1563 +#: common/models.py:1582 msgid "Display sales orders in search preview window" msgstr "" -#: common/models.py:1569 +#: common/models.py:1588 msgid "Exclude Inactive Sales Orders" msgstr "" -#: common/models.py:1570 +#: common/models.py:1589 msgid "Exclude inactive sales orders from search preview window" msgstr "" -#: common/models.py:1576 +#: common/models.py:1595 msgid "Search Preview Results" msgstr "" -#: common/models.py:1577 +#: common/models.py:1596 msgid "Number of results to show in each section of the search preview window" msgstr "" -#: common/models.py:1583 +#: common/models.py:1602 msgid "Show Quantity in Forms" msgstr "" -#: common/models.py:1584 +#: common/models.py:1603 msgid "Display available part quantity in some forms" msgstr "" -#: common/models.py:1590 +#: common/models.py:1609 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:1591 +#: common/models.py:1610 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:1597 +#: common/models.py:1616 msgid "Fixed Navbar" msgstr "" -#: common/models.py:1598 +#: common/models.py:1617 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:1604 +#: common/models.py:1623 msgid "Date Format" msgstr "" -#: common/models.py:1605 +#: common/models.py:1624 msgid "Preferred format for displaying dates" msgstr "" -#: common/models.py:1619 part/templates/part/detail.html:41 +#: common/models.py:1638 part/templates/part/detail.html:41 msgid "Part Scheduling" msgstr "" -#: common/models.py:1620 +#: common/models.py:1639 msgid "Display part scheduling information" msgstr "" -#: common/models.py:1679 +#: common/models.py:1698 msgid "Price break quantity" msgstr "" -#: common/models.py:1686 company/serializers.py:366 +#: common/models.py:1705 company/serializers.py:366 #: company/templates/company/supplier_part.html:284 order/models.py:938 -#: templates/js/translated/part.js:1065 templates/js/translated/part.js:2152 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2161 msgid "Price" msgstr "" -#: common/models.py:1687 +#: common/models.py:1706 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:1847 common/models.py:2025 +#: common/models.py:1866 common/models.py:2044 msgid "Endpoint" msgstr "" -#: common/models.py:1848 +#: common/models.py:1867 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:1857 +#: common/models.py:1876 msgid "Name for this webhook" msgstr "" -#: common/models.py:1862 part/models.py:914 plugin/models.py:99 +#: common/models.py:1881 part/models.py:921 plugin/models.py:100 #: templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:104 #: templates/js/translated/table_filters.js:316 @@ -2591,67 +2619,67 @@ msgstr "" msgid "Active" msgstr "" -#: common/models.py:1863 +#: common/models.py:1882 msgid "Is this webhook active" msgstr "" -#: common/models.py:1877 +#: common/models.py:1896 msgid "Token" msgstr "" -#: common/models.py:1878 +#: common/models.py:1897 msgid "Token for access" msgstr "" -#: common/models.py:1885 +#: common/models.py:1904 msgid "Secret" msgstr "" -#: common/models.py:1886 +#: common/models.py:1905 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:1992 +#: common/models.py:2011 msgid "Message ID" msgstr "" -#: common/models.py:1993 +#: common/models.py:2012 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2001 +#: common/models.py:2020 msgid "Host" msgstr "" -#: common/models.py:2002 +#: common/models.py:2021 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2009 +#: common/models.py:2028 msgid "Header" msgstr "" -#: common/models.py:2010 +#: common/models.py:2029 msgid "Header of this message" msgstr "" -#: common/models.py:2016 +#: common/models.py:2035 msgid "Body" msgstr "" -#: common/models.py:2017 +#: common/models.py:2036 msgid "Body of this message" msgstr "" -#: common/models.py:2026 +#: common/models.py:2045 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2031 +#: common/models.py:2050 msgid "Worked on" msgstr "" -#: common/models.py:2032 +#: common/models.py:2051 msgid "Was the work on this message finished?" msgstr "" @@ -2758,7 +2786,7 @@ msgstr "" msgid "Link to external company information" msgstr "" -#: company/models.py:135 part/models.py:808 +#: company/models.py:135 part/models.py:815 msgid "Image" msgstr "" @@ -2791,8 +2819,8 @@ msgid "Does this company manufacture parts?" msgstr "" #: company/models.py:148 company/serializers.py:372 -#: company/templates/company/company_base.html:106 part/serializers.py:151 -#: part/serializers.py:182 stock/serializers.py:180 +#: company/templates/company/company_base.html:106 part/serializers.py:153 +#: part/serializers.py:184 stock/serializers.py:180 msgid "Currency" msgstr "" @@ -2800,7 +2828,7 @@ msgstr "" msgid "Default currency used for this company" msgstr "" -#: company/models.py:248 company/models.py:481 stock/models.py:591 +#: company/models.py:248 company/models.py:481 stock/models.py:598 #: stock/serializers.py:87 stock/templates/stock/item_base.html:148 #: templates/js/translated/bom.js:543 msgid "Base Part" @@ -2832,7 +2860,7 @@ msgstr "" #: templates/js/translated/company.js:497 #: templates/js/translated/company.js:649 #: templates/js/translated/company.js:937 templates/js/translated/order.js:1971 -#: templates/js/translated/part.js:247 templates/js/translated/part.js:1023 +#: templates/js/translated/part.js:247 templates/js/translated/part.js:1027 msgid "MPN" msgstr "" @@ -2861,9 +2889,9 @@ msgstr "" #: company/models.py:365 #: report/templates/report/inventree_test_report_base.html:95 -#: stock/models.py:2088 templates/js/translated/company.js:546 -#: templates/js/translated/company.js:764 templates/js/translated/part.js:845 -#: templates/js/translated/stock.js:1356 +#: stock/models.py:2095 templates/js/translated/company.js:546 +#: templates/js/translated/company.js:764 templates/js/translated/part.js:849 +#: templates/js/translated/stock.js:1360 msgid "Value" msgstr "" @@ -2871,10 +2899,10 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:372 part/models.py:881 part/models.py:2379 +#: company/models.py:372 part/models.py:888 part/models.py:2386 #: part/templates/part/part_base.html:280 #: templates/InvenTree/settings/settings.html:352 -#: templates/js/translated/company.js:770 templates/js/translated/part.js:851 +#: templates/js/translated/company.js:770 templates/js/translated/part.js:855 msgid "Units" msgstr "" @@ -2894,7 +2922,7 @@ msgstr "" #: templates/js/translated/company.js:268 #: templates/js/translated/company.js:401 #: templates/js/translated/company.js:893 templates/js/translated/order.js:1707 -#: templates/js/translated/part.js:217 templates/js/translated/part.js:991 +#: templates/js/translated/part.js:217 templates/js/translated/part.js:995 #: templates/js/translated/table_filters.js:423 msgid "Supplier" msgstr "" @@ -2906,7 +2934,7 @@ msgstr "" #: company/models.py:497 company/templates/company/supplier_part.html:118 #: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267 #: templates/js/translated/order.js:1958 templates/js/translated/part.js:228 -#: templates/js/translated/part.js:1009 +#: templates/js/translated/part.js:1013 msgid "SKU" msgstr "" @@ -2927,23 +2955,23 @@ msgid "Supplier part description" msgstr "" #: company/models.py:522 company/templates/company/supplier_part.html:146 -#: part/models.py:2613 part/templates/part/upload_bom.html:59 +#: part/models.py:2620 part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401 msgid "Note" msgstr "" -#: company/models.py:526 part/models.py:1735 +#: company/models.py:526 part/models.py:1742 msgid "base cost" msgstr "" -#: company/models.py:526 part/models.py:1735 +#: company/models.py:526 part/models.py:1742 msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:528 company/templates/company/supplier_part.html:139 -#: stock/models.py:617 stock/templates/stock/item_base.html:245 -#: templates/js/translated/company.js:969 templates/js/translated/stock.js:1972 +#: stock/models.py:624 stock/templates/stock/item_base.html:245 +#: templates/js/translated/company.js:969 templates/js/translated/stock.js:1976 msgid "Packaging" msgstr "" @@ -2951,7 +2979,7 @@ msgstr "" msgid "Part packaging" msgstr "" -#: company/models.py:530 part/models.py:1737 +#: company/models.py:530 part/models.py:1744 msgid "multiple" msgstr "" @@ -2964,7 +2992,7 @@ msgstr "" #: templates/email/low_stock_notification.html:18 #: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789 #: templates/js/translated/build.js:2645 templates/js/translated/company.js:979 -#: templates/js/translated/part.js:596 templates/js/translated/part.js:599 +#: templates/js/translated/part.js:600 templates/js/translated/part.js:603 #: templates/js/translated/table_filters.js:186 msgid "Available" msgstr "" @@ -3037,12 +3065,12 @@ msgid "Download image from URL" msgstr "" #: company/templates/company/company_base.html:86 order/models.py:637 -#: order/templates/order/sales_order_base.html:116 stock/models.py:636 -#: stock/models.py:637 stock/serializers.py:809 +#: order/templates/order/sales_order_base.html:116 stock/models.py:643 +#: stock/models.py:644 stock/serializers.py:811 #: stock/templates/stock/item_base.html:401 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:393 templates/js/translated/order.js:2513 -#: templates/js/translated/stock.js:2550 +#: templates/js/translated/stock.js:2559 #: templates/js/translated/table_filters.js:427 msgid "Customer" msgstr "" @@ -3083,7 +3111,7 @@ msgstr "" #: company/templates/company/detail.html:36 #: company/templates/company/detail.html:84 -#: part/templates/part/category.html:176 +#: part/templates/part/category.html:182 msgid "Order parts" msgstr "" @@ -3231,7 +3259,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:170 #: part/templates/part/detail.html:186 #: templates/InvenTree/settings/category.html:12 -#: templates/InvenTree/settings/part.html:66 +#: templates/InvenTree/settings/part.html:68 msgid "New Parameter" msgstr "" @@ -3261,10 +3289,10 @@ msgid "Assigned Stock Items" msgstr "" #: company/templates/company/supplier_part.html:7 -#: company/templates/company/supplier_part.html:24 stock/models.py:600 +#: company/templates/company/supplier_part.html:24 stock/models.py:607 #: stock/templates/stock/item_base.html:238 #: templates/js/translated/company.js:909 templates/js/translated/order.js:935 -#: templates/js/translated/stock.js:1929 +#: templates/js/translated/stock.js:1933 msgid "Supplier Part" msgstr "" @@ -3308,13 +3336,13 @@ msgid "Supplier Part Stock" msgstr "" #: company/templates/company/supplier_part.html:168 -#: part/templates/part/detail.html:24 stock/templates/stock/location.html:176 +#: part/templates/part/detail.html:24 stock/templates/stock/location.html:181 msgid "Create new stock item" msgstr "" #: company/templates/company/supplier_part.html:169 -#: part/templates/part/detail.html:25 stock/templates/stock/location.html:177 -#: templates/js/translated/stock.js:431 +#: part/templates/part/detail.html:25 stock/templates/stock/location.html:182 +#: templates/js/translated/stock.js:435 msgid "New Stock Item" msgstr "" @@ -3330,7 +3358,7 @@ msgstr "" #: company/templates/company/supplier_part.html:212 #: company/templates/company/supplier_part.html:326 -#: part/templates/part/prices.html:276 templates/js/translated/part.js:2224 +#: part/templates/part/prices.html:276 templates/js/translated/part.js:2233 msgid "Add Price Break" msgstr "" @@ -3339,12 +3367,12 @@ msgid "No price break information found" msgstr "" #: company/templates/company/supplier_part.html:252 -#: templates/js/translated/part.js:2234 +#: templates/js/translated/part.js:2243 msgid "Delete Price Break" msgstr "" #: company/templates/company/supplier_part.html:266 -#: templates/js/translated/part.js:2248 +#: templates/js/translated/part.js:2257 msgid "Edit Price Break" msgstr "" @@ -3366,13 +3394,13 @@ msgstr "" #: company/templates/company/supplier_part_navbar.html:15 #: part/templates/part/part_sidebar.html:14 -#: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:19 +#: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:24 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:151 #: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/bom.js:555 templates/js/translated/part.js:747 -#: templates/js/translated/part.js:1295 templates/js/translated/part.js:1456 -#: templates/js/translated/stock.js:955 templates/js/translated/stock.js:1750 +#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751 +#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460 +#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754 #: templates/navbar.html:31 msgid "Stock" msgstr "" @@ -3392,14 +3420,14 @@ msgid "Pricing" msgstr "" #: company/templates/company/supplier_part_sidebar.html:5 -#: part/templates/part/category.html:197 +#: part/templates/part/category.html:203 #: part/templates/part/category_sidebar.html:17 -#: stock/templates/stock/location.html:147 -#: stock/templates/stock/location.html:161 -#: stock/templates/stock/location.html:173 +#: stock/templates/stock/location.html:152 +#: stock/templates/stock/location.html:166 +#: stock/templates/stock/location.html:178 #: stock/templates/stock/location_sidebar.html:7 #: templates/InvenTree/search.html:153 templates/js/translated/search.js:223 -#: templates/js/translated/stock.js:2427 users/models.py:40 +#: templates/js/translated/stock.js:2436 users/models.py:40 msgid "Stock Items" msgstr "" @@ -3656,8 +3684,8 @@ msgstr "" #: stock/templates/stock/item_base.html:184 #: templates/email/overdue_purchase_order.html:15 #: templates/js/translated/order.js:936 templates/js/translated/order.js:1691 -#: templates/js/translated/part.js:968 templates/js/translated/stock.js:1909 -#: templates/js/translated/stock.js:2531 +#: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913 +#: templates/js/translated/stock.js:2540 msgid "Purchase Order" msgstr "" @@ -3667,7 +3695,7 @@ msgstr "" #: order/models.py:1009 order/templates/order/order_base.html:169 #: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073 -#: templates/js/translated/part.js:1060 templates/js/translated/part.js:1087 +#: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091 #: templates/js/translated/table_filters.js:338 msgid "Received" msgstr "" @@ -3676,9 +3704,9 @@ msgstr "" msgid "Number of items received" msgstr "" -#: order/models.py:1017 part/templates/part/prices.html:181 stock/models.py:727 +#: order/models.py:1017 part/templates/part/prices.html:181 stock/models.py:734 #: stock/serializers.py:171 stock/templates/stock/item_base.html:191 -#: templates/js/translated/stock.js:1960 +#: templates/js/translated/stock.js:1964 msgid "Purchase Price" msgstr "" @@ -4066,8 +4094,8 @@ msgstr "" #: templates/js/translated/bom.js:77 templates/js/translated/build.js:431 #: templates/js/translated/build.js:583 templates/js/translated/build.js:1974 #: templates/js/translated/order.js:884 templates/js/translated/order.js:1337 -#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:621 -#: templates/js/translated/stock.js:789 +#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625 +#: templates/js/translated/stock.js:793 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "" @@ -4261,8 +4289,8 @@ msgstr "" msgid "This field is required" msgstr "" -#: part/bom.py:127 part/models.py:98 part/models.py:817 -#: part/templates/part/category.html:108 part/templates/part/part_base.html:330 +#: part/bom.py:127 part/models.py:98 part/models.py:824 +#: part/templates/part/category.html:114 part/templates/part/part_base.html:330 msgid "Default Location" msgstr "" @@ -4276,9 +4304,9 @@ msgid "Available Stock" msgstr "" #: part/bom.py:130 part/templates/part/part_base.html:207 -#: templates/js/translated/bom.js:947 templates/js/translated/part.js:586 -#: templates/js/translated/part.js:606 templates/js/translated/part.js:1298 -#: templates/js/translated/part.js:1470 templates/js/translated/part.js:1486 +#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590 +#: templates/js/translated/part.js:610 templates/js/translated/part.js:1302 +#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "" @@ -4299,516 +4327,524 @@ msgstr "" msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:115 part/models.py:2455 part/templates/part/category.html:15 +#: part/models.py:107 stock/models.py:84 +msgid "Icon" +msgstr "" + +#: part/models.py:108 stock/models.py:85 +msgid "Icon (optional)" +msgstr "" + +#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" -#: part/models.py:116 part/templates/part/category.html:128 +#: part/models.py:123 part/templates/part/category.html:134 #: templates/InvenTree/search.html:95 templates/js/translated/search.js:198 #: users/models.py:37 msgid "Part Categories" msgstr "" -#: part/models.py:337 part/templates/part/cat_link.html:3 -#: part/templates/part/category.html:17 part/templates/part/category.html:133 -#: part/templates/part/category.html:153 +#: part/models.py:344 part/templates/part/cat_link.html:3 +#: part/templates/part/category.html:23 part/templates/part/category.html:139 +#: part/templates/part/category.html:159 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82 #: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:1946 templates/js/translated/search.js:144 +#: templates/js/translated/part.js:1955 templates/js/translated/search.js:144 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "" -#: part/models.py:422 +#: part/models.py:429 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:492 part/models.py:504 +#: part/models.py:499 part/models.py:511 #, python-brace-format msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)" msgstr "" -#: part/models.py:621 +#: part/models.py:628 msgid "Next available serial numbers are" msgstr "" -#: part/models.py:625 +#: part/models.py:632 msgid "Next available serial number is" msgstr "" -#: part/models.py:630 +#: part/models.py:637 msgid "Most recent serial number is" msgstr "" -#: part/models.py:711 +#: part/models.py:718 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:738 part/models.py:2509 +#: part/models.py:745 part/models.py:2516 msgid "Part name" msgstr "" -#: part/models.py:745 +#: part/models.py:752 msgid "Is Template" msgstr "" -#: part/models.py:746 +#: part/models.py:753 msgid "Is this part a template part?" msgstr "" -#: part/models.py:756 +#: part/models.py:763 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:757 +#: part/models.py:764 msgid "Variant Of" msgstr "" -#: part/models.py:763 +#: part/models.py:770 msgid "Part description" msgstr "" -#: part/models.py:768 part/templates/part/category.html:86 +#: part/models.py:775 part/templates/part/category.html:92 #: part/templates/part/part_base.html:294 msgid "Keywords" msgstr "" -#: part/models.py:769 +#: part/models.py:776 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:776 part/models.py:2211 part/models.py:2454 +#: part/models.py:783 part/models.py:2218 part/models.py:2461 #: part/templates/part/part_base.html:257 #: templates/InvenTree/settings/settings.html:232 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1438 templates/js/translated/part.js:1664 +#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1668 msgid "Category" msgstr "" -#: part/models.py:777 +#: part/models.py:784 msgid "Part category" msgstr "" -#: part/models.py:782 part/templates/part/part_base.html:266 -#: templates/js/translated/part.js:735 templates/js/translated/part.js:1391 -#: templates/js/translated/stock.js:1722 +#: part/models.py:789 part/templates/part/part_base.html:266 +#: templates/js/translated/part.js:739 templates/js/translated/part.js:1395 +#: templates/js/translated/stock.js:1726 msgid "IPN" msgstr "" -#: part/models.py:783 +#: part/models.py:790 msgid "Internal Part Number" msgstr "" -#: part/models.py:789 +#: part/models.py:796 msgid "Part revision or version number" msgstr "" -#: part/models.py:790 part/templates/part/part_base.html:273 -#: report/models.py:171 templates/js/translated/part.js:739 +#: part/models.py:797 part/templates/part/part_base.html:273 +#: report/models.py:171 templates/js/translated/part.js:743 msgid "Revision" msgstr "" -#: part/models.py:815 +#: part/models.py:822 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:860 part/templates/part/part_base.html:339 +#: part/models.py:867 part/templates/part/part_base.html:339 msgid "Default Supplier" msgstr "" -#: part/models.py:861 +#: part/models.py:868 msgid "Default supplier part" msgstr "" -#: part/models.py:868 +#: part/models.py:875 msgid "Default Expiry" msgstr "" -#: part/models.py:869 +#: part/models.py:876 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:874 part/templates/part/part_base.html:200 +#: part/models.py:881 part/templates/part/part_base.html:200 msgid "Minimum Stock" msgstr "" -#: part/models.py:875 +#: part/models.py:882 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:882 +#: part/models.py:889 msgid "Stock keeping units for this part" msgstr "" -#: part/models.py:888 +#: part/models.py:895 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:894 +#: part/models.py:901 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:900 +#: part/models.py:907 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:905 +#: part/models.py:912 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:910 +#: part/models.py:917 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:915 +#: part/models.py:922 msgid "Is this part active?" msgstr "" -#: part/models.py:920 +#: part/models.py:927 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:922 +#: part/models.py:929 msgid "Part notes" msgstr "" -#: part/models.py:924 +#: part/models.py:931 msgid "BOM checksum" msgstr "" -#: part/models.py:924 +#: part/models.py:931 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:927 +#: part/models.py:934 msgid "BOM checked by" msgstr "" -#: part/models.py:929 +#: part/models.py:936 msgid "BOM checked date" msgstr "" -#: part/models.py:933 +#: part/models.py:940 msgid "Creation User" msgstr "" -#: part/models.py:1737 +#: part/models.py:1744 msgid "Sell multiple" msgstr "" -#: part/models.py:2258 +#: part/models.py:2265 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:2275 +#: part/models.py:2282 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:2295 templates/js/translated/part.js:1997 -#: templates/js/translated/stock.js:1336 +#: part/models.py:2302 templates/js/translated/part.js:2006 +#: templates/js/translated/stock.js:1340 msgid "Test Name" msgstr "" -#: part/models.py:2296 +#: part/models.py:2303 msgid "Enter a name for the test" msgstr "" -#: part/models.py:2301 +#: part/models.py:2308 msgid "Test Description" msgstr "" -#: part/models.py:2302 +#: part/models.py:2309 msgid "Enter description for this test" msgstr "" -#: part/models.py:2307 templates/js/translated/part.js:2006 +#: part/models.py:2314 templates/js/translated/part.js:2015 #: templates/js/translated/table_filters.js:302 msgid "Required" msgstr "" -#: part/models.py:2308 +#: part/models.py:2315 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:2313 templates/js/translated/part.js:2014 +#: part/models.py:2320 templates/js/translated/part.js:2023 msgid "Requires Value" msgstr "" -#: part/models.py:2314 +#: part/models.py:2321 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:2319 templates/js/translated/part.js:2021 +#: part/models.py:2326 templates/js/translated/part.js:2030 msgid "Requires Attachment" msgstr "" -#: part/models.py:2320 +#: part/models.py:2327 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:2328 +#: part/models.py:2335 #, python-brace-format msgid "Illegal character in template name ({c})" msgstr "" -#: part/models.py:2364 +#: part/models.py:2371 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:2372 +#: part/models.py:2379 msgid "Parameter Name" msgstr "" -#: part/models.py:2379 +#: part/models.py:2386 msgid "Parameter Units" msgstr "" -#: part/models.py:2410 +#: part/models.py:2417 msgid "Parent Part" msgstr "" -#: part/models.py:2412 part/models.py:2460 part/models.py:2461 +#: part/models.py:2419 part/models.py:2467 part/models.py:2468 #: templates/InvenTree/settings/settings.html:227 msgid "Parameter Template" msgstr "" -#: part/models.py:2414 +#: part/models.py:2421 msgid "Data" msgstr "" -#: part/models.py:2414 +#: part/models.py:2421 msgid "Parameter Value" msgstr "" -#: part/models.py:2465 templates/InvenTree/settings/settings.html:236 +#: part/models.py:2472 templates/InvenTree/settings/settings.html:236 msgid "Default Value" msgstr "" -#: part/models.py:2466 +#: part/models.py:2473 msgid "Default Parameter Value" msgstr "" -#: part/models.py:2501 +#: part/models.py:2508 msgid "Part ID or part name" msgstr "" -#: part/models.py:2504 templates/js/translated/model_renderers.js:212 +#: part/models.py:2511 templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "" -#: part/models.py:2505 +#: part/models.py:2512 msgid "Unique part ID value" msgstr "" -#: part/models.py:2508 +#: part/models.py:2515 msgid "Part Name" msgstr "" -#: part/models.py:2512 +#: part/models.py:2519 msgid "Part IPN" msgstr "" -#: part/models.py:2513 +#: part/models.py:2520 msgid "Part IPN value" msgstr "" -#: part/models.py:2516 +#: part/models.py:2523 msgid "Level" msgstr "" -#: part/models.py:2517 +#: part/models.py:2524 msgid "BOM level" msgstr "" -#: part/models.py:2586 +#: part/models.py:2593 msgid "Select parent part" msgstr "" -#: part/models.py:2594 +#: part/models.py:2601 msgid "Sub part" msgstr "" -#: part/models.py:2595 +#: part/models.py:2602 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:2601 +#: part/models.py:2608 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:2603 part/templates/part/upload_bom.html:58 +#: part/models.py:2610 part/templates/part/upload_bom.html:58 #: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999 #: templates/js/translated/table_filters.js:100 msgid "Optional" msgstr "" -#: part/models.py:2603 +#: part/models.py:2610 msgid "This BOM item is optional" msgstr "" -#: part/models.py:2606 part/templates/part/upload_bom.html:55 +#: part/models.py:2613 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:2607 +#: part/models.py:2614 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:2610 +#: part/models.py:2617 msgid "BOM item reference" msgstr "" -#: part/models.py:2613 +#: part/models.py:2620 msgid "BOM item notes" msgstr "" -#: part/models.py:2615 +#: part/models.py:2622 msgid "Checksum" msgstr "" -#: part/models.py:2615 +#: part/models.py:2622 msgid "BOM line checksum" msgstr "" -#: part/models.py:2619 part/templates/part/upload_bom.html:57 +#: part/models.py:2626 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1016 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:96 msgid "Inherited" msgstr "" -#: part/models.py:2620 +#: part/models.py:2627 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:2625 part/templates/part/upload_bom.html:56 +#: part/models.py:2632 part/templates/part/upload_bom.html:56 #: templates/js/translated/bom.js:1008 msgid "Allow Variants" msgstr "" -#: part/models.py:2626 +#: part/models.py:2633 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:2704 stock/models.py:461 +#: part/models.py:2711 stock/models.py:468 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:2713 part/models.py:2715 +#: part/models.py:2720 part/models.py:2722 msgid "Sub part must be specified" msgstr "" -#: part/models.py:2820 +#: part/models.py:2827 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:2841 +#: part/models.py:2848 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:2854 +#: part/models.py:2861 msgid "Parent BOM item" msgstr "" -#: part/models.py:2862 +#: part/models.py:2869 msgid "Substitute part" msgstr "" -#: part/models.py:2877 +#: part/models.py:2884 msgid "Part 1" msgstr "" -#: part/models.py:2881 +#: part/models.py:2888 msgid "Part 2" msgstr "" -#: part/models.py:2881 +#: part/models.py:2888 msgid "Select Related Part" msgstr "" -#: part/models.py:2899 +#: part/models.py:2906 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:2903 +#: part/models.py:2910 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:152 part/serializers.py:183 stock/serializers.py:181 +#: part/serializers.py:154 part/serializers.py:185 stock/serializers.py:181 msgid "Purchase currency of this stock item" msgstr "" -#: part/serializers.py:812 +#: part/serializers.py:814 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:820 +#: part/serializers.py:822 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:821 +#: part/serializers.py:823 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:826 +#: part/serializers.py:828 msgid "Include Inherited" msgstr "" -#: part/serializers.py:827 +#: part/serializers.py:829 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:832 +#: part/serializers.py:834 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:833 +#: part/serializers.py:835 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:838 +#: part/serializers.py:840 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:839 +#: part/serializers.py:841 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:879 +#: part/serializers.py:881 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:880 +#: part/serializers.py:882 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:910 +#: part/serializers.py:912 msgid "No part column specified" msgstr "" -#: part/serializers.py:953 +#: part/serializers.py:955 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:956 +#: part/serializers.py:958 msgid "No matching part found" msgstr "" -#: part/serializers.py:959 +#: part/serializers.py:961 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:968 +#: part/serializers.py:970 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:976 +#: part/serializers.py:978 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:997 +#: part/serializers.py:999 msgid "At least one BOM item is required" msgstr "" @@ -4848,101 +4884,101 @@ msgstr "" msgid "Delete Items" msgstr "" -#: part/templates/part/category.html:28 part/templates/part/category.html:32 +#: part/templates/part/category.html:34 part/templates/part/category.html:38 msgid "You are subscribed to notifications for this category" msgstr "" -#: part/templates/part/category.html:36 +#: part/templates/part/category.html:42 msgid "Subscribe to notifications for this category" msgstr "" -#: part/templates/part/category.html:42 +#: part/templates/part/category.html:48 msgid "Category Actions" msgstr "" -#: part/templates/part/category.html:47 +#: part/templates/part/category.html:53 msgid "Edit category" msgstr "" -#: part/templates/part/category.html:48 +#: part/templates/part/category.html:54 msgid "Edit Category" msgstr "" -#: part/templates/part/category.html:52 +#: part/templates/part/category.html:58 msgid "Delete category" msgstr "" -#: part/templates/part/category.html:53 +#: part/templates/part/category.html:59 msgid "Delete Category" msgstr "" -#: part/templates/part/category.html:61 +#: part/templates/part/category.html:67 msgid "Create new part category" msgstr "" -#: part/templates/part/category.html:62 +#: part/templates/part/category.html:68 msgid "New Category" msgstr "" -#: part/templates/part/category.html:80 part/templates/part/category.html:93 +#: part/templates/part/category.html:86 part/templates/part/category.html:99 msgid "Category Path" msgstr "" -#: part/templates/part/category.html:94 +#: part/templates/part/category.html:100 msgid "Top level part category" msgstr "" -#: part/templates/part/category.html:114 part/templates/part/category.html:222 +#: part/templates/part/category.html:120 part/templates/part/category.html:228 #: part/templates/part/category_sidebar.html:7 msgid "Subcategories" msgstr "" -#: part/templates/part/category.html:119 +#: part/templates/part/category.html:125 msgid "Parts (Including subcategories)" msgstr "" -#: part/templates/part/category.html:157 +#: part/templates/part/category.html:163 msgid "Create new part" msgstr "" -#: part/templates/part/category.html:158 templates/js/translated/bom.js:367 +#: part/templates/part/category.html:164 templates/js/translated/bom.js:367 msgid "New Part" msgstr "" -#: part/templates/part/category.html:168 part/templates/part/detail.html:363 +#: part/templates/part/category.html:174 part/templates/part/detail.html:363 #: part/templates/part/detail.html:394 msgid "Options" msgstr "" -#: part/templates/part/category.html:172 +#: part/templates/part/category.html:178 msgid "Set category" msgstr "" -#: part/templates/part/category.html:173 +#: part/templates/part/category.html:179 msgid "Set Category" msgstr "" -#: part/templates/part/category.html:180 part/templates/part/category.html:181 +#: part/templates/part/category.html:186 part/templates/part/category.html:187 msgid "Print Labels" msgstr "" -#: part/templates/part/category.html:206 +#: part/templates/part/category.html:212 msgid "Part Parameters" msgstr "" -#: part/templates/part/category.html:320 +#: part/templates/part/category.html:327 msgid "Create Part Category" msgstr "" -#: part/templates/part/category.html:340 +#: part/templates/part/category.html:347 msgid "Create Part" msgstr "" -#: part/templates/part/category.html:343 +#: part/templates/part/category.html:350 msgid "Create another part after this one" msgstr "" -#: part/templates/part/category.html:344 +#: part/templates/part/category.html:351 msgid "Part created successfully" msgstr "" @@ -4950,7 +4986,7 @@ msgstr "" msgid "Import Parts" msgstr "" -#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:375 +#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:379 msgid "Duplicate Part" msgstr "" @@ -5172,19 +5208,19 @@ msgstr "" #: part/templates/part/part_base.html:43 #: stock/templates/stock/item_base.html:41 -#: stock/templates/stock/location.html:43 +#: stock/templates/stock/location.html:48 msgid "Barcode actions" msgstr "" #: part/templates/part/part_base.html:46 #: stock/templates/stock/item_base.html:45 -#: stock/templates/stock/location.html:45 templates/qr_button.html:1 +#: stock/templates/stock/location.html:50 templates/qr_button.html:1 msgid "Show QR Code" msgstr "" #: part/templates/part/part_base.html:49 #: stock/templates/stock/item_base.html:63 -#: stock/templates/stock/location.html:47 +#: stock/templates/stock/location.html:52 msgid "Print Label" msgstr "" @@ -5194,7 +5230,7 @@ msgstr "" #: part/templates/part/part_base.html:60 #: stock/templates/stock/item_base.html:116 -#: stock/templates/stock/location.html:56 +#: stock/templates/stock/location.html:61 msgid "Stock actions" msgstr "" @@ -5255,7 +5291,7 @@ msgstr "" #: templates/js/translated/company.js:624 #: templates/js/translated/company.js:884 #: templates/js/translated/model_renderers.js:204 -#: templates/js/translated/part.js:650 templates/js/translated/part.js:727 +#: templates/js/translated/part.js:654 templates/js/translated/part.js:731 msgid "Inactive" msgstr "" @@ -5289,9 +5325,9 @@ msgstr "" msgid "Can Build" msgstr "" -#: part/templates/part/part_base.html:238 templates/js/translated/part.js:589 -#: templates/js/translated/part.js:609 templates/js/translated/part.js:1302 -#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490 +#: part/templates/part/part_base.html:238 templates/js/translated/part.js:593 +#: templates/js/translated/part.js:613 templates/js/translated/part.js:1306 +#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1494 msgid "Building" msgstr "" @@ -5464,8 +5500,8 @@ msgstr "" msgid "No sale pice history available for this part." msgstr "" -#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:612 -#: templates/js/translated/part.js:1290 templates/js/translated/part.js:1494 +#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616 +#: templates/js/translated/part.js:1294 templates/js/translated/part.js:1498 msgid "No Stock" msgstr "" @@ -5630,51 +5666,55 @@ msgstr "" msgid "Allow sending of emails for event notifications" msgstr "" -#: plugin/models.py:32 +#: plugin/models.py:33 msgid "Plugin Metadata" msgstr "" -#: plugin/models.py:33 +#: plugin/models.py:34 msgid "JSON metadata field, for use by external plugins" msgstr "" -#: plugin/models.py:79 +#: plugin/models.py:80 msgid "Plugin Configuration" msgstr "" -#: plugin/models.py:80 +#: plugin/models.py:81 msgid "Plugin Configurations" msgstr "" -#: plugin/models.py:85 +#: plugin/models.py:86 msgid "Key" msgstr "" -#: plugin/models.py:86 +#: plugin/models.py:87 msgid "Key of plugin" msgstr "" -#: plugin/models.py:94 +#: plugin/models.py:95 msgid "PluginName of the plugin" msgstr "" -#: plugin/models.py:100 +#: plugin/models.py:101 msgid "Is the plugin active" msgstr "" -#: plugin/models.py:168 +#: plugin/models.py:158 +msgid "Sample plugin" +msgstr "" + +#: plugin/models.py:186 msgid "Plugin" msgstr "" -#: plugin/models.py:231 +#: plugin/models.py:249 msgid "Method" msgstr "" -#: plugin/plugin.py:228 +#: plugin/plugin.py:251 msgid "No author found" msgstr "" -#: plugin/plugin.py:240 +#: plugin/plugin.py:263 msgid "No date found" msgstr "" @@ -5746,12 +5786,12 @@ msgstr "" msgid "No valid objects provided to template" msgstr "" -#: report/api.py:216 report/api.py:257 +#: report/api.py:216 report/api.py:252 #, python-brace-format msgid "Template file '{template}' is missing or does not exist" msgstr "" -#: report/api.py:360 +#: report/api.py:355 msgid "Test report" msgstr "" @@ -5852,12 +5892,12 @@ msgid "Stock Item Test Report" msgstr "" #: report/templates/report/inventree_test_report_base.html:79 -#: stock/models.py:641 stock/templates/stock/item_base.html:322 +#: stock/models.py:648 stock/templates/stock/item_base.html:322 #: templates/js/translated/build.js:424 templates/js/translated/build.js:576 #: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673 #: templates/js/translated/model_renderers.js:118 #: templates/js/translated/order.js:118 templates/js/translated/order.js:3297 -#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:486 +#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490 msgid "Serial Number" msgstr "" @@ -5866,19 +5906,19 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report_base.html:93 -#: stock/models.py:2076 +#: stock/models.py:2083 msgid "Test" msgstr "" #: report/templates/report/inventree_test_report_base.html:94 -#: stock/models.py:2082 +#: stock/models.py:2089 msgid "Result" msgstr "" #: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:51 +#: templates/InvenTree/settings/plugin.html:53 #: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2459 +#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468 msgid "Date" msgstr "" @@ -5896,8 +5936,8 @@ msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report_base.html:137 -#: templates/js/translated/stock.js:606 templates/js/translated/stock.js:776 -#: templates/js/translated/stock.js:2708 +#: templates/js/translated/stock.js:610 templates/js/translated/stock.js:780 +#: templates/js/translated/stock.js:2717 msgid "Serial" msgstr "" @@ -5913,241 +5953,241 @@ msgstr "" msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" -#: stock/models.py:82 stock/models.py:732 +#: stock/models.py:89 stock/models.py:739 #: stock/templates/stock/item_base.html:252 msgid "Owner" msgstr "" -#: stock/models.py:83 stock/models.py:733 +#: stock/models.py:90 stock/models.py:740 msgid "Select Owner" msgstr "" -#: stock/models.py:435 +#: stock/models.py:442 msgid "StockItem with this serial number already exists" msgstr "" -#: stock/models.py:467 stock/serializers.py:95 +#: stock/models.py:474 stock/serializers.py:95 msgid "Stock item cannot be created for virtual parts" msgstr "" -#: stock/models.py:484 +#: stock/models.py:491 #, python-brace-format msgid "Part type ('{pf}') must be {pe}" msgstr "" -#: stock/models.py:494 stock/models.py:503 +#: stock/models.py:501 stock/models.py:510 msgid "Quantity must be 1 for item with a serial number" msgstr "" -#: stock/models.py:495 +#: stock/models.py:502 msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:517 +#: stock/models.py:524 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:523 +#: stock/models.py:530 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:537 +#: stock/models.py:544 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:583 +#: stock/models.py:590 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:593 +#: stock/models.py:600 msgid "Base part" msgstr "" -#: stock/models.py:601 +#: stock/models.py:608 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:608 stock/templates/stock/location.html:17 +#: stock/models.py:615 stock/templates/stock/location.html:17 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" msgstr "" -#: stock/models.py:611 +#: stock/models.py:618 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:618 +#: stock/models.py:625 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:624 stock/templates/stock/item_base.html:361 +#: stock/models.py:631 stock/templates/stock/item_base.html:361 msgid "Installed In" msgstr "" -#: stock/models.py:627 +#: stock/models.py:634 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:643 +#: stock/models.py:650 msgid "Serial number for this item" msgstr "" -#: stock/models.py:657 +#: stock/models.py:664 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:662 +#: stock/models.py:669 msgid "Stock Quantity" msgstr "" -#: stock/models.py:671 +#: stock/models.py:678 msgid "Source Build" msgstr "" -#: stock/models.py:673 +#: stock/models.py:680 msgid "Build for this stock item" msgstr "" -#: stock/models.py:684 +#: stock/models.py:691 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:687 +#: stock/models.py:694 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:693 +#: stock/models.py:700 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:699 stock/templates/stock/item_base.html:429 -#: templates/js/translated/stock.js:1879 +#: stock/models.py:706 stock/templates/stock/item_base.html:429 +#: templates/js/translated/stock.js:1883 msgid "Expiry Date" msgstr "" -#: stock/models.py:700 +#: stock/models.py:707 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:713 +#: stock/models.py:720 msgid "Delete on deplete" msgstr "" -#: stock/models.py:713 +#: stock/models.py:720 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:720 stock/templates/stock/item.html:132 +#: stock/models.py:727 stock/templates/stock/item.html:132 msgid "Stock Item Notes" msgstr "" -#: stock/models.py:728 +#: stock/models.py:735 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:756 +#: stock/models.py:763 msgid "Converted to part" msgstr "" -#: stock/models.py:1235 +#: stock/models.py:1242 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1241 +#: stock/models.py:1248 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1247 +#: stock/models.py:1254 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({n})" msgstr "" -#: stock/models.py:1250 +#: stock/models.py:1257 msgid "Serial numbers must be a list of integers" msgstr "" -#: stock/models.py:1253 +#: stock/models.py:1260 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1260 +#: stock/models.py:1267 #, python-brace-format msgid "Serial numbers already exist: {exists}" msgstr "" -#: stock/models.py:1330 +#: stock/models.py:1337 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1333 +#: stock/models.py:1340 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1336 +#: stock/models.py:1343 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1339 +#: stock/models.py:1346 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1342 +#: stock/models.py:1349 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1345 +#: stock/models.py:1352 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1352 stock/serializers.py:959 +#: stock/models.py:1359 stock/serializers.py:961 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1356 +#: stock/models.py:1363 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1360 +#: stock/models.py:1367 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1364 +#: stock/models.py:1371 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:1533 +#: stock/models.py:1540 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:1994 +#: stock/models.py:2001 msgid "Entry notes" msgstr "" -#: stock/models.py:2052 +#: stock/models.py:2059 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2058 +#: stock/models.py:2065 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2077 +#: stock/models.py:2084 msgid "Test name" msgstr "" -#: stock/models.py:2083 +#: stock/models.py:2090 msgid "Test result" msgstr "" -#: stock/models.py:2089 +#: stock/models.py:2096 msgid "Test output value" msgstr "" -#: stock/models.py:2096 +#: stock/models.py:2103 msgid "Test result attachment" msgstr "" -#: stock/models.py:2102 +#: stock/models.py:2109 msgid "Test notes" msgstr "" @@ -6172,7 +6212,7 @@ msgstr "" msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:323 stock/serializers.py:916 stock/serializers.py:1149 +#: stock/serializers.py:323 stock/serializers.py:918 stock/serializers.py:1151 msgid "Destination stock location" msgstr "" @@ -6220,63 +6260,63 @@ msgstr "" msgid "Destination location for returned item" msgstr "" -#: stock/serializers.py:771 +#: stock/serializers.py:773 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:775 +#: stock/serializers.py:777 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:779 +#: stock/serializers.py:781 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:810 +#: stock/serializers.py:812 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:816 +#: stock/serializers.py:818 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:824 +#: stock/serializers.py:826 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:834 stock/serializers.py:1065 +#: stock/serializers.py:836 stock/serializers.py:1067 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:923 +#: stock/serializers.py:925 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:928 +#: stock/serializers.py:930 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:929 +#: stock/serializers.py:931 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:934 +#: stock/serializers.py:936 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:935 +#: stock/serializers.py:937 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:945 +#: stock/serializers.py:947 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1027 +#: stock/serializers.py:1029 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1055 +#: stock/serializers.py:1057 msgid "Stock transaction notes" msgstr "" @@ -6313,7 +6353,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2852 +#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2861 msgid "Install Stock Item" msgstr "" @@ -6321,7 +6361,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1518 +#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1522 msgid "Add Test Result" msgstr "" @@ -6352,7 +6392,7 @@ msgid "Stock adjustment actions" msgstr "" #: stock/templates/stock/item_base.html:80 -#: stock/templates/stock/location.html:63 templates/stock_table.html:47 +#: stock/templates/stock/location.html:68 templates/stock_table.html:47 msgid "Count stock" msgstr "" @@ -6369,7 +6409,7 @@ msgid "Serialize stock" msgstr "" #: stock/templates/stock/item_base.html:93 -#: stock/templates/stock/location.html:69 templates/stock_table.html:48 +#: stock/templates/stock/location.html:74 templates/stock_table.html:48 msgid "Transfer stock" msgstr "" @@ -6430,7 +6470,7 @@ msgid "You are not in the list of owners of this item. This stock item cannot be msgstr "" #: stock/templates/stock/item_base.html:257 -#: stock/templates/stock/location.html:127 +#: stock/templates/stock/location.html:132 msgid "Read only" msgstr "" @@ -6508,7 +6548,7 @@ msgid "Stale" msgstr "" #: stock/templates/stock/item_base.html:442 -#: templates/js/translated/company.js:985 templates/js/translated/stock.js:1895 +#: templates/js/translated/company.js:985 templates/js/translated/stock.js:1899 msgid "Last Updated" msgstr "" @@ -6552,58 +6592,58 @@ msgstr "" msgid "Select quantity to serialize, and unique serial numbers." msgstr "" -#: stock/templates/stock/location.html:33 +#: stock/templates/stock/location.html:38 msgid "Locate stock location" msgstr "" -#: stock/templates/stock/location.html:49 +#: stock/templates/stock/location.html:54 msgid "Check-in Items" msgstr "" -#: stock/templates/stock/location.html:77 +#: stock/templates/stock/location.html:82 msgid "Location actions" msgstr "" -#: stock/templates/stock/location.html:79 +#: stock/templates/stock/location.html:84 msgid "Edit location" msgstr "" -#: stock/templates/stock/location.html:81 +#: stock/templates/stock/location.html:86 msgid "Delete location" msgstr "" -#: stock/templates/stock/location.html:90 +#: stock/templates/stock/location.html:95 msgid "Create new stock location" msgstr "" -#: stock/templates/stock/location.html:91 +#: stock/templates/stock/location.html:96 msgid "New Location" msgstr "" -#: stock/templates/stock/location.html:109 -#: stock/templates/stock/location.html:115 +#: stock/templates/stock/location.html:114 +#: stock/templates/stock/location.html:120 msgid "Location Path" msgstr "" -#: stock/templates/stock/location.html:116 +#: stock/templates/stock/location.html:121 msgid "Top level stock location" msgstr "" -#: stock/templates/stock/location.html:122 +#: stock/templates/stock/location.html:127 msgid "Location Owner" msgstr "" -#: stock/templates/stock/location.html:126 +#: stock/templates/stock/location.html:131 msgid "You are not in the list of owners of this location. This stock location cannot be edited." msgstr "" -#: stock/templates/stock/location.html:142 -#: stock/templates/stock/location.html:189 +#: stock/templates/stock/location.html:147 +#: stock/templates/stock/location.html:194 #: stock/templates/stock/location_sidebar.html:5 msgid "Sublocations" msgstr "" -#: stock/templates/stock/location.html:156 templates/InvenTree/search.html:165 +#: stock/templates/stock/location.html:161 templates/InvenTree/search.html:165 #: templates/js/translated/search.js:238 users/models.py:39 msgid "Stock Locations" msgstr "" @@ -6875,15 +6915,15 @@ msgstr "" msgid "Part Settings" msgstr "" -#: templates/InvenTree/settings/part.html:44 +#: templates/InvenTree/settings/part.html:46 msgid "Part Import" msgstr "" -#: templates/InvenTree/settings/part.html:48 +#: templates/InvenTree/settings/part.html:50 msgid "Import Part" msgstr "" -#: templates/InvenTree/settings/part.html:62 +#: templates/InvenTree/settings/part.html:64 msgid "Part Parameter Templates" msgstr "" @@ -6895,47 +6935,47 @@ msgstr "" msgid "Changing the settings below require you to immediately restart the server. Do not change this while under active usage." msgstr "" -#: templates/InvenTree/settings/plugin.html:34 +#: templates/InvenTree/settings/plugin.html:36 msgid "Plugins" msgstr "" -#: templates/InvenTree/settings/plugin.html:39 +#: templates/InvenTree/settings/plugin.html:41 #: templates/js/translated/plugin.js:16 msgid "Install Plugin" msgstr "" -#: templates/InvenTree/settings/plugin.html:48 templates/navbar.html:137 +#: templates/InvenTree/settings/plugin.html:50 templates/navbar.html:137 #: users/models.py:36 msgid "Admin" msgstr "" -#: templates/InvenTree/settings/plugin.html:50 +#: templates/InvenTree/settings/plugin.html:52 #: templates/InvenTree/settings/plugin_settings.html:28 msgid "Author" msgstr "" -#: templates/InvenTree/settings/plugin.html:52 +#: templates/InvenTree/settings/plugin.html:54 #: templates/InvenTree/settings/plugin_settings.html:43 msgid "Version" msgstr "" -#: templates/InvenTree/settings/plugin.html:74 +#: templates/InvenTree/settings/plugin.html:76 msgid "Sample" msgstr "" -#: templates/InvenTree/settings/plugin.html:99 +#: templates/InvenTree/settings/plugin.html:101 msgid "Inactive plugins" msgstr "" -#: templates/InvenTree/settings/plugin.html:122 +#: templates/InvenTree/settings/plugin.html:124 msgid "Plugin Error Stack" msgstr "" -#: templates/InvenTree/settings/plugin.html:131 +#: templates/InvenTree/settings/plugin.html:133 msgid "Stage" msgstr "" -#: templates/InvenTree/settings/plugin.html:133 +#: templates/InvenTree/settings/plugin.html:135 #: templates/js/translated/notification.js:75 msgid "Message" msgstr "" @@ -6999,11 +7039,11 @@ msgstr "" msgid "Commit Message" msgstr "" -#: templates/InvenTree/settings/plugin_settings.html:117 +#: templates/InvenTree/settings/plugin_settings.html:120 msgid "Sign Status" msgstr "" -#: templates/InvenTree/settings/plugin_settings.html:122 +#: templates/InvenTree/settings/plugin_settings.html:125 msgid "Sign Key" msgstr "" @@ -7828,7 +7868,7 @@ msgstr "" msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:456 templates/js/translated/stock.js:1050 +#: templates/js/translated/barcode.js:456 templates/js/translated/stock.js:1054 msgid "Remove stock item" msgstr "" @@ -8001,7 +8041,7 @@ msgid "Includes variant and substitute stock" msgstr "" #: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822 -#: templates/js/translated/part.js:759 +#: templates/js/translated/part.js:763 msgid "Includes variant stock" msgstr "" @@ -8098,12 +8138,12 @@ msgid "Complete Build Order" msgstr "" #: templates/js/translated/build.js:263 templates/js/translated/stock.js:92 -#: templates/js/translated/stock.js:210 +#: templates/js/translated/stock.js:214 msgid "Next available serial number" msgstr "" #: templates/js/translated/build.js:265 templates/js/translated/stock.js:94 -#: templates/js/translated/stock.js:212 +#: templates/js/translated/stock.js:216 msgid "Latest serial number" msgstr "" @@ -8316,9 +8356,9 @@ msgstr "" msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1383 -#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1682 -#: templates/js/translated/stock.js:2382 +#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387 +#: templates/js/translated/part.js:1899 templates/js/translated/stock.js:1686 +#: templates/js/translated/stock.js:2386 msgid "Select" msgstr "" @@ -8330,7 +8370,7 @@ msgstr "" msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2638 +#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647 msgid "No user information" msgstr "" @@ -8403,34 +8443,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:616 -#: templates/js/translated/company.js:876 templates/js/translated/part.js:634 -#: templates/js/translated/part.js:719 +#: templates/js/translated/company.js:876 templates/js/translated/part.js:638 +#: templates/js/translated/part.js:723 msgid "Template part" msgstr "" #: templates/js/translated/company.js:620 -#: templates/js/translated/company.js:880 templates/js/translated/part.js:638 -#: templates/js/translated/part.js:723 +#: templates/js/translated/company.js:880 templates/js/translated/part.js:642 +#: templates/js/translated/part.js:727 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:748 templates/js/translated/part.js:826 +#: templates/js/translated/company.js:748 templates/js/translated/part.js:830 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:785 templates/js/translated/part.js:868 +#: templates/js/translated/company.js:785 templates/js/translated/part.js:872 msgid "Edit parameter" msgstr "" -#: templates/js/translated/company.js:786 templates/js/translated/part.js:869 +#: templates/js/translated/company.js:786 templates/js/translated/part.js:873 msgid "Delete parameter" msgstr "" -#: templates/js/translated/company.js:805 templates/js/translated/part.js:886 +#: templates/js/translated/company.js:805 templates/js/translated/part.js:890 msgid "Edit Parameter" msgstr "" -#: templates/js/translated/company.js:816 templates/js/translated/part.js:898 +#: templates/js/translated/company.js:816 templates/js/translated/part.js:902 msgid "Delete Parameter" msgstr "" @@ -8555,7 +8595,7 @@ msgid "Labels sent to printer" msgstr "" #: templates/js/translated/label.js:60 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1078 msgid "Select Stock Items" msgstr "" @@ -8865,7 +8905,7 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2140 +#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144 msgid "Stock Status" msgstr "" @@ -8889,7 +8929,7 @@ msgstr "" msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:1672 templates/js/translated/part.js:939 +#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943 msgid "No purchase orders found" msgstr "" @@ -8924,7 +8964,7 @@ msgstr "" #: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203 #: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050 -#: templates/js/translated/part.js:2126 templates/js/translated/part.js:2479 +#: templates/js/translated/part.js:2135 templates/js/translated/part.js:2488 msgid "Unit Price" msgstr "" @@ -8934,11 +8974,11 @@ msgid "Total Price" msgstr "" #: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600 -#: templates/js/translated/part.js:1046 +#: templates/js/translated/part.js:1050 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1092 +#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096 msgid "Receive line item" msgstr "" @@ -9059,7 +9099,7 @@ msgid "Delete Stock Allocation" msgstr "" #: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398 -#: templates/js/translated/stock.js:1598 +#: templates/js/translated/stock.js:1602 msgid "Shipped to customer" msgstr "" @@ -9183,241 +9223,245 @@ msgstr "" msgid "Parent part category" msgstr "" -#: templates/js/translated/part.js:318 +#: templates/js/translated/part.js:306 templates/js/translated/stock.js:118 +msgid "Icon (optional) - Explore all available icons on" +msgstr "" + +#: templates/js/translated/part.js:322 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:331 +#: templates/js/translated/part.js:335 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:333 +#: templates/js/translated/part.js:337 msgid "Any child categories will be moved to the parent of this category" msgstr "" -#: templates/js/translated/part.js:334 +#: templates/js/translated/part.js:338 msgid "Any parts in this category will be moved to the parent of this category" msgstr "" -#: templates/js/translated/part.js:339 +#: templates/js/translated/part.js:343 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:365 +#: templates/js/translated/part.js:369 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:367 +#: templates/js/translated/part.js:371 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:378 +#: templates/js/translated/part.js:382 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:430 +#: templates/js/translated/part.js:434 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:431 +#: templates/js/translated/part.js:435 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:445 +#: templates/js/translated/part.js:449 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:447 +#: templates/js/translated/part.js:451 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:448 +#: templates/js/translated/part.js:452 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:449 +#: templates/js/translated/part.js:453 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:456 +#: templates/js/translated/part.js:460 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:492 +#: templates/js/translated/part.js:496 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:494 +#: templates/js/translated/part.js:498 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:499 +#: templates/js/translated/part.js:503 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:501 +#: templates/js/translated/part.js:505 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:518 +#: templates/js/translated/part.js:522 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:528 +#: templates/js/translated/part.js:532 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:531 +#: templates/js/translated/part.js:535 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:556 +#: templates/js/translated/part.js:560 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:582 templates/js/translated/part.js:1466 +#: templates/js/translated/part.js:586 templates/js/translated/part.js:1470 #: templates/js/translated/table_filters.js:468 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:592 templates/js/translated/part.js:1478 +#: templates/js/translated/part.js:596 templates/js/translated/part.js:1482 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:626 templates/js/translated/part.js:711 +#: templates/js/translated/part.js:630 templates/js/translated/part.js:715 msgid "Trackable part" msgstr "" -#: templates/js/translated/part.js:630 templates/js/translated/part.js:715 +#: templates/js/translated/part.js:634 templates/js/translated/part.js:719 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:642 +#: templates/js/translated/part.js:646 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:646 +#: templates/js/translated/part.js:650 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:774 +#: templates/js/translated/part.js:778 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1162 +#: templates/js/translated/part.js:1166 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1186 +#: templates/js/translated/part.js:1190 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:1253 templates/js/translated/part.js:1549 +#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1553 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:1292 +#: templates/js/translated/part.js:1296 msgid "Not available" msgstr "" -#: templates/js/translated/part.js:1443 +#: templates/js/translated/part.js:1447 msgid "No category" msgstr "" -#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816 -#: templates/js/translated/stock.js:2343 +#: templates/js/translated/part.js:1577 templates/js/translated/part.js:1820 +#: templates/js/translated/stock.js:2347 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:1589 +#: templates/js/translated/part.js:1593 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:1655 +#: templates/js/translated/part.js:1659 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:1660 +#: templates/js/translated/part.js:1664 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:1665 +#: templates/js/translated/part.js:1669 msgid "Select Part Category" msgstr "" -#: templates/js/translated/part.js:1678 +#: templates/js/translated/part.js:1682 msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2362 +#: templates/js/translated/part.js:1839 templates/js/translated/stock.js:2366 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:1914 +#: templates/js/translated/part.js:1918 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:1925 +#: templates/js/translated/part.js:1934 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:1983 +#: templates/js/translated/part.js:1992 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2034 templates/js/translated/stock.js:1295 +#: templates/js/translated/part.js:2043 templates/js/translated/stock.js:1299 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:2035 templates/js/translated/stock.js:1296 -#: templates/js/translated/stock.js:1556 +#: templates/js/translated/part.js:2044 templates/js/translated/stock.js:1300 +#: templates/js/translated/stock.js:1560 msgid "Delete test result" msgstr "" -#: templates/js/translated/part.js:2041 +#: templates/js/translated/part.js:2050 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2063 +#: templates/js/translated/part.js:2072 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2077 +#: templates/js/translated/part.js:2086 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2102 +#: templates/js/translated/part.js:2111 #, python-brace-format msgid "No ${human_name} information found" msgstr "" -#: templates/js/translated/part.js:2159 +#: templates/js/translated/part.js:2168 #, python-brace-format msgid "Edit ${human_name}" msgstr "" -#: templates/js/translated/part.js:2160 +#: templates/js/translated/part.js:2169 #, python-brace-format msgid "Delete ${human_name}" msgstr "" -#: templates/js/translated/part.js:2274 +#: templates/js/translated/part.js:2283 msgid "Current Stock" msgstr "" -#: templates/js/translated/part.js:2307 +#: templates/js/translated/part.js:2316 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2333 +#: templates/js/translated/part.js:2342 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2403 +#: templates/js/translated/part.js:2412 msgid "Single Price" msgstr "" -#: templates/js/translated/part.js:2422 +#: templates/js/translated/part.js:2431 msgid "Single Price Difference" msgstr "" @@ -9511,376 +9555,376 @@ msgstr "" msgid "Parent stock location" msgstr "" -#: templates/js/translated/stock.js:140 +#: templates/js/translated/stock.js:144 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:155 +#: templates/js/translated/stock.js:159 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:169 +#: templates/js/translated/stock.js:173 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:171 +#: templates/js/translated/stock.js:175 msgid "Any child locations will be moved to the parent of this location" msgstr "" -#: templates/js/translated/stock.js:172 +#: templates/js/translated/stock.js:176 msgid "Any stock items in this location will be moved to the parent of this location" msgstr "" -#: templates/js/translated/stock.js:178 +#: templates/js/translated/stock.js:182 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:223 +#: templates/js/translated/stock.js:227 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:262 +#: templates/js/translated/stock.js:266 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:268 +#: templates/js/translated/stock.js:272 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:333 +#: templates/js/translated/stock.js:337 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:353 +#: templates/js/translated/stock.js:357 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:369 +#: templates/js/translated/stock.js:373 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:374 +#: templates/js/translated/stock.js:378 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:395 +#: templates/js/translated/stock.js:399 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:445 +#: templates/js/translated/stock.js:449 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:458 +#: templates/js/translated/stock.js:462 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:483 +#: templates/js/translated/stock.js:487 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:487 templates/js/translated/stock.js:488 +#: templates/js/translated/stock.js:491 templates/js/translated/stock.js:492 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:504 +#: templates/js/translated/stock.js:508 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:524 +#: templates/js/translated/stock.js:528 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:533 +#: templates/js/translated/stock.js:537 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:656 +#: templates/js/translated/stock.js:660 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:657 +#: templates/js/translated/stock.js:661 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:734 +#: templates/js/translated/stock.js:738 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:735 +#: templates/js/translated/stock.js:739 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:737 +#: templates/js/translated/stock.js:741 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:738 +#: templates/js/translated/stock.js:742 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:824 +#: templates/js/translated/stock.js:828 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:825 +#: templates/js/translated/stock.js:829 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:920 +#: templates/js/translated/stock.js:924 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:921 +#: templates/js/translated/stock.js:925 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:927 +#: templates/js/translated/stock.js:931 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:928 +#: templates/js/translated/stock.js:932 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:932 +#: templates/js/translated/stock.js:936 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:933 +#: templates/js/translated/stock.js:937 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:937 +#: templates/js/translated/stock.js:941 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:938 users/models.py:216 +#: templates/js/translated/stock.js:942 users/models.py:216 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:942 +#: templates/js/translated/stock.js:946 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1035 +#: templates/js/translated/stock.js:1039 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1035 +#: templates/js/translated/stock.js:1039 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1075 +#: templates/js/translated/stock.js:1079 msgid "You must select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1098 +#: templates/js/translated/stock.js:1102 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1234 +#: templates/js/translated/stock.js:1238 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1236 +#: templates/js/translated/stock.js:1240 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1241 +#: templates/js/translated/stock.js:1245 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1288 +#: templates/js/translated/stock.js:1292 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1291 +#: templates/js/translated/stock.js:1295 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1317 +#: templates/js/translated/stock.js:1321 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1374 +#: templates/js/translated/stock.js:1378 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1539 +#: templates/js/translated/stock.js:1543 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1561 +#: templates/js/translated/stock.js:1565 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1590 +#: templates/js/translated/stock.js:1594 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1594 +#: templates/js/translated/stock.js:1598 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1602 +#: templates/js/translated/stock.js:1606 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1608 +#: templates/js/translated/stock.js:1612 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1775 +#: templates/js/translated/stock.js:1779 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:1780 +#: templates/js/translated/stock.js:1784 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:1783 +#: templates/js/translated/stock.js:1787 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:1786 +#: templates/js/translated/stock.js:1790 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:1788 +#: templates/js/translated/stock.js:1792 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:1790 +#: templates/js/translated/stock.js:1794 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:1793 +#: templates/js/translated/stock.js:1797 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:1797 +#: templates/js/translated/stock.js:1801 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:1799 +#: templates/js/translated/stock.js:1803 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:1806 +#: templates/js/translated/stock.js:1810 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:1808 +#: templates/js/translated/stock.js:1812 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:1810 +#: templates/js/translated/stock.js:1814 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:1814 +#: templates/js/translated/stock.js:1818 #: templates/js/translated/table_filters.js:196 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:1865 +#: templates/js/translated/stock.js:1869 msgid "Stocktake" msgstr "" -#: templates/js/translated/stock.js:1944 +#: templates/js/translated/stock.js:1948 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:1982 +#: templates/js/translated/stock.js:1986 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2155 +#: templates/js/translated/stock.js:2159 msgid "Set Stock Status" msgstr "" -#: templates/js/translated/stock.js:2169 +#: templates/js/translated/stock.js:2173 msgid "Select Status Code" msgstr "" -#: templates/js/translated/stock.js:2170 +#: templates/js/translated/stock.js:2174 msgid "Status code must be selected" msgstr "" -#: templates/js/translated/stock.js:2400 +#: templates/js/translated/stock.js:2404 msgid "Load Subloactions" msgstr "" -#: templates/js/translated/stock.js:2484 +#: templates/js/translated/stock.js:2493 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2500 +#: templates/js/translated/stock.js:2509 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2522 +#: templates/js/translated/stock.js:2531 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2541 +#: templates/js/translated/stock.js:2550 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2560 +#: templates/js/translated/stock.js:2569 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2578 +#: templates/js/translated/stock.js:2587 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:2601 +#: templates/js/translated/stock.js:2610 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:2609 +#: templates/js/translated/stock.js:2618 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:2685 +#: templates/js/translated/stock.js:2694 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:2736 templates/js/translated/stock.js:2772 +#: templates/js/translated/stock.js:2745 templates/js/translated/stock.js:2781 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:2785 +#: templates/js/translated/stock.js:2794 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:2806 +#: templates/js/translated/stock.js:2815 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:2807 +#: templates/js/translated/stock.js:2816 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:2809 +#: templates/js/translated/stock.js:2818 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:2810 +#: templates/js/translated/stock.js:2819 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:2811 +#: templates/js/translated/stock.js:2820 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:2812 +#: templates/js/translated/stock.js:2821 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:2825 +#: templates/js/translated/stock.js:2834 msgid "Select part to install" msgstr "" diff --git a/InvenTree/locale/it/LC_MESSAGES/django.po b/InvenTree/locale/it/LC_MESSAGES/django.po index cff2ead383..cfea08479a 100644 --- a/InvenTree/locale/it/LC_MESSAGES/django.po +++ b/InvenTree/locale/it/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-11 02:47+0000\n" -"PO-Revision-Date: 2022-08-11 13:49\n" +"POT-Creation-Date: 2022-08-16 11:53+0000\n" +"PO-Revision-Date: 2022-08-16 21:36\n" "Last-Translator: \n" "Language-Team: Italian\n" "Language: it_IT\n" @@ -36,15 +36,15 @@ msgstr "Inserisci la data" #: order/templates/order/so_sidebar.html:17 #: part/templates/part/part_sidebar.html:59 #: report/templates/report/inventree_build_order_base.html:172 -#: stock/models.py:1993 stock/models.py:2101 stock/serializers.py:329 -#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:823 -#: stock/serializers.py:922 stock/serializers.py:1054 +#: stock/models.py:2000 stock/models.py:2108 stock/serializers.py:329 +#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825 +#: stock/serializers.py:924 stock/serializers.py:1056 #: stock/templates/stock/stock_sidebar.html:25 #: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101 #: templates/js/translated/company.js:964 templates/js/translated/order.js:2104 #: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753 #: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102 -#: templates/js/translated/stock.js:1370 templates/js/translated/stock.js:1976 +#: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980 msgid "Notes" msgstr "Note" @@ -163,6 +163,10 @@ msgstr "Nessun numero di serie trovato" msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "Il numero dei numeri seriali univoci ({s}) deve essere uguale alla quantità ({q})" +#: InvenTree/mixins.py:71 +msgid "Remove HTML tags from this value" +msgstr "" + #: InvenTree/models.py:236 msgid "Improperly formatted pattern" msgstr "" @@ -195,7 +199,7 @@ msgstr "File mancante" msgid "Missing external link" msgstr "Link esterno mancante" -#: InvenTree/models.py:395 stock/models.py:2095 +#: InvenTree/models.py:395 stock/models.py:2102 #: templates/js/translated/attachment.js:103 #: templates/js/translated/attachment.js:241 msgid "Attachment" @@ -207,16 +211,16 @@ msgstr "Seleziona file da allegare" #: InvenTree/models.py:402 company/models.py:124 company/models.py:276 #: company/models.py:510 order/models.py:84 order/models.py:1245 -#: part/models.py:795 +#: part/models.py:802 #: report/templates/report/inventree_build_order_base.html:164 #: templates/js/translated/company.js:656 #: templates/js/translated/company.js:948 templates/js/translated/order.js:2742 -#: templates/js/translated/part.js:1510 +#: templates/js/translated/part.js:1514 msgid "Link" msgstr "Collegamento" -#: InvenTree/models.py:403 build/models.py:296 part/models.py:796 -#: stock/models.py:651 +#: InvenTree/models.py:403 build/models.py:296 part/models.py:803 +#: stock/models.py:658 msgid "Link to external URL" msgstr "Link a URL esterno" @@ -229,12 +233,12 @@ msgstr "Commento" msgid "File comment" msgstr "Commento del file" -#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1646 -#: common/models.py:1647 common/models.py:1870 common/models.py:1871 -#: common/models.py:2133 common/models.py:2134 part/models.py:2193 -#: part/models.py:2213 plugin/models.py:238 plugin/models.py:239 +#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665 +#: common/models.py:1666 common/models.py:1889 common/models.py:1890 +#: common/models.py:2152 common/models.py:2153 part/models.py:2200 +#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2632 +#: templates/js/translated/stock.js:2641 msgid "User" msgstr "Utente" @@ -271,19 +275,19 @@ msgstr "Errore nella rinominazione del file" msgid "Invalid choice" msgstr "Scelta non valida" -#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1856 -#: company/models.py:358 label/models.py:101 part/models.py:739 -#: part/models.py:2371 plugin/models.py:93 report/models.py:152 +#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875 +#: company/models.py:358 label/models.py:101 part/models.py:746 +#: part/models.py:2378 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 -#: templates/InvenTree/settings/plugin.html:49 -#: templates/InvenTree/settings/plugin.html:132 +#: templates/InvenTree/settings/plugin.html:51 +#: templates/InvenTree/settings/plugin.html:134 #: templates/InvenTree/settings/plugin_settings.html:23 #: templates/InvenTree/settings/settings.html:347 #: templates/js/translated/company.js:545 #: templates/js/translated/company.js:758 #: templates/js/translated/notification.js:71 -#: templates/js/translated/part.js:684 templates/js/translated/part.js:836 -#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2388 +#: templates/js/translated/part.js:688 templates/js/translated/part.js:840 +#: templates/js/translated/part.js:1906 templates/js/translated/stock.js:2392 msgid "Name" msgstr "Nome" @@ -292,21 +296,21 @@ msgstr "Nome" #: company/models.py:516 company/templates/company/company_base.html:71 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:87 label/models.py:108 -#: order/models.py:82 part/models.py:762 part/templates/part/category.html:74 +#: order/models.py:82 part/models.py:769 part/templates/part/category.html:80 #: part/templates/part/part_base.html:167 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 -#: stock/templates/stock/location.html:103 +#: stock/templates/stock/location.html:108 #: templates/InvenTree/settings/plugin_settings.html:33 #: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848 #: templates/js/translated/build.js:2471 templates/js/translated/company.js:409 #: templates/js/translated/company.js:667 #: templates/js/translated/company.js:959 templates/js/translated/order.js:1720 #: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531 -#: templates/js/translated/part.js:743 templates/js/translated/part.js:1149 -#: templates/js/translated/part.js:1424 templates/js/translated/part.js:1933 -#: templates/js/translated/part.js:2002 templates/js/translated/stock.js:1739 -#: templates/js/translated/stock.js:2415 templates/js/translated/stock.js:2469 +#: templates/js/translated/part.js:747 templates/js/translated/part.js:1153 +#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1942 +#: templates/js/translated/part.js:2011 templates/js/translated/stock.js:1743 +#: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478 msgid "Description" msgstr "Descrizione" @@ -319,7 +323,7 @@ msgid "parent" msgstr "genitore" #: InvenTree/models.py:560 InvenTree/models.py:561 -#: templates/js/translated/part.js:1939 templates/js/translated/stock.js:2421 +#: templates/js/translated/part.js:1948 templates/js/translated/stock.js:2430 msgid "Path" msgstr "Percorso" @@ -331,7 +335,7 @@ msgstr "Errore del server" msgid "An error has been logged by the server." msgstr "Un errore è stato loggato dal server." -#: InvenTree/serializers.py:55 part/models.py:2692 +#: InvenTree/serializers.py:55 part/models.py:2699 msgid "Must be a valid number" msgstr "Deve essere un numero valido" @@ -398,99 +402,99 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/settings.py:609 +#: InvenTree/settings.py:607 msgid "Czech" msgstr "Ceco" -#: InvenTree/settings.py:610 +#: InvenTree/settings.py:608 msgid "German" msgstr "Tedesco" -#: InvenTree/settings.py:611 +#: InvenTree/settings.py:609 msgid "Greek" msgstr "Greco" -#: InvenTree/settings.py:612 +#: InvenTree/settings.py:610 msgid "English" msgstr "Inglese" -#: InvenTree/settings.py:613 +#: InvenTree/settings.py:611 msgid "Spanish" msgstr "Spagnolo" -#: InvenTree/settings.py:614 +#: InvenTree/settings.py:612 msgid "Spanish (Mexican)" msgstr "Spagnolo (Messicano)" -#: InvenTree/settings.py:615 +#: InvenTree/settings.py:613 msgid "Farsi / Persian" msgstr "Farsi / Persiano" -#: InvenTree/settings.py:616 +#: InvenTree/settings.py:614 msgid "French" msgstr "Francese" -#: InvenTree/settings.py:617 +#: InvenTree/settings.py:615 msgid "Hebrew" msgstr "Ebraico" -#: InvenTree/settings.py:618 +#: InvenTree/settings.py:616 msgid "Hungarian" msgstr "Ungherese" -#: InvenTree/settings.py:619 +#: InvenTree/settings.py:617 msgid "Italian" msgstr "Italiano" -#: InvenTree/settings.py:620 +#: InvenTree/settings.py:618 msgid "Japanese" msgstr "Giapponese" -#: InvenTree/settings.py:621 +#: InvenTree/settings.py:619 msgid "Korean" msgstr "Coreano" -#: InvenTree/settings.py:622 +#: InvenTree/settings.py:620 msgid "Dutch" msgstr "Olandese" -#: InvenTree/settings.py:623 +#: InvenTree/settings.py:621 msgid "Norwegian" msgstr "Norvegese" -#: InvenTree/settings.py:624 +#: InvenTree/settings.py:622 msgid "Polish" msgstr "Polacco" -#: InvenTree/settings.py:625 +#: InvenTree/settings.py:623 msgid "Portuguese" msgstr "Portoghese" -#: InvenTree/settings.py:626 +#: InvenTree/settings.py:624 msgid "Portuguese (Brazilian)" msgstr "Portoghese (Brasile)" -#: InvenTree/settings.py:627 +#: InvenTree/settings.py:625 msgid "Russian" msgstr "Russo" -#: InvenTree/settings.py:628 +#: InvenTree/settings.py:626 msgid "Swedish" msgstr "Svedese" -#: InvenTree/settings.py:629 +#: InvenTree/settings.py:627 msgid "Thai" msgstr "Thailandese" -#: InvenTree/settings.py:630 +#: InvenTree/settings.py:628 msgid "Turkish" msgstr "Turco" -#: InvenTree/settings.py:631 +#: InvenTree/settings.py:629 msgid "Vietnamese" msgstr "Vietnamita" -#: InvenTree/settings.py:632 +#: InvenTree/settings.py:630 msgid "Chinese" msgstr "Cinese" @@ -621,7 +625,7 @@ msgstr "Diviso dall'elemento genitore" msgid "Split child item" msgstr "Dividi elemento figlio" -#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2080 +#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2084 msgid "Merged stock items" msgstr "Elemento stock raggruppato" @@ -743,7 +747,7 @@ msgid "Build Order Reference" msgstr "" #: build/models.py:166 order/models.py:240 order/models.py:623 -#: order/models.py:904 part/models.py:2610 +#: order/models.py:904 part/models.py:2617 #: part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 @@ -770,10 +774,10 @@ msgstr "" #: build/models.py:191 build/templates/build/build_base.html:77 #: build/templates/build/detail.html:29 company/models.py:670 #: order/models.py:1001 order/models.py:1112 order/models.py:1113 -#: part/models.py:336 part/models.py:2139 part/models.py:2154 -#: part/models.py:2173 part/models.py:2191 part/models.py:2290 -#: part/models.py:2410 part/models.py:2500 part/models.py:2585 -#: part/models.py:2861 part/serializers.py:811 +#: part/models.py:343 part/models.py:2146 part/models.py:2161 +#: part/models.py:2180 part/models.py:2198 part/models.py:2297 +#: part/models.py:2417 part/models.py:2507 part/models.py:2592 +#: part/models.py:2868 part/serializers.py:813 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -796,11 +800,11 @@ msgstr "" #: templates/js/translated/order.js:934 templates/js/translated/order.js:1387 #: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885 #: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507 -#: templates/js/translated/part.js:1134 templates/js/translated/part.js:1206 -#: templates/js/translated/part.js:1402 templates/js/translated/stock.js:582 -#: templates/js/translated/stock.js:747 templates/js/translated/stock.js:954 -#: templates/js/translated/stock.js:1696 templates/js/translated/stock.js:2495 -#: templates/js/translated/stock.js:2690 templates/js/translated/stock.js:2824 +#: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210 +#: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586 +#: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958 +#: templates/js/translated/stock.js:1700 templates/js/translated/stock.js:2504 +#: templates/js/translated/stock.js:2699 templates/js/translated/stock.js:2833 msgid "Part" msgstr "Articolo" @@ -858,7 +862,7 @@ msgid "Build status code" msgstr "" #: build/models.py:251 build/serializers.py:225 order/serializers.py:447 -#: stock/models.py:655 templates/js/translated/order.js:1247 +#: stock/models.py:662 templates/js/translated/order.js:1247 msgid "Batch Code" msgstr "Codice Lotto" @@ -866,7 +870,7 @@ msgstr "Codice Lotto" msgid "Batch code for this build output" msgstr "" -#: build/models.py:258 order/models.py:86 part/models.py:931 +#: build/models.py:258 order/models.py:86 part/models.py:938 #: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544 msgid "Creation Date" msgstr "Data di creazione" @@ -899,7 +903,7 @@ msgstr "" #: build/models.py:289 build/templates/build/build_base.html:190 #: build/templates/build/detail.html:115 order/models.py:100 #: order/templates/order/order_base.html:176 -#: order/templates/order/sales_order_base.html:183 part/models.py:935 +#: order/templates/order/sales_order_base.html:183 part/models.py:942 #: report/templates/report/inventree_build_order_base.html:158 #: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754 msgid "Responsible" @@ -912,7 +916,7 @@ msgstr "" #: build/models.py:295 build/templates/build/detail.html:101 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:153 -#: part/templates/part/part_base.html:346 stock/models.py:649 +#: part/templates/part/part_base.html:346 stock/models.py:656 #: stock/templates/stock/item_base.html:205 msgid "External Link" msgstr "Collegamento esterno" @@ -978,8 +982,8 @@ msgid "Build to allocate parts" msgstr "" #: build/models.py:1345 build/serializers.py:645 order/serializers.py:1015 -#: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 -#: stock/serializers.py:880 stock/templates/stock/item_base.html:10 +#: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:756 +#: stock/serializers.py:882 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:199 #: templates/js/translated/build.js:741 templates/js/translated/build.js:746 @@ -987,8 +991,8 @@ msgstr "" #: templates/js/translated/order.js:104 templates/js/translated/order.js:2886 #: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193 #: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380 -#: templates/js/translated/stock.js:583 templates/js/translated/stock.js:748 -#: templates/js/translated/stock.js:2568 +#: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752 +#: templates/js/translated/stock.js:2577 msgid "Stock Item" msgstr "Articoli in magazzino" @@ -998,11 +1002,11 @@ msgstr "Origine giacenza articolo" #: build/models.py:1358 build/serializers.py:193 #: build/templates/build/build_base.html:82 -#: build/templates/build/detail.html:34 common/models.py:1678 +#: build/templates/build/detail.html:34 common/models.py:1697 #: company/templates/company/supplier_part.html:279 order/models.py:897 #: order/models.py:1423 order/serializers.py:1155 #: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40 -#: part/models.py:2601 part/templates/part/detail.html:937 +#: part/models.py:2608 part/templates/part/detail.html:937 #: part/templates/part/detail.html:1023 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 @@ -1025,11 +1029,11 @@ msgstr "Origine giacenza articolo" #: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207 #: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386 #: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037 -#: templates/js/translated/part.js:1034 templates/js/translated/part.js:2147 -#: templates/js/translated/part.js:2378 templates/js/translated/part.js:2412 -#: templates/js/translated/part.js:2490 templates/js/translated/stock.js:454 -#: templates/js/translated/stock.js:608 templates/js/translated/stock.js:778 -#: templates/js/translated/stock.js:2617 templates/js/translated/stock.js:2702 +#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2156 +#: templates/js/translated/part.js:2387 templates/js/translated/part.js:2421 +#: templates/js/translated/part.js:2499 templates/js/translated/stock.js:458 +#: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782 +#: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711 msgid "Quantity" msgstr "Quantità" @@ -1071,8 +1075,8 @@ msgid "Enter quantity for build output" msgstr "Inserisci la quantità per l'output di compilazione" #: build/serializers.py:208 build/serializers.py:665 order/models.py:318 -#: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 -#: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 +#: order/serializers.py:287 order/serializers.py:442 part/serializers.py:544 +#: part/serializers.py:976 stock/models.py:484 stock/models.py:1251 #: stock/serializers.py:302 msgid "Quantity must be greater than zero" msgstr "La quantità deve essere maggiore di zero" @@ -1087,7 +1091,7 @@ msgstr "" #: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159 #: stock/serializers.py:311 templates/js/translated/order.js:1258 -#: templates/js/translated/stock.js:267 templates/js/translated/stock.js:455 +#: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459 msgid "Serial Numbers" msgstr "Codice Seriale" @@ -1113,16 +1117,16 @@ msgstr "" #: build/serializers.py:366 order/serializers.py:428 order/serializers.py:532 #: stock/serializers.py:322 stock/serializers.py:453 stock/serializers.py:534 -#: stock/serializers.py:915 stock/serializers.py:1148 +#: stock/serializers.py:917 stock/serializers.py:1150 #: stock/templates/stock/item_base.html:390 #: templates/js/translated/barcode.js:436 #: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753 #: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285 #: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305 #: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394 -#: templates/js/translated/part.js:181 templates/js/translated/stock.js:584 -#: templates/js/translated/stock.js:749 templates/js/translated/stock.js:956 -#: templates/js/translated/stock.js:1850 templates/js/translated/stock.js:2509 +#: templates/js/translated/part.js:181 templates/js/translated/stock.js:588 +#: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960 +#: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518 msgid "Location" msgstr "Posizione" @@ -1135,8 +1139,8 @@ msgstr "Posizione per gli output di build completati" #: order/serializers.py:465 stock/templates/stock/item_base.html:423 #: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505 #: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724 -#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1825 -#: templates/js/translated/stock.js:2586 templates/js/translated/stock.js:2718 +#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829 +#: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727 msgid "Status" msgstr "Stato" @@ -1212,8 +1216,8 @@ msgstr "" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:577 build/serializers.py:622 part/models.py:2719 -#: part/models.py:2853 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726 +#: part/models.py:2860 msgid "BOM Item" msgstr "Distinta base (Bom)" @@ -1229,7 +1233,7 @@ msgstr "" msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:651 stock/serializers.py:767 +#: build/serializers.py:651 stock/serializers.py:769 msgid "Item must be in stock" msgstr "L'articolo deve essere disponibile" @@ -1367,7 +1371,7 @@ msgstr "" #: report/templates/report/inventree_build_order_base.html:125 #: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741 #: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552 -#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1038 +#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042 msgid "Target Date" msgstr "Data scadenza" @@ -1445,8 +1449,8 @@ msgstr "" #: stock/templates/stock/item_base.html:170 #: templates/js/translated/build.js:1182 #: templates/js/translated/model_renderers.js:124 -#: templates/js/translated/stock.js:1022 templates/js/translated/stock.js:1839 -#: templates/js/translated/stock.js:2725 +#: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843 +#: templates/js/translated/stock.js:2734 #: templates/js/translated/table_filters.js:159 #: templates/js/translated/table_filters.js:250 msgid "Batch" @@ -1506,7 +1510,7 @@ msgstr "Ordina articoli richiesti" #: build/templates/build/detail.html:187 #: company/templates/company/detail.html:37 #: company/templates/company/detail.html:85 -#: part/templates/part/category.html:177 templates/js/translated/order.js:977 +#: part/templates/part/category.html:183 templates/js/translated/order.js:977 msgid "Order Parts" msgstr "Ordine Articoli" @@ -1559,12 +1563,12 @@ msgid "Delete outputs" msgstr "" #: build/templates/build/detail.html:267 -#: stock/templates/stock/location.html:197 templates/stock_table.html:27 +#: stock/templates/stock/location.html:202 templates/stock_table.html:27 msgid "Printing Actions" msgstr "Azioni di stampa" #: build/templates/build/detail.html:271 build/templates/build/detail.html:272 -#: stock/templates/stock/location.html:201 templates/stock_table.html:31 +#: stock/templates/stock/location.html:206 templates/stock_table.html:31 msgid "Print labels" msgstr "Stampa etichette" @@ -1841,7 +1845,7 @@ msgstr "Copia Template Parametri Categoria" msgid "Copy category parameter templates when creating a part" msgstr "Copia i modelli dei parametri categoria quando si crea un articolo" -#: common/models.py:951 part/models.py:2412 report/models.py:158 +#: common/models.py:951 part/models.py:2419 report/models.py:158 #: templates/js/translated/table_filters.js:38 #: templates/js/translated/table_filters.js:484 msgid "Template" @@ -1851,7 +1855,7 @@ msgstr "" msgid "Parts are templates by default" msgstr "Gli articoli sono modelli per impostazione predefinita" -#: common/models.py:958 part/models.py:887 templates/js/translated/bom.js:1448 +#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448 #: templates/js/translated/table_filters.js:176 #: templates/js/translated/table_filters.js:447 msgid "Assembly" @@ -1861,7 +1865,7 @@ msgstr "Assemblaggio" msgid "Parts can be assembled from other components by default" msgstr "Gli articoli possono essere assemblate da altri componenti per impostazione predefinita" -#: common/models.py:965 part/models.py:893 +#: common/models.py:965 part/models.py:900 #: templates/js/translated/table_filters.js:455 msgid "Component" msgstr "Componente" @@ -1870,7 +1874,7 @@ msgstr "Componente" msgid "Parts can be used as sub-components by default" msgstr "Gli articoli possono essere assemblati da altri componenti per impostazione predefinita" -#: common/models.py:972 part/models.py:904 +#: common/models.py:972 part/models.py:911 msgid "Purchaseable" msgstr "Acquistabile" @@ -1878,7 +1882,7 @@ msgstr "Acquistabile" msgid "Parts are purchaseable by default" msgstr "Gli articoli sono acquistabili per impostazione predefinita" -#: common/models.py:979 part/models.py:909 +#: common/models.py:979 part/models.py:916 #: templates/js/translated/table_filters.js:476 msgid "Salable" msgstr "Vendibile" @@ -1887,7 +1891,7 @@ msgstr "Vendibile" msgid "Parts are salable by default" msgstr "Gli articoli sono acquistabili per impostazione predefinita" -#: common/models.py:986 part/models.py:899 +#: common/models.py:986 part/models.py:906 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:108 #: templates/js/translated/table_filters.js:488 @@ -1898,7 +1902,7 @@ msgstr "Tracciabile" msgid "Parts are trackable by default" msgstr "Gli articoli sono tracciabili per impostazione predefinita" -#: common/models.py:993 part/models.py:919 +#: common/models.py:993 part/models.py:926 #: part/templates/part/part_base.html:151 #: templates/js/translated/table_filters.js:42 #: templates/js/translated/table_filters.js:492 @@ -1982,608 +1986,632 @@ msgid "Format to display the part name" msgstr "Formato per visualizzare il nome dell'articolo" #: common/models.py:1074 -msgid "Enable label printing" +msgid "Part Category Default Icon" msgstr "" #: common/models.py:1075 -msgid "Enable label printing from the web interface" +msgid "Part category default icon (empty means no icon)" +msgstr "" + +#: common/models.py:1080 +msgid "Enable label printing" msgstr "" #: common/models.py:1081 +msgid "Enable label printing from the web interface" +msgstr "" + +#: common/models.py:1087 msgid "Label Image DPI" msgstr "" -#: common/models.py:1082 +#: common/models.py:1088 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/models.py:1091 +#: common/models.py:1097 msgid "Enable Reports" msgstr "Abilita Report di Stampa" -#: common/models.py:1092 +#: common/models.py:1098 msgid "Enable generation of reports" msgstr "Abilita generazione di report di stampa" -#: common/models.py:1098 templates/stats.html:25 +#: common/models.py:1104 templates/stats.html:25 msgid "Debug Mode" msgstr "Modalità Debug" -#: common/models.py:1099 +#: common/models.py:1105 msgid "Generate reports in debug mode (HTML output)" msgstr "Genera report in modalità debug (output HTML)" -#: common/models.py:1105 +#: common/models.py:1111 msgid "Page Size" msgstr "Dimensioni pagina" -#: common/models.py:1106 +#: common/models.py:1112 msgid "Default page size for PDF reports" msgstr "Dimensione predefinita della pagina per i report PDF" -#: common/models.py:1116 +#: common/models.py:1122 msgid "Enable Test Reports" msgstr "" -#: common/models.py:1117 +#: common/models.py:1123 msgid "Enable generation of test reports" msgstr "Abilita generazione di stampe di prova" -#: common/models.py:1123 +#: common/models.py:1129 msgid "Attach Test Reports" msgstr "" -#: common/models.py:1124 +#: common/models.py:1130 msgid "When printing a Test Report, attach a copy of the Test Report to the associated Stock Item" msgstr "" -#: common/models.py:1130 +#: common/models.py:1136 msgid "Batch Code Template" msgstr "" -#: common/models.py:1131 +#: common/models.py:1137 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/models.py:1136 +#: common/models.py:1142 msgid "Stock Expiry" msgstr "Scadenza giacenza" -#: common/models.py:1137 +#: common/models.py:1143 msgid "Enable stock expiry functionality" msgstr "Abilita funzionalità di scadenza della giacenza" -#: common/models.py:1143 +#: common/models.py:1149 msgid "Sell Expired Stock" msgstr "Vendi giacenza scaduta" -#: common/models.py:1144 +#: common/models.py:1150 msgid "Allow sale of expired stock" msgstr "Consenti la vendita di stock scaduti" -#: common/models.py:1150 +#: common/models.py:1156 msgid "Stock Stale Time" msgstr "" -#: common/models.py:1151 +#: common/models.py:1157 msgid "Number of days stock items are considered stale before expiring" msgstr "Numero di giorni in cui gli articoli in magazzino sono considerati obsoleti prima della scadenza" -#: common/models.py:1153 +#: common/models.py:1159 msgid "days" msgstr "giorni" -#: common/models.py:1158 +#: common/models.py:1164 msgid "Build Expired Stock" msgstr "" -#: common/models.py:1159 +#: common/models.py:1165 msgid "Allow building with expired stock" msgstr "" -#: common/models.py:1165 +#: common/models.py:1171 msgid "Stock Ownership Control" msgstr "Controllo della proprietà della giacenza" -#: common/models.py:1166 +#: common/models.py:1172 msgid "Enable ownership control over stock locations and items" msgstr "Abilita il controllo della proprietà sulle posizioni e gli oggetti in giacenza" -#: common/models.py:1172 -msgid "Build Order Reference Pattern" -msgstr "" - -#: common/models.py:1173 -msgid "Required pattern for generating Build Order reference field" +#: common/models.py:1178 +msgid "Stock Location Default Icon" msgstr "" #: common/models.py:1179 +msgid "Stock location default icon (empty means no icon)" +msgstr "" + +#: common/models.py:1184 +msgid "Build Order Reference Pattern" +msgstr "" + +#: common/models.py:1185 +msgid "Required pattern for generating Build Order reference field" +msgstr "" + +#: common/models.py:1191 msgid "Sales Order Reference Pattern" msgstr "" -#: common/models.py:1180 +#: common/models.py:1192 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/models.py:1186 +#: common/models.py:1198 msgid "Sales Order Default Shipment" msgstr "" -#: common/models.py:1187 +#: common/models.py:1199 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/models.py:1193 +#: common/models.py:1205 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/models.py:1194 +#: common/models.py:1206 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/models.py:1201 +#: common/models.py:1213 msgid "Enable password forgot" msgstr "Abilita password dimenticata" -#: common/models.py:1202 +#: common/models.py:1214 msgid "Enable password forgot function on the login pages" msgstr "Abilita la funzione password dimenticata nelle pagine di accesso" -#: common/models.py:1208 +#: common/models.py:1220 msgid "Enable registration" msgstr "Abilita registrazione" -#: common/models.py:1209 +#: common/models.py:1221 msgid "Enable self-registration for users on the login pages" msgstr "Abilita auto-registrazione per gli utenti nelle pagine di accesso" -#: common/models.py:1215 +#: common/models.py:1227 msgid "Enable SSO" msgstr "SSO abilitato" -#: common/models.py:1216 +#: common/models.py:1228 msgid "Enable SSO on the login pages" msgstr "Abilita SSO nelle pagine di accesso" -#: common/models.py:1222 +#: common/models.py:1234 msgid "Email required" msgstr "Email richiesta" -#: common/models.py:1223 +#: common/models.py:1235 msgid "Require user to supply mail on signup" msgstr "Richiedi all'utente di fornire una email al momento dell'iscrizione" -#: common/models.py:1229 +#: common/models.py:1241 msgid "Auto-fill SSO users" msgstr "Riempimento automatico degli utenti SSO" -#: common/models.py:1230 +#: common/models.py:1242 msgid "Automatically fill out user-details from SSO account-data" msgstr "Compila automaticamente i dettagli dell'utente dai dati dell'account SSO" -#: common/models.py:1236 +#: common/models.py:1248 msgid "Mail twice" msgstr "" -#: common/models.py:1237 +#: common/models.py:1249 msgid "On signup ask users twice for their mail" msgstr "" -#: common/models.py:1243 +#: common/models.py:1255 msgid "Password twice" msgstr "" -#: common/models.py:1244 +#: common/models.py:1256 msgid "On signup ask users twice for their password" msgstr "" -#: common/models.py:1250 +#: common/models.py:1262 msgid "Group on signup" msgstr "" -#: common/models.py:1251 +#: common/models.py:1263 msgid "Group to which new users are assigned on registration" msgstr "" -#: common/models.py:1257 +#: common/models.py:1269 msgid "Enforce MFA" msgstr "" -#: common/models.py:1258 +#: common/models.py:1270 msgid "Users must use multifactor security." msgstr "" -#: common/models.py:1264 +#: common/models.py:1276 msgid "Check plugins on startup" msgstr "" -#: common/models.py:1265 +#: common/models.py:1277 msgid "Check that all plugins are installed on startup - enable in container enviroments" msgstr "" -#: common/models.py:1273 +#: common/models.py:1284 +msgid "Check plugin signatures" +msgstr "" + +#: common/models.py:1285 +msgid "Check and show signatures for plugins" +msgstr "" + +#: common/models.py:1292 msgid "Enable URL integration" msgstr "" -#: common/models.py:1274 +#: common/models.py:1293 msgid "Enable plugins to add URL routes" msgstr "" -#: common/models.py:1281 +#: common/models.py:1300 msgid "Enable navigation integration" msgstr "" -#: common/models.py:1282 +#: common/models.py:1301 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/models.py:1289 +#: common/models.py:1308 msgid "Enable app integration" msgstr "" -#: common/models.py:1290 +#: common/models.py:1309 msgid "Enable plugins to add apps" msgstr "" -#: common/models.py:1297 +#: common/models.py:1316 msgid "Enable schedule integration" msgstr "" -#: common/models.py:1298 +#: common/models.py:1317 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/models.py:1305 +#: common/models.py:1324 msgid "Enable event integration" msgstr "" -#: common/models.py:1306 +#: common/models.py:1325 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:1323 common/models.py:1639 +#: common/models.py:1342 common/models.py:1658 msgid "Settings key (must be unique - case insensitive" msgstr "Tasto impostazioni (deve essere univoco - maiuscole e minuscole" -#: common/models.py:1345 +#: common/models.py:1364 msgid "Show subscribed parts" msgstr "" -#: common/models.py:1346 +#: common/models.py:1365 msgid "Show subscribed parts on the homepage" msgstr "" -#: common/models.py:1352 +#: common/models.py:1371 msgid "Show subscribed categories" msgstr "Mostra le categorie sottoscritte" -#: common/models.py:1353 +#: common/models.py:1372 msgid "Show subscribed part categories on the homepage" msgstr "Mostra le categorie dei componenti sottoscritti nella homepage" -#: common/models.py:1359 +#: common/models.py:1378 msgid "Show latest parts" msgstr "Mostra ultimi articoli" -#: common/models.py:1360 +#: common/models.py:1379 msgid "Show latest parts on the homepage" msgstr "" -#: common/models.py:1366 +#: common/models.py:1385 msgid "Recent Part Count" msgstr "" -#: common/models.py:1367 +#: common/models.py:1386 msgid "Number of recent parts to display on index page" msgstr "" -#: common/models.py:1373 +#: common/models.py:1392 msgid "Show unvalidated BOMs" msgstr "" -#: common/models.py:1374 +#: common/models.py:1393 msgid "Show BOMs that await validation on the homepage" msgstr "" -#: common/models.py:1380 +#: common/models.py:1399 msgid "Show recent stock changes" msgstr "" -#: common/models.py:1381 +#: common/models.py:1400 msgid "Show recently changed stock items on the homepage" msgstr "" -#: common/models.py:1387 +#: common/models.py:1406 msgid "Recent Stock Count" msgstr "" -#: common/models.py:1388 +#: common/models.py:1407 msgid "Number of recent stock items to display on index page" msgstr "" -#: common/models.py:1394 +#: common/models.py:1413 msgid "Show low stock" msgstr "" -#: common/models.py:1395 +#: common/models.py:1414 msgid "Show low stock items on the homepage" msgstr "" -#: common/models.py:1401 +#: common/models.py:1420 msgid "Show depleted stock" msgstr "" -#: common/models.py:1402 +#: common/models.py:1421 msgid "Show depleted stock items on the homepage" msgstr "" -#: common/models.py:1408 +#: common/models.py:1427 msgid "Show needed stock" msgstr "" -#: common/models.py:1409 +#: common/models.py:1428 msgid "Show stock items needed for builds on the homepage" msgstr "" -#: common/models.py:1415 +#: common/models.py:1434 msgid "Show expired stock" msgstr "" -#: common/models.py:1416 +#: common/models.py:1435 msgid "Show expired stock items on the homepage" msgstr "" -#: common/models.py:1422 +#: common/models.py:1441 msgid "Show stale stock" msgstr "" -#: common/models.py:1423 +#: common/models.py:1442 msgid "Show stale stock items on the homepage" msgstr "" -#: common/models.py:1429 +#: common/models.py:1448 msgid "Show pending builds" msgstr "" -#: common/models.py:1430 +#: common/models.py:1449 msgid "Show pending builds on the homepage" msgstr "" -#: common/models.py:1436 +#: common/models.py:1455 msgid "Show overdue builds" msgstr "" -#: common/models.py:1437 +#: common/models.py:1456 msgid "Show overdue builds on the homepage" msgstr "" -#: common/models.py:1443 +#: common/models.py:1462 msgid "Show outstanding POs" msgstr "" -#: common/models.py:1444 +#: common/models.py:1463 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:1450 +#: common/models.py:1469 msgid "Show overdue POs" msgstr "" -#: common/models.py:1451 +#: common/models.py:1470 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:1457 +#: common/models.py:1476 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:1458 +#: common/models.py:1477 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:1464 +#: common/models.py:1483 msgid "Show overdue SOs" msgstr "" -#: common/models.py:1465 +#: common/models.py:1484 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:1471 +#: common/models.py:1490 msgid "Inline label display" msgstr "Visualizzazione dell'etichetta in linea" -#: common/models.py:1472 +#: common/models.py:1491 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "Visualizza le etichette PDF nel browser, invece di scaricare come file" -#: common/models.py:1478 +#: common/models.py:1497 msgid "Inline report display" msgstr "Visualizzazione dell'etichetta in linea" -#: common/models.py:1479 +#: common/models.py:1498 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "Visualizza le etichette PDF nel browser, invece di scaricare come file" -#: common/models.py:1485 +#: common/models.py:1504 msgid "Search Parts" msgstr "" -#: common/models.py:1486 +#: common/models.py:1505 msgid "Display parts in search preview window" msgstr "" -#: common/models.py:1492 +#: common/models.py:1511 msgid "Seach Supplier Parts" msgstr "" -#: common/models.py:1493 +#: common/models.py:1512 msgid "Display supplier parts in search preview window" msgstr "" -#: common/models.py:1499 +#: common/models.py:1518 msgid "Search Manufacturer Parts" msgstr "" -#: common/models.py:1500 +#: common/models.py:1519 msgid "Display manufacturer parts in search preview window" msgstr "" -#: common/models.py:1506 +#: common/models.py:1525 msgid "Hide Inactive Parts" msgstr "" -#: common/models.py:1507 +#: common/models.py:1526 msgid "Excluded inactive parts from search preview window" msgstr "" -#: common/models.py:1513 +#: common/models.py:1532 msgid "Search Categories" msgstr "" -#: common/models.py:1514 +#: common/models.py:1533 msgid "Display part categories in search preview window" msgstr "" -#: common/models.py:1520 +#: common/models.py:1539 msgid "Search Stock" msgstr "" -#: common/models.py:1521 +#: common/models.py:1540 msgid "Display stock items in search preview window" msgstr "" -#: common/models.py:1527 +#: common/models.py:1546 msgid "Hide Unavailable Stock Items" msgstr "" -#: common/models.py:1528 +#: common/models.py:1547 msgid "Exclude stock items which are not available from the search preview window" msgstr "" -#: common/models.py:1534 +#: common/models.py:1553 msgid "Search Locations" msgstr "" -#: common/models.py:1535 +#: common/models.py:1554 msgid "Display stock locations in search preview window" msgstr "" -#: common/models.py:1541 +#: common/models.py:1560 msgid "Search Companies" msgstr "" -#: common/models.py:1542 +#: common/models.py:1561 msgid "Display companies in search preview window" msgstr "" -#: common/models.py:1548 +#: common/models.py:1567 msgid "Search Purchase Orders" msgstr "" -#: common/models.py:1549 +#: common/models.py:1568 msgid "Display purchase orders in search preview window" msgstr "" -#: common/models.py:1555 +#: common/models.py:1574 msgid "Exclude Inactive Purchase Orders" msgstr "" -#: common/models.py:1556 +#: common/models.py:1575 msgid "Exclude inactive purchase orders from search preview window" msgstr "" -#: common/models.py:1562 +#: common/models.py:1581 msgid "Search Sales Orders" msgstr "" -#: common/models.py:1563 +#: common/models.py:1582 msgid "Display sales orders in search preview window" msgstr "" -#: common/models.py:1569 +#: common/models.py:1588 msgid "Exclude Inactive Sales Orders" msgstr "" -#: common/models.py:1570 +#: common/models.py:1589 msgid "Exclude inactive sales orders from search preview window" msgstr "" -#: common/models.py:1576 +#: common/models.py:1595 msgid "Search Preview Results" msgstr "Risultati Dell'Anteprima Di Ricerca" -#: common/models.py:1577 +#: common/models.py:1596 msgid "Number of results to show in each section of the search preview window" msgstr "" -#: common/models.py:1583 +#: common/models.py:1602 msgid "Show Quantity in Forms" msgstr "" -#: common/models.py:1584 +#: common/models.py:1603 msgid "Display available part quantity in some forms" msgstr "" -#: common/models.py:1590 +#: common/models.py:1609 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:1591 +#: common/models.py:1610 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:1597 +#: common/models.py:1616 msgid "Fixed Navbar" msgstr "" -#: common/models.py:1598 +#: common/models.py:1617 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:1604 +#: common/models.py:1623 msgid "Date Format" msgstr "" -#: common/models.py:1605 +#: common/models.py:1624 msgid "Preferred format for displaying dates" msgstr "" -#: common/models.py:1619 part/templates/part/detail.html:41 +#: common/models.py:1638 part/templates/part/detail.html:41 msgid "Part Scheduling" msgstr "" -#: common/models.py:1620 +#: common/models.py:1639 msgid "Display part scheduling information" msgstr "" -#: common/models.py:1679 +#: common/models.py:1698 msgid "Price break quantity" msgstr "" -#: common/models.py:1686 company/serializers.py:366 +#: common/models.py:1705 company/serializers.py:366 #: company/templates/company/supplier_part.html:284 order/models.py:938 -#: templates/js/translated/part.js:1065 templates/js/translated/part.js:2152 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2161 msgid "Price" msgstr "Prezzo" -#: common/models.py:1687 +#: common/models.py:1706 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:1847 common/models.py:2025 +#: common/models.py:1866 common/models.py:2044 msgid "Endpoint" msgstr "" -#: common/models.py:1848 +#: common/models.py:1867 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:1857 +#: common/models.py:1876 msgid "Name for this webhook" msgstr "" -#: common/models.py:1862 part/models.py:914 plugin/models.py:99 +#: common/models.py:1881 part/models.py:921 plugin/models.py:100 #: templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:104 #: templates/js/translated/table_filters.js:316 @@ -2591,67 +2619,67 @@ msgstr "" msgid "Active" msgstr "Attivo" -#: common/models.py:1863 +#: common/models.py:1882 msgid "Is this webhook active" msgstr "" -#: common/models.py:1877 +#: common/models.py:1896 msgid "Token" msgstr "Token" -#: common/models.py:1878 +#: common/models.py:1897 msgid "Token for access" msgstr "" -#: common/models.py:1885 +#: common/models.py:1904 msgid "Secret" msgstr "" -#: common/models.py:1886 +#: common/models.py:1905 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:1992 +#: common/models.py:2011 msgid "Message ID" msgstr "" -#: common/models.py:1993 +#: common/models.py:2012 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2001 +#: common/models.py:2020 msgid "Host" msgstr "" -#: common/models.py:2002 +#: common/models.py:2021 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2009 +#: common/models.py:2028 msgid "Header" msgstr "" -#: common/models.py:2010 +#: common/models.py:2029 msgid "Header of this message" msgstr "" -#: common/models.py:2016 +#: common/models.py:2035 msgid "Body" msgstr "" -#: common/models.py:2017 +#: common/models.py:2036 msgid "Body of this message" msgstr "" -#: common/models.py:2026 +#: common/models.py:2045 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2031 +#: common/models.py:2050 msgid "Worked on" msgstr "" -#: common/models.py:2032 +#: common/models.py:2051 msgid "Was the work on this message finished?" msgstr "" @@ -2758,7 +2786,7 @@ msgstr "Punto di contatto" msgid "Link to external company information" msgstr "Collegamento alle informazioni aziendali esterne" -#: company/models.py:135 part/models.py:808 +#: company/models.py:135 part/models.py:815 msgid "Image" msgstr "Immagine" @@ -2791,8 +2819,8 @@ msgid "Does this company manufacture parts?" msgstr "" #: company/models.py:148 company/serializers.py:372 -#: company/templates/company/company_base.html:106 part/serializers.py:151 -#: part/serializers.py:182 stock/serializers.py:180 +#: company/templates/company/company_base.html:106 part/serializers.py:153 +#: part/serializers.py:184 stock/serializers.py:180 msgid "Currency" msgstr "Valuta" @@ -2800,7 +2828,7 @@ msgstr "Valuta" msgid "Default currency used for this company" msgstr "" -#: company/models.py:248 company/models.py:481 stock/models.py:591 +#: company/models.py:248 company/models.py:481 stock/models.py:598 #: stock/serializers.py:87 stock/templates/stock/item_base.html:148 #: templates/js/translated/bom.js:543 msgid "Base Part" @@ -2832,7 +2860,7 @@ msgstr "Seleziona Produttore" #: templates/js/translated/company.js:497 #: templates/js/translated/company.js:649 #: templates/js/translated/company.js:937 templates/js/translated/order.js:1971 -#: templates/js/translated/part.js:247 templates/js/translated/part.js:1023 +#: templates/js/translated/part.js:247 templates/js/translated/part.js:1027 msgid "MPN" msgstr "Codice articolo produttore (MPN)" @@ -2861,9 +2889,9 @@ msgstr "Nome parametro" #: company/models.py:365 #: report/templates/report/inventree_test_report_base.html:95 -#: stock/models.py:2088 templates/js/translated/company.js:546 -#: templates/js/translated/company.js:764 templates/js/translated/part.js:845 -#: templates/js/translated/stock.js:1356 +#: stock/models.py:2095 templates/js/translated/company.js:546 +#: templates/js/translated/company.js:764 templates/js/translated/part.js:849 +#: templates/js/translated/stock.js:1360 msgid "Value" msgstr "Valore" @@ -2871,10 +2899,10 @@ msgstr "Valore" msgid "Parameter value" msgstr "Valore del parametro" -#: company/models.py:372 part/models.py:881 part/models.py:2379 +#: company/models.py:372 part/models.py:888 part/models.py:2386 #: part/templates/part/part_base.html:280 #: templates/InvenTree/settings/settings.html:352 -#: templates/js/translated/company.js:770 templates/js/translated/part.js:851 +#: templates/js/translated/company.js:770 templates/js/translated/part.js:855 msgid "Units" msgstr "Unità" @@ -2894,7 +2922,7 @@ msgstr "L'articolo del costruttore collegato deve riferirsi alla stesso articolo #: templates/js/translated/company.js:268 #: templates/js/translated/company.js:401 #: templates/js/translated/company.js:893 templates/js/translated/order.js:1707 -#: templates/js/translated/part.js:217 templates/js/translated/part.js:991 +#: templates/js/translated/part.js:217 templates/js/translated/part.js:995 #: templates/js/translated/table_filters.js:423 msgid "Supplier" msgstr "Fornitore" @@ -2906,7 +2934,7 @@ msgstr "Seleziona fornitore" #: company/models.py:497 company/templates/company/supplier_part.html:118 #: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267 #: templates/js/translated/order.js:1958 templates/js/translated/part.js:228 -#: templates/js/translated/part.js:1009 +#: templates/js/translated/part.js:1013 msgid "SKU" msgstr "" @@ -2927,23 +2955,23 @@ msgid "Supplier part description" msgstr "Descrizione articolo fornitore" #: company/models.py:522 company/templates/company/supplier_part.html:146 -#: part/models.py:2613 part/templates/part/upload_bom.html:59 +#: part/models.py:2620 part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401 msgid "Note" msgstr "Nota" -#: company/models.py:526 part/models.py:1735 +#: company/models.py:526 part/models.py:1742 msgid "base cost" msgstr "costo base" -#: company/models.py:526 part/models.py:1735 +#: company/models.py:526 part/models.py:1742 msgid "Minimum charge (e.g. stocking fee)" msgstr "Onere minimo (ad esempio tassa di stoccaggio)" #: company/models.py:528 company/templates/company/supplier_part.html:139 -#: stock/models.py:617 stock/templates/stock/item_base.html:245 -#: templates/js/translated/company.js:969 templates/js/translated/stock.js:1972 +#: stock/models.py:624 stock/templates/stock/item_base.html:245 +#: templates/js/translated/company.js:969 templates/js/translated/stock.js:1976 msgid "Packaging" msgstr "Confezionamento" @@ -2951,7 +2979,7 @@ msgstr "Confezionamento" msgid "Part packaging" msgstr "Imballaggio del pezzo" -#: company/models.py:530 part/models.py:1737 +#: company/models.py:530 part/models.py:1744 msgid "multiple" msgstr "multiplo" @@ -2964,7 +2992,7 @@ msgstr "Ordine multiplo" #: templates/email/low_stock_notification.html:18 #: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789 #: templates/js/translated/build.js:2645 templates/js/translated/company.js:979 -#: templates/js/translated/part.js:596 templates/js/translated/part.js:599 +#: templates/js/translated/part.js:600 templates/js/translated/part.js:603 #: templates/js/translated/table_filters.js:186 msgid "Available" msgstr "Disponibile" @@ -3037,12 +3065,12 @@ msgid "Download image from URL" msgstr "Scarica immagine dall'URL" #: company/templates/company/company_base.html:86 order/models.py:637 -#: order/templates/order/sales_order_base.html:116 stock/models.py:636 -#: stock/models.py:637 stock/serializers.py:809 +#: order/templates/order/sales_order_base.html:116 stock/models.py:643 +#: stock/models.py:644 stock/serializers.py:811 #: stock/templates/stock/item_base.html:401 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:393 templates/js/translated/order.js:2513 -#: templates/js/translated/stock.js:2550 +#: templates/js/translated/stock.js:2559 #: templates/js/translated/table_filters.js:427 msgid "Customer" msgstr "Cliente" @@ -3083,7 +3111,7 @@ msgstr "Nuovo fornitore articolo" #: company/templates/company/detail.html:36 #: company/templates/company/detail.html:84 -#: part/templates/part/category.html:176 +#: part/templates/part/category.html:182 msgid "Order parts" msgstr "Articoli ordinati" @@ -3231,7 +3259,7 @@ msgstr "Parametri" #: company/templates/company/manufacturer_part.html:170 #: part/templates/part/detail.html:186 #: templates/InvenTree/settings/category.html:12 -#: templates/InvenTree/settings/part.html:66 +#: templates/InvenTree/settings/part.html:68 msgid "New Parameter" msgstr "Nuovo Parametro" @@ -3261,10 +3289,10 @@ msgid "Assigned Stock Items" msgstr "" #: company/templates/company/supplier_part.html:7 -#: company/templates/company/supplier_part.html:24 stock/models.py:600 +#: company/templates/company/supplier_part.html:24 stock/models.py:607 #: stock/templates/stock/item_base.html:238 #: templates/js/translated/company.js:909 templates/js/translated/order.js:935 -#: templates/js/translated/stock.js:1929 +#: templates/js/translated/stock.js:1933 msgid "Supplier Part" msgstr "Articolo Fornitore" @@ -3308,13 +3336,13 @@ msgid "Supplier Part Stock" msgstr "Fornitore articolo in giacenza" #: company/templates/company/supplier_part.html:168 -#: part/templates/part/detail.html:24 stock/templates/stock/location.html:176 +#: part/templates/part/detail.html:24 stock/templates/stock/location.html:181 msgid "Create new stock item" msgstr "Crea nuova allocazione magazzino" #: company/templates/company/supplier_part.html:169 -#: part/templates/part/detail.html:25 stock/templates/stock/location.html:177 -#: templates/js/translated/stock.js:431 +#: part/templates/part/detail.html:25 stock/templates/stock/location.html:182 +#: templates/js/translated/stock.js:435 msgid "New Stock Item" msgstr "Nuovo Elemento in giacenza" @@ -3330,7 +3358,7 @@ msgstr "Informazioni Prezzi" #: company/templates/company/supplier_part.html:212 #: company/templates/company/supplier_part.html:326 -#: part/templates/part/prices.html:276 templates/js/translated/part.js:2224 +#: part/templates/part/prices.html:276 templates/js/translated/part.js:2233 msgid "Add Price Break" msgstr "Aggiungi riduzione prezzo" @@ -3339,12 +3367,12 @@ msgid "No price break information found" msgstr "Nessuna informazione di riduzione di prezzo trovata" #: company/templates/company/supplier_part.html:252 -#: templates/js/translated/part.js:2234 +#: templates/js/translated/part.js:2243 msgid "Delete Price Break" msgstr "Elimina riduzione di prezzo" #: company/templates/company/supplier_part.html:266 -#: templates/js/translated/part.js:2248 +#: templates/js/translated/part.js:2257 msgid "Edit Price Break" msgstr "" @@ -3366,13 +3394,13 @@ msgstr "" #: company/templates/company/supplier_part_navbar.html:15 #: part/templates/part/part_sidebar.html:14 -#: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:19 +#: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:24 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:151 #: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/bom.js:555 templates/js/translated/part.js:747 -#: templates/js/translated/part.js:1295 templates/js/translated/part.js:1456 -#: templates/js/translated/stock.js:955 templates/js/translated/stock.js:1750 +#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751 +#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460 +#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754 #: templates/navbar.html:31 msgid "Stock" msgstr "Magazzino" @@ -3392,14 +3420,14 @@ msgid "Pricing" msgstr "Prezzi" #: company/templates/company/supplier_part_sidebar.html:5 -#: part/templates/part/category.html:197 +#: part/templates/part/category.html:203 #: part/templates/part/category_sidebar.html:17 -#: stock/templates/stock/location.html:147 -#: stock/templates/stock/location.html:161 -#: stock/templates/stock/location.html:173 +#: stock/templates/stock/location.html:152 +#: stock/templates/stock/location.html:166 +#: stock/templates/stock/location.html:178 #: stock/templates/stock/location_sidebar.html:7 #: templates/InvenTree/search.html:153 templates/js/translated/search.js:223 -#: templates/js/translated/stock.js:2427 users/models.py:40 +#: templates/js/translated/stock.js:2436 users/models.py:40 msgid "Stock Items" msgstr "Articoli in magazzino" @@ -3656,8 +3684,8 @@ msgstr "" #: stock/templates/stock/item_base.html:184 #: templates/email/overdue_purchase_order.html:15 #: templates/js/translated/order.js:936 templates/js/translated/order.js:1691 -#: templates/js/translated/part.js:968 templates/js/translated/stock.js:1909 -#: templates/js/translated/stock.js:2531 +#: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913 +#: templates/js/translated/stock.js:2540 msgid "Purchase Order" msgstr "" @@ -3667,7 +3695,7 @@ msgstr "Articolo Fornitore" #: order/models.py:1009 order/templates/order/order_base.html:169 #: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073 -#: templates/js/translated/part.js:1060 templates/js/translated/part.js:1087 +#: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091 #: templates/js/translated/table_filters.js:338 msgid "Received" msgstr "" @@ -3676,9 +3704,9 @@ msgstr "" msgid "Number of items received" msgstr "" -#: order/models.py:1017 part/templates/part/prices.html:181 stock/models.py:727 +#: order/models.py:1017 part/templates/part/prices.html:181 stock/models.py:734 #: stock/serializers.py:171 stock/templates/stock/item_base.html:191 -#: templates/js/translated/stock.js:1960 +#: templates/js/translated/stock.js:1964 msgid "Purchase Price" msgstr "" @@ -4066,8 +4094,8 @@ msgstr "Seleziona l'articolo del fornitore" #: templates/js/translated/bom.js:77 templates/js/translated/build.js:431 #: templates/js/translated/build.js:583 templates/js/translated/build.js:1974 #: templates/js/translated/order.js:884 templates/js/translated/order.js:1337 -#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:621 -#: templates/js/translated/stock.js:789 +#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625 +#: templates/js/translated/stock.js:793 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "Elimina riga" @@ -4261,8 +4289,8 @@ msgstr "Specifica la posizione per lo stock iniziale" msgid "This field is required" msgstr "" -#: part/bom.py:127 part/models.py:98 part/models.py:817 -#: part/templates/part/category.html:108 part/templates/part/part_base.html:330 +#: part/bom.py:127 part/models.py:98 part/models.py:824 +#: part/templates/part/category.html:114 part/templates/part/part_base.html:330 msgid "Default Location" msgstr "Posizione Predefinita" @@ -4276,9 +4304,9 @@ msgid "Available Stock" msgstr "Disponibilità in magazzino" #: part/bom.py:130 part/templates/part/part_base.html:207 -#: templates/js/translated/bom.js:947 templates/js/translated/part.js:586 -#: templates/js/translated/part.js:606 templates/js/translated/part.js:1298 -#: templates/js/translated/part.js:1470 templates/js/translated/part.js:1486 +#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590 +#: templates/js/translated/part.js:610 templates/js/translated/part.js:1302 +#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "Ordinato" @@ -4299,516 +4327,524 @@ msgstr "Keywords predefinite" msgid "Default keywords for parts in this category" msgstr "Parole chiave predefinite per gli articoli in questa categoria" -#: part/models.py:115 part/models.py:2455 part/templates/part/category.html:15 +#: part/models.py:107 stock/models.py:84 +msgid "Icon" +msgstr "" + +#: part/models.py:108 stock/models.py:85 +msgid "Icon (optional)" +msgstr "" + +#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "Categoria Articoli" -#: part/models.py:116 part/templates/part/category.html:128 +#: part/models.py:123 part/templates/part/category.html:134 #: templates/InvenTree/search.html:95 templates/js/translated/search.js:198 #: users/models.py:37 msgid "Part Categories" msgstr "Categorie Articolo" -#: part/models.py:337 part/templates/part/cat_link.html:3 -#: part/templates/part/category.html:17 part/templates/part/category.html:133 -#: part/templates/part/category.html:153 +#: part/models.py:344 part/templates/part/cat_link.html:3 +#: part/templates/part/category.html:23 part/templates/part/category.html:139 +#: part/templates/part/category.html:159 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82 #: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:1946 templates/js/translated/search.js:144 +#: templates/js/translated/part.js:1955 templates/js/translated/search.js:144 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "Articoli" -#: part/models.py:422 +#: part/models.py:429 msgid "Invalid choice for parent part" msgstr "Scelta non valida per l'articolo principale" -#: part/models.py:492 part/models.py:504 +#: part/models.py:499 part/models.py:511 #, python-brace-format msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)" msgstr "" -#: part/models.py:621 +#: part/models.py:628 msgid "Next available serial numbers are" msgstr "I successivi numeri di serie disponibili sono" -#: part/models.py:625 +#: part/models.py:632 msgid "Next available serial number is" msgstr "Il prossimo numero di serie disponibile è" -#: part/models.py:630 +#: part/models.py:637 msgid "Most recent serial number is" msgstr "Il numero di serie più recente è" -#: part/models.py:711 +#: part/models.py:718 msgid "Duplicate IPN not allowed in part settings" msgstr "Non è consentito duplicare IPN nelle impostazioni dell'articolo" -#: part/models.py:738 part/models.py:2509 +#: part/models.py:745 part/models.py:2516 msgid "Part name" msgstr "Nome articolo" -#: part/models.py:745 +#: part/models.py:752 msgid "Is Template" msgstr "È Template" -#: part/models.py:746 +#: part/models.py:753 msgid "Is this part a template part?" msgstr "Quest'articolo è un articolo di template?" -#: part/models.py:756 +#: part/models.py:763 msgid "Is this part a variant of another part?" msgstr "Questa parte è una variante di un altro articolo?" -#: part/models.py:757 +#: part/models.py:764 msgid "Variant Of" msgstr "Variante Di" -#: part/models.py:763 +#: part/models.py:770 msgid "Part description" msgstr "Descrizione articolo" -#: part/models.py:768 part/templates/part/category.html:86 +#: part/models.py:775 part/templates/part/category.html:92 #: part/templates/part/part_base.html:294 msgid "Keywords" msgstr "Parole Chiave" -#: part/models.py:769 +#: part/models.py:776 msgid "Part keywords to improve visibility in search results" msgstr "Parole chiave per migliorare la visibilità nei risultati di ricerca" -#: part/models.py:776 part/models.py:2211 part/models.py:2454 +#: part/models.py:783 part/models.py:2218 part/models.py:2461 #: part/templates/part/part_base.html:257 #: templates/InvenTree/settings/settings.html:232 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1438 templates/js/translated/part.js:1664 +#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1668 msgid "Category" msgstr "Categoria" -#: part/models.py:777 +#: part/models.py:784 msgid "Part category" msgstr "Categoria articolo" -#: part/models.py:782 part/templates/part/part_base.html:266 -#: templates/js/translated/part.js:735 templates/js/translated/part.js:1391 -#: templates/js/translated/stock.js:1722 +#: part/models.py:789 part/templates/part/part_base.html:266 +#: templates/js/translated/part.js:739 templates/js/translated/part.js:1395 +#: templates/js/translated/stock.js:1726 msgid "IPN" msgstr "IPN - Numero di riferimento interno" -#: part/models.py:783 +#: part/models.py:790 msgid "Internal Part Number" msgstr "Numero Dell'articolo Interno" -#: part/models.py:789 +#: part/models.py:796 msgid "Part revision or version number" msgstr "Numero di revisione o di versione" -#: part/models.py:790 part/templates/part/part_base.html:273 -#: report/models.py:171 templates/js/translated/part.js:739 +#: part/models.py:797 part/templates/part/part_base.html:273 +#: report/models.py:171 templates/js/translated/part.js:743 msgid "Revision" msgstr "Revisione" -#: part/models.py:815 +#: part/models.py:822 msgid "Where is this item normally stored?" msgstr "Dove viene normalmente immagazzinato questo articolo?" -#: part/models.py:860 part/templates/part/part_base.html:339 +#: part/models.py:867 part/templates/part/part_base.html:339 msgid "Default Supplier" msgstr "Fornitore predefinito" -#: part/models.py:861 +#: part/models.py:868 msgid "Default supplier part" msgstr "Articolo fornitore predefinito" -#: part/models.py:868 +#: part/models.py:875 msgid "Default Expiry" msgstr "Scadenza Predefinita" -#: part/models.py:869 +#: part/models.py:876 msgid "Expiry time (in days) for stock items of this part" msgstr "Scadenza (in giorni) per gli articoli in giacenza di questo pezzo" -#: part/models.py:874 part/templates/part/part_base.html:200 +#: part/models.py:881 part/templates/part/part_base.html:200 msgid "Minimum Stock" msgstr "Scorta Minima" -#: part/models.py:875 +#: part/models.py:882 msgid "Minimum allowed stock level" msgstr "Livello minimo di giacenza consentito" -#: part/models.py:882 +#: part/models.py:889 msgid "Stock keeping units for this part" msgstr "Unità di conservazione delle scorte per quest'articolo" -#: part/models.py:888 +#: part/models.py:895 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:894 +#: part/models.py:901 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:900 +#: part/models.py:907 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:905 +#: part/models.py:912 msgid "Can this part be purchased from external suppliers?" msgstr "Quest'articolo può essere acquistato da fornitori esterni?" -#: part/models.py:910 +#: part/models.py:917 msgid "Can this part be sold to customers?" msgstr "Questo pezzo può essere venduto ai clienti?" -#: part/models.py:915 +#: part/models.py:922 msgid "Is this part active?" msgstr "Quest'articolo è attivo?" -#: part/models.py:920 +#: part/models.py:927 msgid "Is this a virtual part, such as a software product or license?" msgstr "È una parte virtuale, come un prodotto software o una licenza?" -#: part/models.py:922 +#: part/models.py:929 msgid "Part notes" msgstr "" -#: part/models.py:924 +#: part/models.py:931 msgid "BOM checksum" msgstr "" -#: part/models.py:924 +#: part/models.py:931 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:927 +#: part/models.py:934 msgid "BOM checked by" msgstr "" -#: part/models.py:929 +#: part/models.py:936 msgid "BOM checked date" msgstr "" -#: part/models.py:933 +#: part/models.py:940 msgid "Creation User" msgstr "" -#: part/models.py:1737 +#: part/models.py:1744 msgid "Sell multiple" msgstr "" -#: part/models.py:2258 +#: part/models.py:2265 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:2275 +#: part/models.py:2282 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:2295 templates/js/translated/part.js:1997 -#: templates/js/translated/stock.js:1336 +#: part/models.py:2302 templates/js/translated/part.js:2006 +#: templates/js/translated/stock.js:1340 msgid "Test Name" msgstr "" -#: part/models.py:2296 +#: part/models.py:2303 msgid "Enter a name for the test" msgstr "" -#: part/models.py:2301 +#: part/models.py:2308 msgid "Test Description" msgstr "Descrizione Di Prova" -#: part/models.py:2302 +#: part/models.py:2309 msgid "Enter description for this test" msgstr "" -#: part/models.py:2307 templates/js/translated/part.js:2006 +#: part/models.py:2314 templates/js/translated/part.js:2015 #: templates/js/translated/table_filters.js:302 msgid "Required" msgstr "" -#: part/models.py:2308 +#: part/models.py:2315 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:2313 templates/js/translated/part.js:2014 +#: part/models.py:2320 templates/js/translated/part.js:2023 msgid "Requires Value" msgstr "" -#: part/models.py:2314 +#: part/models.py:2321 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:2319 templates/js/translated/part.js:2021 +#: part/models.py:2326 templates/js/translated/part.js:2030 msgid "Requires Attachment" msgstr "" -#: part/models.py:2320 +#: part/models.py:2327 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:2328 +#: part/models.py:2335 #, python-brace-format msgid "Illegal character in template name ({c})" msgstr "" -#: part/models.py:2364 +#: part/models.py:2371 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:2372 +#: part/models.py:2379 msgid "Parameter Name" msgstr "" -#: part/models.py:2379 +#: part/models.py:2386 msgid "Parameter Units" msgstr "" -#: part/models.py:2410 +#: part/models.py:2417 msgid "Parent Part" msgstr "" -#: part/models.py:2412 part/models.py:2460 part/models.py:2461 +#: part/models.py:2419 part/models.py:2467 part/models.py:2468 #: templates/InvenTree/settings/settings.html:227 msgid "Parameter Template" msgstr "" -#: part/models.py:2414 +#: part/models.py:2421 msgid "Data" msgstr "" -#: part/models.py:2414 +#: part/models.py:2421 msgid "Parameter Value" msgstr "" -#: part/models.py:2465 templates/InvenTree/settings/settings.html:236 +#: part/models.py:2472 templates/InvenTree/settings/settings.html:236 msgid "Default Value" msgstr "" -#: part/models.py:2466 +#: part/models.py:2473 msgid "Default Parameter Value" msgstr "" -#: part/models.py:2501 +#: part/models.py:2508 msgid "Part ID or part name" msgstr "" -#: part/models.py:2504 templates/js/translated/model_renderers.js:212 +#: part/models.py:2511 templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "Codice Articolo" -#: part/models.py:2505 +#: part/models.py:2512 msgid "Unique part ID value" msgstr "" -#: part/models.py:2508 +#: part/models.py:2515 msgid "Part Name" msgstr "" -#: part/models.py:2512 +#: part/models.py:2519 msgid "Part IPN" msgstr "" -#: part/models.py:2513 +#: part/models.py:2520 msgid "Part IPN value" msgstr "" -#: part/models.py:2516 +#: part/models.py:2523 msgid "Level" msgstr "" -#: part/models.py:2517 +#: part/models.py:2524 msgid "BOM level" msgstr "" -#: part/models.py:2586 +#: part/models.py:2593 msgid "Select parent part" msgstr "" -#: part/models.py:2594 +#: part/models.py:2601 msgid "Sub part" msgstr "" -#: part/models.py:2595 +#: part/models.py:2602 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:2601 +#: part/models.py:2608 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:2603 part/templates/part/upload_bom.html:58 +#: part/models.py:2610 part/templates/part/upload_bom.html:58 #: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999 #: templates/js/translated/table_filters.js:100 msgid "Optional" msgstr "" -#: part/models.py:2603 +#: part/models.py:2610 msgid "This BOM item is optional" msgstr "" -#: part/models.py:2606 part/templates/part/upload_bom.html:55 +#: part/models.py:2613 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:2607 +#: part/models.py:2614 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:2610 +#: part/models.py:2617 msgid "BOM item reference" msgstr "" -#: part/models.py:2613 +#: part/models.py:2620 msgid "BOM item notes" msgstr "" -#: part/models.py:2615 +#: part/models.py:2622 msgid "Checksum" msgstr "" -#: part/models.py:2615 +#: part/models.py:2622 msgid "BOM line checksum" msgstr "" -#: part/models.py:2619 part/templates/part/upload_bom.html:57 +#: part/models.py:2626 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1016 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:96 msgid "Inherited" msgstr "" -#: part/models.py:2620 +#: part/models.py:2627 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:2625 part/templates/part/upload_bom.html:56 +#: part/models.py:2632 part/templates/part/upload_bom.html:56 #: templates/js/translated/bom.js:1008 msgid "Allow Variants" msgstr "Consenti Le Varianti" -#: part/models.py:2626 +#: part/models.py:2633 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:2704 stock/models.py:461 +#: part/models.py:2711 stock/models.py:468 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:2713 part/models.py:2715 +#: part/models.py:2720 part/models.py:2722 msgid "Sub part must be specified" msgstr "" -#: part/models.py:2820 +#: part/models.py:2827 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:2841 +#: part/models.py:2848 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:2854 +#: part/models.py:2861 msgid "Parent BOM item" msgstr "" -#: part/models.py:2862 +#: part/models.py:2869 msgid "Substitute part" msgstr "" -#: part/models.py:2877 +#: part/models.py:2884 msgid "Part 1" msgstr "" -#: part/models.py:2881 +#: part/models.py:2888 msgid "Part 2" msgstr "" -#: part/models.py:2881 +#: part/models.py:2888 msgid "Select Related Part" msgstr "" -#: part/models.py:2899 +#: part/models.py:2906 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:2903 +#: part/models.py:2910 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:152 part/serializers.py:183 stock/serializers.py:181 +#: part/serializers.py:154 part/serializers.py:185 stock/serializers.py:181 msgid "Purchase currency of this stock item" msgstr "" -#: part/serializers.py:812 +#: part/serializers.py:814 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:820 +#: part/serializers.py:822 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:821 +#: part/serializers.py:823 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:826 +#: part/serializers.py:828 msgid "Include Inherited" msgstr "" -#: part/serializers.py:827 +#: part/serializers.py:829 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:832 +#: part/serializers.py:834 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:833 +#: part/serializers.py:835 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:838 +#: part/serializers.py:840 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:839 +#: part/serializers.py:841 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:879 +#: part/serializers.py:881 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:880 +#: part/serializers.py:882 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:910 +#: part/serializers.py:912 msgid "No part column specified" msgstr "" -#: part/serializers.py:953 +#: part/serializers.py:955 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:956 +#: part/serializers.py:958 msgid "No matching part found" msgstr "" -#: part/serializers.py:959 +#: part/serializers.py:961 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:968 +#: part/serializers.py:970 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:976 +#: part/serializers.py:978 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:997 +#: part/serializers.py:999 msgid "At least one BOM item is required" msgstr "" @@ -4848,101 +4884,101 @@ msgstr "" msgid "Delete Items" msgstr "Elimina Elementi" -#: part/templates/part/category.html:28 part/templates/part/category.html:32 +#: part/templates/part/category.html:34 part/templates/part/category.html:38 msgid "You are subscribed to notifications for this category" msgstr "Sei iscritto alle notifiche di questa categoria" -#: part/templates/part/category.html:36 +#: part/templates/part/category.html:42 msgid "Subscribe to notifications for this category" msgstr "Sottoscrivi notifiche per questa categoria" -#: part/templates/part/category.html:42 +#: part/templates/part/category.html:48 msgid "Category Actions" msgstr "Azioni Categoria" -#: part/templates/part/category.html:47 +#: part/templates/part/category.html:53 msgid "Edit category" msgstr "Modifica categoria" -#: part/templates/part/category.html:48 +#: part/templates/part/category.html:54 msgid "Edit Category" msgstr "Modifica Categoria" -#: part/templates/part/category.html:52 +#: part/templates/part/category.html:58 msgid "Delete category" msgstr "Elimina la categoria" -#: part/templates/part/category.html:53 +#: part/templates/part/category.html:59 msgid "Delete Category" msgstr "Cancella categoria" -#: part/templates/part/category.html:61 +#: part/templates/part/category.html:67 msgid "Create new part category" msgstr "Crea nuova categoria articoli" -#: part/templates/part/category.html:62 +#: part/templates/part/category.html:68 msgid "New Category" msgstr "Nuova categoria" -#: part/templates/part/category.html:80 part/templates/part/category.html:93 +#: part/templates/part/category.html:86 part/templates/part/category.html:99 msgid "Category Path" msgstr "Percorso Categoria" -#: part/templates/part/category.html:94 +#: part/templates/part/category.html:100 msgid "Top level part category" msgstr "Categoria articolo di livello superiore" -#: part/templates/part/category.html:114 part/templates/part/category.html:222 +#: part/templates/part/category.html:120 part/templates/part/category.html:228 #: part/templates/part/category_sidebar.html:7 msgid "Subcategories" msgstr "Sottocategorie" -#: part/templates/part/category.html:119 +#: part/templates/part/category.html:125 msgid "Parts (Including subcategories)" msgstr "Articoli (incluse le sottocategorie)" -#: part/templates/part/category.html:157 +#: part/templates/part/category.html:163 msgid "Create new part" msgstr "Crea nuovo articolo" -#: part/templates/part/category.html:158 templates/js/translated/bom.js:367 +#: part/templates/part/category.html:164 templates/js/translated/bom.js:367 msgid "New Part" msgstr "Nuovo articolo" -#: part/templates/part/category.html:168 part/templates/part/detail.html:363 +#: part/templates/part/category.html:174 part/templates/part/detail.html:363 #: part/templates/part/detail.html:394 msgid "Options" msgstr "Opzioni" -#: part/templates/part/category.html:172 +#: part/templates/part/category.html:178 msgid "Set category" msgstr "Imposta categoria" -#: part/templates/part/category.html:173 +#: part/templates/part/category.html:179 msgid "Set Category" msgstr "Imposta Categoria" -#: part/templates/part/category.html:180 part/templates/part/category.html:181 +#: part/templates/part/category.html:186 part/templates/part/category.html:187 msgid "Print Labels" msgstr "Stampa Etichette" -#: part/templates/part/category.html:206 +#: part/templates/part/category.html:212 msgid "Part Parameters" msgstr "Parametri articolo" -#: part/templates/part/category.html:320 +#: part/templates/part/category.html:327 msgid "Create Part Category" msgstr "Crea Categoria Articolo" -#: part/templates/part/category.html:340 +#: part/templates/part/category.html:347 msgid "Create Part" msgstr "Crea Articolo" -#: part/templates/part/category.html:343 +#: part/templates/part/category.html:350 msgid "Create another part after this one" msgstr "" -#: part/templates/part/category.html:344 +#: part/templates/part/category.html:351 msgid "Part created successfully" msgstr "" @@ -4950,7 +4986,7 @@ msgstr "" msgid "Import Parts" msgstr "" -#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:375 +#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:379 msgid "Duplicate Part" msgstr "" @@ -5172,19 +5208,19 @@ msgstr "" #: part/templates/part/part_base.html:43 #: stock/templates/stock/item_base.html:41 -#: stock/templates/stock/location.html:43 +#: stock/templates/stock/location.html:48 msgid "Barcode actions" msgstr "Azioni Barcode" #: part/templates/part/part_base.html:46 #: stock/templates/stock/item_base.html:45 -#: stock/templates/stock/location.html:45 templates/qr_button.html:1 +#: stock/templates/stock/location.html:50 templates/qr_button.html:1 msgid "Show QR Code" msgstr "Mostra QR Code" #: part/templates/part/part_base.html:49 #: stock/templates/stock/item_base.html:63 -#: stock/templates/stock/location.html:47 +#: stock/templates/stock/location.html:52 msgid "Print Label" msgstr "Stampa Etichetta" @@ -5194,7 +5230,7 @@ msgstr "" #: part/templates/part/part_base.html:60 #: stock/templates/stock/item_base.html:116 -#: stock/templates/stock/location.html:56 +#: stock/templates/stock/location.html:61 msgid "Stock actions" msgstr "Azioni magazzino" @@ -5255,7 +5291,7 @@ msgstr "" #: templates/js/translated/company.js:624 #: templates/js/translated/company.js:884 #: templates/js/translated/model_renderers.js:204 -#: templates/js/translated/part.js:650 templates/js/translated/part.js:727 +#: templates/js/translated/part.js:654 templates/js/translated/part.js:731 msgid "Inactive" msgstr "Inattivo" @@ -5289,9 +5325,9 @@ msgstr "" msgid "Can Build" msgstr "" -#: part/templates/part/part_base.html:238 templates/js/translated/part.js:589 -#: templates/js/translated/part.js:609 templates/js/translated/part.js:1302 -#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490 +#: part/templates/part/part_base.html:238 templates/js/translated/part.js:593 +#: templates/js/translated/part.js:613 templates/js/translated/part.js:1306 +#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1494 msgid "Building" msgstr "" @@ -5464,8 +5500,8 @@ msgstr "" msgid "No sale pice history available for this part." msgstr "" -#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:612 -#: templates/js/translated/part.js:1290 templates/js/translated/part.js:1494 +#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616 +#: templates/js/translated/part.js:1294 templates/js/translated/part.js:1498 msgid "No Stock" msgstr "Nessuna giacenza" @@ -5630,51 +5666,55 @@ msgstr "" msgid "Allow sending of emails for event notifications" msgstr "" -#: plugin/models.py:32 +#: plugin/models.py:33 msgid "Plugin Metadata" msgstr "" -#: plugin/models.py:33 +#: plugin/models.py:34 msgid "JSON metadata field, for use by external plugins" msgstr "" -#: plugin/models.py:79 +#: plugin/models.py:80 msgid "Plugin Configuration" msgstr "" -#: plugin/models.py:80 +#: plugin/models.py:81 msgid "Plugin Configurations" msgstr "" -#: plugin/models.py:85 +#: plugin/models.py:86 msgid "Key" msgstr "" -#: plugin/models.py:86 +#: plugin/models.py:87 msgid "Key of plugin" msgstr "" -#: plugin/models.py:94 +#: plugin/models.py:95 msgid "PluginName of the plugin" msgstr "" -#: plugin/models.py:100 +#: plugin/models.py:101 msgid "Is the plugin active" msgstr "" -#: plugin/models.py:168 +#: plugin/models.py:158 +msgid "Sample plugin" +msgstr "" + +#: plugin/models.py:186 msgid "Plugin" msgstr "" -#: plugin/models.py:231 +#: plugin/models.py:249 msgid "Method" msgstr "" -#: plugin/plugin.py:228 +#: plugin/plugin.py:251 msgid "No author found" msgstr "" -#: plugin/plugin.py:240 +#: plugin/plugin.py:263 msgid "No date found" msgstr "" @@ -5746,12 +5786,12 @@ msgstr "" msgid "No valid objects provided to template" msgstr "Nessun oggetto valido fornito nel modello" -#: report/api.py:216 report/api.py:257 +#: report/api.py:216 report/api.py:252 #, python-brace-format msgid "Template file '{template}' is missing or does not exist" msgstr "" -#: report/api.py:360 +#: report/api.py:355 msgid "Test report" msgstr "" @@ -5852,12 +5892,12 @@ msgid "Stock Item Test Report" msgstr "" #: report/templates/report/inventree_test_report_base.html:79 -#: stock/models.py:641 stock/templates/stock/item_base.html:322 +#: stock/models.py:648 stock/templates/stock/item_base.html:322 #: templates/js/translated/build.js:424 templates/js/translated/build.js:576 #: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673 #: templates/js/translated/model_renderers.js:118 #: templates/js/translated/order.js:118 templates/js/translated/order.js:3297 -#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:486 +#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490 msgid "Serial Number" msgstr "" @@ -5866,19 +5906,19 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report_base.html:93 -#: stock/models.py:2076 +#: stock/models.py:2083 msgid "Test" msgstr "" #: report/templates/report/inventree_test_report_base.html:94 -#: stock/models.py:2082 +#: stock/models.py:2089 msgid "Result" msgstr "" #: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:51 +#: templates/InvenTree/settings/plugin.html:53 #: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2459 +#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468 msgid "Date" msgstr "Data" @@ -5896,8 +5936,8 @@ msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report_base.html:137 -#: templates/js/translated/stock.js:606 templates/js/translated/stock.js:776 -#: templates/js/translated/stock.js:2708 +#: templates/js/translated/stock.js:610 templates/js/translated/stock.js:780 +#: templates/js/translated/stock.js:2717 msgid "Serial" msgstr "Seriale" @@ -5913,241 +5953,241 @@ msgstr "" msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" -#: stock/models.py:82 stock/models.py:732 +#: stock/models.py:89 stock/models.py:739 #: stock/templates/stock/item_base.html:252 msgid "Owner" msgstr "" -#: stock/models.py:83 stock/models.py:733 +#: stock/models.py:90 stock/models.py:740 msgid "Select Owner" msgstr "Seleziona Owner" -#: stock/models.py:435 +#: stock/models.py:442 msgid "StockItem with this serial number already exists" msgstr "" -#: stock/models.py:467 stock/serializers.py:95 +#: stock/models.py:474 stock/serializers.py:95 msgid "Stock item cannot be created for virtual parts" msgstr "" -#: stock/models.py:484 +#: stock/models.py:491 #, python-brace-format msgid "Part type ('{pf}') must be {pe}" msgstr "" -#: stock/models.py:494 stock/models.py:503 +#: stock/models.py:501 stock/models.py:510 msgid "Quantity must be 1 for item with a serial number" msgstr "" -#: stock/models.py:495 +#: stock/models.py:502 msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:517 +#: stock/models.py:524 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:523 +#: stock/models.py:530 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:537 +#: stock/models.py:544 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:583 +#: stock/models.py:590 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:593 +#: stock/models.py:600 msgid "Base part" msgstr "Articolo base" -#: stock/models.py:601 +#: stock/models.py:608 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:608 stock/templates/stock/location.html:17 +#: stock/models.py:615 stock/templates/stock/location.html:17 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" msgstr "Ubicazione magazzino" -#: stock/models.py:611 +#: stock/models.py:618 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:618 +#: stock/models.py:625 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:624 stock/templates/stock/item_base.html:361 +#: stock/models.py:631 stock/templates/stock/item_base.html:361 msgid "Installed In" msgstr "Installato In" -#: stock/models.py:627 +#: stock/models.py:634 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:643 +#: stock/models.py:650 msgid "Serial number for this item" msgstr "" -#: stock/models.py:657 +#: stock/models.py:664 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:662 +#: stock/models.py:669 msgid "Stock Quantity" msgstr "Quantità disponibile" -#: stock/models.py:671 +#: stock/models.py:678 msgid "Source Build" msgstr "" -#: stock/models.py:673 +#: stock/models.py:680 msgid "Build for this stock item" msgstr "" -#: stock/models.py:684 +#: stock/models.py:691 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:687 +#: stock/models.py:694 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:693 +#: stock/models.py:700 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:699 stock/templates/stock/item_base.html:429 -#: templates/js/translated/stock.js:1879 +#: stock/models.py:706 stock/templates/stock/item_base.html:429 +#: templates/js/translated/stock.js:1883 msgid "Expiry Date" msgstr "Data di Scadenza" -#: stock/models.py:700 +#: stock/models.py:707 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:713 +#: stock/models.py:720 msgid "Delete on deplete" msgstr "Elimina al esaurimento" -#: stock/models.py:713 +#: stock/models.py:720 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:720 stock/templates/stock/item.html:132 +#: stock/models.py:727 stock/templates/stock/item.html:132 msgid "Stock Item Notes" msgstr "" -#: stock/models.py:728 +#: stock/models.py:735 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:756 +#: stock/models.py:763 msgid "Converted to part" msgstr "" -#: stock/models.py:1235 +#: stock/models.py:1242 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1241 +#: stock/models.py:1248 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1247 +#: stock/models.py:1254 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({n})" msgstr "" -#: stock/models.py:1250 +#: stock/models.py:1257 msgid "Serial numbers must be a list of integers" msgstr "" -#: stock/models.py:1253 +#: stock/models.py:1260 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1260 +#: stock/models.py:1267 #, python-brace-format msgid "Serial numbers already exist: {exists}" msgstr "" -#: stock/models.py:1330 +#: stock/models.py:1337 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1333 +#: stock/models.py:1340 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1336 +#: stock/models.py:1343 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1339 +#: stock/models.py:1346 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1342 +#: stock/models.py:1349 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1345 +#: stock/models.py:1352 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1352 stock/serializers.py:959 +#: stock/models.py:1359 stock/serializers.py:961 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1356 +#: stock/models.py:1363 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1360 +#: stock/models.py:1367 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1364 +#: stock/models.py:1371 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:1533 +#: stock/models.py:1540 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:1994 +#: stock/models.py:2001 msgid "Entry notes" msgstr "" -#: stock/models.py:2052 +#: stock/models.py:2059 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2058 +#: stock/models.py:2065 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2077 +#: stock/models.py:2084 msgid "Test name" msgstr "" -#: stock/models.py:2083 +#: stock/models.py:2090 msgid "Test result" msgstr "" -#: stock/models.py:2089 +#: stock/models.py:2096 msgid "Test output value" msgstr "" -#: stock/models.py:2096 +#: stock/models.py:2103 msgid "Test result attachment" msgstr "" -#: stock/models.py:2102 +#: stock/models.py:2109 msgid "Test notes" msgstr "" @@ -6172,7 +6212,7 @@ msgstr "" msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:323 stock/serializers.py:916 stock/serializers.py:1149 +#: stock/serializers.py:323 stock/serializers.py:918 stock/serializers.py:1151 msgid "Destination stock location" msgstr "Posizione magazzino di destinazione" @@ -6220,63 +6260,63 @@ msgstr "" msgid "Destination location for returned item" msgstr "" -#: stock/serializers.py:771 +#: stock/serializers.py:773 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:775 +#: stock/serializers.py:777 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:779 +#: stock/serializers.py:781 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:810 +#: stock/serializers.py:812 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:816 +#: stock/serializers.py:818 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:824 +#: stock/serializers.py:826 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:834 stock/serializers.py:1065 +#: stock/serializers.py:836 stock/serializers.py:1067 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:923 +#: stock/serializers.py:925 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:928 +#: stock/serializers.py:930 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:929 +#: stock/serializers.py:931 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:934 +#: stock/serializers.py:936 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:935 +#: stock/serializers.py:937 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:945 +#: stock/serializers.py:947 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1027 +#: stock/serializers.py:1029 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1055 +#: stock/serializers.py:1057 msgid "Stock transaction notes" msgstr "" @@ -6313,7 +6353,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2852 +#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2861 msgid "Install Stock Item" msgstr "" @@ -6321,7 +6361,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1518 +#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1522 msgid "Add Test Result" msgstr "" @@ -6352,7 +6392,7 @@ msgid "Stock adjustment actions" msgstr "" #: stock/templates/stock/item_base.html:80 -#: stock/templates/stock/location.html:63 templates/stock_table.html:47 +#: stock/templates/stock/location.html:68 templates/stock_table.html:47 msgid "Count stock" msgstr "Conta giacenza" @@ -6369,7 +6409,7 @@ msgid "Serialize stock" msgstr "" #: stock/templates/stock/item_base.html:93 -#: stock/templates/stock/location.html:69 templates/stock_table.html:48 +#: stock/templates/stock/location.html:74 templates/stock_table.html:48 msgid "Transfer stock" msgstr "Trasferisci giacenza" @@ -6430,7 +6470,7 @@ msgid "You are not in the list of owners of this item. This stock item cannot be msgstr "" #: stock/templates/stock/item_base.html:257 -#: stock/templates/stock/location.html:127 +#: stock/templates/stock/location.html:132 msgid "Read only" msgstr "" @@ -6508,7 +6548,7 @@ msgid "Stale" msgstr "" #: stock/templates/stock/item_base.html:442 -#: templates/js/translated/company.js:985 templates/js/translated/stock.js:1895 +#: templates/js/translated/company.js:985 templates/js/translated/stock.js:1899 msgid "Last Updated" msgstr "Ultimo aggiornamento" @@ -6552,58 +6592,58 @@ msgstr "" msgid "Select quantity to serialize, and unique serial numbers." msgstr "" -#: stock/templates/stock/location.html:33 +#: stock/templates/stock/location.html:38 msgid "Locate stock location" msgstr "" -#: stock/templates/stock/location.html:49 +#: stock/templates/stock/location.html:54 msgid "Check-in Items" msgstr "Articoli controllati" -#: stock/templates/stock/location.html:77 +#: stock/templates/stock/location.html:82 msgid "Location actions" msgstr "Azioni posizione" -#: stock/templates/stock/location.html:79 +#: stock/templates/stock/location.html:84 msgid "Edit location" msgstr "Modifica la posizione" -#: stock/templates/stock/location.html:81 +#: stock/templates/stock/location.html:86 msgid "Delete location" msgstr "Elimina la posizione" -#: stock/templates/stock/location.html:90 +#: stock/templates/stock/location.html:95 msgid "Create new stock location" msgstr "Crea nuova posizione di magazzino" -#: stock/templates/stock/location.html:91 +#: stock/templates/stock/location.html:96 msgid "New Location" msgstr "Nuova Posizione" -#: stock/templates/stock/location.html:109 -#: stock/templates/stock/location.html:115 +#: stock/templates/stock/location.html:114 +#: stock/templates/stock/location.html:120 msgid "Location Path" msgstr "" -#: stock/templates/stock/location.html:116 +#: stock/templates/stock/location.html:121 msgid "Top level stock location" msgstr "Posizione stock di livello superiore" -#: stock/templates/stock/location.html:122 +#: stock/templates/stock/location.html:127 msgid "Location Owner" msgstr "" -#: stock/templates/stock/location.html:126 +#: stock/templates/stock/location.html:131 msgid "You are not in the list of owners of this location. This stock location cannot be edited." msgstr "Non sei nell'elenco dei proprietari di questa posizione. Questa posizione di giacenza non può essere modificata." -#: stock/templates/stock/location.html:142 -#: stock/templates/stock/location.html:189 +#: stock/templates/stock/location.html:147 +#: stock/templates/stock/location.html:194 #: stock/templates/stock/location_sidebar.html:5 msgid "Sublocations" msgstr "Sottoallocazioni" -#: stock/templates/stock/location.html:156 templates/InvenTree/search.html:165 +#: stock/templates/stock/location.html:161 templates/InvenTree/search.html:165 #: templates/js/translated/search.js:238 users/models.py:39 msgid "Stock Locations" msgstr "Posizioni magazzino" @@ -6875,15 +6915,15 @@ msgstr "" msgid "Part Settings" msgstr "Impostazioni articolo" -#: templates/InvenTree/settings/part.html:44 +#: templates/InvenTree/settings/part.html:46 msgid "Part Import" msgstr "" -#: templates/InvenTree/settings/part.html:48 +#: templates/InvenTree/settings/part.html:50 msgid "Import Part" msgstr "" -#: templates/InvenTree/settings/part.html:62 +#: templates/InvenTree/settings/part.html:64 msgid "Part Parameter Templates" msgstr "" @@ -6895,47 +6935,47 @@ msgstr "" msgid "Changing the settings below require you to immediately restart the server. Do not change this while under active usage." msgstr "" -#: templates/InvenTree/settings/plugin.html:34 +#: templates/InvenTree/settings/plugin.html:36 msgid "Plugins" msgstr "" -#: templates/InvenTree/settings/plugin.html:39 +#: templates/InvenTree/settings/plugin.html:41 #: templates/js/translated/plugin.js:16 msgid "Install Plugin" msgstr "" -#: templates/InvenTree/settings/plugin.html:48 templates/navbar.html:137 +#: templates/InvenTree/settings/plugin.html:50 templates/navbar.html:137 #: users/models.py:36 msgid "Admin" msgstr "" -#: templates/InvenTree/settings/plugin.html:50 +#: templates/InvenTree/settings/plugin.html:52 #: templates/InvenTree/settings/plugin_settings.html:28 msgid "Author" msgstr "" -#: templates/InvenTree/settings/plugin.html:52 +#: templates/InvenTree/settings/plugin.html:54 #: templates/InvenTree/settings/plugin_settings.html:43 msgid "Version" msgstr "" -#: templates/InvenTree/settings/plugin.html:74 +#: templates/InvenTree/settings/plugin.html:76 msgid "Sample" msgstr "" -#: templates/InvenTree/settings/plugin.html:99 +#: templates/InvenTree/settings/plugin.html:101 msgid "Inactive plugins" msgstr "" -#: templates/InvenTree/settings/plugin.html:122 +#: templates/InvenTree/settings/plugin.html:124 msgid "Plugin Error Stack" msgstr "" -#: templates/InvenTree/settings/plugin.html:131 +#: templates/InvenTree/settings/plugin.html:133 msgid "Stage" msgstr "" -#: templates/InvenTree/settings/plugin.html:133 +#: templates/InvenTree/settings/plugin.html:135 #: templates/js/translated/notification.js:75 msgid "Message" msgstr "" @@ -6999,11 +7039,11 @@ msgstr "" msgid "Commit Message" msgstr "" -#: templates/InvenTree/settings/plugin_settings.html:117 +#: templates/InvenTree/settings/plugin_settings.html:120 msgid "Sign Status" msgstr "" -#: templates/InvenTree/settings/plugin_settings.html:122 +#: templates/InvenTree/settings/plugin_settings.html:125 msgid "Sign Key" msgstr "" @@ -7828,7 +7868,7 @@ msgstr "" msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:456 templates/js/translated/stock.js:1050 +#: templates/js/translated/barcode.js:456 templates/js/translated/stock.js:1054 msgid "Remove stock item" msgstr "" @@ -8001,7 +8041,7 @@ msgid "Includes variant and substitute stock" msgstr "" #: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822 -#: templates/js/translated/part.js:759 +#: templates/js/translated/part.js:763 msgid "Includes variant stock" msgstr "" @@ -8098,12 +8138,12 @@ msgid "Complete Build Order" msgstr "" #: templates/js/translated/build.js:263 templates/js/translated/stock.js:92 -#: templates/js/translated/stock.js:210 +#: templates/js/translated/stock.js:214 msgid "Next available serial number" msgstr "" #: templates/js/translated/build.js:265 templates/js/translated/stock.js:94 -#: templates/js/translated/stock.js:212 +#: templates/js/translated/stock.js:216 msgid "Latest serial number" msgstr "" @@ -8316,9 +8356,9 @@ msgstr "" msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1383 -#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1682 -#: templates/js/translated/stock.js:2382 +#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387 +#: templates/js/translated/part.js:1899 templates/js/translated/stock.js:1686 +#: templates/js/translated/stock.js:2386 msgid "Select" msgstr "" @@ -8330,7 +8370,7 @@ msgstr "" msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2638 +#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647 msgid "No user information" msgstr "" @@ -8403,34 +8443,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:616 -#: templates/js/translated/company.js:876 templates/js/translated/part.js:634 -#: templates/js/translated/part.js:719 +#: templates/js/translated/company.js:876 templates/js/translated/part.js:638 +#: templates/js/translated/part.js:723 msgid "Template part" msgstr "" #: templates/js/translated/company.js:620 -#: templates/js/translated/company.js:880 templates/js/translated/part.js:638 -#: templates/js/translated/part.js:723 +#: templates/js/translated/company.js:880 templates/js/translated/part.js:642 +#: templates/js/translated/part.js:727 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:748 templates/js/translated/part.js:826 +#: templates/js/translated/company.js:748 templates/js/translated/part.js:830 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:785 templates/js/translated/part.js:868 +#: templates/js/translated/company.js:785 templates/js/translated/part.js:872 msgid "Edit parameter" msgstr "Modifica parametro" -#: templates/js/translated/company.js:786 templates/js/translated/part.js:869 +#: templates/js/translated/company.js:786 templates/js/translated/part.js:873 msgid "Delete parameter" msgstr "Elimina il parametro" -#: templates/js/translated/company.js:805 templates/js/translated/part.js:886 +#: templates/js/translated/company.js:805 templates/js/translated/part.js:890 msgid "Edit Parameter" msgstr "Modifica parametro" -#: templates/js/translated/company.js:816 templates/js/translated/part.js:898 +#: templates/js/translated/company.js:816 templates/js/translated/part.js:902 msgid "Delete Parameter" msgstr "Elimina Parametri" @@ -8555,7 +8595,7 @@ msgid "Labels sent to printer" msgstr "" #: templates/js/translated/label.js:60 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1078 msgid "Select Stock Items" msgstr "" @@ -8865,7 +8905,7 @@ msgstr "" msgid "Quantity to receive" msgstr "Quantità da ricevere" -#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2140 +#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144 msgid "Stock Status" msgstr "Stato giacenza" @@ -8889,7 +8929,7 @@ msgstr "" msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:1672 templates/js/translated/part.js:939 +#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943 msgid "No purchase orders found" msgstr "" @@ -8924,7 +8964,7 @@ msgstr "Totale" #: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203 #: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050 -#: templates/js/translated/part.js:2126 templates/js/translated/part.js:2479 +#: templates/js/translated/part.js:2135 templates/js/translated/part.js:2488 msgid "Unit Price" msgstr "Prezzo Unitario" @@ -8934,11 +8974,11 @@ msgid "Total Price" msgstr "Prezzo Totale" #: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600 -#: templates/js/translated/part.js:1046 +#: templates/js/translated/part.js:1050 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1092 +#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096 msgid "Receive line item" msgstr "" @@ -9059,7 +9099,7 @@ msgid "Delete Stock Allocation" msgstr "Elimina posizione giacenza" #: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398 -#: templates/js/translated/stock.js:1598 +#: templates/js/translated/stock.js:1602 msgid "Shipped to customer" msgstr "Spedito al cliente" @@ -9183,241 +9223,245 @@ msgstr "" msgid "Parent part category" msgstr "Categoria articolo principale" -#: templates/js/translated/part.js:318 +#: templates/js/translated/part.js:306 templates/js/translated/stock.js:118 +msgid "Icon (optional) - Explore all available icons on" +msgstr "" + +#: templates/js/translated/part.js:322 msgid "Edit Part Category" msgstr "Modifica Categoria Articoli" -#: templates/js/translated/part.js:331 +#: templates/js/translated/part.js:335 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:333 +#: templates/js/translated/part.js:337 msgid "Any child categories will be moved to the parent of this category" msgstr "" -#: templates/js/translated/part.js:334 +#: templates/js/translated/part.js:338 msgid "Any parts in this category will be moved to the parent of this category" msgstr "" -#: templates/js/translated/part.js:339 +#: templates/js/translated/part.js:343 msgid "Delete Part Category" msgstr "Elimina categoria" -#: templates/js/translated/part.js:365 +#: templates/js/translated/part.js:369 msgid "Edit Part" msgstr "Modifica l'articolo" -#: templates/js/translated/part.js:367 +#: templates/js/translated/part.js:371 msgid "Part edited" msgstr "Articolo modificato" -#: templates/js/translated/part.js:378 +#: templates/js/translated/part.js:382 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:430 +#: templates/js/translated/part.js:434 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:431 +#: templates/js/translated/part.js:435 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:445 +#: templates/js/translated/part.js:449 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:447 +#: templates/js/translated/part.js:451 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:448 +#: templates/js/translated/part.js:452 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:449 +#: templates/js/translated/part.js:453 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:456 +#: templates/js/translated/part.js:460 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:492 +#: templates/js/translated/part.js:496 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:494 +#: templates/js/translated/part.js:498 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:499 +#: templates/js/translated/part.js:503 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:501 +#: templates/js/translated/part.js:505 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:518 +#: templates/js/translated/part.js:522 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:528 +#: templates/js/translated/part.js:532 msgid "Validate Bill of Materials" msgstr "Convalida la distinta dei materiali" -#: templates/js/translated/part.js:531 +#: templates/js/translated/part.js:535 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:556 +#: templates/js/translated/part.js:560 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:582 templates/js/translated/part.js:1466 +#: templates/js/translated/part.js:586 templates/js/translated/part.js:1470 #: templates/js/translated/table_filters.js:468 msgid "Low stock" msgstr "In esaurimento" -#: templates/js/translated/part.js:592 templates/js/translated/part.js:1478 +#: templates/js/translated/part.js:596 templates/js/translated/part.js:1482 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:626 templates/js/translated/part.js:711 +#: templates/js/translated/part.js:630 templates/js/translated/part.js:715 msgid "Trackable part" msgstr "Parte tracciabile" -#: templates/js/translated/part.js:630 templates/js/translated/part.js:715 +#: templates/js/translated/part.js:634 templates/js/translated/part.js:719 msgid "Virtual part" msgstr "Parte virtuale" -#: templates/js/translated/part.js:642 +#: templates/js/translated/part.js:646 msgid "Subscribed part" msgstr "Parte sottoscritta" -#: templates/js/translated/part.js:646 +#: templates/js/translated/part.js:650 msgid "Salable part" msgstr "Parte vendibile" -#: templates/js/translated/part.js:774 +#: templates/js/translated/part.js:778 msgid "No variants found" msgstr "Nessuna variante trovata" -#: templates/js/translated/part.js:1162 +#: templates/js/translated/part.js:1166 msgid "Delete part relationship" msgstr "Elimina relazione tra i componenti" -#: templates/js/translated/part.js:1186 +#: templates/js/translated/part.js:1190 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:1253 templates/js/translated/part.js:1549 +#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1553 msgid "No parts found" msgstr "Nessun articolo trovato" -#: templates/js/translated/part.js:1292 +#: templates/js/translated/part.js:1296 msgid "Not available" msgstr "" -#: templates/js/translated/part.js:1443 +#: templates/js/translated/part.js:1447 msgid "No category" msgstr "Nessuna categoria" -#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816 -#: templates/js/translated/stock.js:2343 +#: templates/js/translated/part.js:1577 templates/js/translated/part.js:1820 +#: templates/js/translated/stock.js:2347 msgid "Display as list" msgstr "Visualizza come elenco" -#: templates/js/translated/part.js:1589 +#: templates/js/translated/part.js:1593 msgid "Display as grid" msgstr "Visualizza come griglia" -#: templates/js/translated/part.js:1655 +#: templates/js/translated/part.js:1659 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:1660 +#: templates/js/translated/part.js:1664 msgid "Set Part Category" msgstr "Imposta categoria articolo" -#: templates/js/translated/part.js:1665 +#: templates/js/translated/part.js:1669 msgid "Select Part Category" msgstr "" -#: templates/js/translated/part.js:1678 +#: templates/js/translated/part.js:1682 msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2362 +#: templates/js/translated/part.js:1839 templates/js/translated/stock.js:2366 msgid "Display as tree" msgstr "Visualizza come struttura ad albero" -#: templates/js/translated/part.js:1914 +#: templates/js/translated/part.js:1918 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:1925 +#: templates/js/translated/part.js:1934 msgid "Subscribed category" msgstr "Categoria sottoscritta" -#: templates/js/translated/part.js:1983 +#: templates/js/translated/part.js:1992 msgid "No test templates matching query" msgstr "Nessun modello di test corrispondente" -#: templates/js/translated/part.js:2034 templates/js/translated/stock.js:1295 +#: templates/js/translated/part.js:2043 templates/js/translated/stock.js:1299 msgid "Edit test result" msgstr "Modificare il risultato del test" -#: templates/js/translated/part.js:2035 templates/js/translated/stock.js:1296 -#: templates/js/translated/stock.js:1556 +#: templates/js/translated/part.js:2044 templates/js/translated/stock.js:1300 +#: templates/js/translated/stock.js:1560 msgid "Delete test result" msgstr "Cancellare il risultato del test" -#: templates/js/translated/part.js:2041 +#: templates/js/translated/part.js:2050 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2063 +#: templates/js/translated/part.js:2072 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2077 +#: templates/js/translated/part.js:2086 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2102 +#: templates/js/translated/part.js:2111 #, python-brace-format msgid "No ${human_name} information found" msgstr "" -#: templates/js/translated/part.js:2159 +#: templates/js/translated/part.js:2168 #, python-brace-format msgid "Edit ${human_name}" msgstr "Modifica ${human_name}" -#: templates/js/translated/part.js:2160 +#: templates/js/translated/part.js:2169 #, python-brace-format msgid "Delete ${human_name}" msgstr "Elimina ${human_name}" -#: templates/js/translated/part.js:2274 +#: templates/js/translated/part.js:2283 msgid "Current Stock" msgstr "" -#: templates/js/translated/part.js:2307 +#: templates/js/translated/part.js:2316 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2333 +#: templates/js/translated/part.js:2342 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2403 +#: templates/js/translated/part.js:2412 msgid "Single Price" msgstr "Prezzo Singolo" -#: templates/js/translated/part.js:2422 +#: templates/js/translated/part.js:2431 msgid "Single Price Difference" msgstr "" @@ -9511,376 +9555,376 @@ msgstr "" msgid "Parent stock location" msgstr "Posizione giacenza principale" -#: templates/js/translated/stock.js:140 +#: templates/js/translated/stock.js:144 msgid "Edit Stock Location" msgstr "Modifica Posizione Giacenza" -#: templates/js/translated/stock.js:155 +#: templates/js/translated/stock.js:159 msgid "New Stock Location" msgstr "Nuova posizione giacenza" -#: templates/js/translated/stock.js:169 +#: templates/js/translated/stock.js:173 msgid "Are you sure you want to delete this stock location?" msgstr "Sei sicuro di voler eliminare questa posizione?" -#: templates/js/translated/stock.js:171 +#: templates/js/translated/stock.js:175 msgid "Any child locations will be moved to the parent of this location" msgstr "" -#: templates/js/translated/stock.js:172 +#: templates/js/translated/stock.js:176 msgid "Any stock items in this location will be moved to the parent of this location" msgstr "" -#: templates/js/translated/stock.js:178 +#: templates/js/translated/stock.js:182 msgid "Delete Stock Location" msgstr "Elimina Posizione di Giacenza" -#: templates/js/translated/stock.js:223 +#: templates/js/translated/stock.js:227 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:262 +#: templates/js/translated/stock.js:266 msgid "Enter initial quantity for this stock item" msgstr "Inserisci quantità iniziale per questo articolo in giacenza" -#: templates/js/translated/stock.js:268 +#: templates/js/translated/stock.js:272 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "Inserire i numeri di serie per la nuova giacenza (o lasciare vuoto)" -#: templates/js/translated/stock.js:333 +#: templates/js/translated/stock.js:337 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:353 +#: templates/js/translated/stock.js:357 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:369 +#: templates/js/translated/stock.js:373 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:374 +#: templates/js/translated/stock.js:378 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:395 +#: templates/js/translated/stock.js:399 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:445 +#: templates/js/translated/stock.js:449 msgid "Created new stock item" msgstr "Crea nuova allocazione magazzino" -#: templates/js/translated/stock.js:458 +#: templates/js/translated/stock.js:462 msgid "Created multiple stock items" msgstr "Creato più elementi stock" -#: templates/js/translated/stock.js:483 +#: templates/js/translated/stock.js:487 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:487 templates/js/translated/stock.js:488 +#: templates/js/translated/stock.js:491 templates/js/translated/stock.js:492 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:504 +#: templates/js/translated/stock.js:508 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:524 +#: templates/js/translated/stock.js:528 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:533 +#: templates/js/translated/stock.js:537 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:656 +#: templates/js/translated/stock.js:660 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:657 +#: templates/js/translated/stock.js:661 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:734 +#: templates/js/translated/stock.js:738 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:735 +#: templates/js/translated/stock.js:739 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:737 +#: templates/js/translated/stock.js:741 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:738 +#: templates/js/translated/stock.js:742 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:824 +#: templates/js/translated/stock.js:828 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:825 +#: templates/js/translated/stock.js:829 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:920 +#: templates/js/translated/stock.js:924 msgid "Transfer Stock" msgstr "Trasferisci giacenza" -#: templates/js/translated/stock.js:921 +#: templates/js/translated/stock.js:925 msgid "Move" msgstr "Sposta" -#: templates/js/translated/stock.js:927 +#: templates/js/translated/stock.js:931 msgid "Count Stock" msgstr "Conta giacenza" -#: templates/js/translated/stock.js:928 +#: templates/js/translated/stock.js:932 msgid "Count" msgstr "Conta" -#: templates/js/translated/stock.js:932 +#: templates/js/translated/stock.js:936 msgid "Remove Stock" msgstr "Rimuovi giacenza" -#: templates/js/translated/stock.js:933 +#: templates/js/translated/stock.js:937 msgid "Take" msgstr "Prendi" -#: templates/js/translated/stock.js:937 +#: templates/js/translated/stock.js:941 msgid "Add Stock" msgstr "Aggiungi giacenza" -#: templates/js/translated/stock.js:938 users/models.py:216 +#: templates/js/translated/stock.js:942 users/models.py:216 msgid "Add" msgstr "Aggiungi" -#: templates/js/translated/stock.js:942 +#: templates/js/translated/stock.js:946 msgid "Delete Stock" msgstr "Elimina Stock" -#: templates/js/translated/stock.js:1035 +#: templates/js/translated/stock.js:1039 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1035 +#: templates/js/translated/stock.js:1039 msgid "Specify stock quantity" msgstr "Specificare la quantità di magazzino" -#: templates/js/translated/stock.js:1075 +#: templates/js/translated/stock.js:1079 msgid "You must select at least one available stock item" msgstr "Devi selezionare almeno un articolo disponibile" -#: templates/js/translated/stock.js:1098 +#: templates/js/translated/stock.js:1102 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1234 +#: templates/js/translated/stock.js:1238 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1236 +#: templates/js/translated/stock.js:1240 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1241 +#: templates/js/translated/stock.js:1245 msgid "NO RESULT" msgstr "NESSUN RISULTATO" -#: templates/js/translated/stock.js:1288 +#: templates/js/translated/stock.js:1292 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1291 +#: templates/js/translated/stock.js:1295 msgid "Add test result" msgstr "Aggiungi risultato test" -#: templates/js/translated/stock.js:1317 +#: templates/js/translated/stock.js:1321 msgid "No test results found" msgstr "Nessun risultato di prova trovato" -#: templates/js/translated/stock.js:1374 +#: templates/js/translated/stock.js:1378 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1539 +#: templates/js/translated/stock.js:1543 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1561 +#: templates/js/translated/stock.js:1565 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1590 +#: templates/js/translated/stock.js:1594 msgid "In production" msgstr "In produzione" -#: templates/js/translated/stock.js:1594 +#: templates/js/translated/stock.js:1598 msgid "Installed in Stock Item" msgstr "Installato nell'elemento stock" -#: templates/js/translated/stock.js:1602 +#: templates/js/translated/stock.js:1606 msgid "Assigned to Sales Order" msgstr "Assegnato all'ordine di vendita" -#: templates/js/translated/stock.js:1608 +#: templates/js/translated/stock.js:1612 msgid "No stock location set" msgstr "Nessuna giacenza impostata" -#: templates/js/translated/stock.js:1775 +#: templates/js/translated/stock.js:1779 msgid "Stock item is in production" msgstr "L'articolo di magazzino è in produzione" -#: templates/js/translated/stock.js:1780 +#: templates/js/translated/stock.js:1784 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:1783 +#: templates/js/translated/stock.js:1787 msgid "Stock item assigned to customer" msgstr "Articolo stock assegnato al cliente" -#: templates/js/translated/stock.js:1786 +#: templates/js/translated/stock.js:1790 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:1788 +#: templates/js/translated/stock.js:1792 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:1790 +#: templates/js/translated/stock.js:1794 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:1793 +#: templates/js/translated/stock.js:1797 msgid "Stock item has been installed in another item" msgstr "L'elemento stock è stato installato in un altro articolo" -#: templates/js/translated/stock.js:1797 +#: templates/js/translated/stock.js:1801 msgid "Stock item has expired" msgstr "L'articolo stock è scaduto" -#: templates/js/translated/stock.js:1799 +#: templates/js/translated/stock.js:1803 msgid "Stock item will expire soon" msgstr "Articolo in giacenza prossimo alla scadenza" -#: templates/js/translated/stock.js:1806 +#: templates/js/translated/stock.js:1810 msgid "Stock item has been rejected" msgstr "L'articolo stock è stato rifiutato" -#: templates/js/translated/stock.js:1808 +#: templates/js/translated/stock.js:1812 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:1810 +#: templates/js/translated/stock.js:1814 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:1814 +#: templates/js/translated/stock.js:1818 #: templates/js/translated/table_filters.js:196 msgid "Depleted" msgstr "Esaurito" -#: templates/js/translated/stock.js:1865 +#: templates/js/translated/stock.js:1869 msgid "Stocktake" msgstr "Inventario" -#: templates/js/translated/stock.js:1944 +#: templates/js/translated/stock.js:1948 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:1982 +#: templates/js/translated/stock.js:1986 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2155 +#: templates/js/translated/stock.js:2159 msgid "Set Stock Status" msgstr "" -#: templates/js/translated/stock.js:2169 +#: templates/js/translated/stock.js:2173 msgid "Select Status Code" msgstr "" -#: templates/js/translated/stock.js:2170 +#: templates/js/translated/stock.js:2174 msgid "Status code must be selected" msgstr "" -#: templates/js/translated/stock.js:2400 +#: templates/js/translated/stock.js:2404 msgid "Load Subloactions" msgstr "" -#: templates/js/translated/stock.js:2484 +#: templates/js/translated/stock.js:2493 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2500 +#: templates/js/translated/stock.js:2509 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2522 +#: templates/js/translated/stock.js:2531 msgid "Location no longer exists" msgstr "La posizione non esiste più" -#: templates/js/translated/stock.js:2541 +#: templates/js/translated/stock.js:2550 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2560 +#: templates/js/translated/stock.js:2569 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2578 +#: templates/js/translated/stock.js:2587 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:2601 +#: templates/js/translated/stock.js:2610 msgid "Added" msgstr "Aggiunto" -#: templates/js/translated/stock.js:2609 +#: templates/js/translated/stock.js:2618 msgid "Removed" msgstr "Rimosso" -#: templates/js/translated/stock.js:2685 +#: templates/js/translated/stock.js:2694 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:2736 templates/js/translated/stock.js:2772 +#: templates/js/translated/stock.js:2745 templates/js/translated/stock.js:2781 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:2785 +#: templates/js/translated/stock.js:2794 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:2806 +#: templates/js/translated/stock.js:2815 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:2807 +#: templates/js/translated/stock.js:2816 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:2809 +#: templates/js/translated/stock.js:2818 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:2810 +#: templates/js/translated/stock.js:2819 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:2811 +#: templates/js/translated/stock.js:2820 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:2812 +#: templates/js/translated/stock.js:2821 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:2825 +#: templates/js/translated/stock.js:2834 msgid "Select part to install" msgstr "" diff --git a/InvenTree/locale/ja/LC_MESSAGES/django.po b/InvenTree/locale/ja/LC_MESSAGES/django.po index bf6c8328e3..4c318fa92f 100644 --- a/InvenTree/locale/ja/LC_MESSAGES/django.po +++ b/InvenTree/locale/ja/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-11 02:47+0000\n" -"PO-Revision-Date: 2022-08-11 13:49\n" +"POT-Creation-Date: 2022-08-16 11:53+0000\n" +"PO-Revision-Date: 2022-08-16 21:36\n" "Last-Translator: \n" "Language-Team: Japanese\n" "Language: ja_JP\n" @@ -36,15 +36,15 @@ msgstr "日付を入力する" #: order/templates/order/so_sidebar.html:17 #: part/templates/part/part_sidebar.html:59 #: report/templates/report/inventree_build_order_base.html:172 -#: stock/models.py:1993 stock/models.py:2101 stock/serializers.py:329 -#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:823 -#: stock/serializers.py:922 stock/serializers.py:1054 +#: stock/models.py:2000 stock/models.py:2108 stock/serializers.py:329 +#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825 +#: stock/serializers.py:924 stock/serializers.py:1056 #: stock/templates/stock/stock_sidebar.html:25 #: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101 #: templates/js/translated/company.js:964 templates/js/translated/order.js:2104 #: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753 #: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102 -#: templates/js/translated/stock.js:1370 templates/js/translated/stock.js:1976 +#: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980 msgid "Notes" msgstr "メモ" @@ -163,6 +163,10 @@ msgstr "シリアル番号が見つかりません" msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "" +#: InvenTree/mixins.py:71 +msgid "Remove HTML tags from this value" +msgstr "" + #: InvenTree/models.py:236 msgid "Improperly formatted pattern" msgstr "" @@ -195,7 +199,7 @@ msgstr "ファイルがありません" msgid "Missing external link" msgstr "外部リンクが見つかりません。" -#: InvenTree/models.py:395 stock/models.py:2095 +#: InvenTree/models.py:395 stock/models.py:2102 #: templates/js/translated/attachment.js:103 #: templates/js/translated/attachment.js:241 msgid "Attachment" @@ -207,16 +211,16 @@ msgstr "添付ファイルを選択" #: InvenTree/models.py:402 company/models.py:124 company/models.py:276 #: company/models.py:510 order/models.py:84 order/models.py:1245 -#: part/models.py:795 +#: part/models.py:802 #: report/templates/report/inventree_build_order_base.html:164 #: templates/js/translated/company.js:656 #: templates/js/translated/company.js:948 templates/js/translated/order.js:2742 -#: templates/js/translated/part.js:1510 +#: templates/js/translated/part.js:1514 msgid "Link" msgstr "リンク" -#: InvenTree/models.py:403 build/models.py:296 part/models.py:796 -#: stock/models.py:651 +#: InvenTree/models.py:403 build/models.py:296 part/models.py:803 +#: stock/models.py:658 msgid "Link to external URL" msgstr "外部 サイト へのリンク" @@ -229,12 +233,12 @@ msgstr "コメント:" msgid "File comment" msgstr "ファイルコメント" -#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1646 -#: common/models.py:1647 common/models.py:1870 common/models.py:1871 -#: common/models.py:2133 common/models.py:2134 part/models.py:2193 -#: part/models.py:2213 plugin/models.py:238 plugin/models.py:239 +#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665 +#: common/models.py:1666 common/models.py:1889 common/models.py:1890 +#: common/models.py:2152 common/models.py:2153 part/models.py:2200 +#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2632 +#: templates/js/translated/stock.js:2641 msgid "User" msgstr "ユーザー" @@ -271,19 +275,19 @@ msgstr "ファイル名の変更に失敗しました" msgid "Invalid choice" msgstr "無効な選択です" -#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1856 -#: company/models.py:358 label/models.py:101 part/models.py:739 -#: part/models.py:2371 plugin/models.py:93 report/models.py:152 +#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875 +#: company/models.py:358 label/models.py:101 part/models.py:746 +#: part/models.py:2378 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 -#: templates/InvenTree/settings/plugin.html:49 -#: templates/InvenTree/settings/plugin.html:132 +#: templates/InvenTree/settings/plugin.html:51 +#: templates/InvenTree/settings/plugin.html:134 #: templates/InvenTree/settings/plugin_settings.html:23 #: templates/InvenTree/settings/settings.html:347 #: templates/js/translated/company.js:545 #: templates/js/translated/company.js:758 #: templates/js/translated/notification.js:71 -#: templates/js/translated/part.js:684 templates/js/translated/part.js:836 -#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2388 +#: templates/js/translated/part.js:688 templates/js/translated/part.js:840 +#: templates/js/translated/part.js:1906 templates/js/translated/stock.js:2392 msgid "Name" msgstr "お名前" @@ -292,21 +296,21 @@ msgstr "お名前" #: company/models.py:516 company/templates/company/company_base.html:71 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:87 label/models.py:108 -#: order/models.py:82 part/models.py:762 part/templates/part/category.html:74 +#: order/models.py:82 part/models.py:769 part/templates/part/category.html:80 #: part/templates/part/part_base.html:167 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 -#: stock/templates/stock/location.html:103 +#: stock/templates/stock/location.html:108 #: templates/InvenTree/settings/plugin_settings.html:33 #: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848 #: templates/js/translated/build.js:2471 templates/js/translated/company.js:409 #: templates/js/translated/company.js:667 #: templates/js/translated/company.js:959 templates/js/translated/order.js:1720 #: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531 -#: templates/js/translated/part.js:743 templates/js/translated/part.js:1149 -#: templates/js/translated/part.js:1424 templates/js/translated/part.js:1933 -#: templates/js/translated/part.js:2002 templates/js/translated/stock.js:1739 -#: templates/js/translated/stock.js:2415 templates/js/translated/stock.js:2469 +#: templates/js/translated/part.js:747 templates/js/translated/part.js:1153 +#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1942 +#: templates/js/translated/part.js:2011 templates/js/translated/stock.js:1743 +#: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478 msgid "Description" msgstr "説明" @@ -319,7 +323,7 @@ msgid "parent" msgstr "親" #: InvenTree/models.py:560 InvenTree/models.py:561 -#: templates/js/translated/part.js:1939 templates/js/translated/stock.js:2421 +#: templates/js/translated/part.js:1948 templates/js/translated/stock.js:2430 msgid "Path" msgstr "" @@ -331,7 +335,7 @@ msgstr "" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:55 part/models.py:2692 +#: InvenTree/serializers.py:55 part/models.py:2699 msgid "Must be a valid number" msgstr "有効な数字でなければなりません" @@ -398,99 +402,99 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/settings.py:609 +#: InvenTree/settings.py:607 msgid "Czech" msgstr "" -#: InvenTree/settings.py:610 +#: InvenTree/settings.py:608 msgid "German" msgstr "ドイツ語" -#: InvenTree/settings.py:611 +#: InvenTree/settings.py:609 msgid "Greek" msgstr "ギリシャ語" -#: InvenTree/settings.py:612 +#: InvenTree/settings.py:610 msgid "English" msgstr "英語" -#: InvenTree/settings.py:613 +#: InvenTree/settings.py:611 msgid "Spanish" msgstr "スペイン語" -#: InvenTree/settings.py:614 +#: InvenTree/settings.py:612 msgid "Spanish (Mexican)" msgstr "スペイン語(メキシコ)" -#: InvenTree/settings.py:615 +#: InvenTree/settings.py:613 msgid "Farsi / Persian" msgstr "" -#: InvenTree/settings.py:616 +#: InvenTree/settings.py:614 msgid "French" msgstr "フランス語" -#: InvenTree/settings.py:617 +#: InvenTree/settings.py:615 msgid "Hebrew" msgstr "ヘブライ語" -#: InvenTree/settings.py:618 +#: InvenTree/settings.py:616 msgid "Hungarian" msgstr "ハンガリー語" -#: InvenTree/settings.py:619 +#: InvenTree/settings.py:617 msgid "Italian" msgstr "イタリア語" -#: InvenTree/settings.py:620 +#: InvenTree/settings.py:618 msgid "Japanese" msgstr "日本語" -#: InvenTree/settings.py:621 +#: InvenTree/settings.py:619 msgid "Korean" msgstr "韓国語" -#: InvenTree/settings.py:622 +#: InvenTree/settings.py:620 msgid "Dutch" msgstr "オランダ語" -#: InvenTree/settings.py:623 +#: InvenTree/settings.py:621 msgid "Norwegian" msgstr "ノルウェー語" -#: InvenTree/settings.py:624 +#: InvenTree/settings.py:622 msgid "Polish" msgstr "ポーランド語" -#: InvenTree/settings.py:625 +#: InvenTree/settings.py:623 msgid "Portuguese" msgstr "" -#: InvenTree/settings.py:626 +#: InvenTree/settings.py:624 msgid "Portuguese (Brazilian)" msgstr "" -#: InvenTree/settings.py:627 +#: InvenTree/settings.py:625 msgid "Russian" msgstr "ロシア語" -#: InvenTree/settings.py:628 +#: InvenTree/settings.py:626 msgid "Swedish" msgstr "スウェーデン語" -#: InvenTree/settings.py:629 +#: InvenTree/settings.py:627 msgid "Thai" msgstr "タイ語" -#: InvenTree/settings.py:630 +#: InvenTree/settings.py:628 msgid "Turkish" msgstr "トルコ語" -#: InvenTree/settings.py:631 +#: InvenTree/settings.py:629 msgid "Vietnamese" msgstr "ベトナム語" -#: InvenTree/settings.py:632 +#: InvenTree/settings.py:630 msgid "Chinese" msgstr "中国語" @@ -621,7 +625,7 @@ msgstr "親アイテムから分割する" msgid "Split child item" msgstr "子項目を分割" -#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2080 +#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2084 msgid "Merged stock items" msgstr "商品在庫をマージしました" @@ -743,7 +747,7 @@ msgid "Build Order Reference" msgstr "" #: build/models.py:166 order/models.py:240 order/models.py:623 -#: order/models.py:904 part/models.py:2610 +#: order/models.py:904 part/models.py:2617 #: part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 @@ -770,10 +774,10 @@ msgstr "" #: build/models.py:191 build/templates/build/build_base.html:77 #: build/templates/build/detail.html:29 company/models.py:670 #: order/models.py:1001 order/models.py:1112 order/models.py:1113 -#: part/models.py:336 part/models.py:2139 part/models.py:2154 -#: part/models.py:2173 part/models.py:2191 part/models.py:2290 -#: part/models.py:2410 part/models.py:2500 part/models.py:2585 -#: part/models.py:2861 part/serializers.py:811 +#: part/models.py:343 part/models.py:2146 part/models.py:2161 +#: part/models.py:2180 part/models.py:2198 part/models.py:2297 +#: part/models.py:2417 part/models.py:2507 part/models.py:2592 +#: part/models.py:2868 part/serializers.py:813 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -796,11 +800,11 @@ msgstr "" #: templates/js/translated/order.js:934 templates/js/translated/order.js:1387 #: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885 #: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507 -#: templates/js/translated/part.js:1134 templates/js/translated/part.js:1206 -#: templates/js/translated/part.js:1402 templates/js/translated/stock.js:582 -#: templates/js/translated/stock.js:747 templates/js/translated/stock.js:954 -#: templates/js/translated/stock.js:1696 templates/js/translated/stock.js:2495 -#: templates/js/translated/stock.js:2690 templates/js/translated/stock.js:2824 +#: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210 +#: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586 +#: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958 +#: templates/js/translated/stock.js:1700 templates/js/translated/stock.js:2504 +#: templates/js/translated/stock.js:2699 templates/js/translated/stock.js:2833 msgid "Part" msgstr "パーツ" @@ -858,7 +862,7 @@ msgid "Build status code" msgstr "" #: build/models.py:251 build/serializers.py:225 order/serializers.py:447 -#: stock/models.py:655 templates/js/translated/order.js:1247 +#: stock/models.py:662 templates/js/translated/order.js:1247 msgid "Batch Code" msgstr "" @@ -866,7 +870,7 @@ msgstr "" msgid "Batch code for this build output" msgstr "" -#: build/models.py:258 order/models.py:86 part/models.py:931 +#: build/models.py:258 order/models.py:86 part/models.py:938 #: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544 msgid "Creation Date" msgstr "作成日時" @@ -899,7 +903,7 @@ msgstr "" #: build/models.py:289 build/templates/build/build_base.html:190 #: build/templates/build/detail.html:115 order/models.py:100 #: order/templates/order/order_base.html:176 -#: order/templates/order/sales_order_base.html:183 part/models.py:935 +#: order/templates/order/sales_order_base.html:183 part/models.py:942 #: report/templates/report/inventree_build_order_base.html:158 #: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754 msgid "Responsible" @@ -912,7 +916,7 @@ msgstr "" #: build/models.py:295 build/templates/build/detail.html:101 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:153 -#: part/templates/part/part_base.html:346 stock/models.py:649 +#: part/templates/part/part_base.html:346 stock/models.py:656 #: stock/templates/stock/item_base.html:205 msgid "External Link" msgstr "" @@ -978,8 +982,8 @@ msgid "Build to allocate parts" msgstr "パーツを割り当てるためにビルドする" #: build/models.py:1345 build/serializers.py:645 order/serializers.py:1015 -#: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 -#: stock/serializers.py:880 stock/templates/stock/item_base.html:10 +#: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:756 +#: stock/serializers.py:882 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:199 #: templates/js/translated/build.js:741 templates/js/translated/build.js:746 @@ -987,8 +991,8 @@ msgstr "パーツを割り当てるためにビルドする" #: templates/js/translated/order.js:104 templates/js/translated/order.js:2886 #: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193 #: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380 -#: templates/js/translated/stock.js:583 templates/js/translated/stock.js:748 -#: templates/js/translated/stock.js:2568 +#: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752 +#: templates/js/translated/stock.js:2577 msgid "Stock Item" msgstr "在庫商品" @@ -998,11 +1002,11 @@ msgstr "" #: build/models.py:1358 build/serializers.py:193 #: build/templates/build/build_base.html:82 -#: build/templates/build/detail.html:34 common/models.py:1678 +#: build/templates/build/detail.html:34 common/models.py:1697 #: company/templates/company/supplier_part.html:279 order/models.py:897 #: order/models.py:1423 order/serializers.py:1155 #: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40 -#: part/models.py:2601 part/templates/part/detail.html:937 +#: part/models.py:2608 part/templates/part/detail.html:937 #: part/templates/part/detail.html:1023 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 @@ -1025,11 +1029,11 @@ msgstr "" #: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207 #: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386 #: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037 -#: templates/js/translated/part.js:1034 templates/js/translated/part.js:2147 -#: templates/js/translated/part.js:2378 templates/js/translated/part.js:2412 -#: templates/js/translated/part.js:2490 templates/js/translated/stock.js:454 -#: templates/js/translated/stock.js:608 templates/js/translated/stock.js:778 -#: templates/js/translated/stock.js:2617 templates/js/translated/stock.js:2702 +#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2156 +#: templates/js/translated/part.js:2387 templates/js/translated/part.js:2421 +#: templates/js/translated/part.js:2499 templates/js/translated/stock.js:458 +#: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782 +#: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711 msgid "Quantity" msgstr "数量" @@ -1071,8 +1075,8 @@ msgid "Enter quantity for build output" msgstr "" #: build/serializers.py:208 build/serializers.py:665 order/models.py:318 -#: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 -#: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 +#: order/serializers.py:287 order/serializers.py:442 part/serializers.py:544 +#: part/serializers.py:976 stock/models.py:484 stock/models.py:1251 #: stock/serializers.py:302 msgid "Quantity must be greater than zero" msgstr "" @@ -1087,7 +1091,7 @@ msgstr "" #: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159 #: stock/serializers.py:311 templates/js/translated/order.js:1258 -#: templates/js/translated/stock.js:267 templates/js/translated/stock.js:455 +#: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459 msgid "Serial Numbers" msgstr "" @@ -1113,16 +1117,16 @@ msgstr "" #: build/serializers.py:366 order/serializers.py:428 order/serializers.py:532 #: stock/serializers.py:322 stock/serializers.py:453 stock/serializers.py:534 -#: stock/serializers.py:915 stock/serializers.py:1148 +#: stock/serializers.py:917 stock/serializers.py:1150 #: stock/templates/stock/item_base.html:390 #: templates/js/translated/barcode.js:436 #: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753 #: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285 #: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305 #: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394 -#: templates/js/translated/part.js:181 templates/js/translated/stock.js:584 -#: templates/js/translated/stock.js:749 templates/js/translated/stock.js:956 -#: templates/js/translated/stock.js:1850 templates/js/translated/stock.js:2509 +#: templates/js/translated/part.js:181 templates/js/translated/stock.js:588 +#: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960 +#: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518 msgid "Location" msgstr "" @@ -1135,8 +1139,8 @@ msgstr "" #: order/serializers.py:465 stock/templates/stock/item_base.html:423 #: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505 #: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724 -#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1825 -#: templates/js/translated/stock.js:2586 templates/js/translated/stock.js:2718 +#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829 +#: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727 msgid "Status" msgstr "ステータス" @@ -1212,8 +1216,8 @@ msgstr "" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:577 build/serializers.py:622 part/models.py:2719 -#: part/models.py:2853 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726 +#: part/models.py:2860 msgid "BOM Item" msgstr "" @@ -1229,7 +1233,7 @@ msgstr "" msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:651 stock/serializers.py:767 +#: build/serializers.py:651 stock/serializers.py:769 msgid "Item must be in stock" msgstr "" @@ -1367,7 +1371,7 @@ msgstr "" #: report/templates/report/inventree_build_order_base.html:125 #: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741 #: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552 -#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1038 +#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042 msgid "Target Date" msgstr "" @@ -1445,8 +1449,8 @@ msgstr "" #: stock/templates/stock/item_base.html:170 #: templates/js/translated/build.js:1182 #: templates/js/translated/model_renderers.js:124 -#: templates/js/translated/stock.js:1022 templates/js/translated/stock.js:1839 -#: templates/js/translated/stock.js:2725 +#: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843 +#: templates/js/translated/stock.js:2734 #: templates/js/translated/table_filters.js:159 #: templates/js/translated/table_filters.js:250 msgid "Batch" @@ -1506,7 +1510,7 @@ msgstr "注文必須パーツ" #: build/templates/build/detail.html:187 #: company/templates/company/detail.html:37 #: company/templates/company/detail.html:85 -#: part/templates/part/category.html:177 templates/js/translated/order.js:977 +#: part/templates/part/category.html:183 templates/js/translated/order.js:977 msgid "Order Parts" msgstr "パーツの注文" @@ -1559,12 +1563,12 @@ msgid "Delete outputs" msgstr "" #: build/templates/build/detail.html:267 -#: stock/templates/stock/location.html:197 templates/stock_table.html:27 +#: stock/templates/stock/location.html:202 templates/stock_table.html:27 msgid "Printing Actions" msgstr "" #: build/templates/build/detail.html:271 build/templates/build/detail.html:272 -#: stock/templates/stock/location.html:201 templates/stock_table.html:31 +#: stock/templates/stock/location.html:206 templates/stock_table.html:31 msgid "Print labels" msgstr "" @@ -1841,7 +1845,7 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:951 part/models.py:2412 report/models.py:158 +#: common/models.py:951 part/models.py:2419 report/models.py:158 #: templates/js/translated/table_filters.js:38 #: templates/js/translated/table_filters.js:484 msgid "Template" @@ -1851,7 +1855,7 @@ msgstr "テンプレート" msgid "Parts are templates by default" msgstr "パーツはデフォルトのテンプレートです" -#: common/models.py:958 part/models.py:887 templates/js/translated/bom.js:1448 +#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448 #: templates/js/translated/table_filters.js:176 #: templates/js/translated/table_filters.js:447 msgid "Assembly" @@ -1861,7 +1865,7 @@ msgstr "アセンブリ" msgid "Parts can be assembled from other components by default" msgstr "パーツはデフォルトで他のコンポーネントから組み立てることができます" -#: common/models.py:965 part/models.py:893 +#: common/models.py:965 part/models.py:900 #: templates/js/translated/table_filters.js:455 msgid "Component" msgstr "コンポーネント" @@ -1870,7 +1874,7 @@ msgstr "コンポーネント" msgid "Parts can be used as sub-components by default" msgstr "パーツはデフォルトでサブコンポーネントとして使用できます" -#: common/models.py:972 part/models.py:904 +#: common/models.py:972 part/models.py:911 msgid "Purchaseable" msgstr "購入可能" @@ -1878,7 +1882,7 @@ msgstr "購入可能" msgid "Parts are purchaseable by default" msgstr "パーツはデフォルトで購入可能です" -#: common/models.py:979 part/models.py:909 +#: common/models.py:979 part/models.py:916 #: templates/js/translated/table_filters.js:476 msgid "Salable" msgstr "" @@ -1887,7 +1891,7 @@ msgstr "" msgid "Parts are salable by default" msgstr "パーツはデフォルトで販売可能です" -#: common/models.py:986 part/models.py:899 +#: common/models.py:986 part/models.py:906 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:108 #: templates/js/translated/table_filters.js:488 @@ -1898,7 +1902,7 @@ msgstr "追跡可能" msgid "Parts are trackable by default" msgstr "パーツはデフォルトで追跡可能です" -#: common/models.py:993 part/models.py:919 +#: common/models.py:993 part/models.py:926 #: part/templates/part/part_base.html:151 #: templates/js/translated/table_filters.js:42 #: templates/js/translated/table_filters.js:492 @@ -1982,608 +1986,632 @@ msgid "Format to display the part name" msgstr "" #: common/models.py:1074 -msgid "Enable label printing" +msgid "Part Category Default Icon" msgstr "" #: common/models.py:1075 -msgid "Enable label printing from the web interface" +msgid "Part category default icon (empty means no icon)" +msgstr "" + +#: common/models.py:1080 +msgid "Enable label printing" msgstr "" #: common/models.py:1081 +msgid "Enable label printing from the web interface" +msgstr "" + +#: common/models.py:1087 msgid "Label Image DPI" msgstr "" -#: common/models.py:1082 +#: common/models.py:1088 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/models.py:1091 +#: common/models.py:1097 msgid "Enable Reports" msgstr "" -#: common/models.py:1092 +#: common/models.py:1098 msgid "Enable generation of reports" msgstr "" -#: common/models.py:1098 templates/stats.html:25 +#: common/models.py:1104 templates/stats.html:25 msgid "Debug Mode" msgstr "デバッグモード" -#: common/models.py:1099 +#: common/models.py:1105 msgid "Generate reports in debug mode (HTML output)" msgstr "" -#: common/models.py:1105 +#: common/models.py:1111 msgid "Page Size" msgstr "" -#: common/models.py:1106 +#: common/models.py:1112 msgid "Default page size for PDF reports" msgstr "" -#: common/models.py:1116 +#: common/models.py:1122 msgid "Enable Test Reports" msgstr "" -#: common/models.py:1117 +#: common/models.py:1123 msgid "Enable generation of test reports" msgstr "" -#: common/models.py:1123 +#: common/models.py:1129 msgid "Attach Test Reports" msgstr "" -#: common/models.py:1124 +#: common/models.py:1130 msgid "When printing a Test Report, attach a copy of the Test Report to the associated Stock Item" msgstr "" -#: common/models.py:1130 +#: common/models.py:1136 msgid "Batch Code Template" msgstr "" -#: common/models.py:1131 +#: common/models.py:1137 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/models.py:1136 +#: common/models.py:1142 msgid "Stock Expiry" msgstr "" -#: common/models.py:1137 +#: common/models.py:1143 msgid "Enable stock expiry functionality" msgstr "" -#: common/models.py:1143 +#: common/models.py:1149 msgid "Sell Expired Stock" msgstr "" -#: common/models.py:1144 +#: common/models.py:1150 msgid "Allow sale of expired stock" msgstr "" -#: common/models.py:1150 +#: common/models.py:1156 msgid "Stock Stale Time" msgstr "" -#: common/models.py:1151 +#: common/models.py:1157 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/models.py:1153 +#: common/models.py:1159 msgid "days" msgstr "" -#: common/models.py:1158 +#: common/models.py:1164 msgid "Build Expired Stock" msgstr "" -#: common/models.py:1159 +#: common/models.py:1165 msgid "Allow building with expired stock" msgstr "" -#: common/models.py:1165 +#: common/models.py:1171 msgid "Stock Ownership Control" msgstr "" -#: common/models.py:1166 +#: common/models.py:1172 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/models.py:1172 -msgid "Build Order Reference Pattern" -msgstr "" - -#: common/models.py:1173 -msgid "Required pattern for generating Build Order reference field" +#: common/models.py:1178 +msgid "Stock Location Default Icon" msgstr "" #: common/models.py:1179 +msgid "Stock location default icon (empty means no icon)" +msgstr "" + +#: common/models.py:1184 +msgid "Build Order Reference Pattern" +msgstr "" + +#: common/models.py:1185 +msgid "Required pattern for generating Build Order reference field" +msgstr "" + +#: common/models.py:1191 msgid "Sales Order Reference Pattern" msgstr "" -#: common/models.py:1180 +#: common/models.py:1192 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/models.py:1186 +#: common/models.py:1198 msgid "Sales Order Default Shipment" msgstr "" -#: common/models.py:1187 +#: common/models.py:1199 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/models.py:1193 +#: common/models.py:1205 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/models.py:1194 +#: common/models.py:1206 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/models.py:1201 +#: common/models.py:1213 msgid "Enable password forgot" msgstr "" -#: common/models.py:1202 +#: common/models.py:1214 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/models.py:1208 +#: common/models.py:1220 msgid "Enable registration" msgstr "" -#: common/models.py:1209 +#: common/models.py:1221 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/models.py:1215 +#: common/models.py:1227 msgid "Enable SSO" msgstr "" -#: common/models.py:1216 +#: common/models.py:1228 msgid "Enable SSO on the login pages" msgstr "" -#: common/models.py:1222 +#: common/models.py:1234 msgid "Email required" msgstr "" -#: common/models.py:1223 +#: common/models.py:1235 msgid "Require user to supply mail on signup" msgstr "" -#: common/models.py:1229 +#: common/models.py:1241 msgid "Auto-fill SSO users" msgstr "" -#: common/models.py:1230 +#: common/models.py:1242 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/models.py:1236 +#: common/models.py:1248 msgid "Mail twice" msgstr "" -#: common/models.py:1237 +#: common/models.py:1249 msgid "On signup ask users twice for their mail" msgstr "" -#: common/models.py:1243 +#: common/models.py:1255 msgid "Password twice" msgstr "" -#: common/models.py:1244 +#: common/models.py:1256 msgid "On signup ask users twice for their password" msgstr "" -#: common/models.py:1250 +#: common/models.py:1262 msgid "Group on signup" msgstr "" -#: common/models.py:1251 +#: common/models.py:1263 msgid "Group to which new users are assigned on registration" msgstr "" -#: common/models.py:1257 +#: common/models.py:1269 msgid "Enforce MFA" msgstr "" -#: common/models.py:1258 +#: common/models.py:1270 msgid "Users must use multifactor security." msgstr "" -#: common/models.py:1264 +#: common/models.py:1276 msgid "Check plugins on startup" msgstr "" -#: common/models.py:1265 +#: common/models.py:1277 msgid "Check that all plugins are installed on startup - enable in container enviroments" msgstr "" -#: common/models.py:1273 +#: common/models.py:1284 +msgid "Check plugin signatures" +msgstr "" + +#: common/models.py:1285 +msgid "Check and show signatures for plugins" +msgstr "" + +#: common/models.py:1292 msgid "Enable URL integration" msgstr "" -#: common/models.py:1274 +#: common/models.py:1293 msgid "Enable plugins to add URL routes" msgstr "" -#: common/models.py:1281 +#: common/models.py:1300 msgid "Enable navigation integration" msgstr "" -#: common/models.py:1282 +#: common/models.py:1301 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/models.py:1289 +#: common/models.py:1308 msgid "Enable app integration" msgstr "" -#: common/models.py:1290 +#: common/models.py:1309 msgid "Enable plugins to add apps" msgstr "" -#: common/models.py:1297 +#: common/models.py:1316 msgid "Enable schedule integration" msgstr "" -#: common/models.py:1298 +#: common/models.py:1317 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/models.py:1305 +#: common/models.py:1324 msgid "Enable event integration" msgstr "" -#: common/models.py:1306 +#: common/models.py:1325 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:1323 common/models.py:1639 +#: common/models.py:1342 common/models.py:1658 msgid "Settings key (must be unique - case insensitive" msgstr "" -#: common/models.py:1345 +#: common/models.py:1364 msgid "Show subscribed parts" msgstr "" -#: common/models.py:1346 +#: common/models.py:1365 msgid "Show subscribed parts on the homepage" msgstr "" -#: common/models.py:1352 +#: common/models.py:1371 msgid "Show subscribed categories" msgstr "" -#: common/models.py:1353 +#: common/models.py:1372 msgid "Show subscribed part categories on the homepage" msgstr "" -#: common/models.py:1359 +#: common/models.py:1378 msgid "Show latest parts" msgstr "" -#: common/models.py:1360 +#: common/models.py:1379 msgid "Show latest parts on the homepage" msgstr "" -#: common/models.py:1366 +#: common/models.py:1385 msgid "Recent Part Count" msgstr "" -#: common/models.py:1367 +#: common/models.py:1386 msgid "Number of recent parts to display on index page" msgstr "" -#: common/models.py:1373 +#: common/models.py:1392 msgid "Show unvalidated BOMs" msgstr "" -#: common/models.py:1374 +#: common/models.py:1393 msgid "Show BOMs that await validation on the homepage" msgstr "" -#: common/models.py:1380 +#: common/models.py:1399 msgid "Show recent stock changes" msgstr "" -#: common/models.py:1381 +#: common/models.py:1400 msgid "Show recently changed stock items on the homepage" msgstr "" -#: common/models.py:1387 +#: common/models.py:1406 msgid "Recent Stock Count" msgstr "" -#: common/models.py:1388 +#: common/models.py:1407 msgid "Number of recent stock items to display on index page" msgstr "" -#: common/models.py:1394 +#: common/models.py:1413 msgid "Show low stock" msgstr "" -#: common/models.py:1395 +#: common/models.py:1414 msgid "Show low stock items on the homepage" msgstr "" -#: common/models.py:1401 +#: common/models.py:1420 msgid "Show depleted stock" msgstr "" -#: common/models.py:1402 +#: common/models.py:1421 msgid "Show depleted stock items on the homepage" msgstr "" -#: common/models.py:1408 +#: common/models.py:1427 msgid "Show needed stock" msgstr "" -#: common/models.py:1409 +#: common/models.py:1428 msgid "Show stock items needed for builds on the homepage" msgstr "" -#: common/models.py:1415 +#: common/models.py:1434 msgid "Show expired stock" msgstr "" -#: common/models.py:1416 +#: common/models.py:1435 msgid "Show expired stock items on the homepage" msgstr "" -#: common/models.py:1422 +#: common/models.py:1441 msgid "Show stale stock" msgstr "" -#: common/models.py:1423 +#: common/models.py:1442 msgid "Show stale stock items on the homepage" msgstr "" -#: common/models.py:1429 +#: common/models.py:1448 msgid "Show pending builds" msgstr "" -#: common/models.py:1430 +#: common/models.py:1449 msgid "Show pending builds on the homepage" msgstr "" -#: common/models.py:1436 +#: common/models.py:1455 msgid "Show overdue builds" msgstr "" -#: common/models.py:1437 +#: common/models.py:1456 msgid "Show overdue builds on the homepage" msgstr "" -#: common/models.py:1443 +#: common/models.py:1462 msgid "Show outstanding POs" msgstr "" -#: common/models.py:1444 +#: common/models.py:1463 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:1450 +#: common/models.py:1469 msgid "Show overdue POs" msgstr "" -#: common/models.py:1451 +#: common/models.py:1470 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:1457 +#: common/models.py:1476 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:1458 +#: common/models.py:1477 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:1464 +#: common/models.py:1483 msgid "Show overdue SOs" msgstr "" -#: common/models.py:1465 +#: common/models.py:1484 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:1471 +#: common/models.py:1490 msgid "Inline label display" msgstr "" -#: common/models.py:1472 +#: common/models.py:1491 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1478 +#: common/models.py:1497 msgid "Inline report display" msgstr "" -#: common/models.py:1479 +#: common/models.py:1498 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1485 +#: common/models.py:1504 msgid "Search Parts" msgstr "" -#: common/models.py:1486 +#: common/models.py:1505 msgid "Display parts in search preview window" msgstr "" -#: common/models.py:1492 +#: common/models.py:1511 msgid "Seach Supplier Parts" msgstr "" -#: common/models.py:1493 +#: common/models.py:1512 msgid "Display supplier parts in search preview window" msgstr "" -#: common/models.py:1499 +#: common/models.py:1518 msgid "Search Manufacturer Parts" msgstr "" -#: common/models.py:1500 +#: common/models.py:1519 msgid "Display manufacturer parts in search preview window" msgstr "" -#: common/models.py:1506 +#: common/models.py:1525 msgid "Hide Inactive Parts" msgstr "" -#: common/models.py:1507 +#: common/models.py:1526 msgid "Excluded inactive parts from search preview window" msgstr "" -#: common/models.py:1513 +#: common/models.py:1532 msgid "Search Categories" msgstr "" -#: common/models.py:1514 +#: common/models.py:1533 msgid "Display part categories in search preview window" msgstr "" -#: common/models.py:1520 +#: common/models.py:1539 msgid "Search Stock" msgstr "" -#: common/models.py:1521 +#: common/models.py:1540 msgid "Display stock items in search preview window" msgstr "" -#: common/models.py:1527 +#: common/models.py:1546 msgid "Hide Unavailable Stock Items" msgstr "" -#: common/models.py:1528 +#: common/models.py:1547 msgid "Exclude stock items which are not available from the search preview window" msgstr "" -#: common/models.py:1534 +#: common/models.py:1553 msgid "Search Locations" msgstr "" -#: common/models.py:1535 +#: common/models.py:1554 msgid "Display stock locations in search preview window" msgstr "" -#: common/models.py:1541 +#: common/models.py:1560 msgid "Search Companies" msgstr "" -#: common/models.py:1542 +#: common/models.py:1561 msgid "Display companies in search preview window" msgstr "" -#: common/models.py:1548 +#: common/models.py:1567 msgid "Search Purchase Orders" msgstr "" -#: common/models.py:1549 +#: common/models.py:1568 msgid "Display purchase orders in search preview window" msgstr "" -#: common/models.py:1555 +#: common/models.py:1574 msgid "Exclude Inactive Purchase Orders" msgstr "" -#: common/models.py:1556 +#: common/models.py:1575 msgid "Exclude inactive purchase orders from search preview window" msgstr "" -#: common/models.py:1562 +#: common/models.py:1581 msgid "Search Sales Orders" msgstr "" -#: common/models.py:1563 +#: common/models.py:1582 msgid "Display sales orders in search preview window" msgstr "" -#: common/models.py:1569 +#: common/models.py:1588 msgid "Exclude Inactive Sales Orders" msgstr "" -#: common/models.py:1570 +#: common/models.py:1589 msgid "Exclude inactive sales orders from search preview window" msgstr "" -#: common/models.py:1576 +#: common/models.py:1595 msgid "Search Preview Results" msgstr "" -#: common/models.py:1577 +#: common/models.py:1596 msgid "Number of results to show in each section of the search preview window" msgstr "" -#: common/models.py:1583 +#: common/models.py:1602 msgid "Show Quantity in Forms" msgstr "" -#: common/models.py:1584 +#: common/models.py:1603 msgid "Display available part quantity in some forms" msgstr "" -#: common/models.py:1590 +#: common/models.py:1609 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:1591 +#: common/models.py:1610 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:1597 +#: common/models.py:1616 msgid "Fixed Navbar" msgstr "" -#: common/models.py:1598 +#: common/models.py:1617 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:1604 +#: common/models.py:1623 msgid "Date Format" msgstr "" -#: common/models.py:1605 +#: common/models.py:1624 msgid "Preferred format for displaying dates" msgstr "" -#: common/models.py:1619 part/templates/part/detail.html:41 +#: common/models.py:1638 part/templates/part/detail.html:41 msgid "Part Scheduling" msgstr "" -#: common/models.py:1620 +#: common/models.py:1639 msgid "Display part scheduling information" msgstr "" -#: common/models.py:1679 +#: common/models.py:1698 msgid "Price break quantity" msgstr "" -#: common/models.py:1686 company/serializers.py:366 +#: common/models.py:1705 company/serializers.py:366 #: company/templates/company/supplier_part.html:284 order/models.py:938 -#: templates/js/translated/part.js:1065 templates/js/translated/part.js:2152 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2161 msgid "Price" msgstr "" -#: common/models.py:1687 +#: common/models.py:1706 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:1847 common/models.py:2025 +#: common/models.py:1866 common/models.py:2044 msgid "Endpoint" msgstr "" -#: common/models.py:1848 +#: common/models.py:1867 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:1857 +#: common/models.py:1876 msgid "Name for this webhook" msgstr "" -#: common/models.py:1862 part/models.py:914 plugin/models.py:99 +#: common/models.py:1881 part/models.py:921 plugin/models.py:100 #: templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:104 #: templates/js/translated/table_filters.js:316 @@ -2591,67 +2619,67 @@ msgstr "" msgid "Active" msgstr "" -#: common/models.py:1863 +#: common/models.py:1882 msgid "Is this webhook active" msgstr "" -#: common/models.py:1877 +#: common/models.py:1896 msgid "Token" msgstr "" -#: common/models.py:1878 +#: common/models.py:1897 msgid "Token for access" msgstr "" -#: common/models.py:1885 +#: common/models.py:1904 msgid "Secret" msgstr "" -#: common/models.py:1886 +#: common/models.py:1905 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:1992 +#: common/models.py:2011 msgid "Message ID" msgstr "メッセージ ID:" -#: common/models.py:1993 +#: common/models.py:2012 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2001 +#: common/models.py:2020 msgid "Host" msgstr "" -#: common/models.py:2002 +#: common/models.py:2021 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2009 +#: common/models.py:2028 msgid "Header" msgstr "" -#: common/models.py:2010 +#: common/models.py:2029 msgid "Header of this message" msgstr "" -#: common/models.py:2016 +#: common/models.py:2035 msgid "Body" msgstr "" -#: common/models.py:2017 +#: common/models.py:2036 msgid "Body of this message" msgstr "" -#: common/models.py:2026 +#: common/models.py:2045 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2031 +#: common/models.py:2050 msgid "Worked on" msgstr "" -#: common/models.py:2032 +#: common/models.py:2051 msgid "Was the work on this message finished?" msgstr "" @@ -2758,7 +2786,7 @@ msgstr "" msgid "Link to external company information" msgstr "" -#: company/models.py:135 part/models.py:808 +#: company/models.py:135 part/models.py:815 msgid "Image" msgstr "" @@ -2791,8 +2819,8 @@ msgid "Does this company manufacture parts?" msgstr "" #: company/models.py:148 company/serializers.py:372 -#: company/templates/company/company_base.html:106 part/serializers.py:151 -#: part/serializers.py:182 stock/serializers.py:180 +#: company/templates/company/company_base.html:106 part/serializers.py:153 +#: part/serializers.py:184 stock/serializers.py:180 msgid "Currency" msgstr "" @@ -2800,7 +2828,7 @@ msgstr "" msgid "Default currency used for this company" msgstr "" -#: company/models.py:248 company/models.py:481 stock/models.py:591 +#: company/models.py:248 company/models.py:481 stock/models.py:598 #: stock/serializers.py:87 stock/templates/stock/item_base.html:148 #: templates/js/translated/bom.js:543 msgid "Base Part" @@ -2832,7 +2860,7 @@ msgstr "" #: templates/js/translated/company.js:497 #: templates/js/translated/company.js:649 #: templates/js/translated/company.js:937 templates/js/translated/order.js:1971 -#: templates/js/translated/part.js:247 templates/js/translated/part.js:1023 +#: templates/js/translated/part.js:247 templates/js/translated/part.js:1027 msgid "MPN" msgstr "" @@ -2861,9 +2889,9 @@ msgstr "" #: company/models.py:365 #: report/templates/report/inventree_test_report_base.html:95 -#: stock/models.py:2088 templates/js/translated/company.js:546 -#: templates/js/translated/company.js:764 templates/js/translated/part.js:845 -#: templates/js/translated/stock.js:1356 +#: stock/models.py:2095 templates/js/translated/company.js:546 +#: templates/js/translated/company.js:764 templates/js/translated/part.js:849 +#: templates/js/translated/stock.js:1360 msgid "Value" msgstr "" @@ -2871,10 +2899,10 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:372 part/models.py:881 part/models.py:2379 +#: company/models.py:372 part/models.py:888 part/models.py:2386 #: part/templates/part/part_base.html:280 #: templates/InvenTree/settings/settings.html:352 -#: templates/js/translated/company.js:770 templates/js/translated/part.js:851 +#: templates/js/translated/company.js:770 templates/js/translated/part.js:855 msgid "Units" msgstr "" @@ -2894,7 +2922,7 @@ msgstr "" #: templates/js/translated/company.js:268 #: templates/js/translated/company.js:401 #: templates/js/translated/company.js:893 templates/js/translated/order.js:1707 -#: templates/js/translated/part.js:217 templates/js/translated/part.js:991 +#: templates/js/translated/part.js:217 templates/js/translated/part.js:995 #: templates/js/translated/table_filters.js:423 msgid "Supplier" msgstr "" @@ -2906,7 +2934,7 @@ msgstr "" #: company/models.py:497 company/templates/company/supplier_part.html:118 #: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267 #: templates/js/translated/order.js:1958 templates/js/translated/part.js:228 -#: templates/js/translated/part.js:1009 +#: templates/js/translated/part.js:1013 msgid "SKU" msgstr "" @@ -2927,23 +2955,23 @@ msgid "Supplier part description" msgstr "" #: company/models.py:522 company/templates/company/supplier_part.html:146 -#: part/models.py:2613 part/templates/part/upload_bom.html:59 +#: part/models.py:2620 part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401 msgid "Note" msgstr "" -#: company/models.py:526 part/models.py:1735 +#: company/models.py:526 part/models.py:1742 msgid "base cost" msgstr "" -#: company/models.py:526 part/models.py:1735 +#: company/models.py:526 part/models.py:1742 msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:528 company/templates/company/supplier_part.html:139 -#: stock/models.py:617 stock/templates/stock/item_base.html:245 -#: templates/js/translated/company.js:969 templates/js/translated/stock.js:1972 +#: stock/models.py:624 stock/templates/stock/item_base.html:245 +#: templates/js/translated/company.js:969 templates/js/translated/stock.js:1976 msgid "Packaging" msgstr "" @@ -2951,7 +2979,7 @@ msgstr "" msgid "Part packaging" msgstr "" -#: company/models.py:530 part/models.py:1737 +#: company/models.py:530 part/models.py:1744 msgid "multiple" msgstr "" @@ -2964,7 +2992,7 @@ msgstr "" #: templates/email/low_stock_notification.html:18 #: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789 #: templates/js/translated/build.js:2645 templates/js/translated/company.js:979 -#: templates/js/translated/part.js:596 templates/js/translated/part.js:599 +#: templates/js/translated/part.js:600 templates/js/translated/part.js:603 #: templates/js/translated/table_filters.js:186 msgid "Available" msgstr "" @@ -3037,12 +3065,12 @@ msgid "Download image from URL" msgstr "" #: company/templates/company/company_base.html:86 order/models.py:637 -#: order/templates/order/sales_order_base.html:116 stock/models.py:636 -#: stock/models.py:637 stock/serializers.py:809 +#: order/templates/order/sales_order_base.html:116 stock/models.py:643 +#: stock/models.py:644 stock/serializers.py:811 #: stock/templates/stock/item_base.html:401 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:393 templates/js/translated/order.js:2513 -#: templates/js/translated/stock.js:2550 +#: templates/js/translated/stock.js:2559 #: templates/js/translated/table_filters.js:427 msgid "Customer" msgstr "" @@ -3083,7 +3111,7 @@ msgstr "新しいサプライヤー・パーツ" #: company/templates/company/detail.html:36 #: company/templates/company/detail.html:84 -#: part/templates/part/category.html:176 +#: part/templates/part/category.html:182 msgid "Order parts" msgstr "パーツの注文" @@ -3231,7 +3259,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:170 #: part/templates/part/detail.html:186 #: templates/InvenTree/settings/category.html:12 -#: templates/InvenTree/settings/part.html:66 +#: templates/InvenTree/settings/part.html:68 msgid "New Parameter" msgstr "" @@ -3261,10 +3289,10 @@ msgid "Assigned Stock Items" msgstr "" #: company/templates/company/supplier_part.html:7 -#: company/templates/company/supplier_part.html:24 stock/models.py:600 +#: company/templates/company/supplier_part.html:24 stock/models.py:607 #: stock/templates/stock/item_base.html:238 #: templates/js/translated/company.js:909 templates/js/translated/order.js:935 -#: templates/js/translated/stock.js:1929 +#: templates/js/translated/stock.js:1933 msgid "Supplier Part" msgstr "" @@ -3308,13 +3336,13 @@ msgid "Supplier Part Stock" msgstr "" #: company/templates/company/supplier_part.html:168 -#: part/templates/part/detail.html:24 stock/templates/stock/location.html:176 +#: part/templates/part/detail.html:24 stock/templates/stock/location.html:181 msgid "Create new stock item" msgstr "" #: company/templates/company/supplier_part.html:169 -#: part/templates/part/detail.html:25 stock/templates/stock/location.html:177 -#: templates/js/translated/stock.js:431 +#: part/templates/part/detail.html:25 stock/templates/stock/location.html:182 +#: templates/js/translated/stock.js:435 msgid "New Stock Item" msgstr "" @@ -3330,7 +3358,7 @@ msgstr "" #: company/templates/company/supplier_part.html:212 #: company/templates/company/supplier_part.html:326 -#: part/templates/part/prices.html:276 templates/js/translated/part.js:2224 +#: part/templates/part/prices.html:276 templates/js/translated/part.js:2233 msgid "Add Price Break" msgstr "" @@ -3339,12 +3367,12 @@ msgid "No price break information found" msgstr "" #: company/templates/company/supplier_part.html:252 -#: templates/js/translated/part.js:2234 +#: templates/js/translated/part.js:2243 msgid "Delete Price Break" msgstr "" #: company/templates/company/supplier_part.html:266 -#: templates/js/translated/part.js:2248 +#: templates/js/translated/part.js:2257 msgid "Edit Price Break" msgstr "" @@ -3366,13 +3394,13 @@ msgstr "" #: company/templates/company/supplier_part_navbar.html:15 #: part/templates/part/part_sidebar.html:14 -#: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:19 +#: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:24 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:151 #: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/bom.js:555 templates/js/translated/part.js:747 -#: templates/js/translated/part.js:1295 templates/js/translated/part.js:1456 -#: templates/js/translated/stock.js:955 templates/js/translated/stock.js:1750 +#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751 +#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460 +#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754 #: templates/navbar.html:31 msgid "Stock" msgstr "" @@ -3392,14 +3420,14 @@ msgid "Pricing" msgstr "" #: company/templates/company/supplier_part_sidebar.html:5 -#: part/templates/part/category.html:197 +#: part/templates/part/category.html:203 #: part/templates/part/category_sidebar.html:17 -#: stock/templates/stock/location.html:147 -#: stock/templates/stock/location.html:161 -#: stock/templates/stock/location.html:173 +#: stock/templates/stock/location.html:152 +#: stock/templates/stock/location.html:166 +#: stock/templates/stock/location.html:178 #: stock/templates/stock/location_sidebar.html:7 #: templates/InvenTree/search.html:153 templates/js/translated/search.js:223 -#: templates/js/translated/stock.js:2427 users/models.py:40 +#: templates/js/translated/stock.js:2436 users/models.py:40 msgid "Stock Items" msgstr "" @@ -3656,8 +3684,8 @@ msgstr "" #: stock/templates/stock/item_base.html:184 #: templates/email/overdue_purchase_order.html:15 #: templates/js/translated/order.js:936 templates/js/translated/order.js:1691 -#: templates/js/translated/part.js:968 templates/js/translated/stock.js:1909 -#: templates/js/translated/stock.js:2531 +#: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913 +#: templates/js/translated/stock.js:2540 msgid "Purchase Order" msgstr "" @@ -3667,7 +3695,7 @@ msgstr "" #: order/models.py:1009 order/templates/order/order_base.html:169 #: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073 -#: templates/js/translated/part.js:1060 templates/js/translated/part.js:1087 +#: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091 #: templates/js/translated/table_filters.js:338 msgid "Received" msgstr "" @@ -3676,9 +3704,9 @@ msgstr "" msgid "Number of items received" msgstr "" -#: order/models.py:1017 part/templates/part/prices.html:181 stock/models.py:727 +#: order/models.py:1017 part/templates/part/prices.html:181 stock/models.py:734 #: stock/serializers.py:171 stock/templates/stock/item_base.html:191 -#: templates/js/translated/stock.js:1960 +#: templates/js/translated/stock.js:1964 msgid "Purchase Price" msgstr "購入金額" @@ -4066,8 +4094,8 @@ msgstr "" #: templates/js/translated/bom.js:77 templates/js/translated/build.js:431 #: templates/js/translated/build.js:583 templates/js/translated/build.js:1974 #: templates/js/translated/order.js:884 templates/js/translated/order.js:1337 -#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:621 -#: templates/js/translated/stock.js:789 +#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625 +#: templates/js/translated/stock.js:793 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "" @@ -4261,8 +4289,8 @@ msgstr "" msgid "This field is required" msgstr "" -#: part/bom.py:127 part/models.py:98 part/models.py:817 -#: part/templates/part/category.html:108 part/templates/part/part_base.html:330 +#: part/bom.py:127 part/models.py:98 part/models.py:824 +#: part/templates/part/category.html:114 part/templates/part/part_base.html:330 msgid "Default Location" msgstr "" @@ -4276,9 +4304,9 @@ msgid "Available Stock" msgstr "" #: part/bom.py:130 part/templates/part/part_base.html:207 -#: templates/js/translated/bom.js:947 templates/js/translated/part.js:586 -#: templates/js/translated/part.js:606 templates/js/translated/part.js:1298 -#: templates/js/translated/part.js:1470 templates/js/translated/part.js:1486 +#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590 +#: templates/js/translated/part.js:610 templates/js/translated/part.js:1302 +#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "" @@ -4299,516 +4327,524 @@ msgstr "" msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:115 part/models.py:2455 part/templates/part/category.html:15 +#: part/models.py:107 stock/models.py:84 +msgid "Icon" +msgstr "" + +#: part/models.py:108 stock/models.py:85 +msgid "Icon (optional)" +msgstr "" + +#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" -#: part/models.py:116 part/templates/part/category.html:128 +#: part/models.py:123 part/templates/part/category.html:134 #: templates/InvenTree/search.html:95 templates/js/translated/search.js:198 #: users/models.py:37 msgid "Part Categories" msgstr "" -#: part/models.py:337 part/templates/part/cat_link.html:3 -#: part/templates/part/category.html:17 part/templates/part/category.html:133 -#: part/templates/part/category.html:153 +#: part/models.py:344 part/templates/part/cat_link.html:3 +#: part/templates/part/category.html:23 part/templates/part/category.html:139 +#: part/templates/part/category.html:159 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82 #: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:1946 templates/js/translated/search.js:144 +#: templates/js/translated/part.js:1955 templates/js/translated/search.js:144 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "パーツ" -#: part/models.py:422 +#: part/models.py:429 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:492 part/models.py:504 +#: part/models.py:499 part/models.py:511 #, python-brace-format msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)" msgstr "" -#: part/models.py:621 +#: part/models.py:628 msgid "Next available serial numbers are" msgstr "" -#: part/models.py:625 +#: part/models.py:632 msgid "Next available serial number is" msgstr "" -#: part/models.py:630 +#: part/models.py:637 msgid "Most recent serial number is" msgstr "" -#: part/models.py:711 +#: part/models.py:718 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:738 part/models.py:2509 +#: part/models.py:745 part/models.py:2516 msgid "Part name" msgstr "" -#: part/models.py:745 +#: part/models.py:752 msgid "Is Template" msgstr "" -#: part/models.py:746 +#: part/models.py:753 msgid "Is this part a template part?" msgstr "" -#: part/models.py:756 +#: part/models.py:763 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:757 +#: part/models.py:764 msgid "Variant Of" msgstr "" -#: part/models.py:763 +#: part/models.py:770 msgid "Part description" msgstr "" -#: part/models.py:768 part/templates/part/category.html:86 +#: part/models.py:775 part/templates/part/category.html:92 #: part/templates/part/part_base.html:294 msgid "Keywords" msgstr "" -#: part/models.py:769 +#: part/models.py:776 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:776 part/models.py:2211 part/models.py:2454 +#: part/models.py:783 part/models.py:2218 part/models.py:2461 #: part/templates/part/part_base.html:257 #: templates/InvenTree/settings/settings.html:232 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1438 templates/js/translated/part.js:1664 +#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1668 msgid "Category" msgstr "カテゴリ" -#: part/models.py:777 +#: part/models.py:784 msgid "Part category" msgstr "" -#: part/models.py:782 part/templates/part/part_base.html:266 -#: templates/js/translated/part.js:735 templates/js/translated/part.js:1391 -#: templates/js/translated/stock.js:1722 +#: part/models.py:789 part/templates/part/part_base.html:266 +#: templates/js/translated/part.js:739 templates/js/translated/part.js:1395 +#: templates/js/translated/stock.js:1726 msgid "IPN" msgstr "" -#: part/models.py:783 +#: part/models.py:790 msgid "Internal Part Number" msgstr "" -#: part/models.py:789 +#: part/models.py:796 msgid "Part revision or version number" msgstr "" -#: part/models.py:790 part/templates/part/part_base.html:273 -#: report/models.py:171 templates/js/translated/part.js:739 +#: part/models.py:797 part/templates/part/part_base.html:273 +#: report/models.py:171 templates/js/translated/part.js:743 msgid "Revision" msgstr "" -#: part/models.py:815 +#: part/models.py:822 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:860 part/templates/part/part_base.html:339 +#: part/models.py:867 part/templates/part/part_base.html:339 msgid "Default Supplier" msgstr "" -#: part/models.py:861 +#: part/models.py:868 msgid "Default supplier part" msgstr "" -#: part/models.py:868 +#: part/models.py:875 msgid "Default Expiry" msgstr "" -#: part/models.py:869 +#: part/models.py:876 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:874 part/templates/part/part_base.html:200 +#: part/models.py:881 part/templates/part/part_base.html:200 msgid "Minimum Stock" msgstr "" -#: part/models.py:875 +#: part/models.py:882 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:882 +#: part/models.py:889 msgid "Stock keeping units for this part" msgstr "" -#: part/models.py:888 +#: part/models.py:895 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:894 +#: part/models.py:901 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:900 +#: part/models.py:907 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:905 +#: part/models.py:912 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:910 +#: part/models.py:917 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:915 +#: part/models.py:922 msgid "Is this part active?" msgstr "" -#: part/models.py:920 +#: part/models.py:927 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:922 +#: part/models.py:929 msgid "Part notes" msgstr "" -#: part/models.py:924 +#: part/models.py:931 msgid "BOM checksum" msgstr "" -#: part/models.py:924 +#: part/models.py:931 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:927 +#: part/models.py:934 msgid "BOM checked by" msgstr "" -#: part/models.py:929 +#: part/models.py:936 msgid "BOM checked date" msgstr "" -#: part/models.py:933 +#: part/models.py:940 msgid "Creation User" msgstr "" -#: part/models.py:1737 +#: part/models.py:1744 msgid "Sell multiple" msgstr "" -#: part/models.py:2258 +#: part/models.py:2265 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:2275 +#: part/models.py:2282 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:2295 templates/js/translated/part.js:1997 -#: templates/js/translated/stock.js:1336 +#: part/models.py:2302 templates/js/translated/part.js:2006 +#: templates/js/translated/stock.js:1340 msgid "Test Name" msgstr "" -#: part/models.py:2296 +#: part/models.py:2303 msgid "Enter a name for the test" msgstr "" -#: part/models.py:2301 +#: part/models.py:2308 msgid "Test Description" msgstr "" -#: part/models.py:2302 +#: part/models.py:2309 msgid "Enter description for this test" msgstr "" -#: part/models.py:2307 templates/js/translated/part.js:2006 +#: part/models.py:2314 templates/js/translated/part.js:2015 #: templates/js/translated/table_filters.js:302 msgid "Required" msgstr "" -#: part/models.py:2308 +#: part/models.py:2315 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:2313 templates/js/translated/part.js:2014 +#: part/models.py:2320 templates/js/translated/part.js:2023 msgid "Requires Value" msgstr "" -#: part/models.py:2314 +#: part/models.py:2321 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:2319 templates/js/translated/part.js:2021 +#: part/models.py:2326 templates/js/translated/part.js:2030 msgid "Requires Attachment" msgstr "" -#: part/models.py:2320 +#: part/models.py:2327 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:2328 +#: part/models.py:2335 #, python-brace-format msgid "Illegal character in template name ({c})" msgstr "" -#: part/models.py:2364 +#: part/models.py:2371 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:2372 +#: part/models.py:2379 msgid "Parameter Name" msgstr "" -#: part/models.py:2379 +#: part/models.py:2386 msgid "Parameter Units" msgstr "" -#: part/models.py:2410 +#: part/models.py:2417 msgid "Parent Part" msgstr "" -#: part/models.py:2412 part/models.py:2460 part/models.py:2461 +#: part/models.py:2419 part/models.py:2467 part/models.py:2468 #: templates/InvenTree/settings/settings.html:227 msgid "Parameter Template" msgstr "" -#: part/models.py:2414 +#: part/models.py:2421 msgid "Data" msgstr "" -#: part/models.py:2414 +#: part/models.py:2421 msgid "Parameter Value" msgstr "" -#: part/models.py:2465 templates/InvenTree/settings/settings.html:236 +#: part/models.py:2472 templates/InvenTree/settings/settings.html:236 msgid "Default Value" msgstr "" -#: part/models.py:2466 +#: part/models.py:2473 msgid "Default Parameter Value" msgstr "" -#: part/models.py:2501 +#: part/models.py:2508 msgid "Part ID or part name" msgstr "" -#: part/models.py:2504 templates/js/translated/model_renderers.js:212 +#: part/models.py:2511 templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "" -#: part/models.py:2505 +#: part/models.py:2512 msgid "Unique part ID value" msgstr "" -#: part/models.py:2508 +#: part/models.py:2515 msgid "Part Name" msgstr "" -#: part/models.py:2512 +#: part/models.py:2519 msgid "Part IPN" msgstr "" -#: part/models.py:2513 +#: part/models.py:2520 msgid "Part IPN value" msgstr "" -#: part/models.py:2516 +#: part/models.py:2523 msgid "Level" msgstr "" -#: part/models.py:2517 +#: part/models.py:2524 msgid "BOM level" msgstr "" -#: part/models.py:2586 +#: part/models.py:2593 msgid "Select parent part" msgstr "" -#: part/models.py:2594 +#: part/models.py:2601 msgid "Sub part" msgstr "" -#: part/models.py:2595 +#: part/models.py:2602 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:2601 +#: part/models.py:2608 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:2603 part/templates/part/upload_bom.html:58 +#: part/models.py:2610 part/templates/part/upload_bom.html:58 #: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999 #: templates/js/translated/table_filters.js:100 msgid "Optional" msgstr "" -#: part/models.py:2603 +#: part/models.py:2610 msgid "This BOM item is optional" msgstr "" -#: part/models.py:2606 part/templates/part/upload_bom.html:55 +#: part/models.py:2613 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:2607 +#: part/models.py:2614 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:2610 +#: part/models.py:2617 msgid "BOM item reference" msgstr "" -#: part/models.py:2613 +#: part/models.py:2620 msgid "BOM item notes" msgstr "" -#: part/models.py:2615 +#: part/models.py:2622 msgid "Checksum" msgstr "" -#: part/models.py:2615 +#: part/models.py:2622 msgid "BOM line checksum" msgstr "" -#: part/models.py:2619 part/templates/part/upload_bom.html:57 +#: part/models.py:2626 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1016 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:96 msgid "Inherited" msgstr "" -#: part/models.py:2620 +#: part/models.py:2627 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:2625 part/templates/part/upload_bom.html:56 +#: part/models.py:2632 part/templates/part/upload_bom.html:56 #: templates/js/translated/bom.js:1008 msgid "Allow Variants" msgstr "" -#: part/models.py:2626 +#: part/models.py:2633 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:2704 stock/models.py:461 +#: part/models.py:2711 stock/models.py:468 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:2713 part/models.py:2715 +#: part/models.py:2720 part/models.py:2722 msgid "Sub part must be specified" msgstr "" -#: part/models.py:2820 +#: part/models.py:2827 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:2841 +#: part/models.py:2848 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:2854 +#: part/models.py:2861 msgid "Parent BOM item" msgstr "" -#: part/models.py:2862 +#: part/models.py:2869 msgid "Substitute part" msgstr "" -#: part/models.py:2877 +#: part/models.py:2884 msgid "Part 1" msgstr "" -#: part/models.py:2881 +#: part/models.py:2888 msgid "Part 2" msgstr "" -#: part/models.py:2881 +#: part/models.py:2888 msgid "Select Related Part" msgstr "" -#: part/models.py:2899 +#: part/models.py:2906 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:2903 +#: part/models.py:2910 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:152 part/serializers.py:183 stock/serializers.py:181 +#: part/serializers.py:154 part/serializers.py:185 stock/serializers.py:181 msgid "Purchase currency of this stock item" msgstr "" -#: part/serializers.py:812 +#: part/serializers.py:814 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:820 +#: part/serializers.py:822 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:821 +#: part/serializers.py:823 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:826 +#: part/serializers.py:828 msgid "Include Inherited" msgstr "" -#: part/serializers.py:827 +#: part/serializers.py:829 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:832 +#: part/serializers.py:834 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:833 +#: part/serializers.py:835 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:838 +#: part/serializers.py:840 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:839 +#: part/serializers.py:841 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:879 +#: part/serializers.py:881 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:880 +#: part/serializers.py:882 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:910 +#: part/serializers.py:912 msgid "No part column specified" msgstr "" -#: part/serializers.py:953 +#: part/serializers.py:955 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:956 +#: part/serializers.py:958 msgid "No matching part found" msgstr "" -#: part/serializers.py:959 +#: part/serializers.py:961 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:968 +#: part/serializers.py:970 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:976 +#: part/serializers.py:978 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:997 +#: part/serializers.py:999 msgid "At least one BOM item is required" msgstr "" @@ -4848,101 +4884,101 @@ msgstr "" msgid "Delete Items" msgstr "" -#: part/templates/part/category.html:28 part/templates/part/category.html:32 +#: part/templates/part/category.html:34 part/templates/part/category.html:38 msgid "You are subscribed to notifications for this category" msgstr "" -#: part/templates/part/category.html:36 +#: part/templates/part/category.html:42 msgid "Subscribe to notifications for this category" msgstr "" -#: part/templates/part/category.html:42 +#: part/templates/part/category.html:48 msgid "Category Actions" msgstr "" -#: part/templates/part/category.html:47 +#: part/templates/part/category.html:53 msgid "Edit category" msgstr "" -#: part/templates/part/category.html:48 +#: part/templates/part/category.html:54 msgid "Edit Category" msgstr "" -#: part/templates/part/category.html:52 +#: part/templates/part/category.html:58 msgid "Delete category" msgstr "" -#: part/templates/part/category.html:53 +#: part/templates/part/category.html:59 msgid "Delete Category" msgstr "" -#: part/templates/part/category.html:61 +#: part/templates/part/category.html:67 msgid "Create new part category" msgstr "" -#: part/templates/part/category.html:62 +#: part/templates/part/category.html:68 msgid "New Category" msgstr "新規カテゴリ" -#: part/templates/part/category.html:80 part/templates/part/category.html:93 +#: part/templates/part/category.html:86 part/templates/part/category.html:99 msgid "Category Path" msgstr "" -#: part/templates/part/category.html:94 +#: part/templates/part/category.html:100 msgid "Top level part category" msgstr "" -#: part/templates/part/category.html:114 part/templates/part/category.html:222 +#: part/templates/part/category.html:120 part/templates/part/category.html:228 #: part/templates/part/category_sidebar.html:7 msgid "Subcategories" msgstr "" -#: part/templates/part/category.html:119 +#: part/templates/part/category.html:125 msgid "Parts (Including subcategories)" msgstr "" -#: part/templates/part/category.html:157 +#: part/templates/part/category.html:163 msgid "Create new part" msgstr "" -#: part/templates/part/category.html:158 templates/js/translated/bom.js:367 +#: part/templates/part/category.html:164 templates/js/translated/bom.js:367 msgid "New Part" msgstr "新規パーツ" -#: part/templates/part/category.html:168 part/templates/part/detail.html:363 +#: part/templates/part/category.html:174 part/templates/part/detail.html:363 #: part/templates/part/detail.html:394 msgid "Options" msgstr "" -#: part/templates/part/category.html:172 +#: part/templates/part/category.html:178 msgid "Set category" msgstr "" -#: part/templates/part/category.html:173 +#: part/templates/part/category.html:179 msgid "Set Category" msgstr "" -#: part/templates/part/category.html:180 part/templates/part/category.html:181 +#: part/templates/part/category.html:186 part/templates/part/category.html:187 msgid "Print Labels" msgstr "" -#: part/templates/part/category.html:206 +#: part/templates/part/category.html:212 msgid "Part Parameters" msgstr "" -#: part/templates/part/category.html:320 +#: part/templates/part/category.html:327 msgid "Create Part Category" msgstr "" -#: part/templates/part/category.html:340 +#: part/templates/part/category.html:347 msgid "Create Part" msgstr "" -#: part/templates/part/category.html:343 +#: part/templates/part/category.html:350 msgid "Create another part after this one" msgstr "続けて別のパーツを作る" -#: part/templates/part/category.html:344 +#: part/templates/part/category.html:351 msgid "Part created successfully" msgstr "" @@ -4950,7 +4986,7 @@ msgstr "" msgid "Import Parts" msgstr "" -#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:375 +#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:379 msgid "Duplicate Part" msgstr "" @@ -5172,19 +5208,19 @@ msgstr "" #: part/templates/part/part_base.html:43 #: stock/templates/stock/item_base.html:41 -#: stock/templates/stock/location.html:43 +#: stock/templates/stock/location.html:48 msgid "Barcode actions" msgstr "" #: part/templates/part/part_base.html:46 #: stock/templates/stock/item_base.html:45 -#: stock/templates/stock/location.html:45 templates/qr_button.html:1 +#: stock/templates/stock/location.html:50 templates/qr_button.html:1 msgid "Show QR Code" msgstr "" #: part/templates/part/part_base.html:49 #: stock/templates/stock/item_base.html:63 -#: stock/templates/stock/location.html:47 +#: stock/templates/stock/location.html:52 msgid "Print Label" msgstr "" @@ -5194,7 +5230,7 @@ msgstr "" #: part/templates/part/part_base.html:60 #: stock/templates/stock/item_base.html:116 -#: stock/templates/stock/location.html:56 +#: stock/templates/stock/location.html:61 msgid "Stock actions" msgstr "" @@ -5255,7 +5291,7 @@ msgstr "" #: templates/js/translated/company.js:624 #: templates/js/translated/company.js:884 #: templates/js/translated/model_renderers.js:204 -#: templates/js/translated/part.js:650 templates/js/translated/part.js:727 +#: templates/js/translated/part.js:654 templates/js/translated/part.js:731 msgid "Inactive" msgstr "" @@ -5289,9 +5325,9 @@ msgstr "" msgid "Can Build" msgstr "" -#: part/templates/part/part_base.html:238 templates/js/translated/part.js:589 -#: templates/js/translated/part.js:609 templates/js/translated/part.js:1302 -#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490 +#: part/templates/part/part_base.html:238 templates/js/translated/part.js:593 +#: templates/js/translated/part.js:613 templates/js/translated/part.js:1306 +#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1494 msgid "Building" msgstr "" @@ -5464,8 +5500,8 @@ msgstr "" msgid "No sale pice history available for this part." msgstr "" -#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:612 -#: templates/js/translated/part.js:1290 templates/js/translated/part.js:1494 +#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616 +#: templates/js/translated/part.js:1294 templates/js/translated/part.js:1498 msgid "No Stock" msgstr "在庫切れ" @@ -5630,51 +5666,55 @@ msgstr "" msgid "Allow sending of emails for event notifications" msgstr "" -#: plugin/models.py:32 +#: plugin/models.py:33 msgid "Plugin Metadata" msgstr "" -#: plugin/models.py:33 +#: plugin/models.py:34 msgid "JSON metadata field, for use by external plugins" msgstr "" -#: plugin/models.py:79 +#: plugin/models.py:80 msgid "Plugin Configuration" msgstr "" -#: plugin/models.py:80 +#: plugin/models.py:81 msgid "Plugin Configurations" msgstr "" -#: plugin/models.py:85 +#: plugin/models.py:86 msgid "Key" msgstr "" -#: plugin/models.py:86 +#: plugin/models.py:87 msgid "Key of plugin" msgstr "" -#: plugin/models.py:94 +#: plugin/models.py:95 msgid "PluginName of the plugin" msgstr "" -#: plugin/models.py:100 +#: plugin/models.py:101 msgid "Is the plugin active" msgstr "" -#: plugin/models.py:168 +#: plugin/models.py:158 +msgid "Sample plugin" +msgstr "" + +#: plugin/models.py:186 msgid "Plugin" msgstr "" -#: plugin/models.py:231 +#: plugin/models.py:249 msgid "Method" msgstr "" -#: plugin/plugin.py:228 +#: plugin/plugin.py:251 msgid "No author found" msgstr "" -#: plugin/plugin.py:240 +#: plugin/plugin.py:263 msgid "No date found" msgstr "" @@ -5746,12 +5786,12 @@ msgstr "" msgid "No valid objects provided to template" msgstr "" -#: report/api.py:216 report/api.py:257 +#: report/api.py:216 report/api.py:252 #, python-brace-format msgid "Template file '{template}' is missing or does not exist" msgstr "" -#: report/api.py:360 +#: report/api.py:355 msgid "Test report" msgstr "" @@ -5852,12 +5892,12 @@ msgid "Stock Item Test Report" msgstr "" #: report/templates/report/inventree_test_report_base.html:79 -#: stock/models.py:641 stock/templates/stock/item_base.html:322 +#: stock/models.py:648 stock/templates/stock/item_base.html:322 #: templates/js/translated/build.js:424 templates/js/translated/build.js:576 #: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673 #: templates/js/translated/model_renderers.js:118 #: templates/js/translated/order.js:118 templates/js/translated/order.js:3297 -#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:486 +#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490 msgid "Serial Number" msgstr "" @@ -5866,19 +5906,19 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report_base.html:93 -#: stock/models.py:2076 +#: stock/models.py:2083 msgid "Test" msgstr "" #: report/templates/report/inventree_test_report_base.html:94 -#: stock/models.py:2082 +#: stock/models.py:2089 msgid "Result" msgstr "" #: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:51 +#: templates/InvenTree/settings/plugin.html:53 #: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2459 +#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468 msgid "Date" msgstr "" @@ -5896,8 +5936,8 @@ msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report_base.html:137 -#: templates/js/translated/stock.js:606 templates/js/translated/stock.js:776 -#: templates/js/translated/stock.js:2708 +#: templates/js/translated/stock.js:610 templates/js/translated/stock.js:780 +#: templates/js/translated/stock.js:2717 msgid "Serial" msgstr "" @@ -5913,241 +5953,241 @@ msgstr "" msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" -#: stock/models.py:82 stock/models.py:732 +#: stock/models.py:89 stock/models.py:739 #: stock/templates/stock/item_base.html:252 msgid "Owner" msgstr "" -#: stock/models.py:83 stock/models.py:733 +#: stock/models.py:90 stock/models.py:740 msgid "Select Owner" msgstr "" -#: stock/models.py:435 +#: stock/models.py:442 msgid "StockItem with this serial number already exists" msgstr "" -#: stock/models.py:467 stock/serializers.py:95 +#: stock/models.py:474 stock/serializers.py:95 msgid "Stock item cannot be created for virtual parts" msgstr "" -#: stock/models.py:484 +#: stock/models.py:491 #, python-brace-format msgid "Part type ('{pf}') must be {pe}" msgstr "" -#: stock/models.py:494 stock/models.py:503 +#: stock/models.py:501 stock/models.py:510 msgid "Quantity must be 1 for item with a serial number" msgstr "" -#: stock/models.py:495 +#: stock/models.py:502 msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:517 +#: stock/models.py:524 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:523 +#: stock/models.py:530 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:537 +#: stock/models.py:544 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:583 +#: stock/models.py:590 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:593 +#: stock/models.py:600 msgid "Base part" msgstr "" -#: stock/models.py:601 +#: stock/models.py:608 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:608 stock/templates/stock/location.html:17 +#: stock/models.py:615 stock/templates/stock/location.html:17 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" msgstr "" -#: stock/models.py:611 +#: stock/models.py:618 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:618 +#: stock/models.py:625 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:624 stock/templates/stock/item_base.html:361 +#: stock/models.py:631 stock/templates/stock/item_base.html:361 msgid "Installed In" msgstr "" -#: stock/models.py:627 +#: stock/models.py:634 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:643 +#: stock/models.py:650 msgid "Serial number for this item" msgstr "" -#: stock/models.py:657 +#: stock/models.py:664 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:662 +#: stock/models.py:669 msgid "Stock Quantity" msgstr "" -#: stock/models.py:671 +#: stock/models.py:678 msgid "Source Build" msgstr "" -#: stock/models.py:673 +#: stock/models.py:680 msgid "Build for this stock item" msgstr "" -#: stock/models.py:684 +#: stock/models.py:691 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:687 +#: stock/models.py:694 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:693 +#: stock/models.py:700 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:699 stock/templates/stock/item_base.html:429 -#: templates/js/translated/stock.js:1879 +#: stock/models.py:706 stock/templates/stock/item_base.html:429 +#: templates/js/translated/stock.js:1883 msgid "Expiry Date" msgstr "" -#: stock/models.py:700 +#: stock/models.py:707 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:713 +#: stock/models.py:720 msgid "Delete on deplete" msgstr "" -#: stock/models.py:713 +#: stock/models.py:720 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:720 stock/templates/stock/item.html:132 +#: stock/models.py:727 stock/templates/stock/item.html:132 msgid "Stock Item Notes" msgstr "" -#: stock/models.py:728 +#: stock/models.py:735 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:756 +#: stock/models.py:763 msgid "Converted to part" msgstr "" -#: stock/models.py:1235 +#: stock/models.py:1242 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1241 +#: stock/models.py:1248 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1247 +#: stock/models.py:1254 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({n})" msgstr "" -#: stock/models.py:1250 +#: stock/models.py:1257 msgid "Serial numbers must be a list of integers" msgstr "" -#: stock/models.py:1253 +#: stock/models.py:1260 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1260 +#: stock/models.py:1267 #, python-brace-format msgid "Serial numbers already exist: {exists}" msgstr "" -#: stock/models.py:1330 +#: stock/models.py:1337 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1333 +#: stock/models.py:1340 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1336 +#: stock/models.py:1343 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1339 +#: stock/models.py:1346 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1342 +#: stock/models.py:1349 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1345 +#: stock/models.py:1352 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1352 stock/serializers.py:959 +#: stock/models.py:1359 stock/serializers.py:961 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1356 +#: stock/models.py:1363 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1360 +#: stock/models.py:1367 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1364 +#: stock/models.py:1371 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:1533 +#: stock/models.py:1540 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:1994 +#: stock/models.py:2001 msgid "Entry notes" msgstr "" -#: stock/models.py:2052 +#: stock/models.py:2059 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2058 +#: stock/models.py:2065 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2077 +#: stock/models.py:2084 msgid "Test name" msgstr "" -#: stock/models.py:2083 +#: stock/models.py:2090 msgid "Test result" msgstr "" -#: stock/models.py:2089 +#: stock/models.py:2096 msgid "Test output value" msgstr "" -#: stock/models.py:2096 +#: stock/models.py:2103 msgid "Test result attachment" msgstr "" -#: stock/models.py:2102 +#: stock/models.py:2109 msgid "Test notes" msgstr "" @@ -6172,7 +6212,7 @@ msgstr "" msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:323 stock/serializers.py:916 stock/serializers.py:1149 +#: stock/serializers.py:323 stock/serializers.py:918 stock/serializers.py:1151 msgid "Destination stock location" msgstr "" @@ -6220,63 +6260,63 @@ msgstr "" msgid "Destination location for returned item" msgstr "" -#: stock/serializers.py:771 +#: stock/serializers.py:773 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:775 +#: stock/serializers.py:777 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:779 +#: stock/serializers.py:781 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:810 +#: stock/serializers.py:812 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:816 +#: stock/serializers.py:818 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:824 +#: stock/serializers.py:826 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:834 stock/serializers.py:1065 +#: stock/serializers.py:836 stock/serializers.py:1067 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:923 +#: stock/serializers.py:925 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:928 +#: stock/serializers.py:930 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:929 +#: stock/serializers.py:931 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:934 +#: stock/serializers.py:936 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:935 +#: stock/serializers.py:937 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:945 +#: stock/serializers.py:947 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1027 +#: stock/serializers.py:1029 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1055 +#: stock/serializers.py:1057 msgid "Stock transaction notes" msgstr "" @@ -6313,7 +6353,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2852 +#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2861 msgid "Install Stock Item" msgstr "" @@ -6321,7 +6361,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1518 +#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1522 msgid "Add Test Result" msgstr "" @@ -6352,7 +6392,7 @@ msgid "Stock adjustment actions" msgstr "" #: stock/templates/stock/item_base.html:80 -#: stock/templates/stock/location.html:63 templates/stock_table.html:47 +#: stock/templates/stock/location.html:68 templates/stock_table.html:47 msgid "Count stock" msgstr "" @@ -6369,7 +6409,7 @@ msgid "Serialize stock" msgstr "" #: stock/templates/stock/item_base.html:93 -#: stock/templates/stock/location.html:69 templates/stock_table.html:48 +#: stock/templates/stock/location.html:74 templates/stock_table.html:48 msgid "Transfer stock" msgstr "" @@ -6430,7 +6470,7 @@ msgid "You are not in the list of owners of this item. This stock item cannot be msgstr "" #: stock/templates/stock/item_base.html:257 -#: stock/templates/stock/location.html:127 +#: stock/templates/stock/location.html:132 msgid "Read only" msgstr "" @@ -6508,7 +6548,7 @@ msgid "Stale" msgstr "" #: stock/templates/stock/item_base.html:442 -#: templates/js/translated/company.js:985 templates/js/translated/stock.js:1895 +#: templates/js/translated/company.js:985 templates/js/translated/stock.js:1899 msgid "Last Updated" msgstr "" @@ -6552,58 +6592,58 @@ msgstr "" msgid "Select quantity to serialize, and unique serial numbers." msgstr "" -#: stock/templates/stock/location.html:33 +#: stock/templates/stock/location.html:38 msgid "Locate stock location" msgstr "" -#: stock/templates/stock/location.html:49 +#: stock/templates/stock/location.html:54 msgid "Check-in Items" msgstr "" -#: stock/templates/stock/location.html:77 +#: stock/templates/stock/location.html:82 msgid "Location actions" msgstr "" -#: stock/templates/stock/location.html:79 +#: stock/templates/stock/location.html:84 msgid "Edit location" msgstr "" -#: stock/templates/stock/location.html:81 +#: stock/templates/stock/location.html:86 msgid "Delete location" msgstr "" -#: stock/templates/stock/location.html:90 +#: stock/templates/stock/location.html:95 msgid "Create new stock location" msgstr "" -#: stock/templates/stock/location.html:91 +#: stock/templates/stock/location.html:96 msgid "New Location" msgstr "" -#: stock/templates/stock/location.html:109 -#: stock/templates/stock/location.html:115 +#: stock/templates/stock/location.html:114 +#: stock/templates/stock/location.html:120 msgid "Location Path" msgstr "" -#: stock/templates/stock/location.html:116 +#: stock/templates/stock/location.html:121 msgid "Top level stock location" msgstr "" -#: stock/templates/stock/location.html:122 +#: stock/templates/stock/location.html:127 msgid "Location Owner" msgstr "" -#: stock/templates/stock/location.html:126 +#: stock/templates/stock/location.html:131 msgid "You are not in the list of owners of this location. This stock location cannot be edited." msgstr "" -#: stock/templates/stock/location.html:142 -#: stock/templates/stock/location.html:189 +#: stock/templates/stock/location.html:147 +#: stock/templates/stock/location.html:194 #: stock/templates/stock/location_sidebar.html:5 msgid "Sublocations" msgstr "" -#: stock/templates/stock/location.html:156 templates/InvenTree/search.html:165 +#: stock/templates/stock/location.html:161 templates/InvenTree/search.html:165 #: templates/js/translated/search.js:238 users/models.py:39 msgid "Stock Locations" msgstr "" @@ -6875,15 +6915,15 @@ msgstr "" msgid "Part Settings" msgstr "" -#: templates/InvenTree/settings/part.html:44 +#: templates/InvenTree/settings/part.html:46 msgid "Part Import" msgstr "" -#: templates/InvenTree/settings/part.html:48 +#: templates/InvenTree/settings/part.html:50 msgid "Import Part" msgstr "" -#: templates/InvenTree/settings/part.html:62 +#: templates/InvenTree/settings/part.html:64 msgid "Part Parameter Templates" msgstr "" @@ -6895,47 +6935,47 @@ msgstr "" msgid "Changing the settings below require you to immediately restart the server. Do not change this while under active usage." msgstr "" -#: templates/InvenTree/settings/plugin.html:34 +#: templates/InvenTree/settings/plugin.html:36 msgid "Plugins" msgstr "" -#: templates/InvenTree/settings/plugin.html:39 +#: templates/InvenTree/settings/plugin.html:41 #: templates/js/translated/plugin.js:16 msgid "Install Plugin" msgstr "" -#: templates/InvenTree/settings/plugin.html:48 templates/navbar.html:137 +#: templates/InvenTree/settings/plugin.html:50 templates/navbar.html:137 #: users/models.py:36 msgid "Admin" msgstr "" -#: templates/InvenTree/settings/plugin.html:50 +#: templates/InvenTree/settings/plugin.html:52 #: templates/InvenTree/settings/plugin_settings.html:28 msgid "Author" msgstr "" -#: templates/InvenTree/settings/plugin.html:52 +#: templates/InvenTree/settings/plugin.html:54 #: templates/InvenTree/settings/plugin_settings.html:43 msgid "Version" msgstr "" -#: templates/InvenTree/settings/plugin.html:74 +#: templates/InvenTree/settings/plugin.html:76 msgid "Sample" msgstr "" -#: templates/InvenTree/settings/plugin.html:99 +#: templates/InvenTree/settings/plugin.html:101 msgid "Inactive plugins" msgstr "" -#: templates/InvenTree/settings/plugin.html:122 +#: templates/InvenTree/settings/plugin.html:124 msgid "Plugin Error Stack" msgstr "" -#: templates/InvenTree/settings/plugin.html:131 +#: templates/InvenTree/settings/plugin.html:133 msgid "Stage" msgstr "" -#: templates/InvenTree/settings/plugin.html:133 +#: templates/InvenTree/settings/plugin.html:135 #: templates/js/translated/notification.js:75 msgid "Message" msgstr "" @@ -6999,11 +7039,11 @@ msgstr "" msgid "Commit Message" msgstr "" -#: templates/InvenTree/settings/plugin_settings.html:117 +#: templates/InvenTree/settings/plugin_settings.html:120 msgid "Sign Status" msgstr "" -#: templates/InvenTree/settings/plugin_settings.html:122 +#: templates/InvenTree/settings/plugin_settings.html:125 msgid "Sign Key" msgstr "" @@ -7828,7 +7868,7 @@ msgstr "" msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:456 templates/js/translated/stock.js:1050 +#: templates/js/translated/barcode.js:456 templates/js/translated/stock.js:1054 msgid "Remove stock item" msgstr "" @@ -8001,7 +8041,7 @@ msgid "Includes variant and substitute stock" msgstr "" #: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822 -#: templates/js/translated/part.js:759 +#: templates/js/translated/part.js:763 msgid "Includes variant stock" msgstr "" @@ -8098,12 +8138,12 @@ msgid "Complete Build Order" msgstr "" #: templates/js/translated/build.js:263 templates/js/translated/stock.js:92 -#: templates/js/translated/stock.js:210 +#: templates/js/translated/stock.js:214 msgid "Next available serial number" msgstr "" #: templates/js/translated/build.js:265 templates/js/translated/stock.js:94 -#: templates/js/translated/stock.js:212 +#: templates/js/translated/stock.js:216 msgid "Latest serial number" msgstr "" @@ -8316,9 +8356,9 @@ msgstr "" msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1383 -#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1682 -#: templates/js/translated/stock.js:2382 +#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387 +#: templates/js/translated/part.js:1899 templates/js/translated/stock.js:1686 +#: templates/js/translated/stock.js:2386 msgid "Select" msgstr "" @@ -8330,7 +8370,7 @@ msgstr "" msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2638 +#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647 msgid "No user information" msgstr "" @@ -8403,34 +8443,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:616 -#: templates/js/translated/company.js:876 templates/js/translated/part.js:634 -#: templates/js/translated/part.js:719 +#: templates/js/translated/company.js:876 templates/js/translated/part.js:638 +#: templates/js/translated/part.js:723 msgid "Template part" msgstr "" #: templates/js/translated/company.js:620 -#: templates/js/translated/company.js:880 templates/js/translated/part.js:638 -#: templates/js/translated/part.js:723 +#: templates/js/translated/company.js:880 templates/js/translated/part.js:642 +#: templates/js/translated/part.js:727 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:748 templates/js/translated/part.js:826 +#: templates/js/translated/company.js:748 templates/js/translated/part.js:830 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:785 templates/js/translated/part.js:868 +#: templates/js/translated/company.js:785 templates/js/translated/part.js:872 msgid "Edit parameter" msgstr "" -#: templates/js/translated/company.js:786 templates/js/translated/part.js:869 +#: templates/js/translated/company.js:786 templates/js/translated/part.js:873 msgid "Delete parameter" msgstr "" -#: templates/js/translated/company.js:805 templates/js/translated/part.js:886 +#: templates/js/translated/company.js:805 templates/js/translated/part.js:890 msgid "Edit Parameter" msgstr "" -#: templates/js/translated/company.js:816 templates/js/translated/part.js:898 +#: templates/js/translated/company.js:816 templates/js/translated/part.js:902 msgid "Delete Parameter" msgstr "" @@ -8555,7 +8595,7 @@ msgid "Labels sent to printer" msgstr "" #: templates/js/translated/label.js:60 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1078 msgid "Select Stock Items" msgstr "" @@ -8865,7 +8905,7 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2140 +#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144 msgid "Stock Status" msgstr "" @@ -8889,7 +8929,7 @@ msgstr "" msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:1672 templates/js/translated/part.js:939 +#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943 msgid "No purchase orders found" msgstr "" @@ -8924,7 +8964,7 @@ msgstr "" #: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203 #: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050 -#: templates/js/translated/part.js:2126 templates/js/translated/part.js:2479 +#: templates/js/translated/part.js:2135 templates/js/translated/part.js:2488 msgid "Unit Price" msgstr "" @@ -8934,11 +8974,11 @@ msgid "Total Price" msgstr "" #: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600 -#: templates/js/translated/part.js:1046 +#: templates/js/translated/part.js:1050 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1092 +#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096 msgid "Receive line item" msgstr "" @@ -9059,7 +9099,7 @@ msgid "Delete Stock Allocation" msgstr "" #: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398 -#: templates/js/translated/stock.js:1598 +#: templates/js/translated/stock.js:1602 msgid "Shipped to customer" msgstr "" @@ -9183,241 +9223,245 @@ msgstr "" msgid "Parent part category" msgstr "" -#: templates/js/translated/part.js:318 +#: templates/js/translated/part.js:306 templates/js/translated/stock.js:118 +msgid "Icon (optional) - Explore all available icons on" +msgstr "" + +#: templates/js/translated/part.js:322 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:331 +#: templates/js/translated/part.js:335 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:333 +#: templates/js/translated/part.js:337 msgid "Any child categories will be moved to the parent of this category" msgstr "" -#: templates/js/translated/part.js:334 +#: templates/js/translated/part.js:338 msgid "Any parts in this category will be moved to the parent of this category" msgstr "" -#: templates/js/translated/part.js:339 +#: templates/js/translated/part.js:343 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:365 +#: templates/js/translated/part.js:369 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:367 +#: templates/js/translated/part.js:371 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:378 +#: templates/js/translated/part.js:382 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:430 +#: templates/js/translated/part.js:434 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:431 +#: templates/js/translated/part.js:435 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:445 +#: templates/js/translated/part.js:449 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:447 +#: templates/js/translated/part.js:451 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:448 +#: templates/js/translated/part.js:452 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:449 +#: templates/js/translated/part.js:453 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:456 +#: templates/js/translated/part.js:460 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:492 +#: templates/js/translated/part.js:496 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:494 +#: templates/js/translated/part.js:498 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:499 +#: templates/js/translated/part.js:503 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:501 +#: templates/js/translated/part.js:505 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:518 +#: templates/js/translated/part.js:522 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:528 +#: templates/js/translated/part.js:532 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:531 +#: templates/js/translated/part.js:535 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:556 +#: templates/js/translated/part.js:560 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:582 templates/js/translated/part.js:1466 +#: templates/js/translated/part.js:586 templates/js/translated/part.js:1470 #: templates/js/translated/table_filters.js:468 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:592 templates/js/translated/part.js:1478 +#: templates/js/translated/part.js:596 templates/js/translated/part.js:1482 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:626 templates/js/translated/part.js:711 +#: templates/js/translated/part.js:630 templates/js/translated/part.js:715 msgid "Trackable part" msgstr "" -#: templates/js/translated/part.js:630 templates/js/translated/part.js:715 +#: templates/js/translated/part.js:634 templates/js/translated/part.js:719 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:642 +#: templates/js/translated/part.js:646 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:646 +#: templates/js/translated/part.js:650 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:774 +#: templates/js/translated/part.js:778 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1162 +#: templates/js/translated/part.js:1166 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1186 +#: templates/js/translated/part.js:1190 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:1253 templates/js/translated/part.js:1549 +#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1553 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:1292 +#: templates/js/translated/part.js:1296 msgid "Not available" msgstr "" -#: templates/js/translated/part.js:1443 +#: templates/js/translated/part.js:1447 msgid "No category" msgstr "" -#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816 -#: templates/js/translated/stock.js:2343 +#: templates/js/translated/part.js:1577 templates/js/translated/part.js:1820 +#: templates/js/translated/stock.js:2347 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:1589 +#: templates/js/translated/part.js:1593 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:1655 +#: templates/js/translated/part.js:1659 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:1660 +#: templates/js/translated/part.js:1664 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:1665 +#: templates/js/translated/part.js:1669 msgid "Select Part Category" msgstr "" -#: templates/js/translated/part.js:1678 +#: templates/js/translated/part.js:1682 msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2362 +#: templates/js/translated/part.js:1839 templates/js/translated/stock.js:2366 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:1914 +#: templates/js/translated/part.js:1918 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:1925 +#: templates/js/translated/part.js:1934 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:1983 +#: templates/js/translated/part.js:1992 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2034 templates/js/translated/stock.js:1295 +#: templates/js/translated/part.js:2043 templates/js/translated/stock.js:1299 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:2035 templates/js/translated/stock.js:1296 -#: templates/js/translated/stock.js:1556 +#: templates/js/translated/part.js:2044 templates/js/translated/stock.js:1300 +#: templates/js/translated/stock.js:1560 msgid "Delete test result" msgstr "" -#: templates/js/translated/part.js:2041 +#: templates/js/translated/part.js:2050 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2063 +#: templates/js/translated/part.js:2072 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2077 +#: templates/js/translated/part.js:2086 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2102 +#: templates/js/translated/part.js:2111 #, python-brace-format msgid "No ${human_name} information found" msgstr "" -#: templates/js/translated/part.js:2159 +#: templates/js/translated/part.js:2168 #, python-brace-format msgid "Edit ${human_name}" msgstr "" -#: templates/js/translated/part.js:2160 +#: templates/js/translated/part.js:2169 #, python-brace-format msgid "Delete ${human_name}" msgstr "" -#: templates/js/translated/part.js:2274 +#: templates/js/translated/part.js:2283 msgid "Current Stock" msgstr "" -#: templates/js/translated/part.js:2307 +#: templates/js/translated/part.js:2316 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2333 +#: templates/js/translated/part.js:2342 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2403 +#: templates/js/translated/part.js:2412 msgid "Single Price" msgstr "" -#: templates/js/translated/part.js:2422 +#: templates/js/translated/part.js:2431 msgid "Single Price Difference" msgstr "" @@ -9511,376 +9555,376 @@ msgstr "" msgid "Parent stock location" msgstr "" -#: templates/js/translated/stock.js:140 +#: templates/js/translated/stock.js:144 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:155 +#: templates/js/translated/stock.js:159 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:169 +#: templates/js/translated/stock.js:173 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:171 +#: templates/js/translated/stock.js:175 msgid "Any child locations will be moved to the parent of this location" msgstr "" -#: templates/js/translated/stock.js:172 +#: templates/js/translated/stock.js:176 msgid "Any stock items in this location will be moved to the parent of this location" msgstr "" -#: templates/js/translated/stock.js:178 +#: templates/js/translated/stock.js:182 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:223 +#: templates/js/translated/stock.js:227 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:262 +#: templates/js/translated/stock.js:266 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:268 +#: templates/js/translated/stock.js:272 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:333 +#: templates/js/translated/stock.js:337 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:353 +#: templates/js/translated/stock.js:357 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:369 +#: templates/js/translated/stock.js:373 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:374 +#: templates/js/translated/stock.js:378 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:395 +#: templates/js/translated/stock.js:399 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:445 +#: templates/js/translated/stock.js:449 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:458 +#: templates/js/translated/stock.js:462 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:483 +#: templates/js/translated/stock.js:487 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:487 templates/js/translated/stock.js:488 +#: templates/js/translated/stock.js:491 templates/js/translated/stock.js:492 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:504 +#: templates/js/translated/stock.js:508 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:524 +#: templates/js/translated/stock.js:528 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:533 +#: templates/js/translated/stock.js:537 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:656 +#: templates/js/translated/stock.js:660 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:657 +#: templates/js/translated/stock.js:661 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:734 +#: templates/js/translated/stock.js:738 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:735 +#: templates/js/translated/stock.js:739 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:737 +#: templates/js/translated/stock.js:741 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:738 +#: templates/js/translated/stock.js:742 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:824 +#: templates/js/translated/stock.js:828 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:825 +#: templates/js/translated/stock.js:829 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:920 +#: templates/js/translated/stock.js:924 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:921 +#: templates/js/translated/stock.js:925 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:927 +#: templates/js/translated/stock.js:931 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:928 +#: templates/js/translated/stock.js:932 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:932 +#: templates/js/translated/stock.js:936 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:933 +#: templates/js/translated/stock.js:937 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:937 +#: templates/js/translated/stock.js:941 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:938 users/models.py:216 +#: templates/js/translated/stock.js:942 users/models.py:216 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:942 +#: templates/js/translated/stock.js:946 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1035 +#: templates/js/translated/stock.js:1039 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1035 +#: templates/js/translated/stock.js:1039 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1075 +#: templates/js/translated/stock.js:1079 msgid "You must select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1098 +#: templates/js/translated/stock.js:1102 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1234 +#: templates/js/translated/stock.js:1238 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1236 +#: templates/js/translated/stock.js:1240 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1241 +#: templates/js/translated/stock.js:1245 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1288 +#: templates/js/translated/stock.js:1292 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1291 +#: templates/js/translated/stock.js:1295 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1317 +#: templates/js/translated/stock.js:1321 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1374 +#: templates/js/translated/stock.js:1378 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1539 +#: templates/js/translated/stock.js:1543 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1561 +#: templates/js/translated/stock.js:1565 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1590 +#: templates/js/translated/stock.js:1594 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1594 +#: templates/js/translated/stock.js:1598 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1602 +#: templates/js/translated/stock.js:1606 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1608 +#: templates/js/translated/stock.js:1612 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1775 +#: templates/js/translated/stock.js:1779 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:1780 +#: templates/js/translated/stock.js:1784 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:1783 +#: templates/js/translated/stock.js:1787 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:1786 +#: templates/js/translated/stock.js:1790 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:1788 +#: templates/js/translated/stock.js:1792 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:1790 +#: templates/js/translated/stock.js:1794 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:1793 +#: templates/js/translated/stock.js:1797 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:1797 +#: templates/js/translated/stock.js:1801 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:1799 +#: templates/js/translated/stock.js:1803 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:1806 +#: templates/js/translated/stock.js:1810 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:1808 +#: templates/js/translated/stock.js:1812 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:1810 +#: templates/js/translated/stock.js:1814 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:1814 +#: templates/js/translated/stock.js:1818 #: templates/js/translated/table_filters.js:196 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:1865 +#: templates/js/translated/stock.js:1869 msgid "Stocktake" msgstr "" -#: templates/js/translated/stock.js:1944 +#: templates/js/translated/stock.js:1948 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:1982 +#: templates/js/translated/stock.js:1986 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2155 +#: templates/js/translated/stock.js:2159 msgid "Set Stock Status" msgstr "" -#: templates/js/translated/stock.js:2169 +#: templates/js/translated/stock.js:2173 msgid "Select Status Code" msgstr "" -#: templates/js/translated/stock.js:2170 +#: templates/js/translated/stock.js:2174 msgid "Status code must be selected" msgstr "" -#: templates/js/translated/stock.js:2400 +#: templates/js/translated/stock.js:2404 msgid "Load Subloactions" msgstr "" -#: templates/js/translated/stock.js:2484 +#: templates/js/translated/stock.js:2493 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2500 +#: templates/js/translated/stock.js:2509 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2522 +#: templates/js/translated/stock.js:2531 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2541 +#: templates/js/translated/stock.js:2550 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2560 +#: templates/js/translated/stock.js:2569 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2578 +#: templates/js/translated/stock.js:2587 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:2601 +#: templates/js/translated/stock.js:2610 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:2609 +#: templates/js/translated/stock.js:2618 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:2685 +#: templates/js/translated/stock.js:2694 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:2736 templates/js/translated/stock.js:2772 +#: templates/js/translated/stock.js:2745 templates/js/translated/stock.js:2781 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:2785 +#: templates/js/translated/stock.js:2794 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:2806 +#: templates/js/translated/stock.js:2815 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:2807 +#: templates/js/translated/stock.js:2816 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:2809 +#: templates/js/translated/stock.js:2818 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:2810 +#: templates/js/translated/stock.js:2819 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:2811 +#: templates/js/translated/stock.js:2820 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:2812 +#: templates/js/translated/stock.js:2821 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:2825 +#: templates/js/translated/stock.js:2834 msgid "Select part to install" msgstr "" diff --git a/InvenTree/locale/ko/LC_MESSAGES/django.po b/InvenTree/locale/ko/LC_MESSAGES/django.po index f2caec51b5..b9b1ae40f7 100644 --- a/InvenTree/locale/ko/LC_MESSAGES/django.po +++ b/InvenTree/locale/ko/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-11 02:47+0000\n" -"PO-Revision-Date: 2022-08-11 13:49\n" +"POT-Creation-Date: 2022-08-16 11:53+0000\n" +"PO-Revision-Date: 2022-08-16 21:36\n" "Last-Translator: \n" "Language-Team: Korean\n" "Language: ko_KR\n" @@ -36,15 +36,15 @@ msgstr "" #: order/templates/order/so_sidebar.html:17 #: part/templates/part/part_sidebar.html:59 #: report/templates/report/inventree_build_order_base.html:172 -#: stock/models.py:1993 stock/models.py:2101 stock/serializers.py:329 -#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:823 -#: stock/serializers.py:922 stock/serializers.py:1054 +#: stock/models.py:2000 stock/models.py:2108 stock/serializers.py:329 +#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825 +#: stock/serializers.py:924 stock/serializers.py:1056 #: stock/templates/stock/stock_sidebar.html:25 #: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101 #: templates/js/translated/company.js:964 templates/js/translated/order.js:2104 #: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753 #: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102 -#: templates/js/translated/stock.js:1370 templates/js/translated/stock.js:1976 +#: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980 msgid "Notes" msgstr "" @@ -163,6 +163,10 @@ msgstr "" msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "" +#: InvenTree/mixins.py:71 +msgid "Remove HTML tags from this value" +msgstr "" + #: InvenTree/models.py:236 msgid "Improperly formatted pattern" msgstr "" @@ -195,7 +199,7 @@ msgstr "" msgid "Missing external link" msgstr "" -#: InvenTree/models.py:395 stock/models.py:2095 +#: InvenTree/models.py:395 stock/models.py:2102 #: templates/js/translated/attachment.js:103 #: templates/js/translated/attachment.js:241 msgid "Attachment" @@ -207,16 +211,16 @@ msgstr "첨부할 파일을 선택하세요" #: InvenTree/models.py:402 company/models.py:124 company/models.py:276 #: company/models.py:510 order/models.py:84 order/models.py:1245 -#: part/models.py:795 +#: part/models.py:802 #: report/templates/report/inventree_build_order_base.html:164 #: templates/js/translated/company.js:656 #: templates/js/translated/company.js:948 templates/js/translated/order.js:2742 -#: templates/js/translated/part.js:1510 +#: templates/js/translated/part.js:1514 msgid "Link" msgstr "링크" -#: InvenTree/models.py:403 build/models.py:296 part/models.py:796 -#: stock/models.py:651 +#: InvenTree/models.py:403 build/models.py:296 part/models.py:803 +#: stock/models.py:658 msgid "Link to external URL" msgstr "외부 URL로 링크" @@ -229,12 +233,12 @@ msgstr "" msgid "File comment" msgstr "" -#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1646 -#: common/models.py:1647 common/models.py:1870 common/models.py:1871 -#: common/models.py:2133 common/models.py:2134 part/models.py:2193 -#: part/models.py:2213 plugin/models.py:238 plugin/models.py:239 +#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665 +#: common/models.py:1666 common/models.py:1889 common/models.py:1890 +#: common/models.py:2152 common/models.py:2153 part/models.py:2200 +#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2632 +#: templates/js/translated/stock.js:2641 msgid "User" msgstr "사용자" @@ -271,19 +275,19 @@ msgstr "파일 이름 바꾸기 오류" msgid "Invalid choice" msgstr "" -#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1856 -#: company/models.py:358 label/models.py:101 part/models.py:739 -#: part/models.py:2371 plugin/models.py:93 report/models.py:152 +#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875 +#: company/models.py:358 label/models.py:101 part/models.py:746 +#: part/models.py:2378 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 -#: templates/InvenTree/settings/plugin.html:49 -#: templates/InvenTree/settings/plugin.html:132 +#: templates/InvenTree/settings/plugin.html:51 +#: templates/InvenTree/settings/plugin.html:134 #: templates/InvenTree/settings/plugin_settings.html:23 #: templates/InvenTree/settings/settings.html:347 #: templates/js/translated/company.js:545 #: templates/js/translated/company.js:758 #: templates/js/translated/notification.js:71 -#: templates/js/translated/part.js:684 templates/js/translated/part.js:836 -#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2388 +#: templates/js/translated/part.js:688 templates/js/translated/part.js:840 +#: templates/js/translated/part.js:1906 templates/js/translated/stock.js:2392 msgid "Name" msgstr "이름" @@ -292,21 +296,21 @@ msgstr "이름" #: company/models.py:516 company/templates/company/company_base.html:71 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:87 label/models.py:108 -#: order/models.py:82 part/models.py:762 part/templates/part/category.html:74 +#: order/models.py:82 part/models.py:769 part/templates/part/category.html:80 #: part/templates/part/part_base.html:167 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 -#: stock/templates/stock/location.html:103 +#: stock/templates/stock/location.html:108 #: templates/InvenTree/settings/plugin_settings.html:33 #: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848 #: templates/js/translated/build.js:2471 templates/js/translated/company.js:409 #: templates/js/translated/company.js:667 #: templates/js/translated/company.js:959 templates/js/translated/order.js:1720 #: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531 -#: templates/js/translated/part.js:743 templates/js/translated/part.js:1149 -#: templates/js/translated/part.js:1424 templates/js/translated/part.js:1933 -#: templates/js/translated/part.js:2002 templates/js/translated/stock.js:1739 -#: templates/js/translated/stock.js:2415 templates/js/translated/stock.js:2469 +#: templates/js/translated/part.js:747 templates/js/translated/part.js:1153 +#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1942 +#: templates/js/translated/part.js:2011 templates/js/translated/stock.js:1743 +#: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478 msgid "Description" msgstr "설명" @@ -319,7 +323,7 @@ msgid "parent" msgstr "" #: InvenTree/models.py:560 InvenTree/models.py:561 -#: templates/js/translated/part.js:1939 templates/js/translated/stock.js:2421 +#: templates/js/translated/part.js:1948 templates/js/translated/stock.js:2430 msgid "Path" msgstr "" @@ -331,7 +335,7 @@ msgstr "" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:55 part/models.py:2692 +#: InvenTree/serializers.py:55 part/models.py:2699 msgid "Must be a valid number" msgstr "유효한 숫자여야 합니다" @@ -398,99 +402,99 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/settings.py:609 +#: InvenTree/settings.py:607 msgid "Czech" msgstr "체코어" -#: InvenTree/settings.py:610 +#: InvenTree/settings.py:608 msgid "German" msgstr "독일어" -#: InvenTree/settings.py:611 +#: InvenTree/settings.py:609 msgid "Greek" msgstr "그리스어" -#: InvenTree/settings.py:612 +#: InvenTree/settings.py:610 msgid "English" msgstr "영어" -#: InvenTree/settings.py:613 +#: InvenTree/settings.py:611 msgid "Spanish" msgstr "스페인어" -#: InvenTree/settings.py:614 +#: InvenTree/settings.py:612 msgid "Spanish (Mexican)" msgstr "스페인어 (멕시코)" -#: InvenTree/settings.py:615 +#: InvenTree/settings.py:613 msgid "Farsi / Persian" msgstr "파르시어/페르시아어" -#: InvenTree/settings.py:616 +#: InvenTree/settings.py:614 msgid "French" msgstr "프랑스어" -#: InvenTree/settings.py:617 +#: InvenTree/settings.py:615 msgid "Hebrew" msgstr "히브리어" -#: InvenTree/settings.py:618 +#: InvenTree/settings.py:616 msgid "Hungarian" msgstr "헝가리어" -#: InvenTree/settings.py:619 +#: InvenTree/settings.py:617 msgid "Italian" msgstr "이탈리아어" -#: InvenTree/settings.py:620 +#: InvenTree/settings.py:618 msgid "Japanese" msgstr "일본어" -#: InvenTree/settings.py:621 +#: InvenTree/settings.py:619 msgid "Korean" msgstr "한국어" -#: InvenTree/settings.py:622 +#: InvenTree/settings.py:620 msgid "Dutch" msgstr "네덜란드어" -#: InvenTree/settings.py:623 +#: InvenTree/settings.py:621 msgid "Norwegian" msgstr "노르웨이어" -#: InvenTree/settings.py:624 +#: InvenTree/settings.py:622 msgid "Polish" msgstr "폴란드어" -#: InvenTree/settings.py:625 +#: InvenTree/settings.py:623 msgid "Portuguese" msgstr "" -#: InvenTree/settings.py:626 +#: InvenTree/settings.py:624 msgid "Portuguese (Brazilian)" msgstr "" -#: InvenTree/settings.py:627 +#: InvenTree/settings.py:625 msgid "Russian" msgstr "러시아어" -#: InvenTree/settings.py:628 +#: InvenTree/settings.py:626 msgid "Swedish" msgstr "스웨덴어" -#: InvenTree/settings.py:629 +#: InvenTree/settings.py:627 msgid "Thai" msgstr "태국어" -#: InvenTree/settings.py:630 +#: InvenTree/settings.py:628 msgid "Turkish" msgstr "터키어" -#: InvenTree/settings.py:631 +#: InvenTree/settings.py:629 msgid "Vietnamese" msgstr "베트남어" -#: InvenTree/settings.py:632 +#: InvenTree/settings.py:630 msgid "Chinese" msgstr "중국어" @@ -621,7 +625,7 @@ msgstr "" msgid "Split child item" msgstr "" -#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2080 +#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2084 msgid "Merged stock items" msgstr "" @@ -743,7 +747,7 @@ msgid "Build Order Reference" msgstr "" #: build/models.py:166 order/models.py:240 order/models.py:623 -#: order/models.py:904 part/models.py:2610 +#: order/models.py:904 part/models.py:2617 #: part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 @@ -770,10 +774,10 @@ msgstr "" #: build/models.py:191 build/templates/build/build_base.html:77 #: build/templates/build/detail.html:29 company/models.py:670 #: order/models.py:1001 order/models.py:1112 order/models.py:1113 -#: part/models.py:336 part/models.py:2139 part/models.py:2154 -#: part/models.py:2173 part/models.py:2191 part/models.py:2290 -#: part/models.py:2410 part/models.py:2500 part/models.py:2585 -#: part/models.py:2861 part/serializers.py:811 +#: part/models.py:343 part/models.py:2146 part/models.py:2161 +#: part/models.py:2180 part/models.py:2198 part/models.py:2297 +#: part/models.py:2417 part/models.py:2507 part/models.py:2592 +#: part/models.py:2868 part/serializers.py:813 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -796,11 +800,11 @@ msgstr "" #: templates/js/translated/order.js:934 templates/js/translated/order.js:1387 #: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885 #: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507 -#: templates/js/translated/part.js:1134 templates/js/translated/part.js:1206 -#: templates/js/translated/part.js:1402 templates/js/translated/stock.js:582 -#: templates/js/translated/stock.js:747 templates/js/translated/stock.js:954 -#: templates/js/translated/stock.js:1696 templates/js/translated/stock.js:2495 -#: templates/js/translated/stock.js:2690 templates/js/translated/stock.js:2824 +#: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210 +#: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586 +#: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958 +#: templates/js/translated/stock.js:1700 templates/js/translated/stock.js:2504 +#: templates/js/translated/stock.js:2699 templates/js/translated/stock.js:2833 msgid "Part" msgstr "" @@ -858,7 +862,7 @@ msgid "Build status code" msgstr "" #: build/models.py:251 build/serializers.py:225 order/serializers.py:447 -#: stock/models.py:655 templates/js/translated/order.js:1247 +#: stock/models.py:662 templates/js/translated/order.js:1247 msgid "Batch Code" msgstr "" @@ -866,7 +870,7 @@ msgstr "" msgid "Batch code for this build output" msgstr "" -#: build/models.py:258 order/models.py:86 part/models.py:931 +#: build/models.py:258 order/models.py:86 part/models.py:938 #: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544 msgid "Creation Date" msgstr "" @@ -899,7 +903,7 @@ msgstr "" #: build/models.py:289 build/templates/build/build_base.html:190 #: build/templates/build/detail.html:115 order/models.py:100 #: order/templates/order/order_base.html:176 -#: order/templates/order/sales_order_base.html:183 part/models.py:935 +#: order/templates/order/sales_order_base.html:183 part/models.py:942 #: report/templates/report/inventree_build_order_base.html:158 #: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754 msgid "Responsible" @@ -912,7 +916,7 @@ msgstr "" #: build/models.py:295 build/templates/build/detail.html:101 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:153 -#: part/templates/part/part_base.html:346 stock/models.py:649 +#: part/templates/part/part_base.html:346 stock/models.py:656 #: stock/templates/stock/item_base.html:205 msgid "External Link" msgstr "외부 링크" @@ -978,8 +982,8 @@ msgid "Build to allocate parts" msgstr "" #: build/models.py:1345 build/serializers.py:645 order/serializers.py:1015 -#: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 -#: stock/serializers.py:880 stock/templates/stock/item_base.html:10 +#: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:756 +#: stock/serializers.py:882 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:199 #: templates/js/translated/build.js:741 templates/js/translated/build.js:746 @@ -987,8 +991,8 @@ msgstr "" #: templates/js/translated/order.js:104 templates/js/translated/order.js:2886 #: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193 #: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380 -#: templates/js/translated/stock.js:583 templates/js/translated/stock.js:748 -#: templates/js/translated/stock.js:2568 +#: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752 +#: templates/js/translated/stock.js:2577 msgid "Stock Item" msgstr "" @@ -998,11 +1002,11 @@ msgstr "" #: build/models.py:1358 build/serializers.py:193 #: build/templates/build/build_base.html:82 -#: build/templates/build/detail.html:34 common/models.py:1678 +#: build/templates/build/detail.html:34 common/models.py:1697 #: company/templates/company/supplier_part.html:279 order/models.py:897 #: order/models.py:1423 order/serializers.py:1155 #: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40 -#: part/models.py:2601 part/templates/part/detail.html:937 +#: part/models.py:2608 part/templates/part/detail.html:937 #: part/templates/part/detail.html:1023 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 @@ -1025,11 +1029,11 @@ msgstr "" #: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207 #: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386 #: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037 -#: templates/js/translated/part.js:1034 templates/js/translated/part.js:2147 -#: templates/js/translated/part.js:2378 templates/js/translated/part.js:2412 -#: templates/js/translated/part.js:2490 templates/js/translated/stock.js:454 -#: templates/js/translated/stock.js:608 templates/js/translated/stock.js:778 -#: templates/js/translated/stock.js:2617 templates/js/translated/stock.js:2702 +#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2156 +#: templates/js/translated/part.js:2387 templates/js/translated/part.js:2421 +#: templates/js/translated/part.js:2499 templates/js/translated/stock.js:458 +#: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782 +#: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711 msgid "Quantity" msgstr "수량" @@ -1071,8 +1075,8 @@ msgid "Enter quantity for build output" msgstr "" #: build/serializers.py:208 build/serializers.py:665 order/models.py:318 -#: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 -#: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 +#: order/serializers.py:287 order/serializers.py:442 part/serializers.py:544 +#: part/serializers.py:976 stock/models.py:484 stock/models.py:1251 #: stock/serializers.py:302 msgid "Quantity must be greater than zero" msgstr "수량 값은 0보다 커야 합니다" @@ -1087,7 +1091,7 @@ msgstr "" #: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159 #: stock/serializers.py:311 templates/js/translated/order.js:1258 -#: templates/js/translated/stock.js:267 templates/js/translated/stock.js:455 +#: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459 msgid "Serial Numbers" msgstr "일련번호" @@ -1113,16 +1117,16 @@ msgstr "" #: build/serializers.py:366 order/serializers.py:428 order/serializers.py:532 #: stock/serializers.py:322 stock/serializers.py:453 stock/serializers.py:534 -#: stock/serializers.py:915 stock/serializers.py:1148 +#: stock/serializers.py:917 stock/serializers.py:1150 #: stock/templates/stock/item_base.html:390 #: templates/js/translated/barcode.js:436 #: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753 #: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285 #: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305 #: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394 -#: templates/js/translated/part.js:181 templates/js/translated/stock.js:584 -#: templates/js/translated/stock.js:749 templates/js/translated/stock.js:956 -#: templates/js/translated/stock.js:1850 templates/js/translated/stock.js:2509 +#: templates/js/translated/part.js:181 templates/js/translated/stock.js:588 +#: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960 +#: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518 msgid "Location" msgstr "위치" @@ -1135,8 +1139,8 @@ msgstr "" #: order/serializers.py:465 stock/templates/stock/item_base.html:423 #: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505 #: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724 -#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1825 -#: templates/js/translated/stock.js:2586 templates/js/translated/stock.js:2718 +#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829 +#: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727 msgid "Status" msgstr "상태" @@ -1212,8 +1216,8 @@ msgstr "" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:577 build/serializers.py:622 part/models.py:2719 -#: part/models.py:2853 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726 +#: part/models.py:2860 msgid "BOM Item" msgstr "" @@ -1229,7 +1233,7 @@ msgstr "" msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:651 stock/serializers.py:767 +#: build/serializers.py:651 stock/serializers.py:769 msgid "Item must be in stock" msgstr "" @@ -1367,7 +1371,7 @@ msgstr "" #: report/templates/report/inventree_build_order_base.html:125 #: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741 #: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552 -#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1038 +#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042 msgid "Target Date" msgstr "" @@ -1445,8 +1449,8 @@ msgstr "" #: stock/templates/stock/item_base.html:170 #: templates/js/translated/build.js:1182 #: templates/js/translated/model_renderers.js:124 -#: templates/js/translated/stock.js:1022 templates/js/translated/stock.js:1839 -#: templates/js/translated/stock.js:2725 +#: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843 +#: templates/js/translated/stock.js:2734 #: templates/js/translated/table_filters.js:159 #: templates/js/translated/table_filters.js:250 msgid "Batch" @@ -1506,7 +1510,7 @@ msgstr "" #: build/templates/build/detail.html:187 #: company/templates/company/detail.html:37 #: company/templates/company/detail.html:85 -#: part/templates/part/category.html:177 templates/js/translated/order.js:977 +#: part/templates/part/category.html:183 templates/js/translated/order.js:977 msgid "Order Parts" msgstr "" @@ -1559,12 +1563,12 @@ msgid "Delete outputs" msgstr "" #: build/templates/build/detail.html:267 -#: stock/templates/stock/location.html:197 templates/stock_table.html:27 +#: stock/templates/stock/location.html:202 templates/stock_table.html:27 msgid "Printing Actions" msgstr "" #: build/templates/build/detail.html:271 build/templates/build/detail.html:272 -#: stock/templates/stock/location.html:201 templates/stock_table.html:31 +#: stock/templates/stock/location.html:206 templates/stock_table.html:31 msgid "Print labels" msgstr "" @@ -1841,7 +1845,7 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:951 part/models.py:2412 report/models.py:158 +#: common/models.py:951 part/models.py:2419 report/models.py:158 #: templates/js/translated/table_filters.js:38 #: templates/js/translated/table_filters.js:484 msgid "Template" @@ -1851,7 +1855,7 @@ msgstr "" msgid "Parts are templates by default" msgstr "" -#: common/models.py:958 part/models.py:887 templates/js/translated/bom.js:1448 +#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448 #: templates/js/translated/table_filters.js:176 #: templates/js/translated/table_filters.js:447 msgid "Assembly" @@ -1861,7 +1865,7 @@ msgstr "" msgid "Parts can be assembled from other components by default" msgstr "" -#: common/models.py:965 part/models.py:893 +#: common/models.py:965 part/models.py:900 #: templates/js/translated/table_filters.js:455 msgid "Component" msgstr "" @@ -1870,7 +1874,7 @@ msgstr "" msgid "Parts can be used as sub-components by default" msgstr "" -#: common/models.py:972 part/models.py:904 +#: common/models.py:972 part/models.py:911 msgid "Purchaseable" msgstr "구입 가능" @@ -1878,7 +1882,7 @@ msgstr "구입 가능" msgid "Parts are purchaseable by default" msgstr "" -#: common/models.py:979 part/models.py:909 +#: common/models.py:979 part/models.py:916 #: templates/js/translated/table_filters.js:476 msgid "Salable" msgstr "판매 가능" @@ -1887,7 +1891,7 @@ msgstr "판매 가능" msgid "Parts are salable by default" msgstr "" -#: common/models.py:986 part/models.py:899 +#: common/models.py:986 part/models.py:906 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:108 #: templates/js/translated/table_filters.js:488 @@ -1898,7 +1902,7 @@ msgstr "" msgid "Parts are trackable by default" msgstr "" -#: common/models.py:993 part/models.py:919 +#: common/models.py:993 part/models.py:926 #: part/templates/part/part_base.html:151 #: templates/js/translated/table_filters.js:42 #: templates/js/translated/table_filters.js:492 @@ -1982,608 +1986,632 @@ msgid "Format to display the part name" msgstr "" #: common/models.py:1074 -msgid "Enable label printing" +msgid "Part Category Default Icon" msgstr "" #: common/models.py:1075 -msgid "Enable label printing from the web interface" +msgid "Part category default icon (empty means no icon)" +msgstr "" + +#: common/models.py:1080 +msgid "Enable label printing" msgstr "" #: common/models.py:1081 +msgid "Enable label printing from the web interface" +msgstr "" + +#: common/models.py:1087 msgid "Label Image DPI" msgstr "" -#: common/models.py:1082 +#: common/models.py:1088 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/models.py:1091 +#: common/models.py:1097 msgid "Enable Reports" msgstr "" -#: common/models.py:1092 +#: common/models.py:1098 msgid "Enable generation of reports" msgstr "" -#: common/models.py:1098 templates/stats.html:25 +#: common/models.py:1104 templates/stats.html:25 msgid "Debug Mode" msgstr "디버그 모드" -#: common/models.py:1099 +#: common/models.py:1105 msgid "Generate reports in debug mode (HTML output)" msgstr "" -#: common/models.py:1105 +#: common/models.py:1111 msgid "Page Size" msgstr "페이지 크기" -#: common/models.py:1106 +#: common/models.py:1112 msgid "Default page size for PDF reports" msgstr "PDF 보고서 기본 페이지 크기" -#: common/models.py:1116 +#: common/models.py:1122 msgid "Enable Test Reports" msgstr "" -#: common/models.py:1117 +#: common/models.py:1123 msgid "Enable generation of test reports" msgstr "" -#: common/models.py:1123 +#: common/models.py:1129 msgid "Attach Test Reports" msgstr "" -#: common/models.py:1124 +#: common/models.py:1130 msgid "When printing a Test Report, attach a copy of the Test Report to the associated Stock Item" msgstr "" -#: common/models.py:1130 +#: common/models.py:1136 msgid "Batch Code Template" msgstr "" -#: common/models.py:1131 +#: common/models.py:1137 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/models.py:1136 +#: common/models.py:1142 msgid "Stock Expiry" msgstr "" -#: common/models.py:1137 +#: common/models.py:1143 msgid "Enable stock expiry functionality" msgstr "" -#: common/models.py:1143 +#: common/models.py:1149 msgid "Sell Expired Stock" msgstr "" -#: common/models.py:1144 +#: common/models.py:1150 msgid "Allow sale of expired stock" msgstr "" -#: common/models.py:1150 +#: common/models.py:1156 msgid "Stock Stale Time" msgstr "" -#: common/models.py:1151 +#: common/models.py:1157 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/models.py:1153 +#: common/models.py:1159 msgid "days" msgstr "" -#: common/models.py:1158 +#: common/models.py:1164 msgid "Build Expired Stock" msgstr "" -#: common/models.py:1159 +#: common/models.py:1165 msgid "Allow building with expired stock" msgstr "" -#: common/models.py:1165 +#: common/models.py:1171 msgid "Stock Ownership Control" msgstr "" -#: common/models.py:1166 +#: common/models.py:1172 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/models.py:1172 -msgid "Build Order Reference Pattern" -msgstr "" - -#: common/models.py:1173 -msgid "Required pattern for generating Build Order reference field" +#: common/models.py:1178 +msgid "Stock Location Default Icon" msgstr "" #: common/models.py:1179 +msgid "Stock location default icon (empty means no icon)" +msgstr "" + +#: common/models.py:1184 +msgid "Build Order Reference Pattern" +msgstr "" + +#: common/models.py:1185 +msgid "Required pattern for generating Build Order reference field" +msgstr "" + +#: common/models.py:1191 msgid "Sales Order Reference Pattern" msgstr "" -#: common/models.py:1180 +#: common/models.py:1192 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/models.py:1186 +#: common/models.py:1198 msgid "Sales Order Default Shipment" msgstr "" -#: common/models.py:1187 +#: common/models.py:1199 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/models.py:1193 +#: common/models.py:1205 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/models.py:1194 +#: common/models.py:1206 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/models.py:1201 +#: common/models.py:1213 msgid "Enable password forgot" msgstr "" -#: common/models.py:1202 +#: common/models.py:1214 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/models.py:1208 +#: common/models.py:1220 msgid "Enable registration" msgstr "" -#: common/models.py:1209 +#: common/models.py:1221 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/models.py:1215 +#: common/models.py:1227 msgid "Enable SSO" msgstr "SSO 활성화" -#: common/models.py:1216 +#: common/models.py:1228 msgid "Enable SSO on the login pages" msgstr "로그인 페이지에서 SSO 활성화" -#: common/models.py:1222 +#: common/models.py:1234 msgid "Email required" msgstr "이메일 필요" -#: common/models.py:1223 +#: common/models.py:1235 msgid "Require user to supply mail on signup" msgstr "" -#: common/models.py:1229 +#: common/models.py:1241 msgid "Auto-fill SSO users" msgstr "" -#: common/models.py:1230 +#: common/models.py:1242 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/models.py:1236 +#: common/models.py:1248 msgid "Mail twice" msgstr "두 번 보내기" -#: common/models.py:1237 +#: common/models.py:1249 msgid "On signup ask users twice for their mail" msgstr "" -#: common/models.py:1243 +#: common/models.py:1255 msgid "Password twice" msgstr "" -#: common/models.py:1244 +#: common/models.py:1256 msgid "On signup ask users twice for their password" msgstr "" -#: common/models.py:1250 +#: common/models.py:1262 msgid "Group on signup" msgstr "" -#: common/models.py:1251 +#: common/models.py:1263 msgid "Group to which new users are assigned on registration" msgstr "" -#: common/models.py:1257 +#: common/models.py:1269 msgid "Enforce MFA" msgstr "" -#: common/models.py:1258 +#: common/models.py:1270 msgid "Users must use multifactor security." msgstr "" -#: common/models.py:1264 +#: common/models.py:1276 msgid "Check plugins on startup" msgstr "" -#: common/models.py:1265 +#: common/models.py:1277 msgid "Check that all plugins are installed on startup - enable in container enviroments" msgstr "" -#: common/models.py:1273 +#: common/models.py:1284 +msgid "Check plugin signatures" +msgstr "" + +#: common/models.py:1285 +msgid "Check and show signatures for plugins" +msgstr "" + +#: common/models.py:1292 msgid "Enable URL integration" msgstr "" -#: common/models.py:1274 +#: common/models.py:1293 msgid "Enable plugins to add URL routes" msgstr "" -#: common/models.py:1281 +#: common/models.py:1300 msgid "Enable navigation integration" msgstr "" -#: common/models.py:1282 +#: common/models.py:1301 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/models.py:1289 +#: common/models.py:1308 msgid "Enable app integration" msgstr "" -#: common/models.py:1290 +#: common/models.py:1309 msgid "Enable plugins to add apps" msgstr "" -#: common/models.py:1297 +#: common/models.py:1316 msgid "Enable schedule integration" msgstr "" -#: common/models.py:1298 +#: common/models.py:1317 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/models.py:1305 +#: common/models.py:1324 msgid "Enable event integration" msgstr "" -#: common/models.py:1306 +#: common/models.py:1325 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:1323 common/models.py:1639 +#: common/models.py:1342 common/models.py:1658 msgid "Settings key (must be unique - case insensitive" msgstr "" -#: common/models.py:1345 +#: common/models.py:1364 msgid "Show subscribed parts" msgstr "" -#: common/models.py:1346 +#: common/models.py:1365 msgid "Show subscribed parts on the homepage" msgstr "" -#: common/models.py:1352 +#: common/models.py:1371 msgid "Show subscribed categories" msgstr "" -#: common/models.py:1353 +#: common/models.py:1372 msgid "Show subscribed part categories on the homepage" msgstr "" -#: common/models.py:1359 +#: common/models.py:1378 msgid "Show latest parts" msgstr "" -#: common/models.py:1360 +#: common/models.py:1379 msgid "Show latest parts on the homepage" msgstr "" -#: common/models.py:1366 +#: common/models.py:1385 msgid "Recent Part Count" msgstr "" -#: common/models.py:1367 +#: common/models.py:1386 msgid "Number of recent parts to display on index page" msgstr "" -#: common/models.py:1373 +#: common/models.py:1392 msgid "Show unvalidated BOMs" msgstr "" -#: common/models.py:1374 +#: common/models.py:1393 msgid "Show BOMs that await validation on the homepage" msgstr "" -#: common/models.py:1380 +#: common/models.py:1399 msgid "Show recent stock changes" msgstr "" -#: common/models.py:1381 +#: common/models.py:1400 msgid "Show recently changed stock items on the homepage" msgstr "" -#: common/models.py:1387 +#: common/models.py:1406 msgid "Recent Stock Count" msgstr "" -#: common/models.py:1388 +#: common/models.py:1407 msgid "Number of recent stock items to display on index page" msgstr "" -#: common/models.py:1394 +#: common/models.py:1413 msgid "Show low stock" msgstr "" -#: common/models.py:1395 +#: common/models.py:1414 msgid "Show low stock items on the homepage" msgstr "" -#: common/models.py:1401 +#: common/models.py:1420 msgid "Show depleted stock" msgstr "" -#: common/models.py:1402 +#: common/models.py:1421 msgid "Show depleted stock items on the homepage" msgstr "" -#: common/models.py:1408 +#: common/models.py:1427 msgid "Show needed stock" msgstr "" -#: common/models.py:1409 +#: common/models.py:1428 msgid "Show stock items needed for builds on the homepage" msgstr "" -#: common/models.py:1415 +#: common/models.py:1434 msgid "Show expired stock" msgstr "" -#: common/models.py:1416 +#: common/models.py:1435 msgid "Show expired stock items on the homepage" msgstr "" -#: common/models.py:1422 +#: common/models.py:1441 msgid "Show stale stock" msgstr "" -#: common/models.py:1423 +#: common/models.py:1442 msgid "Show stale stock items on the homepage" msgstr "" -#: common/models.py:1429 +#: common/models.py:1448 msgid "Show pending builds" msgstr "" -#: common/models.py:1430 +#: common/models.py:1449 msgid "Show pending builds on the homepage" msgstr "" -#: common/models.py:1436 +#: common/models.py:1455 msgid "Show overdue builds" msgstr "" -#: common/models.py:1437 +#: common/models.py:1456 msgid "Show overdue builds on the homepage" msgstr "" -#: common/models.py:1443 +#: common/models.py:1462 msgid "Show outstanding POs" msgstr "" -#: common/models.py:1444 +#: common/models.py:1463 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:1450 +#: common/models.py:1469 msgid "Show overdue POs" msgstr "" -#: common/models.py:1451 +#: common/models.py:1470 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:1457 +#: common/models.py:1476 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:1458 +#: common/models.py:1477 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:1464 +#: common/models.py:1483 msgid "Show overdue SOs" msgstr "" -#: common/models.py:1465 +#: common/models.py:1484 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:1471 +#: common/models.py:1490 msgid "Inline label display" msgstr "" -#: common/models.py:1472 +#: common/models.py:1491 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1478 +#: common/models.py:1497 msgid "Inline report display" msgstr "" -#: common/models.py:1479 +#: common/models.py:1498 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1485 +#: common/models.py:1504 msgid "Search Parts" msgstr "" -#: common/models.py:1486 +#: common/models.py:1505 msgid "Display parts in search preview window" msgstr "" -#: common/models.py:1492 +#: common/models.py:1511 msgid "Seach Supplier Parts" msgstr "" -#: common/models.py:1493 +#: common/models.py:1512 msgid "Display supplier parts in search preview window" msgstr "" -#: common/models.py:1499 +#: common/models.py:1518 msgid "Search Manufacturer Parts" msgstr "" -#: common/models.py:1500 +#: common/models.py:1519 msgid "Display manufacturer parts in search preview window" msgstr "" -#: common/models.py:1506 +#: common/models.py:1525 msgid "Hide Inactive Parts" msgstr "" -#: common/models.py:1507 +#: common/models.py:1526 msgid "Excluded inactive parts from search preview window" msgstr "" -#: common/models.py:1513 +#: common/models.py:1532 msgid "Search Categories" msgstr "" -#: common/models.py:1514 +#: common/models.py:1533 msgid "Display part categories in search preview window" msgstr "" -#: common/models.py:1520 +#: common/models.py:1539 msgid "Search Stock" msgstr "" -#: common/models.py:1521 +#: common/models.py:1540 msgid "Display stock items in search preview window" msgstr "" -#: common/models.py:1527 +#: common/models.py:1546 msgid "Hide Unavailable Stock Items" msgstr "" -#: common/models.py:1528 +#: common/models.py:1547 msgid "Exclude stock items which are not available from the search preview window" msgstr "" -#: common/models.py:1534 +#: common/models.py:1553 msgid "Search Locations" msgstr "" -#: common/models.py:1535 +#: common/models.py:1554 msgid "Display stock locations in search preview window" msgstr "" -#: common/models.py:1541 +#: common/models.py:1560 msgid "Search Companies" msgstr "" -#: common/models.py:1542 +#: common/models.py:1561 msgid "Display companies in search preview window" msgstr "" -#: common/models.py:1548 +#: common/models.py:1567 msgid "Search Purchase Orders" msgstr "" -#: common/models.py:1549 +#: common/models.py:1568 msgid "Display purchase orders in search preview window" msgstr "" -#: common/models.py:1555 +#: common/models.py:1574 msgid "Exclude Inactive Purchase Orders" msgstr "" -#: common/models.py:1556 +#: common/models.py:1575 msgid "Exclude inactive purchase orders from search preview window" msgstr "" -#: common/models.py:1562 +#: common/models.py:1581 msgid "Search Sales Orders" msgstr "" -#: common/models.py:1563 +#: common/models.py:1582 msgid "Display sales orders in search preview window" msgstr "" -#: common/models.py:1569 +#: common/models.py:1588 msgid "Exclude Inactive Sales Orders" msgstr "" -#: common/models.py:1570 +#: common/models.py:1589 msgid "Exclude inactive sales orders from search preview window" msgstr "" -#: common/models.py:1576 +#: common/models.py:1595 msgid "Search Preview Results" msgstr "" -#: common/models.py:1577 +#: common/models.py:1596 msgid "Number of results to show in each section of the search preview window" msgstr "" -#: common/models.py:1583 +#: common/models.py:1602 msgid "Show Quantity in Forms" msgstr "" -#: common/models.py:1584 +#: common/models.py:1603 msgid "Display available part quantity in some forms" msgstr "" -#: common/models.py:1590 +#: common/models.py:1609 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:1591 +#: common/models.py:1610 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:1597 +#: common/models.py:1616 msgid "Fixed Navbar" msgstr "" -#: common/models.py:1598 +#: common/models.py:1617 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:1604 +#: common/models.py:1623 msgid "Date Format" msgstr "" -#: common/models.py:1605 +#: common/models.py:1624 msgid "Preferred format for displaying dates" msgstr "" -#: common/models.py:1619 part/templates/part/detail.html:41 +#: common/models.py:1638 part/templates/part/detail.html:41 msgid "Part Scheduling" msgstr "" -#: common/models.py:1620 +#: common/models.py:1639 msgid "Display part scheduling information" msgstr "" -#: common/models.py:1679 +#: common/models.py:1698 msgid "Price break quantity" msgstr "" -#: common/models.py:1686 company/serializers.py:366 +#: common/models.py:1705 company/serializers.py:366 #: company/templates/company/supplier_part.html:284 order/models.py:938 -#: templates/js/translated/part.js:1065 templates/js/translated/part.js:2152 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2161 msgid "Price" msgstr "" -#: common/models.py:1687 +#: common/models.py:1706 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:1847 common/models.py:2025 +#: common/models.py:1866 common/models.py:2044 msgid "Endpoint" msgstr "" -#: common/models.py:1848 +#: common/models.py:1867 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:1857 +#: common/models.py:1876 msgid "Name for this webhook" msgstr "" -#: common/models.py:1862 part/models.py:914 plugin/models.py:99 +#: common/models.py:1881 part/models.py:921 plugin/models.py:100 #: templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:104 #: templates/js/translated/table_filters.js:316 @@ -2591,67 +2619,67 @@ msgstr "" msgid "Active" msgstr "" -#: common/models.py:1863 +#: common/models.py:1882 msgid "Is this webhook active" msgstr "" -#: common/models.py:1877 +#: common/models.py:1896 msgid "Token" msgstr "" -#: common/models.py:1878 +#: common/models.py:1897 msgid "Token for access" msgstr "" -#: common/models.py:1885 +#: common/models.py:1904 msgid "Secret" msgstr "" -#: common/models.py:1886 +#: common/models.py:1905 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:1992 +#: common/models.py:2011 msgid "Message ID" msgstr "" -#: common/models.py:1993 +#: common/models.py:2012 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2001 +#: common/models.py:2020 msgid "Host" msgstr "" -#: common/models.py:2002 +#: common/models.py:2021 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2009 +#: common/models.py:2028 msgid "Header" msgstr "" -#: common/models.py:2010 +#: common/models.py:2029 msgid "Header of this message" msgstr "" -#: common/models.py:2016 +#: common/models.py:2035 msgid "Body" msgstr "" -#: common/models.py:2017 +#: common/models.py:2036 msgid "Body of this message" msgstr "" -#: common/models.py:2026 +#: common/models.py:2045 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2031 +#: common/models.py:2050 msgid "Worked on" msgstr "" -#: common/models.py:2032 +#: common/models.py:2051 msgid "Was the work on this message finished?" msgstr "" @@ -2758,7 +2786,7 @@ msgstr "" msgid "Link to external company information" msgstr "" -#: company/models.py:135 part/models.py:808 +#: company/models.py:135 part/models.py:815 msgid "Image" msgstr "이미지" @@ -2791,8 +2819,8 @@ msgid "Does this company manufacture parts?" msgstr "" #: company/models.py:148 company/serializers.py:372 -#: company/templates/company/company_base.html:106 part/serializers.py:151 -#: part/serializers.py:182 stock/serializers.py:180 +#: company/templates/company/company_base.html:106 part/serializers.py:153 +#: part/serializers.py:184 stock/serializers.py:180 msgid "Currency" msgstr "" @@ -2800,7 +2828,7 @@ msgstr "" msgid "Default currency used for this company" msgstr "" -#: company/models.py:248 company/models.py:481 stock/models.py:591 +#: company/models.py:248 company/models.py:481 stock/models.py:598 #: stock/serializers.py:87 stock/templates/stock/item_base.html:148 #: templates/js/translated/bom.js:543 msgid "Base Part" @@ -2832,7 +2860,7 @@ msgstr "" #: templates/js/translated/company.js:497 #: templates/js/translated/company.js:649 #: templates/js/translated/company.js:937 templates/js/translated/order.js:1971 -#: templates/js/translated/part.js:247 templates/js/translated/part.js:1023 +#: templates/js/translated/part.js:247 templates/js/translated/part.js:1027 msgid "MPN" msgstr "" @@ -2861,9 +2889,9 @@ msgstr "" #: company/models.py:365 #: report/templates/report/inventree_test_report_base.html:95 -#: stock/models.py:2088 templates/js/translated/company.js:546 -#: templates/js/translated/company.js:764 templates/js/translated/part.js:845 -#: templates/js/translated/stock.js:1356 +#: stock/models.py:2095 templates/js/translated/company.js:546 +#: templates/js/translated/company.js:764 templates/js/translated/part.js:849 +#: templates/js/translated/stock.js:1360 msgid "Value" msgstr "" @@ -2871,10 +2899,10 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:372 part/models.py:881 part/models.py:2379 +#: company/models.py:372 part/models.py:888 part/models.py:2386 #: part/templates/part/part_base.html:280 #: templates/InvenTree/settings/settings.html:352 -#: templates/js/translated/company.js:770 templates/js/translated/part.js:851 +#: templates/js/translated/company.js:770 templates/js/translated/part.js:855 msgid "Units" msgstr "" @@ -2894,7 +2922,7 @@ msgstr "" #: templates/js/translated/company.js:268 #: templates/js/translated/company.js:401 #: templates/js/translated/company.js:893 templates/js/translated/order.js:1707 -#: templates/js/translated/part.js:217 templates/js/translated/part.js:991 +#: templates/js/translated/part.js:217 templates/js/translated/part.js:995 #: templates/js/translated/table_filters.js:423 msgid "Supplier" msgstr "" @@ -2906,7 +2934,7 @@ msgstr "" #: company/models.py:497 company/templates/company/supplier_part.html:118 #: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267 #: templates/js/translated/order.js:1958 templates/js/translated/part.js:228 -#: templates/js/translated/part.js:1009 +#: templates/js/translated/part.js:1013 msgid "SKU" msgstr "" @@ -2927,23 +2955,23 @@ msgid "Supplier part description" msgstr "" #: company/models.py:522 company/templates/company/supplier_part.html:146 -#: part/models.py:2613 part/templates/part/upload_bom.html:59 +#: part/models.py:2620 part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401 msgid "Note" msgstr "" -#: company/models.py:526 part/models.py:1735 +#: company/models.py:526 part/models.py:1742 msgid "base cost" msgstr "" -#: company/models.py:526 part/models.py:1735 +#: company/models.py:526 part/models.py:1742 msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:528 company/templates/company/supplier_part.html:139 -#: stock/models.py:617 stock/templates/stock/item_base.html:245 -#: templates/js/translated/company.js:969 templates/js/translated/stock.js:1972 +#: stock/models.py:624 stock/templates/stock/item_base.html:245 +#: templates/js/translated/company.js:969 templates/js/translated/stock.js:1976 msgid "Packaging" msgstr "" @@ -2951,7 +2979,7 @@ msgstr "" msgid "Part packaging" msgstr "" -#: company/models.py:530 part/models.py:1737 +#: company/models.py:530 part/models.py:1744 msgid "multiple" msgstr "" @@ -2964,7 +2992,7 @@ msgstr "" #: templates/email/low_stock_notification.html:18 #: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789 #: templates/js/translated/build.js:2645 templates/js/translated/company.js:979 -#: templates/js/translated/part.js:596 templates/js/translated/part.js:599 +#: templates/js/translated/part.js:600 templates/js/translated/part.js:603 #: templates/js/translated/table_filters.js:186 msgid "Available" msgstr "" @@ -3037,12 +3065,12 @@ msgid "Download image from URL" msgstr "URL에서 이미지 다운로드" #: company/templates/company/company_base.html:86 order/models.py:637 -#: order/templates/order/sales_order_base.html:116 stock/models.py:636 -#: stock/models.py:637 stock/serializers.py:809 +#: order/templates/order/sales_order_base.html:116 stock/models.py:643 +#: stock/models.py:644 stock/serializers.py:811 #: stock/templates/stock/item_base.html:401 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:393 templates/js/translated/order.js:2513 -#: templates/js/translated/stock.js:2550 +#: templates/js/translated/stock.js:2559 #: templates/js/translated/table_filters.js:427 msgid "Customer" msgstr "고객" @@ -3083,7 +3111,7 @@ msgstr "" #: company/templates/company/detail.html:36 #: company/templates/company/detail.html:84 -#: part/templates/part/category.html:176 +#: part/templates/part/category.html:182 msgid "Order parts" msgstr "" @@ -3231,7 +3259,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:170 #: part/templates/part/detail.html:186 #: templates/InvenTree/settings/category.html:12 -#: templates/InvenTree/settings/part.html:66 +#: templates/InvenTree/settings/part.html:68 msgid "New Parameter" msgstr "" @@ -3261,10 +3289,10 @@ msgid "Assigned Stock Items" msgstr "" #: company/templates/company/supplier_part.html:7 -#: company/templates/company/supplier_part.html:24 stock/models.py:600 +#: company/templates/company/supplier_part.html:24 stock/models.py:607 #: stock/templates/stock/item_base.html:238 #: templates/js/translated/company.js:909 templates/js/translated/order.js:935 -#: templates/js/translated/stock.js:1929 +#: templates/js/translated/stock.js:1933 msgid "Supplier Part" msgstr "" @@ -3308,13 +3336,13 @@ msgid "Supplier Part Stock" msgstr "" #: company/templates/company/supplier_part.html:168 -#: part/templates/part/detail.html:24 stock/templates/stock/location.html:176 +#: part/templates/part/detail.html:24 stock/templates/stock/location.html:181 msgid "Create new stock item" msgstr "" #: company/templates/company/supplier_part.html:169 -#: part/templates/part/detail.html:25 stock/templates/stock/location.html:177 -#: templates/js/translated/stock.js:431 +#: part/templates/part/detail.html:25 stock/templates/stock/location.html:182 +#: templates/js/translated/stock.js:435 msgid "New Stock Item" msgstr "" @@ -3330,7 +3358,7 @@ msgstr "" #: company/templates/company/supplier_part.html:212 #: company/templates/company/supplier_part.html:326 -#: part/templates/part/prices.html:276 templates/js/translated/part.js:2224 +#: part/templates/part/prices.html:276 templates/js/translated/part.js:2233 msgid "Add Price Break" msgstr "" @@ -3339,12 +3367,12 @@ msgid "No price break information found" msgstr "" #: company/templates/company/supplier_part.html:252 -#: templates/js/translated/part.js:2234 +#: templates/js/translated/part.js:2243 msgid "Delete Price Break" msgstr "" #: company/templates/company/supplier_part.html:266 -#: templates/js/translated/part.js:2248 +#: templates/js/translated/part.js:2257 msgid "Edit Price Break" msgstr "" @@ -3366,13 +3394,13 @@ msgstr "" #: company/templates/company/supplier_part_navbar.html:15 #: part/templates/part/part_sidebar.html:14 -#: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:19 +#: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:24 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:151 #: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/bom.js:555 templates/js/translated/part.js:747 -#: templates/js/translated/part.js:1295 templates/js/translated/part.js:1456 -#: templates/js/translated/stock.js:955 templates/js/translated/stock.js:1750 +#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751 +#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460 +#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754 #: templates/navbar.html:31 msgid "Stock" msgstr "" @@ -3392,14 +3420,14 @@ msgid "Pricing" msgstr "" #: company/templates/company/supplier_part_sidebar.html:5 -#: part/templates/part/category.html:197 +#: part/templates/part/category.html:203 #: part/templates/part/category_sidebar.html:17 -#: stock/templates/stock/location.html:147 -#: stock/templates/stock/location.html:161 -#: stock/templates/stock/location.html:173 +#: stock/templates/stock/location.html:152 +#: stock/templates/stock/location.html:166 +#: stock/templates/stock/location.html:178 #: stock/templates/stock/location_sidebar.html:7 #: templates/InvenTree/search.html:153 templates/js/translated/search.js:223 -#: templates/js/translated/stock.js:2427 users/models.py:40 +#: templates/js/translated/stock.js:2436 users/models.py:40 msgid "Stock Items" msgstr "" @@ -3656,8 +3684,8 @@ msgstr "" #: stock/templates/stock/item_base.html:184 #: templates/email/overdue_purchase_order.html:15 #: templates/js/translated/order.js:936 templates/js/translated/order.js:1691 -#: templates/js/translated/part.js:968 templates/js/translated/stock.js:1909 -#: templates/js/translated/stock.js:2531 +#: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913 +#: templates/js/translated/stock.js:2540 msgid "Purchase Order" msgstr "" @@ -3667,7 +3695,7 @@ msgstr "" #: order/models.py:1009 order/templates/order/order_base.html:169 #: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073 -#: templates/js/translated/part.js:1060 templates/js/translated/part.js:1087 +#: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091 #: templates/js/translated/table_filters.js:338 msgid "Received" msgstr "" @@ -3676,9 +3704,9 @@ msgstr "" msgid "Number of items received" msgstr "" -#: order/models.py:1017 part/templates/part/prices.html:181 stock/models.py:727 +#: order/models.py:1017 part/templates/part/prices.html:181 stock/models.py:734 #: stock/serializers.py:171 stock/templates/stock/item_base.html:191 -#: templates/js/translated/stock.js:1960 +#: templates/js/translated/stock.js:1964 msgid "Purchase Price" msgstr "" @@ -4066,8 +4094,8 @@ msgstr "" #: templates/js/translated/bom.js:77 templates/js/translated/build.js:431 #: templates/js/translated/build.js:583 templates/js/translated/build.js:1974 #: templates/js/translated/order.js:884 templates/js/translated/order.js:1337 -#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:621 -#: templates/js/translated/stock.js:789 +#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625 +#: templates/js/translated/stock.js:793 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "" @@ -4261,8 +4289,8 @@ msgstr "" msgid "This field is required" msgstr "" -#: part/bom.py:127 part/models.py:98 part/models.py:817 -#: part/templates/part/category.html:108 part/templates/part/part_base.html:330 +#: part/bom.py:127 part/models.py:98 part/models.py:824 +#: part/templates/part/category.html:114 part/templates/part/part_base.html:330 msgid "Default Location" msgstr "" @@ -4276,9 +4304,9 @@ msgid "Available Stock" msgstr "" #: part/bom.py:130 part/templates/part/part_base.html:207 -#: templates/js/translated/bom.js:947 templates/js/translated/part.js:586 -#: templates/js/translated/part.js:606 templates/js/translated/part.js:1298 -#: templates/js/translated/part.js:1470 templates/js/translated/part.js:1486 +#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590 +#: templates/js/translated/part.js:610 templates/js/translated/part.js:1302 +#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "" @@ -4299,516 +4327,524 @@ msgstr "" msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:115 part/models.py:2455 part/templates/part/category.html:15 +#: part/models.py:107 stock/models.py:84 +msgid "Icon" +msgstr "" + +#: part/models.py:108 stock/models.py:85 +msgid "Icon (optional)" +msgstr "" + +#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" -#: part/models.py:116 part/templates/part/category.html:128 +#: part/models.py:123 part/templates/part/category.html:134 #: templates/InvenTree/search.html:95 templates/js/translated/search.js:198 #: users/models.py:37 msgid "Part Categories" msgstr "" -#: part/models.py:337 part/templates/part/cat_link.html:3 -#: part/templates/part/category.html:17 part/templates/part/category.html:133 -#: part/templates/part/category.html:153 +#: part/models.py:344 part/templates/part/cat_link.html:3 +#: part/templates/part/category.html:23 part/templates/part/category.html:139 +#: part/templates/part/category.html:159 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82 #: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:1946 templates/js/translated/search.js:144 +#: templates/js/translated/part.js:1955 templates/js/translated/search.js:144 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "" -#: part/models.py:422 +#: part/models.py:429 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:492 part/models.py:504 +#: part/models.py:499 part/models.py:511 #, python-brace-format msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)" msgstr "" -#: part/models.py:621 +#: part/models.py:628 msgid "Next available serial numbers are" msgstr "" -#: part/models.py:625 +#: part/models.py:632 msgid "Next available serial number is" msgstr "" -#: part/models.py:630 +#: part/models.py:637 msgid "Most recent serial number is" msgstr "" -#: part/models.py:711 +#: part/models.py:718 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:738 part/models.py:2509 +#: part/models.py:745 part/models.py:2516 msgid "Part name" msgstr "" -#: part/models.py:745 +#: part/models.py:752 msgid "Is Template" msgstr "" -#: part/models.py:746 +#: part/models.py:753 msgid "Is this part a template part?" msgstr "" -#: part/models.py:756 +#: part/models.py:763 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:757 +#: part/models.py:764 msgid "Variant Of" msgstr "" -#: part/models.py:763 +#: part/models.py:770 msgid "Part description" msgstr "" -#: part/models.py:768 part/templates/part/category.html:86 +#: part/models.py:775 part/templates/part/category.html:92 #: part/templates/part/part_base.html:294 msgid "Keywords" msgstr "" -#: part/models.py:769 +#: part/models.py:776 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:776 part/models.py:2211 part/models.py:2454 +#: part/models.py:783 part/models.py:2218 part/models.py:2461 #: part/templates/part/part_base.html:257 #: templates/InvenTree/settings/settings.html:232 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1438 templates/js/translated/part.js:1664 +#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1668 msgid "Category" msgstr "" -#: part/models.py:777 +#: part/models.py:784 msgid "Part category" msgstr "" -#: part/models.py:782 part/templates/part/part_base.html:266 -#: templates/js/translated/part.js:735 templates/js/translated/part.js:1391 -#: templates/js/translated/stock.js:1722 +#: part/models.py:789 part/templates/part/part_base.html:266 +#: templates/js/translated/part.js:739 templates/js/translated/part.js:1395 +#: templates/js/translated/stock.js:1726 msgid "IPN" msgstr "" -#: part/models.py:783 +#: part/models.py:790 msgid "Internal Part Number" msgstr "" -#: part/models.py:789 +#: part/models.py:796 msgid "Part revision or version number" msgstr "" -#: part/models.py:790 part/templates/part/part_base.html:273 -#: report/models.py:171 templates/js/translated/part.js:739 +#: part/models.py:797 part/templates/part/part_base.html:273 +#: report/models.py:171 templates/js/translated/part.js:743 msgid "Revision" msgstr "" -#: part/models.py:815 +#: part/models.py:822 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:860 part/templates/part/part_base.html:339 +#: part/models.py:867 part/templates/part/part_base.html:339 msgid "Default Supplier" msgstr "" -#: part/models.py:861 +#: part/models.py:868 msgid "Default supplier part" msgstr "" -#: part/models.py:868 +#: part/models.py:875 msgid "Default Expiry" msgstr "" -#: part/models.py:869 +#: part/models.py:876 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:874 part/templates/part/part_base.html:200 +#: part/models.py:881 part/templates/part/part_base.html:200 msgid "Minimum Stock" msgstr "" -#: part/models.py:875 +#: part/models.py:882 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:882 +#: part/models.py:889 msgid "Stock keeping units for this part" msgstr "" -#: part/models.py:888 +#: part/models.py:895 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:894 +#: part/models.py:901 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:900 +#: part/models.py:907 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:905 +#: part/models.py:912 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:910 +#: part/models.py:917 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:915 +#: part/models.py:922 msgid "Is this part active?" msgstr "" -#: part/models.py:920 +#: part/models.py:927 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:922 +#: part/models.py:929 msgid "Part notes" msgstr "" -#: part/models.py:924 +#: part/models.py:931 msgid "BOM checksum" msgstr "" -#: part/models.py:924 +#: part/models.py:931 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:927 +#: part/models.py:934 msgid "BOM checked by" msgstr "" -#: part/models.py:929 +#: part/models.py:936 msgid "BOM checked date" msgstr "" -#: part/models.py:933 +#: part/models.py:940 msgid "Creation User" msgstr "" -#: part/models.py:1737 +#: part/models.py:1744 msgid "Sell multiple" msgstr "" -#: part/models.py:2258 +#: part/models.py:2265 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:2275 +#: part/models.py:2282 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:2295 templates/js/translated/part.js:1997 -#: templates/js/translated/stock.js:1336 +#: part/models.py:2302 templates/js/translated/part.js:2006 +#: templates/js/translated/stock.js:1340 msgid "Test Name" msgstr "" -#: part/models.py:2296 +#: part/models.py:2303 msgid "Enter a name for the test" msgstr "" -#: part/models.py:2301 +#: part/models.py:2308 msgid "Test Description" msgstr "" -#: part/models.py:2302 +#: part/models.py:2309 msgid "Enter description for this test" msgstr "" -#: part/models.py:2307 templates/js/translated/part.js:2006 +#: part/models.py:2314 templates/js/translated/part.js:2015 #: templates/js/translated/table_filters.js:302 msgid "Required" msgstr "" -#: part/models.py:2308 +#: part/models.py:2315 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:2313 templates/js/translated/part.js:2014 +#: part/models.py:2320 templates/js/translated/part.js:2023 msgid "Requires Value" msgstr "" -#: part/models.py:2314 +#: part/models.py:2321 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:2319 templates/js/translated/part.js:2021 +#: part/models.py:2326 templates/js/translated/part.js:2030 msgid "Requires Attachment" msgstr "" -#: part/models.py:2320 +#: part/models.py:2327 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:2328 +#: part/models.py:2335 #, python-brace-format msgid "Illegal character in template name ({c})" msgstr "" -#: part/models.py:2364 +#: part/models.py:2371 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:2372 +#: part/models.py:2379 msgid "Parameter Name" msgstr "" -#: part/models.py:2379 +#: part/models.py:2386 msgid "Parameter Units" msgstr "" -#: part/models.py:2410 +#: part/models.py:2417 msgid "Parent Part" msgstr "" -#: part/models.py:2412 part/models.py:2460 part/models.py:2461 +#: part/models.py:2419 part/models.py:2467 part/models.py:2468 #: templates/InvenTree/settings/settings.html:227 msgid "Parameter Template" msgstr "" -#: part/models.py:2414 +#: part/models.py:2421 msgid "Data" msgstr "데이터" -#: part/models.py:2414 +#: part/models.py:2421 msgid "Parameter Value" msgstr "" -#: part/models.py:2465 templates/InvenTree/settings/settings.html:236 +#: part/models.py:2472 templates/InvenTree/settings/settings.html:236 msgid "Default Value" msgstr "" -#: part/models.py:2466 +#: part/models.py:2473 msgid "Default Parameter Value" msgstr "" -#: part/models.py:2501 +#: part/models.py:2508 msgid "Part ID or part name" msgstr "" -#: part/models.py:2504 templates/js/translated/model_renderers.js:212 +#: part/models.py:2511 templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "" -#: part/models.py:2505 +#: part/models.py:2512 msgid "Unique part ID value" msgstr "" -#: part/models.py:2508 +#: part/models.py:2515 msgid "Part Name" msgstr "" -#: part/models.py:2512 +#: part/models.py:2519 msgid "Part IPN" msgstr "" -#: part/models.py:2513 +#: part/models.py:2520 msgid "Part IPN value" msgstr "" -#: part/models.py:2516 +#: part/models.py:2523 msgid "Level" msgstr "" -#: part/models.py:2517 +#: part/models.py:2524 msgid "BOM level" msgstr "" -#: part/models.py:2586 +#: part/models.py:2593 msgid "Select parent part" msgstr "" -#: part/models.py:2594 +#: part/models.py:2601 msgid "Sub part" msgstr "" -#: part/models.py:2595 +#: part/models.py:2602 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:2601 +#: part/models.py:2608 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:2603 part/templates/part/upload_bom.html:58 +#: part/models.py:2610 part/templates/part/upload_bom.html:58 #: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999 #: templates/js/translated/table_filters.js:100 msgid "Optional" msgstr "" -#: part/models.py:2603 +#: part/models.py:2610 msgid "This BOM item is optional" msgstr "" -#: part/models.py:2606 part/templates/part/upload_bom.html:55 +#: part/models.py:2613 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:2607 +#: part/models.py:2614 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:2610 +#: part/models.py:2617 msgid "BOM item reference" msgstr "" -#: part/models.py:2613 +#: part/models.py:2620 msgid "BOM item notes" msgstr "" -#: part/models.py:2615 +#: part/models.py:2622 msgid "Checksum" msgstr "" -#: part/models.py:2615 +#: part/models.py:2622 msgid "BOM line checksum" msgstr "" -#: part/models.py:2619 part/templates/part/upload_bom.html:57 +#: part/models.py:2626 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1016 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:96 msgid "Inherited" msgstr "" -#: part/models.py:2620 +#: part/models.py:2627 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:2625 part/templates/part/upload_bom.html:56 +#: part/models.py:2632 part/templates/part/upload_bom.html:56 #: templates/js/translated/bom.js:1008 msgid "Allow Variants" msgstr "" -#: part/models.py:2626 +#: part/models.py:2633 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:2704 stock/models.py:461 +#: part/models.py:2711 stock/models.py:468 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:2713 part/models.py:2715 +#: part/models.py:2720 part/models.py:2722 msgid "Sub part must be specified" msgstr "" -#: part/models.py:2820 +#: part/models.py:2827 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:2841 +#: part/models.py:2848 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:2854 +#: part/models.py:2861 msgid "Parent BOM item" msgstr "" -#: part/models.py:2862 +#: part/models.py:2869 msgid "Substitute part" msgstr "" -#: part/models.py:2877 +#: part/models.py:2884 msgid "Part 1" msgstr "" -#: part/models.py:2881 +#: part/models.py:2888 msgid "Part 2" msgstr "" -#: part/models.py:2881 +#: part/models.py:2888 msgid "Select Related Part" msgstr "" -#: part/models.py:2899 +#: part/models.py:2906 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:2903 +#: part/models.py:2910 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:152 part/serializers.py:183 stock/serializers.py:181 +#: part/serializers.py:154 part/serializers.py:185 stock/serializers.py:181 msgid "Purchase currency of this stock item" msgstr "" -#: part/serializers.py:812 +#: part/serializers.py:814 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:820 +#: part/serializers.py:822 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:821 +#: part/serializers.py:823 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:826 +#: part/serializers.py:828 msgid "Include Inherited" msgstr "" -#: part/serializers.py:827 +#: part/serializers.py:829 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:832 +#: part/serializers.py:834 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:833 +#: part/serializers.py:835 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:838 +#: part/serializers.py:840 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:839 +#: part/serializers.py:841 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:879 +#: part/serializers.py:881 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:880 +#: part/serializers.py:882 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:910 +#: part/serializers.py:912 msgid "No part column specified" msgstr "" -#: part/serializers.py:953 +#: part/serializers.py:955 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:956 +#: part/serializers.py:958 msgid "No matching part found" msgstr "" -#: part/serializers.py:959 +#: part/serializers.py:961 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:968 +#: part/serializers.py:970 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:976 +#: part/serializers.py:978 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:997 +#: part/serializers.py:999 msgid "At least one BOM item is required" msgstr "" @@ -4848,101 +4884,101 @@ msgstr "" msgid "Delete Items" msgstr "" -#: part/templates/part/category.html:28 part/templates/part/category.html:32 +#: part/templates/part/category.html:34 part/templates/part/category.html:38 msgid "You are subscribed to notifications for this category" msgstr "" -#: part/templates/part/category.html:36 +#: part/templates/part/category.html:42 msgid "Subscribe to notifications for this category" msgstr "" -#: part/templates/part/category.html:42 +#: part/templates/part/category.html:48 msgid "Category Actions" msgstr "" -#: part/templates/part/category.html:47 +#: part/templates/part/category.html:53 msgid "Edit category" msgstr "" -#: part/templates/part/category.html:48 +#: part/templates/part/category.html:54 msgid "Edit Category" msgstr "" -#: part/templates/part/category.html:52 +#: part/templates/part/category.html:58 msgid "Delete category" msgstr "" -#: part/templates/part/category.html:53 +#: part/templates/part/category.html:59 msgid "Delete Category" msgstr "" -#: part/templates/part/category.html:61 +#: part/templates/part/category.html:67 msgid "Create new part category" msgstr "" -#: part/templates/part/category.html:62 +#: part/templates/part/category.html:68 msgid "New Category" msgstr "" -#: part/templates/part/category.html:80 part/templates/part/category.html:93 +#: part/templates/part/category.html:86 part/templates/part/category.html:99 msgid "Category Path" msgstr "" -#: part/templates/part/category.html:94 +#: part/templates/part/category.html:100 msgid "Top level part category" msgstr "" -#: part/templates/part/category.html:114 part/templates/part/category.html:222 +#: part/templates/part/category.html:120 part/templates/part/category.html:228 #: part/templates/part/category_sidebar.html:7 msgid "Subcategories" msgstr "" -#: part/templates/part/category.html:119 +#: part/templates/part/category.html:125 msgid "Parts (Including subcategories)" msgstr "" -#: part/templates/part/category.html:157 +#: part/templates/part/category.html:163 msgid "Create new part" msgstr "" -#: part/templates/part/category.html:158 templates/js/translated/bom.js:367 +#: part/templates/part/category.html:164 templates/js/translated/bom.js:367 msgid "New Part" msgstr "" -#: part/templates/part/category.html:168 part/templates/part/detail.html:363 +#: part/templates/part/category.html:174 part/templates/part/detail.html:363 #: part/templates/part/detail.html:394 msgid "Options" msgstr "" -#: part/templates/part/category.html:172 +#: part/templates/part/category.html:178 msgid "Set category" msgstr "" -#: part/templates/part/category.html:173 +#: part/templates/part/category.html:179 msgid "Set Category" msgstr "" -#: part/templates/part/category.html:180 part/templates/part/category.html:181 +#: part/templates/part/category.html:186 part/templates/part/category.html:187 msgid "Print Labels" msgstr "" -#: part/templates/part/category.html:206 +#: part/templates/part/category.html:212 msgid "Part Parameters" msgstr "" -#: part/templates/part/category.html:320 +#: part/templates/part/category.html:327 msgid "Create Part Category" msgstr "" -#: part/templates/part/category.html:340 +#: part/templates/part/category.html:347 msgid "Create Part" msgstr "" -#: part/templates/part/category.html:343 +#: part/templates/part/category.html:350 msgid "Create another part after this one" msgstr "" -#: part/templates/part/category.html:344 +#: part/templates/part/category.html:351 msgid "Part created successfully" msgstr "" @@ -4950,7 +4986,7 @@ msgstr "" msgid "Import Parts" msgstr "" -#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:375 +#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:379 msgid "Duplicate Part" msgstr "" @@ -5172,19 +5208,19 @@ msgstr "" #: part/templates/part/part_base.html:43 #: stock/templates/stock/item_base.html:41 -#: stock/templates/stock/location.html:43 +#: stock/templates/stock/location.html:48 msgid "Barcode actions" msgstr "" #: part/templates/part/part_base.html:46 #: stock/templates/stock/item_base.html:45 -#: stock/templates/stock/location.html:45 templates/qr_button.html:1 +#: stock/templates/stock/location.html:50 templates/qr_button.html:1 msgid "Show QR Code" msgstr "QR 코드 보기" #: part/templates/part/part_base.html:49 #: stock/templates/stock/item_base.html:63 -#: stock/templates/stock/location.html:47 +#: stock/templates/stock/location.html:52 msgid "Print Label" msgstr "" @@ -5194,7 +5230,7 @@ msgstr "" #: part/templates/part/part_base.html:60 #: stock/templates/stock/item_base.html:116 -#: stock/templates/stock/location.html:56 +#: stock/templates/stock/location.html:61 msgid "Stock actions" msgstr "" @@ -5255,7 +5291,7 @@ msgstr "" #: templates/js/translated/company.js:624 #: templates/js/translated/company.js:884 #: templates/js/translated/model_renderers.js:204 -#: templates/js/translated/part.js:650 templates/js/translated/part.js:727 +#: templates/js/translated/part.js:654 templates/js/translated/part.js:731 msgid "Inactive" msgstr "" @@ -5289,9 +5325,9 @@ msgstr "" msgid "Can Build" msgstr "" -#: part/templates/part/part_base.html:238 templates/js/translated/part.js:589 -#: templates/js/translated/part.js:609 templates/js/translated/part.js:1302 -#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490 +#: part/templates/part/part_base.html:238 templates/js/translated/part.js:593 +#: templates/js/translated/part.js:613 templates/js/translated/part.js:1306 +#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1494 msgid "Building" msgstr "" @@ -5464,8 +5500,8 @@ msgstr "" msgid "No sale pice history available for this part." msgstr "" -#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:612 -#: templates/js/translated/part.js:1290 templates/js/translated/part.js:1494 +#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616 +#: templates/js/translated/part.js:1294 templates/js/translated/part.js:1498 msgid "No Stock" msgstr "" @@ -5630,51 +5666,55 @@ msgstr "" msgid "Allow sending of emails for event notifications" msgstr "" -#: plugin/models.py:32 +#: plugin/models.py:33 msgid "Plugin Metadata" msgstr "" -#: plugin/models.py:33 +#: plugin/models.py:34 msgid "JSON metadata field, for use by external plugins" msgstr "" -#: plugin/models.py:79 +#: plugin/models.py:80 msgid "Plugin Configuration" msgstr "" -#: plugin/models.py:80 +#: plugin/models.py:81 msgid "Plugin Configurations" msgstr "" -#: plugin/models.py:85 +#: plugin/models.py:86 msgid "Key" msgstr "키" -#: plugin/models.py:86 +#: plugin/models.py:87 msgid "Key of plugin" msgstr "" -#: plugin/models.py:94 +#: plugin/models.py:95 msgid "PluginName of the plugin" msgstr "" -#: plugin/models.py:100 +#: plugin/models.py:101 msgid "Is the plugin active" msgstr "" -#: plugin/models.py:168 +#: plugin/models.py:158 +msgid "Sample plugin" +msgstr "" + +#: plugin/models.py:186 msgid "Plugin" msgstr "" -#: plugin/models.py:231 +#: plugin/models.py:249 msgid "Method" msgstr "" -#: plugin/plugin.py:228 +#: plugin/plugin.py:251 msgid "No author found" msgstr "" -#: plugin/plugin.py:240 +#: plugin/plugin.py:263 msgid "No date found" msgstr "" @@ -5746,12 +5786,12 @@ msgstr "" msgid "No valid objects provided to template" msgstr "" -#: report/api.py:216 report/api.py:257 +#: report/api.py:216 report/api.py:252 #, python-brace-format msgid "Template file '{template}' is missing or does not exist" msgstr "" -#: report/api.py:360 +#: report/api.py:355 msgid "Test report" msgstr "" @@ -5852,12 +5892,12 @@ msgid "Stock Item Test Report" msgstr "" #: report/templates/report/inventree_test_report_base.html:79 -#: stock/models.py:641 stock/templates/stock/item_base.html:322 +#: stock/models.py:648 stock/templates/stock/item_base.html:322 #: templates/js/translated/build.js:424 templates/js/translated/build.js:576 #: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673 #: templates/js/translated/model_renderers.js:118 #: templates/js/translated/order.js:118 templates/js/translated/order.js:3297 -#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:486 +#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490 msgid "Serial Number" msgstr "일련번호" @@ -5866,19 +5906,19 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report_base.html:93 -#: stock/models.py:2076 +#: stock/models.py:2083 msgid "Test" msgstr "" #: report/templates/report/inventree_test_report_base.html:94 -#: stock/models.py:2082 +#: stock/models.py:2089 msgid "Result" msgstr "" #: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:51 +#: templates/InvenTree/settings/plugin.html:53 #: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2459 +#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468 msgid "Date" msgstr "" @@ -5896,8 +5936,8 @@ msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report_base.html:137 -#: templates/js/translated/stock.js:606 templates/js/translated/stock.js:776 -#: templates/js/translated/stock.js:2708 +#: templates/js/translated/stock.js:610 templates/js/translated/stock.js:780 +#: templates/js/translated/stock.js:2717 msgid "Serial" msgstr "" @@ -5913,241 +5953,241 @@ msgstr "" msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" -#: stock/models.py:82 stock/models.py:732 +#: stock/models.py:89 stock/models.py:739 #: stock/templates/stock/item_base.html:252 msgid "Owner" msgstr "" -#: stock/models.py:83 stock/models.py:733 +#: stock/models.py:90 stock/models.py:740 msgid "Select Owner" msgstr "" -#: stock/models.py:435 +#: stock/models.py:442 msgid "StockItem with this serial number already exists" msgstr "" -#: stock/models.py:467 stock/serializers.py:95 +#: stock/models.py:474 stock/serializers.py:95 msgid "Stock item cannot be created for virtual parts" msgstr "" -#: stock/models.py:484 +#: stock/models.py:491 #, python-brace-format msgid "Part type ('{pf}') must be {pe}" msgstr "" -#: stock/models.py:494 stock/models.py:503 +#: stock/models.py:501 stock/models.py:510 msgid "Quantity must be 1 for item with a serial number" msgstr "" -#: stock/models.py:495 +#: stock/models.py:502 msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:517 +#: stock/models.py:524 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:523 +#: stock/models.py:530 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:537 +#: stock/models.py:544 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:583 +#: stock/models.py:590 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:593 +#: stock/models.py:600 msgid "Base part" msgstr "" -#: stock/models.py:601 +#: stock/models.py:608 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:608 stock/templates/stock/location.html:17 +#: stock/models.py:615 stock/templates/stock/location.html:17 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" msgstr "" -#: stock/models.py:611 +#: stock/models.py:618 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:618 +#: stock/models.py:625 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:624 stock/templates/stock/item_base.html:361 +#: stock/models.py:631 stock/templates/stock/item_base.html:361 msgid "Installed In" msgstr "" -#: stock/models.py:627 +#: stock/models.py:634 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:643 +#: stock/models.py:650 msgid "Serial number for this item" msgstr "" -#: stock/models.py:657 +#: stock/models.py:664 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:662 +#: stock/models.py:669 msgid "Stock Quantity" msgstr "" -#: stock/models.py:671 +#: stock/models.py:678 msgid "Source Build" msgstr "" -#: stock/models.py:673 +#: stock/models.py:680 msgid "Build for this stock item" msgstr "" -#: stock/models.py:684 +#: stock/models.py:691 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:687 +#: stock/models.py:694 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:693 +#: stock/models.py:700 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:699 stock/templates/stock/item_base.html:429 -#: templates/js/translated/stock.js:1879 +#: stock/models.py:706 stock/templates/stock/item_base.html:429 +#: templates/js/translated/stock.js:1883 msgid "Expiry Date" msgstr "" -#: stock/models.py:700 +#: stock/models.py:707 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:713 +#: stock/models.py:720 msgid "Delete on deplete" msgstr "" -#: stock/models.py:713 +#: stock/models.py:720 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:720 stock/templates/stock/item.html:132 +#: stock/models.py:727 stock/templates/stock/item.html:132 msgid "Stock Item Notes" msgstr "" -#: stock/models.py:728 +#: stock/models.py:735 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:756 +#: stock/models.py:763 msgid "Converted to part" msgstr "" -#: stock/models.py:1235 +#: stock/models.py:1242 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1241 +#: stock/models.py:1248 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1247 +#: stock/models.py:1254 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({n})" msgstr "" -#: stock/models.py:1250 +#: stock/models.py:1257 msgid "Serial numbers must be a list of integers" msgstr "" -#: stock/models.py:1253 +#: stock/models.py:1260 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1260 +#: stock/models.py:1267 #, python-brace-format msgid "Serial numbers already exist: {exists}" msgstr "" -#: stock/models.py:1330 +#: stock/models.py:1337 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1333 +#: stock/models.py:1340 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1336 +#: stock/models.py:1343 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1339 +#: stock/models.py:1346 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1342 +#: stock/models.py:1349 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1345 +#: stock/models.py:1352 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1352 stock/serializers.py:959 +#: stock/models.py:1359 stock/serializers.py:961 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1356 +#: stock/models.py:1363 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1360 +#: stock/models.py:1367 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1364 +#: stock/models.py:1371 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:1533 +#: stock/models.py:1540 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:1994 +#: stock/models.py:2001 msgid "Entry notes" msgstr "" -#: stock/models.py:2052 +#: stock/models.py:2059 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2058 +#: stock/models.py:2065 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2077 +#: stock/models.py:2084 msgid "Test name" msgstr "" -#: stock/models.py:2083 +#: stock/models.py:2090 msgid "Test result" msgstr "" -#: stock/models.py:2089 +#: stock/models.py:2096 msgid "Test output value" msgstr "" -#: stock/models.py:2096 +#: stock/models.py:2103 msgid "Test result attachment" msgstr "" -#: stock/models.py:2102 +#: stock/models.py:2109 msgid "Test notes" msgstr "" @@ -6172,7 +6212,7 @@ msgstr "" msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:323 stock/serializers.py:916 stock/serializers.py:1149 +#: stock/serializers.py:323 stock/serializers.py:918 stock/serializers.py:1151 msgid "Destination stock location" msgstr "" @@ -6220,63 +6260,63 @@ msgstr "" msgid "Destination location for returned item" msgstr "" -#: stock/serializers.py:771 +#: stock/serializers.py:773 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:775 +#: stock/serializers.py:777 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:779 +#: stock/serializers.py:781 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:810 +#: stock/serializers.py:812 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:816 +#: stock/serializers.py:818 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:824 +#: stock/serializers.py:826 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:834 stock/serializers.py:1065 +#: stock/serializers.py:836 stock/serializers.py:1067 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:923 +#: stock/serializers.py:925 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:928 +#: stock/serializers.py:930 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:929 +#: stock/serializers.py:931 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:934 +#: stock/serializers.py:936 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:935 +#: stock/serializers.py:937 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:945 +#: stock/serializers.py:947 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1027 +#: stock/serializers.py:1029 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1055 +#: stock/serializers.py:1057 msgid "Stock transaction notes" msgstr "" @@ -6313,7 +6353,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2852 +#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2861 msgid "Install Stock Item" msgstr "" @@ -6321,7 +6361,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1518 +#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1522 msgid "Add Test Result" msgstr "" @@ -6352,7 +6392,7 @@ msgid "Stock adjustment actions" msgstr "" #: stock/templates/stock/item_base.html:80 -#: stock/templates/stock/location.html:63 templates/stock_table.html:47 +#: stock/templates/stock/location.html:68 templates/stock_table.html:47 msgid "Count stock" msgstr "" @@ -6369,7 +6409,7 @@ msgid "Serialize stock" msgstr "" #: stock/templates/stock/item_base.html:93 -#: stock/templates/stock/location.html:69 templates/stock_table.html:48 +#: stock/templates/stock/location.html:74 templates/stock_table.html:48 msgid "Transfer stock" msgstr "" @@ -6430,7 +6470,7 @@ msgid "You are not in the list of owners of this item. This stock item cannot be msgstr "" #: stock/templates/stock/item_base.html:257 -#: stock/templates/stock/location.html:127 +#: stock/templates/stock/location.html:132 msgid "Read only" msgstr "" @@ -6508,7 +6548,7 @@ msgid "Stale" msgstr "" #: stock/templates/stock/item_base.html:442 -#: templates/js/translated/company.js:985 templates/js/translated/stock.js:1895 +#: templates/js/translated/company.js:985 templates/js/translated/stock.js:1899 msgid "Last Updated" msgstr "" @@ -6552,58 +6592,58 @@ msgstr "" msgid "Select quantity to serialize, and unique serial numbers." msgstr "" -#: stock/templates/stock/location.html:33 +#: stock/templates/stock/location.html:38 msgid "Locate stock location" msgstr "" -#: stock/templates/stock/location.html:49 +#: stock/templates/stock/location.html:54 msgid "Check-in Items" msgstr "" -#: stock/templates/stock/location.html:77 +#: stock/templates/stock/location.html:82 msgid "Location actions" msgstr "" -#: stock/templates/stock/location.html:79 +#: stock/templates/stock/location.html:84 msgid "Edit location" msgstr "" -#: stock/templates/stock/location.html:81 +#: stock/templates/stock/location.html:86 msgid "Delete location" msgstr "" -#: stock/templates/stock/location.html:90 +#: stock/templates/stock/location.html:95 msgid "Create new stock location" msgstr "" -#: stock/templates/stock/location.html:91 +#: stock/templates/stock/location.html:96 msgid "New Location" msgstr "" -#: stock/templates/stock/location.html:109 -#: stock/templates/stock/location.html:115 +#: stock/templates/stock/location.html:114 +#: stock/templates/stock/location.html:120 msgid "Location Path" msgstr "" -#: stock/templates/stock/location.html:116 +#: stock/templates/stock/location.html:121 msgid "Top level stock location" msgstr "" -#: stock/templates/stock/location.html:122 +#: stock/templates/stock/location.html:127 msgid "Location Owner" msgstr "" -#: stock/templates/stock/location.html:126 +#: stock/templates/stock/location.html:131 msgid "You are not in the list of owners of this location. This stock location cannot be edited." msgstr "" -#: stock/templates/stock/location.html:142 -#: stock/templates/stock/location.html:189 +#: stock/templates/stock/location.html:147 +#: stock/templates/stock/location.html:194 #: stock/templates/stock/location_sidebar.html:5 msgid "Sublocations" msgstr "" -#: stock/templates/stock/location.html:156 templates/InvenTree/search.html:165 +#: stock/templates/stock/location.html:161 templates/InvenTree/search.html:165 #: templates/js/translated/search.js:238 users/models.py:39 msgid "Stock Locations" msgstr "" @@ -6875,15 +6915,15 @@ msgstr "새 탭에서 열기" msgid "Part Settings" msgstr "" -#: templates/InvenTree/settings/part.html:44 +#: templates/InvenTree/settings/part.html:46 msgid "Part Import" msgstr "" -#: templates/InvenTree/settings/part.html:48 +#: templates/InvenTree/settings/part.html:50 msgid "Import Part" msgstr "" -#: templates/InvenTree/settings/part.html:62 +#: templates/InvenTree/settings/part.html:64 msgid "Part Parameter Templates" msgstr "" @@ -6895,47 +6935,47 @@ msgstr "" msgid "Changing the settings below require you to immediately restart the server. Do not change this while under active usage." msgstr "" -#: templates/InvenTree/settings/plugin.html:34 +#: templates/InvenTree/settings/plugin.html:36 msgid "Plugins" msgstr "" -#: templates/InvenTree/settings/plugin.html:39 +#: templates/InvenTree/settings/plugin.html:41 #: templates/js/translated/plugin.js:16 msgid "Install Plugin" msgstr "" -#: templates/InvenTree/settings/plugin.html:48 templates/navbar.html:137 +#: templates/InvenTree/settings/plugin.html:50 templates/navbar.html:137 #: users/models.py:36 msgid "Admin" msgstr "관리자" -#: templates/InvenTree/settings/plugin.html:50 +#: templates/InvenTree/settings/plugin.html:52 #: templates/InvenTree/settings/plugin_settings.html:28 msgid "Author" msgstr "작성자" -#: templates/InvenTree/settings/plugin.html:52 +#: templates/InvenTree/settings/plugin.html:54 #: templates/InvenTree/settings/plugin_settings.html:43 msgid "Version" msgstr "버전" -#: templates/InvenTree/settings/plugin.html:74 +#: templates/InvenTree/settings/plugin.html:76 msgid "Sample" msgstr "" -#: templates/InvenTree/settings/plugin.html:99 +#: templates/InvenTree/settings/plugin.html:101 msgid "Inactive plugins" msgstr "" -#: templates/InvenTree/settings/plugin.html:122 +#: templates/InvenTree/settings/plugin.html:124 msgid "Plugin Error Stack" msgstr "" -#: templates/InvenTree/settings/plugin.html:131 +#: templates/InvenTree/settings/plugin.html:133 msgid "Stage" msgstr "" -#: templates/InvenTree/settings/plugin.html:133 +#: templates/InvenTree/settings/plugin.html:135 #: templates/js/translated/notification.js:75 msgid "Message" msgstr "메시지" @@ -6999,11 +7039,11 @@ msgstr "" msgid "Commit Message" msgstr "" -#: templates/InvenTree/settings/plugin_settings.html:117 +#: templates/InvenTree/settings/plugin_settings.html:120 msgid "Sign Status" msgstr "" -#: templates/InvenTree/settings/plugin_settings.html:122 +#: templates/InvenTree/settings/plugin_settings.html:125 msgid "Sign Key" msgstr "" @@ -7828,7 +7868,7 @@ msgstr "" msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:456 templates/js/translated/stock.js:1050 +#: templates/js/translated/barcode.js:456 templates/js/translated/stock.js:1054 msgid "Remove stock item" msgstr "" @@ -8001,7 +8041,7 @@ msgid "Includes variant and substitute stock" msgstr "" #: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822 -#: templates/js/translated/part.js:759 +#: templates/js/translated/part.js:763 msgid "Includes variant stock" msgstr "" @@ -8098,12 +8138,12 @@ msgid "Complete Build Order" msgstr "" #: templates/js/translated/build.js:263 templates/js/translated/stock.js:92 -#: templates/js/translated/stock.js:210 +#: templates/js/translated/stock.js:214 msgid "Next available serial number" msgstr "" #: templates/js/translated/build.js:265 templates/js/translated/stock.js:94 -#: templates/js/translated/stock.js:212 +#: templates/js/translated/stock.js:216 msgid "Latest serial number" msgstr "" @@ -8316,9 +8356,9 @@ msgstr "" msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1383 -#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1682 -#: templates/js/translated/stock.js:2382 +#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387 +#: templates/js/translated/part.js:1899 templates/js/translated/stock.js:1686 +#: templates/js/translated/stock.js:2386 msgid "Select" msgstr "선택" @@ -8330,7 +8370,7 @@ msgstr "" msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2638 +#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647 msgid "No user information" msgstr "" @@ -8403,34 +8443,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:616 -#: templates/js/translated/company.js:876 templates/js/translated/part.js:634 -#: templates/js/translated/part.js:719 +#: templates/js/translated/company.js:876 templates/js/translated/part.js:638 +#: templates/js/translated/part.js:723 msgid "Template part" msgstr "" #: templates/js/translated/company.js:620 -#: templates/js/translated/company.js:880 templates/js/translated/part.js:638 -#: templates/js/translated/part.js:723 +#: templates/js/translated/company.js:880 templates/js/translated/part.js:642 +#: templates/js/translated/part.js:727 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:748 templates/js/translated/part.js:826 +#: templates/js/translated/company.js:748 templates/js/translated/part.js:830 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:785 templates/js/translated/part.js:868 +#: templates/js/translated/company.js:785 templates/js/translated/part.js:872 msgid "Edit parameter" msgstr "" -#: templates/js/translated/company.js:786 templates/js/translated/part.js:869 +#: templates/js/translated/company.js:786 templates/js/translated/part.js:873 msgid "Delete parameter" msgstr "" -#: templates/js/translated/company.js:805 templates/js/translated/part.js:886 +#: templates/js/translated/company.js:805 templates/js/translated/part.js:890 msgid "Edit Parameter" msgstr "" -#: templates/js/translated/company.js:816 templates/js/translated/part.js:898 +#: templates/js/translated/company.js:816 templates/js/translated/part.js:902 msgid "Delete Parameter" msgstr "" @@ -8555,7 +8595,7 @@ msgid "Labels sent to printer" msgstr "" #: templates/js/translated/label.js:60 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1078 msgid "Select Stock Items" msgstr "" @@ -8865,7 +8905,7 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2140 +#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144 msgid "Stock Status" msgstr "" @@ -8889,7 +8929,7 @@ msgstr "" msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:1672 templates/js/translated/part.js:939 +#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943 msgid "No purchase orders found" msgstr "" @@ -8924,7 +8964,7 @@ msgstr "" #: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203 #: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050 -#: templates/js/translated/part.js:2126 templates/js/translated/part.js:2479 +#: templates/js/translated/part.js:2135 templates/js/translated/part.js:2488 msgid "Unit Price" msgstr "단가" @@ -8934,11 +8974,11 @@ msgid "Total Price" msgstr "" #: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600 -#: templates/js/translated/part.js:1046 +#: templates/js/translated/part.js:1050 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1092 +#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096 msgid "Receive line item" msgstr "" @@ -9059,7 +9099,7 @@ msgid "Delete Stock Allocation" msgstr "" #: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398 -#: templates/js/translated/stock.js:1598 +#: templates/js/translated/stock.js:1602 msgid "Shipped to customer" msgstr "" @@ -9183,241 +9223,245 @@ msgstr "" msgid "Parent part category" msgstr "" -#: templates/js/translated/part.js:318 +#: templates/js/translated/part.js:306 templates/js/translated/stock.js:118 +msgid "Icon (optional) - Explore all available icons on" +msgstr "" + +#: templates/js/translated/part.js:322 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:331 +#: templates/js/translated/part.js:335 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:333 +#: templates/js/translated/part.js:337 msgid "Any child categories will be moved to the parent of this category" msgstr "" -#: templates/js/translated/part.js:334 +#: templates/js/translated/part.js:338 msgid "Any parts in this category will be moved to the parent of this category" msgstr "" -#: templates/js/translated/part.js:339 +#: templates/js/translated/part.js:343 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:365 +#: templates/js/translated/part.js:369 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:367 +#: templates/js/translated/part.js:371 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:378 +#: templates/js/translated/part.js:382 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:430 +#: templates/js/translated/part.js:434 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:431 +#: templates/js/translated/part.js:435 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:445 +#: templates/js/translated/part.js:449 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:447 +#: templates/js/translated/part.js:451 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:448 +#: templates/js/translated/part.js:452 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:449 +#: templates/js/translated/part.js:453 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:456 +#: templates/js/translated/part.js:460 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:492 +#: templates/js/translated/part.js:496 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:494 +#: templates/js/translated/part.js:498 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:499 +#: templates/js/translated/part.js:503 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:501 +#: templates/js/translated/part.js:505 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:518 +#: templates/js/translated/part.js:522 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:528 +#: templates/js/translated/part.js:532 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:531 +#: templates/js/translated/part.js:535 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:556 +#: templates/js/translated/part.js:560 msgid "Copy Bill of Materials" msgstr "부품 명세서 복사" -#: templates/js/translated/part.js:582 templates/js/translated/part.js:1466 +#: templates/js/translated/part.js:586 templates/js/translated/part.js:1470 #: templates/js/translated/table_filters.js:468 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:592 templates/js/translated/part.js:1478 +#: templates/js/translated/part.js:596 templates/js/translated/part.js:1482 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:626 templates/js/translated/part.js:711 +#: templates/js/translated/part.js:630 templates/js/translated/part.js:715 msgid "Trackable part" msgstr "" -#: templates/js/translated/part.js:630 templates/js/translated/part.js:715 +#: templates/js/translated/part.js:634 templates/js/translated/part.js:719 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:642 +#: templates/js/translated/part.js:646 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:646 +#: templates/js/translated/part.js:650 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:774 +#: templates/js/translated/part.js:778 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1162 +#: templates/js/translated/part.js:1166 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1186 +#: templates/js/translated/part.js:1190 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:1253 templates/js/translated/part.js:1549 +#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1553 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:1292 +#: templates/js/translated/part.js:1296 msgid "Not available" msgstr "" -#: templates/js/translated/part.js:1443 +#: templates/js/translated/part.js:1447 msgid "No category" msgstr "" -#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816 -#: templates/js/translated/stock.js:2343 +#: templates/js/translated/part.js:1577 templates/js/translated/part.js:1820 +#: templates/js/translated/stock.js:2347 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:1589 +#: templates/js/translated/part.js:1593 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:1655 +#: templates/js/translated/part.js:1659 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:1660 +#: templates/js/translated/part.js:1664 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:1665 +#: templates/js/translated/part.js:1669 msgid "Select Part Category" msgstr "" -#: templates/js/translated/part.js:1678 +#: templates/js/translated/part.js:1682 msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2362 +#: templates/js/translated/part.js:1839 templates/js/translated/stock.js:2366 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:1914 +#: templates/js/translated/part.js:1918 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:1925 +#: templates/js/translated/part.js:1934 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:1983 +#: templates/js/translated/part.js:1992 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2034 templates/js/translated/stock.js:1295 +#: templates/js/translated/part.js:2043 templates/js/translated/stock.js:1299 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:2035 templates/js/translated/stock.js:1296 -#: templates/js/translated/stock.js:1556 +#: templates/js/translated/part.js:2044 templates/js/translated/stock.js:1300 +#: templates/js/translated/stock.js:1560 msgid "Delete test result" msgstr "" -#: templates/js/translated/part.js:2041 +#: templates/js/translated/part.js:2050 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2063 +#: templates/js/translated/part.js:2072 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2077 +#: templates/js/translated/part.js:2086 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2102 +#: templates/js/translated/part.js:2111 #, python-brace-format msgid "No ${human_name} information found" msgstr "" -#: templates/js/translated/part.js:2159 +#: templates/js/translated/part.js:2168 #, python-brace-format msgid "Edit ${human_name}" msgstr "" -#: templates/js/translated/part.js:2160 +#: templates/js/translated/part.js:2169 #, python-brace-format msgid "Delete ${human_name}" msgstr "" -#: templates/js/translated/part.js:2274 +#: templates/js/translated/part.js:2283 msgid "Current Stock" msgstr "" -#: templates/js/translated/part.js:2307 +#: templates/js/translated/part.js:2316 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2333 +#: templates/js/translated/part.js:2342 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2403 +#: templates/js/translated/part.js:2412 msgid "Single Price" msgstr "" -#: templates/js/translated/part.js:2422 +#: templates/js/translated/part.js:2431 msgid "Single Price Difference" msgstr "" @@ -9511,376 +9555,376 @@ msgstr "" msgid "Parent stock location" msgstr "" -#: templates/js/translated/stock.js:140 +#: templates/js/translated/stock.js:144 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:155 +#: templates/js/translated/stock.js:159 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:169 +#: templates/js/translated/stock.js:173 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:171 +#: templates/js/translated/stock.js:175 msgid "Any child locations will be moved to the parent of this location" msgstr "" -#: templates/js/translated/stock.js:172 +#: templates/js/translated/stock.js:176 msgid "Any stock items in this location will be moved to the parent of this location" msgstr "" -#: templates/js/translated/stock.js:178 +#: templates/js/translated/stock.js:182 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:223 +#: templates/js/translated/stock.js:227 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:262 +#: templates/js/translated/stock.js:266 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:268 +#: templates/js/translated/stock.js:272 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:333 +#: templates/js/translated/stock.js:337 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:353 +#: templates/js/translated/stock.js:357 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:369 +#: templates/js/translated/stock.js:373 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:374 +#: templates/js/translated/stock.js:378 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:395 +#: templates/js/translated/stock.js:399 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:445 +#: templates/js/translated/stock.js:449 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:458 +#: templates/js/translated/stock.js:462 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:483 +#: templates/js/translated/stock.js:487 msgid "Find Serial Number" msgstr "일련번호 찾기" -#: templates/js/translated/stock.js:487 templates/js/translated/stock.js:488 +#: templates/js/translated/stock.js:491 templates/js/translated/stock.js:492 msgid "Enter serial number" msgstr "일련번호를 입력하세요" -#: templates/js/translated/stock.js:504 +#: templates/js/translated/stock.js:508 msgid "Enter a serial number" msgstr "일련번호를 입력하세요" -#: templates/js/translated/stock.js:524 +#: templates/js/translated/stock.js:528 msgid "No matching serial number" msgstr "일치하는 일련번호가 없습니다" -#: templates/js/translated/stock.js:533 +#: templates/js/translated/stock.js:537 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:656 +#: templates/js/translated/stock.js:660 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:657 +#: templates/js/translated/stock.js:661 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:734 +#: templates/js/translated/stock.js:738 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:735 +#: templates/js/translated/stock.js:739 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:737 +#: templates/js/translated/stock.js:741 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:738 +#: templates/js/translated/stock.js:742 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:824 +#: templates/js/translated/stock.js:828 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:825 +#: templates/js/translated/stock.js:829 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:920 +#: templates/js/translated/stock.js:924 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:921 +#: templates/js/translated/stock.js:925 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:927 +#: templates/js/translated/stock.js:931 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:928 +#: templates/js/translated/stock.js:932 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:932 +#: templates/js/translated/stock.js:936 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:933 +#: templates/js/translated/stock.js:937 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:937 +#: templates/js/translated/stock.js:941 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:938 users/models.py:216 +#: templates/js/translated/stock.js:942 users/models.py:216 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:942 +#: templates/js/translated/stock.js:946 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1035 +#: templates/js/translated/stock.js:1039 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1035 +#: templates/js/translated/stock.js:1039 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1075 +#: templates/js/translated/stock.js:1079 msgid "You must select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1098 +#: templates/js/translated/stock.js:1102 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1234 +#: templates/js/translated/stock.js:1238 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1236 +#: templates/js/translated/stock.js:1240 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1241 +#: templates/js/translated/stock.js:1245 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1288 +#: templates/js/translated/stock.js:1292 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1291 +#: templates/js/translated/stock.js:1295 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1317 +#: templates/js/translated/stock.js:1321 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1374 +#: templates/js/translated/stock.js:1378 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1539 +#: templates/js/translated/stock.js:1543 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1561 +#: templates/js/translated/stock.js:1565 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1590 +#: templates/js/translated/stock.js:1594 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1594 +#: templates/js/translated/stock.js:1598 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1602 +#: templates/js/translated/stock.js:1606 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1608 +#: templates/js/translated/stock.js:1612 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1775 +#: templates/js/translated/stock.js:1779 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:1780 +#: templates/js/translated/stock.js:1784 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:1783 +#: templates/js/translated/stock.js:1787 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:1786 +#: templates/js/translated/stock.js:1790 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:1788 +#: templates/js/translated/stock.js:1792 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:1790 +#: templates/js/translated/stock.js:1794 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:1793 +#: templates/js/translated/stock.js:1797 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:1797 +#: templates/js/translated/stock.js:1801 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:1799 +#: templates/js/translated/stock.js:1803 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:1806 +#: templates/js/translated/stock.js:1810 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:1808 +#: templates/js/translated/stock.js:1812 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:1810 +#: templates/js/translated/stock.js:1814 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:1814 +#: templates/js/translated/stock.js:1818 #: templates/js/translated/table_filters.js:196 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:1865 +#: templates/js/translated/stock.js:1869 msgid "Stocktake" msgstr "" -#: templates/js/translated/stock.js:1944 +#: templates/js/translated/stock.js:1948 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:1982 +#: templates/js/translated/stock.js:1986 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2155 +#: templates/js/translated/stock.js:2159 msgid "Set Stock Status" msgstr "" -#: templates/js/translated/stock.js:2169 +#: templates/js/translated/stock.js:2173 msgid "Select Status Code" msgstr "" -#: templates/js/translated/stock.js:2170 +#: templates/js/translated/stock.js:2174 msgid "Status code must be selected" msgstr "" -#: templates/js/translated/stock.js:2400 +#: templates/js/translated/stock.js:2404 msgid "Load Subloactions" msgstr "" -#: templates/js/translated/stock.js:2484 +#: templates/js/translated/stock.js:2493 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2500 +#: templates/js/translated/stock.js:2509 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2522 +#: templates/js/translated/stock.js:2531 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2541 +#: templates/js/translated/stock.js:2550 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2560 +#: templates/js/translated/stock.js:2569 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2578 +#: templates/js/translated/stock.js:2587 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:2601 +#: templates/js/translated/stock.js:2610 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:2609 +#: templates/js/translated/stock.js:2618 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:2685 +#: templates/js/translated/stock.js:2694 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:2736 templates/js/translated/stock.js:2772 +#: templates/js/translated/stock.js:2745 templates/js/translated/stock.js:2781 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:2785 +#: templates/js/translated/stock.js:2794 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:2806 +#: templates/js/translated/stock.js:2815 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:2807 +#: templates/js/translated/stock.js:2816 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:2809 +#: templates/js/translated/stock.js:2818 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:2810 +#: templates/js/translated/stock.js:2819 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:2811 +#: templates/js/translated/stock.js:2820 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:2812 +#: templates/js/translated/stock.js:2821 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:2825 +#: templates/js/translated/stock.js:2834 msgid "Select part to install" msgstr "" diff --git a/InvenTree/locale/nl/LC_MESSAGES/django.po b/InvenTree/locale/nl/LC_MESSAGES/django.po index 2550efa39d..7bfcedb248 100644 --- a/InvenTree/locale/nl/LC_MESSAGES/django.po +++ b/InvenTree/locale/nl/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-11 02:47+0000\n" -"PO-Revision-Date: 2022-08-11 13:49\n" +"POT-Creation-Date: 2022-08-16 11:53+0000\n" +"PO-Revision-Date: 2022-08-16 21:36\n" "Last-Translator: \n" "Language-Team: Dutch\n" "Language: nl_NL\n" @@ -36,15 +36,15 @@ msgstr "Voer datum in" #: order/templates/order/so_sidebar.html:17 #: part/templates/part/part_sidebar.html:59 #: report/templates/report/inventree_build_order_base.html:172 -#: stock/models.py:1993 stock/models.py:2101 stock/serializers.py:329 -#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:823 -#: stock/serializers.py:922 stock/serializers.py:1054 +#: stock/models.py:2000 stock/models.py:2108 stock/serializers.py:329 +#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825 +#: stock/serializers.py:924 stock/serializers.py:1056 #: stock/templates/stock/stock_sidebar.html:25 #: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101 #: templates/js/translated/company.js:964 templates/js/translated/order.js:2104 #: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753 #: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102 -#: templates/js/translated/stock.js:1370 templates/js/translated/stock.js:1976 +#: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980 msgid "Notes" msgstr "Opmerkingen" @@ -163,6 +163,10 @@ msgstr "Geen serienummers gevonden" msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "Hoeveelheid van unieke serienummers ({s}) moet overeenkomen met de hoeveelheid ({q})" +#: InvenTree/mixins.py:71 +msgid "Remove HTML tags from this value" +msgstr "" + #: InvenTree/models.py:236 msgid "Improperly formatted pattern" msgstr "Onjuist opgemaakt patroon" @@ -195,7 +199,7 @@ msgstr "Ontbrekend bestand" msgid "Missing external link" msgstr "Externe link ontbreekt" -#: InvenTree/models.py:395 stock/models.py:2095 +#: InvenTree/models.py:395 stock/models.py:2102 #: templates/js/translated/attachment.js:103 #: templates/js/translated/attachment.js:241 msgid "Attachment" @@ -207,16 +211,16 @@ msgstr "Bestand als bijlage selecteren" #: InvenTree/models.py:402 company/models.py:124 company/models.py:276 #: company/models.py:510 order/models.py:84 order/models.py:1245 -#: part/models.py:795 +#: part/models.py:802 #: report/templates/report/inventree_build_order_base.html:164 #: templates/js/translated/company.js:656 #: templates/js/translated/company.js:948 templates/js/translated/order.js:2742 -#: templates/js/translated/part.js:1510 +#: templates/js/translated/part.js:1514 msgid "Link" msgstr "Link" -#: InvenTree/models.py:403 build/models.py:296 part/models.py:796 -#: stock/models.py:651 +#: InvenTree/models.py:403 build/models.py:296 part/models.py:803 +#: stock/models.py:658 msgid "Link to external URL" msgstr "Link naar externe URL" @@ -229,12 +233,12 @@ msgstr "Opmerking" msgid "File comment" msgstr "Bestand opmerking" -#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1646 -#: common/models.py:1647 common/models.py:1870 common/models.py:1871 -#: common/models.py:2133 common/models.py:2134 part/models.py:2193 -#: part/models.py:2213 plugin/models.py:238 plugin/models.py:239 +#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665 +#: common/models.py:1666 common/models.py:1889 common/models.py:1890 +#: common/models.py:2152 common/models.py:2153 part/models.py:2200 +#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2632 +#: templates/js/translated/stock.js:2641 msgid "User" msgstr "Gebruiker" @@ -271,19 +275,19 @@ msgstr "Fout bij hernoemen bestand" msgid "Invalid choice" msgstr "Ongeldige keuze" -#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1856 -#: company/models.py:358 label/models.py:101 part/models.py:739 -#: part/models.py:2371 plugin/models.py:93 report/models.py:152 +#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875 +#: company/models.py:358 label/models.py:101 part/models.py:746 +#: part/models.py:2378 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 -#: templates/InvenTree/settings/plugin.html:49 -#: templates/InvenTree/settings/plugin.html:132 +#: templates/InvenTree/settings/plugin.html:51 +#: templates/InvenTree/settings/plugin.html:134 #: templates/InvenTree/settings/plugin_settings.html:23 #: templates/InvenTree/settings/settings.html:347 #: templates/js/translated/company.js:545 #: templates/js/translated/company.js:758 #: templates/js/translated/notification.js:71 -#: templates/js/translated/part.js:684 templates/js/translated/part.js:836 -#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2388 +#: templates/js/translated/part.js:688 templates/js/translated/part.js:840 +#: templates/js/translated/part.js:1906 templates/js/translated/stock.js:2392 msgid "Name" msgstr "Naam" @@ -292,21 +296,21 @@ msgstr "Naam" #: company/models.py:516 company/templates/company/company_base.html:71 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:87 label/models.py:108 -#: order/models.py:82 part/models.py:762 part/templates/part/category.html:74 +#: order/models.py:82 part/models.py:769 part/templates/part/category.html:80 #: part/templates/part/part_base.html:167 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 -#: stock/templates/stock/location.html:103 +#: stock/templates/stock/location.html:108 #: templates/InvenTree/settings/plugin_settings.html:33 #: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848 #: templates/js/translated/build.js:2471 templates/js/translated/company.js:409 #: templates/js/translated/company.js:667 #: templates/js/translated/company.js:959 templates/js/translated/order.js:1720 #: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531 -#: templates/js/translated/part.js:743 templates/js/translated/part.js:1149 -#: templates/js/translated/part.js:1424 templates/js/translated/part.js:1933 -#: templates/js/translated/part.js:2002 templates/js/translated/stock.js:1739 -#: templates/js/translated/stock.js:2415 templates/js/translated/stock.js:2469 +#: templates/js/translated/part.js:747 templates/js/translated/part.js:1153 +#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1942 +#: templates/js/translated/part.js:2011 templates/js/translated/stock.js:1743 +#: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478 msgid "Description" msgstr "Omschrijving" @@ -319,7 +323,7 @@ msgid "parent" msgstr "bovenliggende" #: InvenTree/models.py:560 InvenTree/models.py:561 -#: templates/js/translated/part.js:1939 templates/js/translated/stock.js:2421 +#: templates/js/translated/part.js:1948 templates/js/translated/stock.js:2430 msgid "Path" msgstr "Pad" @@ -331,7 +335,7 @@ msgstr "Serverfout" msgid "An error has been logged by the server." msgstr "Er is een fout gelogd door de server." -#: InvenTree/serializers.py:55 part/models.py:2692 +#: InvenTree/serializers.py:55 part/models.py:2699 msgid "Must be a valid number" msgstr "Moet een geldig nummer zijn" @@ -398,99 +402,99 @@ msgstr "URL van extern afbeeldingsbestand" msgid "Downloading images from remote URL is not enabled" msgstr "Afbeeldingen van externe URL downloaden is niet ingeschakeld" -#: InvenTree/settings.py:609 +#: InvenTree/settings.py:607 msgid "Czech" msgstr "Tsjechisch" -#: InvenTree/settings.py:610 +#: InvenTree/settings.py:608 msgid "German" msgstr "Duits" -#: InvenTree/settings.py:611 +#: InvenTree/settings.py:609 msgid "Greek" msgstr "Grieks" -#: InvenTree/settings.py:612 +#: InvenTree/settings.py:610 msgid "English" msgstr "Engels" -#: InvenTree/settings.py:613 +#: InvenTree/settings.py:611 msgid "Spanish" msgstr "Spaans" -#: InvenTree/settings.py:614 +#: InvenTree/settings.py:612 msgid "Spanish (Mexican)" msgstr "Spaans (Mexicaans)" -#: InvenTree/settings.py:615 +#: InvenTree/settings.py:613 msgid "Farsi / Persian" msgstr "Farsi / Perzisch" -#: InvenTree/settings.py:616 +#: InvenTree/settings.py:614 msgid "French" msgstr "Frans" -#: InvenTree/settings.py:617 +#: InvenTree/settings.py:615 msgid "Hebrew" msgstr "Hebreeuws" -#: InvenTree/settings.py:618 +#: InvenTree/settings.py:616 msgid "Hungarian" msgstr "Hongaars" -#: InvenTree/settings.py:619 +#: InvenTree/settings.py:617 msgid "Italian" msgstr "Italiaans" -#: InvenTree/settings.py:620 +#: InvenTree/settings.py:618 msgid "Japanese" msgstr "Japans" -#: InvenTree/settings.py:621 +#: InvenTree/settings.py:619 msgid "Korean" msgstr "Koreaans" -#: InvenTree/settings.py:622 +#: InvenTree/settings.py:620 msgid "Dutch" msgstr "Nederlands" -#: InvenTree/settings.py:623 +#: InvenTree/settings.py:621 msgid "Norwegian" msgstr "Noors" -#: InvenTree/settings.py:624 +#: InvenTree/settings.py:622 msgid "Polish" msgstr "Pools" -#: InvenTree/settings.py:625 +#: InvenTree/settings.py:623 msgid "Portuguese" msgstr "Portugees" -#: InvenTree/settings.py:626 +#: InvenTree/settings.py:624 msgid "Portuguese (Brazilian)" msgstr "Portugees (Braziliaans)" -#: InvenTree/settings.py:627 +#: InvenTree/settings.py:625 msgid "Russian" msgstr "Russisch" -#: InvenTree/settings.py:628 +#: InvenTree/settings.py:626 msgid "Swedish" msgstr "Zweeds" -#: InvenTree/settings.py:629 +#: InvenTree/settings.py:627 msgid "Thai" msgstr "Thais" -#: InvenTree/settings.py:630 +#: InvenTree/settings.py:628 msgid "Turkish" msgstr "Turks" -#: InvenTree/settings.py:631 +#: InvenTree/settings.py:629 msgid "Vietnamese" msgstr "Vietnamees" -#: InvenTree/settings.py:632 +#: InvenTree/settings.py:630 msgid "Chinese" msgstr "Chinees" @@ -621,7 +625,7 @@ msgstr "Splits van bovenliggend item" msgid "Split child item" msgstr "Splits onderliggende item" -#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2080 +#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2084 msgid "Merged stock items" msgstr "Samengevoegde voorraadartikelen" @@ -743,7 +747,7 @@ msgid "Build Order Reference" msgstr "Productieorderreferentie" #: build/models.py:166 order/models.py:240 order/models.py:623 -#: order/models.py:904 part/models.py:2610 +#: order/models.py:904 part/models.py:2617 #: part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 @@ -770,10 +774,10 @@ msgstr "Productieorder waar deze productie aan is toegewezen" #: build/models.py:191 build/templates/build/build_base.html:77 #: build/templates/build/detail.html:29 company/models.py:670 #: order/models.py:1001 order/models.py:1112 order/models.py:1113 -#: part/models.py:336 part/models.py:2139 part/models.py:2154 -#: part/models.py:2173 part/models.py:2191 part/models.py:2290 -#: part/models.py:2410 part/models.py:2500 part/models.py:2585 -#: part/models.py:2861 part/serializers.py:811 +#: part/models.py:343 part/models.py:2146 part/models.py:2161 +#: part/models.py:2180 part/models.py:2198 part/models.py:2297 +#: part/models.py:2417 part/models.py:2507 part/models.py:2592 +#: part/models.py:2868 part/serializers.py:813 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -796,11 +800,11 @@ msgstr "Productieorder waar deze productie aan is toegewezen" #: templates/js/translated/order.js:934 templates/js/translated/order.js:1387 #: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885 #: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507 -#: templates/js/translated/part.js:1134 templates/js/translated/part.js:1206 -#: templates/js/translated/part.js:1402 templates/js/translated/stock.js:582 -#: templates/js/translated/stock.js:747 templates/js/translated/stock.js:954 -#: templates/js/translated/stock.js:1696 templates/js/translated/stock.js:2495 -#: templates/js/translated/stock.js:2690 templates/js/translated/stock.js:2824 +#: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210 +#: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586 +#: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958 +#: templates/js/translated/stock.js:1700 templates/js/translated/stock.js:2504 +#: templates/js/translated/stock.js:2699 templates/js/translated/stock.js:2833 msgid "Part" msgstr "Onderdeel" @@ -858,7 +862,7 @@ msgid "Build status code" msgstr "Productiestatuscode" #: build/models.py:251 build/serializers.py:225 order/serializers.py:447 -#: stock/models.py:655 templates/js/translated/order.js:1247 +#: stock/models.py:662 templates/js/translated/order.js:1247 msgid "Batch Code" msgstr "Batchcode" @@ -866,7 +870,7 @@ msgstr "Batchcode" msgid "Batch code for this build output" msgstr "Batchcode voor deze productieuitvoer" -#: build/models.py:258 order/models.py:86 part/models.py:931 +#: build/models.py:258 order/models.py:86 part/models.py:938 #: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544 msgid "Creation Date" msgstr "Aanmaakdatum" @@ -899,7 +903,7 @@ msgstr "Gebruiker die de productieorder heeft gegeven" #: build/models.py:289 build/templates/build/build_base.html:190 #: build/templates/build/detail.html:115 order/models.py:100 #: order/templates/order/order_base.html:176 -#: order/templates/order/sales_order_base.html:183 part/models.py:935 +#: order/templates/order/sales_order_base.html:183 part/models.py:942 #: report/templates/report/inventree_build_order_base.html:158 #: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754 msgid "Responsible" @@ -912,7 +916,7 @@ msgstr "Gebruiker verantwoordelijk voor deze productieorder" #: build/models.py:295 build/templates/build/detail.html:101 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:153 -#: part/templates/part/part_base.html:346 stock/models.py:649 +#: part/templates/part/part_base.html:346 stock/models.py:656 #: stock/templates/stock/item_base.html:205 msgid "External Link" msgstr "Externe Link" @@ -978,8 +982,8 @@ msgid "Build to allocate parts" msgstr "Product om onderdelen toe te wijzen" #: build/models.py:1345 build/serializers.py:645 order/serializers.py:1015 -#: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 -#: stock/serializers.py:880 stock/templates/stock/item_base.html:10 +#: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:756 +#: stock/serializers.py:882 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:199 #: templates/js/translated/build.js:741 templates/js/translated/build.js:746 @@ -987,8 +991,8 @@ msgstr "Product om onderdelen toe te wijzen" #: templates/js/translated/order.js:104 templates/js/translated/order.js:2886 #: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193 #: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380 -#: templates/js/translated/stock.js:583 templates/js/translated/stock.js:748 -#: templates/js/translated/stock.js:2568 +#: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752 +#: templates/js/translated/stock.js:2577 msgid "Stock Item" msgstr "Voorraadartikel" @@ -998,11 +1002,11 @@ msgstr "Bron voorraadartikel" #: build/models.py:1358 build/serializers.py:193 #: build/templates/build/build_base.html:82 -#: build/templates/build/detail.html:34 common/models.py:1678 +#: build/templates/build/detail.html:34 common/models.py:1697 #: company/templates/company/supplier_part.html:279 order/models.py:897 #: order/models.py:1423 order/serializers.py:1155 #: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40 -#: part/models.py:2601 part/templates/part/detail.html:937 +#: part/models.py:2608 part/templates/part/detail.html:937 #: part/templates/part/detail.html:1023 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 @@ -1025,11 +1029,11 @@ msgstr "Bron voorraadartikel" #: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207 #: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386 #: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037 -#: templates/js/translated/part.js:1034 templates/js/translated/part.js:2147 -#: templates/js/translated/part.js:2378 templates/js/translated/part.js:2412 -#: templates/js/translated/part.js:2490 templates/js/translated/stock.js:454 -#: templates/js/translated/stock.js:608 templates/js/translated/stock.js:778 -#: templates/js/translated/stock.js:2617 templates/js/translated/stock.js:2702 +#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2156 +#: templates/js/translated/part.js:2387 templates/js/translated/part.js:2421 +#: templates/js/translated/part.js:2499 templates/js/translated/stock.js:458 +#: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782 +#: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711 msgid "Quantity" msgstr "Hoeveelheid" @@ -1071,8 +1075,8 @@ msgid "Enter quantity for build output" msgstr "Voer hoeveelheid in voor productie uitvoer" #: build/serializers.py:208 build/serializers.py:665 order/models.py:318 -#: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 -#: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 +#: order/serializers.py:287 order/serializers.py:442 part/serializers.py:544 +#: part/serializers.py:976 stock/models.py:484 stock/models.py:1251 #: stock/serializers.py:302 msgid "Quantity must be greater than zero" msgstr "Hoeveelheid moet groter zijn dan nul" @@ -1087,7 +1091,7 @@ msgstr "Geheel getal vereist omdat de stuklijst traceerbare onderdelen bevat" #: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159 #: stock/serializers.py:311 templates/js/translated/order.js:1258 -#: templates/js/translated/stock.js:267 templates/js/translated/stock.js:455 +#: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459 msgid "Serial Numbers" msgstr "Serienummers" @@ -1113,16 +1117,16 @@ msgstr "Een lijst van productieuitvoeren moet worden verstrekt" #: build/serializers.py:366 order/serializers.py:428 order/serializers.py:532 #: stock/serializers.py:322 stock/serializers.py:453 stock/serializers.py:534 -#: stock/serializers.py:915 stock/serializers.py:1148 +#: stock/serializers.py:917 stock/serializers.py:1150 #: stock/templates/stock/item_base.html:390 #: templates/js/translated/barcode.js:436 #: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753 #: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285 #: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305 #: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394 -#: templates/js/translated/part.js:181 templates/js/translated/stock.js:584 -#: templates/js/translated/stock.js:749 templates/js/translated/stock.js:956 -#: templates/js/translated/stock.js:1850 templates/js/translated/stock.js:2509 +#: templates/js/translated/part.js:181 templates/js/translated/stock.js:588 +#: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960 +#: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518 msgid "Location" msgstr "Locatie" @@ -1135,8 +1139,8 @@ msgstr "Locatie van voltooide productieuitvoeren" #: order/serializers.py:465 stock/templates/stock/item_base.html:423 #: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505 #: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724 -#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1825 -#: templates/js/translated/stock.js:2586 templates/js/translated/stock.js:2718 +#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829 +#: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727 msgid "Status" msgstr "Status" @@ -1212,8 +1216,8 @@ msgstr "Vereiste productiehoeveelheid is voltooid" msgid "Build order has incomplete outputs" msgstr "Productieorder heeft onvolledige uitvoeren" -#: build/serializers.py:577 build/serializers.py:622 part/models.py:2719 -#: part/models.py:2853 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726 +#: part/models.py:2860 msgid "BOM Item" msgstr "Stuklijstartikel" @@ -1229,7 +1233,7 @@ msgstr "Productieuitvoer moet naar dezelfde productie wijzen" msgid "bom_item.part must point to the same part as the build order" msgstr "bom_item.part moet naar hetzelfde onderdeel wijzen als de productieorder" -#: build/serializers.py:651 stock/serializers.py:767 +#: build/serializers.py:651 stock/serializers.py:769 msgid "Item must be in stock" msgstr "Artikel moet op voorraad zijn" @@ -1367,7 +1371,7 @@ msgstr "Voorraad is niet volledig toegewezen aan deze productieorder" #: report/templates/report/inventree_build_order_base.html:125 #: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741 #: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552 -#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1038 +#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042 msgid "Target Date" msgstr "Streefdatum" @@ -1445,8 +1449,8 @@ msgstr "Toegewezen Onderdelen" #: stock/templates/stock/item_base.html:170 #: templates/js/translated/build.js:1182 #: templates/js/translated/model_renderers.js:124 -#: templates/js/translated/stock.js:1022 templates/js/translated/stock.js:1839 -#: templates/js/translated/stock.js:2725 +#: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843 +#: templates/js/translated/stock.js:2734 #: templates/js/translated/table_filters.js:159 #: templates/js/translated/table_filters.js:250 msgid "Batch" @@ -1506,7 +1510,7 @@ msgstr "Vereiste onderdelen bestellen" #: build/templates/build/detail.html:187 #: company/templates/company/detail.html:37 #: company/templates/company/detail.html:85 -#: part/templates/part/category.html:177 templates/js/translated/order.js:977 +#: part/templates/part/category.html:183 templates/js/translated/order.js:977 msgid "Order Parts" msgstr "Onderdelen bestellen" @@ -1559,12 +1563,12 @@ msgid "Delete outputs" msgstr "Verwijder uitvoeren" #: build/templates/build/detail.html:267 -#: stock/templates/stock/location.html:197 templates/stock_table.html:27 +#: stock/templates/stock/location.html:202 templates/stock_table.html:27 msgid "Printing Actions" msgstr "Afdrukacties" #: build/templates/build/detail.html:271 build/templates/build/detail.html:272 -#: stock/templates/stock/location.html:201 templates/stock_table.html:31 +#: stock/templates/stock/location.html:206 templates/stock_table.html:31 msgid "Print labels" msgstr "Labels afdrukken" @@ -1841,7 +1845,7 @@ msgstr "Kopiëer Categorieparameter Sjablonen" msgid "Copy category parameter templates when creating a part" msgstr "Kopieer categorieparameter sjablonen bij het aanmaken van een onderdeel" -#: common/models.py:951 part/models.py:2412 report/models.py:158 +#: common/models.py:951 part/models.py:2419 report/models.py:158 #: templates/js/translated/table_filters.js:38 #: templates/js/translated/table_filters.js:484 msgid "Template" @@ -1851,7 +1855,7 @@ msgstr "Sjabloon" msgid "Parts are templates by default" msgstr "Onderdelen zijn standaard sjablonen" -#: common/models.py:958 part/models.py:887 templates/js/translated/bom.js:1448 +#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448 #: templates/js/translated/table_filters.js:176 #: templates/js/translated/table_filters.js:447 msgid "Assembly" @@ -1861,7 +1865,7 @@ msgstr "Samenstelling" msgid "Parts can be assembled from other components by default" msgstr "Onderdelen kunnen standaard vanuit andere componenten worden samengesteld" -#: common/models.py:965 part/models.py:893 +#: common/models.py:965 part/models.py:900 #: templates/js/translated/table_filters.js:455 msgid "Component" msgstr "Component" @@ -1870,7 +1874,7 @@ msgstr "Component" msgid "Parts can be used as sub-components by default" msgstr "Onderdelen kunnen standaard worden gebruikt als subcomponenten" -#: common/models.py:972 part/models.py:904 +#: common/models.py:972 part/models.py:911 msgid "Purchaseable" msgstr "Koopbaar" @@ -1878,7 +1882,7 @@ msgstr "Koopbaar" msgid "Parts are purchaseable by default" msgstr "Onderdelen kunnen standaard gekocht worden" -#: common/models.py:979 part/models.py:909 +#: common/models.py:979 part/models.py:916 #: templates/js/translated/table_filters.js:476 msgid "Salable" msgstr "Verkoopbaar" @@ -1887,7 +1891,7 @@ msgstr "Verkoopbaar" msgid "Parts are salable by default" msgstr "Onderdelen kunnen standaard verkocht worden" -#: common/models.py:986 part/models.py:899 +#: common/models.py:986 part/models.py:906 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:108 #: templates/js/translated/table_filters.js:488 @@ -1898,7 +1902,7 @@ msgstr "Volgbaar" msgid "Parts are trackable by default" msgstr "Onderdelen kunnen standaard gevolgd worden" -#: common/models.py:993 part/models.py:919 +#: common/models.py:993 part/models.py:926 #: part/templates/part/part_base.html:151 #: templates/js/translated/table_filters.js:42 #: templates/js/translated/table_filters.js:492 @@ -1982,608 +1986,632 @@ msgid "Format to display the part name" msgstr "Opmaak om de onderdeelnaam weer te geven" #: common/models.py:1074 +msgid "Part Category Default Icon" +msgstr "" + +#: common/models.py:1075 +msgid "Part category default icon (empty means no icon)" +msgstr "" + +#: common/models.py:1080 msgid "Enable label printing" msgstr "Printen van labels Inschakelen" -#: common/models.py:1075 +#: common/models.py:1081 msgid "Enable label printing from the web interface" msgstr "Printen van labels via de webinterface inschakelen" -#: common/models.py:1081 +#: common/models.py:1087 msgid "Label Image DPI" msgstr "Label Afbeelding DPI" -#: common/models.py:1082 +#: common/models.py:1088 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "DPI resolutie bij het genereren van afbeelginsbestanden voor label printer plugins" -#: common/models.py:1091 +#: common/models.py:1097 msgid "Enable Reports" msgstr "Activeer Rapportages" -#: common/models.py:1092 +#: common/models.py:1098 msgid "Enable generation of reports" msgstr "Activeer het genereren van rapporten" -#: common/models.py:1098 templates/stats.html:25 +#: common/models.py:1104 templates/stats.html:25 msgid "Debug Mode" msgstr "Foutopsporingsmodus" -#: common/models.py:1099 +#: common/models.py:1105 msgid "Generate reports in debug mode (HTML output)" msgstr "Rapporten genereren in debug modus (HTML uitvoer)" -#: common/models.py:1105 +#: common/models.py:1111 msgid "Page Size" msgstr "Paginagrootte" -#: common/models.py:1106 +#: common/models.py:1112 msgid "Default page size for PDF reports" msgstr "Standaard paginagrootte voor PDF rapporten" -#: common/models.py:1116 +#: common/models.py:1122 msgid "Enable Test Reports" msgstr "Activeer Testrapporten" -#: common/models.py:1117 +#: common/models.py:1123 msgid "Enable generation of test reports" msgstr "Activeer het genereren van testrapporten" -#: common/models.py:1123 +#: common/models.py:1129 msgid "Attach Test Reports" msgstr "Testrapporten Toevoegen" -#: common/models.py:1124 +#: common/models.py:1130 msgid "When printing a Test Report, attach a copy of the Test Report to the associated Stock Item" msgstr "Bij het afdrukken van een Testrapport, voeg een kopie van het Testrapport toe aan het bijbehorende Voorraadartikel" -#: common/models.py:1130 +#: common/models.py:1136 msgid "Batch Code Template" msgstr "Batchcode Sjabloon" -#: common/models.py:1131 +#: common/models.py:1137 msgid "Template for generating default batch codes for stock items" msgstr "Sjabloon voor het genereren van standaard batchcodes voor voorraadartikelen" -#: common/models.py:1136 +#: common/models.py:1142 msgid "Stock Expiry" msgstr "Verlopen Voorraad" -#: common/models.py:1137 +#: common/models.py:1143 msgid "Enable stock expiry functionality" msgstr "Verlopen voorraad functionaliteit inschakelen" -#: common/models.py:1143 +#: common/models.py:1149 msgid "Sell Expired Stock" msgstr "Verkoop Verlopen Voorraad" -#: common/models.py:1144 +#: common/models.py:1150 msgid "Allow sale of expired stock" msgstr "Verkoop verlopen voorraad toestaan" -#: common/models.py:1150 +#: common/models.py:1156 msgid "Stock Stale Time" msgstr "Voorraad Vervaltijd" -#: common/models.py:1151 +#: common/models.py:1157 msgid "Number of days stock items are considered stale before expiring" msgstr "Aantal dagen voordat voorraadartikelen als verouderd worden beschouwd voor ze verlopen" -#: common/models.py:1153 +#: common/models.py:1159 msgid "days" msgstr "dagen" -#: common/models.py:1158 +#: common/models.py:1164 msgid "Build Expired Stock" msgstr "Produceer Verlopen Voorraad" -#: common/models.py:1159 +#: common/models.py:1165 msgid "Allow building with expired stock" msgstr "Sta productie met verlopen voorraad toe" -#: common/models.py:1165 +#: common/models.py:1171 msgid "Stock Ownership Control" msgstr "Voorraad Eigenaar Toezicht" -#: common/models.py:1166 +#: common/models.py:1172 msgid "Enable ownership control over stock locations and items" msgstr "Eigenaarstoezicht over voorraadlocaties en items inschakelen" -#: common/models.py:1172 +#: common/models.py:1178 +msgid "Stock Location Default Icon" +msgstr "" + +#: common/models.py:1179 +msgid "Stock location default icon (empty means no icon)" +msgstr "" + +#: common/models.py:1184 msgid "Build Order Reference Pattern" msgstr "Productieorderreferentiepatroon" -#: common/models.py:1173 +#: common/models.py:1185 msgid "Required pattern for generating Build Order reference field" msgstr "Vereist patroon voor het genereren van het Bouworderreferentieveld" -#: common/models.py:1179 +#: common/models.py:1191 msgid "Sales Order Reference Pattern" msgstr "Verkooporderreferentiepatroon" -#: common/models.py:1180 +#: common/models.py:1192 msgid "Required pattern for generating Sales Order reference field" msgstr "Vereist patroon voor het genereren van het Verkooporderreferentieveld" -#: common/models.py:1186 +#: common/models.py:1198 msgid "Sales Order Default Shipment" msgstr "Standaard Verzending Verkooporder" -#: common/models.py:1187 +#: common/models.py:1199 msgid "Enable creation of default shipment with sales orders" msgstr "Aanmaken standaard verzending bij verkooporders inschakelen" -#: common/models.py:1193 +#: common/models.py:1205 msgid "Purchase Order Reference Pattern" msgstr "Inkooporderreferentiepatroon" -#: common/models.py:1194 +#: common/models.py:1206 msgid "Required pattern for generating Purchase Order reference field" msgstr "Vereist patroon voor het genereren van het Inkooporderreferentieveld" -#: common/models.py:1201 +#: common/models.py:1213 msgid "Enable password forgot" msgstr "Wachtwoord vergeten functie inschakelen" -#: common/models.py:1202 +#: common/models.py:1214 msgid "Enable password forgot function on the login pages" msgstr "Wachtwoord vergeten functie inschakelen op de inlogpagina's" -#: common/models.py:1208 +#: common/models.py:1220 msgid "Enable registration" msgstr "Registratie inschakelen" -#: common/models.py:1209 +#: common/models.py:1221 msgid "Enable self-registration for users on the login pages" msgstr "Zelfregistratie voor gebruikers op de inlogpagina's inschakelen" -#: common/models.py:1215 +#: common/models.py:1227 msgid "Enable SSO" msgstr "SSO inschakelen" -#: common/models.py:1216 +#: common/models.py:1228 msgid "Enable SSO on the login pages" msgstr "SSO inschakelen op de inlogpagina's" -#: common/models.py:1222 +#: common/models.py:1234 msgid "Email required" msgstr "E-mailadres verplicht" -#: common/models.py:1223 +#: common/models.py:1235 msgid "Require user to supply mail on signup" msgstr "Vereis gebruiker om e-mailadres te registreren bij aanmelding" -#: common/models.py:1229 +#: common/models.py:1241 msgid "Auto-fill SSO users" msgstr "" -#: common/models.py:1230 +#: common/models.py:1242 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/models.py:1236 +#: common/models.py:1248 msgid "Mail twice" msgstr "E-mail twee keer" -#: common/models.py:1237 +#: common/models.py:1249 msgid "On signup ask users twice for their mail" msgstr "" -#: common/models.py:1243 +#: common/models.py:1255 msgid "Password twice" msgstr "" -#: common/models.py:1244 +#: common/models.py:1256 msgid "On signup ask users twice for their password" msgstr "Laat gebruikers twee keer om hun wachtwoord vragen tijdens het aanmelden" -#: common/models.py:1250 +#: common/models.py:1262 msgid "Group on signup" msgstr "Groep bij aanmelding" -#: common/models.py:1251 +#: common/models.py:1263 msgid "Group to which new users are assigned on registration" msgstr "Groep waaraan nieuwe gebruikers worden toegewezen bij registratie" -#: common/models.py:1257 +#: common/models.py:1269 msgid "Enforce MFA" msgstr "MFA afdwingen" -#: common/models.py:1258 +#: common/models.py:1270 msgid "Users must use multifactor security." msgstr "Gebruikers moeten multifactor-beveiliging gebruiken." -#: common/models.py:1264 +#: common/models.py:1276 msgid "Check plugins on startup" msgstr "Controleer plugins bij het opstarten" -#: common/models.py:1265 +#: common/models.py:1277 msgid "Check that all plugins are installed on startup - enable in container enviroments" msgstr "" -#: common/models.py:1273 +#: common/models.py:1284 +msgid "Check plugin signatures" +msgstr "" + +#: common/models.py:1285 +msgid "Check and show signatures for plugins" +msgstr "" + +#: common/models.py:1292 msgid "Enable URL integration" msgstr "Activeer URL-integratie" -#: common/models.py:1274 +#: common/models.py:1293 msgid "Enable plugins to add URL routes" msgstr "" -#: common/models.py:1281 +#: common/models.py:1300 msgid "Enable navigation integration" msgstr "" -#: common/models.py:1282 +#: common/models.py:1301 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/models.py:1289 +#: common/models.py:1308 msgid "Enable app integration" msgstr "" -#: common/models.py:1290 +#: common/models.py:1309 msgid "Enable plugins to add apps" msgstr "" -#: common/models.py:1297 +#: common/models.py:1316 msgid "Enable schedule integration" msgstr "" -#: common/models.py:1298 +#: common/models.py:1317 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/models.py:1305 +#: common/models.py:1324 msgid "Enable event integration" msgstr "" -#: common/models.py:1306 +#: common/models.py:1325 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:1323 common/models.py:1639 +#: common/models.py:1342 common/models.py:1658 msgid "Settings key (must be unique - case insensitive" msgstr "Instellingssleutel (moet uniek zijn - hoofdletter ongevoelig" -#: common/models.py:1345 +#: common/models.py:1364 msgid "Show subscribed parts" msgstr "" -#: common/models.py:1346 +#: common/models.py:1365 msgid "Show subscribed parts on the homepage" msgstr "" -#: common/models.py:1352 +#: common/models.py:1371 msgid "Show subscribed categories" msgstr "" -#: common/models.py:1353 +#: common/models.py:1372 msgid "Show subscribed part categories on the homepage" msgstr "" -#: common/models.py:1359 +#: common/models.py:1378 msgid "Show latest parts" msgstr "Toon laatste onderdelen" -#: common/models.py:1360 +#: common/models.py:1379 msgid "Show latest parts on the homepage" msgstr "Toon laatste onderdelen op de startpagina" -#: common/models.py:1366 +#: common/models.py:1385 msgid "Recent Part Count" msgstr "Recente Voorraadtelling" -#: common/models.py:1367 +#: common/models.py:1386 msgid "Number of recent parts to display on index page" msgstr "" -#: common/models.py:1373 +#: common/models.py:1392 msgid "Show unvalidated BOMs" msgstr "" -#: common/models.py:1374 +#: common/models.py:1393 msgid "Show BOMs that await validation on the homepage" msgstr "" -#: common/models.py:1380 +#: common/models.py:1399 msgid "Show recent stock changes" msgstr "Toon recente voorraadwijzigingen" -#: common/models.py:1381 +#: common/models.py:1400 msgid "Show recently changed stock items on the homepage" msgstr "Toon recent aangepaste voorraadartikelen op de startpagina" -#: common/models.py:1387 +#: common/models.py:1406 msgid "Recent Stock Count" msgstr "Recente Voorraadtelling" -#: common/models.py:1388 +#: common/models.py:1407 msgid "Number of recent stock items to display on index page" msgstr "" -#: common/models.py:1394 +#: common/models.py:1413 msgid "Show low stock" msgstr "Toon lage voorraad" -#: common/models.py:1395 +#: common/models.py:1414 msgid "Show low stock items on the homepage" msgstr "Toon lage voorraad van artikelen op de startpagina" -#: common/models.py:1401 +#: common/models.py:1420 msgid "Show depleted stock" msgstr "Toon lege voorraad" -#: common/models.py:1402 +#: common/models.py:1421 msgid "Show depleted stock items on the homepage" msgstr "Toon lege voorraad van artikelen op de startpagina" -#: common/models.py:1408 +#: common/models.py:1427 msgid "Show needed stock" msgstr "Toon benodigde voorraad" -#: common/models.py:1409 +#: common/models.py:1428 msgid "Show stock items needed for builds on the homepage" msgstr "Toon benodigde voorraad van artikelen voor productie op de startpagina" -#: common/models.py:1415 +#: common/models.py:1434 msgid "Show expired stock" msgstr "Toon verlopen voorraad" -#: common/models.py:1416 +#: common/models.py:1435 msgid "Show expired stock items on the homepage" msgstr "Toon verlopen voorraad van artikelen op de startpagina" -#: common/models.py:1422 +#: common/models.py:1441 msgid "Show stale stock" msgstr "Toon verouderde voorraad" -#: common/models.py:1423 +#: common/models.py:1442 msgid "Show stale stock items on the homepage" msgstr "Toon verouderde voorraad van artikelen op de startpagina" -#: common/models.py:1429 +#: common/models.py:1448 msgid "Show pending builds" msgstr "Toon openstaande producties" -#: common/models.py:1430 +#: common/models.py:1449 msgid "Show pending builds on the homepage" msgstr "Toon openstaande producties op de startpagina" -#: common/models.py:1436 +#: common/models.py:1455 msgid "Show overdue builds" msgstr "Toon achterstallige productie" -#: common/models.py:1437 +#: common/models.py:1456 msgid "Show overdue builds on the homepage" msgstr "Toon achterstallige producties op de startpagina" -#: common/models.py:1443 +#: common/models.py:1462 msgid "Show outstanding POs" msgstr "Toon uitstaande PO's" -#: common/models.py:1444 +#: common/models.py:1463 msgid "Show outstanding POs on the homepage" msgstr "Toon uitstaande PO's op de startpagina" -#: common/models.py:1450 +#: common/models.py:1469 msgid "Show overdue POs" msgstr "Toon achterstallige PO's" -#: common/models.py:1451 +#: common/models.py:1470 msgid "Show overdue POs on the homepage" msgstr "Toon achterstallige PO's op de startpagina" -#: common/models.py:1457 +#: common/models.py:1476 msgid "Show outstanding SOs" msgstr "Toon uitstaande SO's" -#: common/models.py:1458 +#: common/models.py:1477 msgid "Show outstanding SOs on the homepage" msgstr "Toon uitstaande SO's op de startpagina" -#: common/models.py:1464 +#: common/models.py:1483 msgid "Show overdue SOs" msgstr "Toon achterstallige SO's" -#: common/models.py:1465 +#: common/models.py:1484 msgid "Show overdue SOs on the homepage" msgstr "Toon achterstallige SO's op de startpagina" -#: common/models.py:1471 +#: common/models.py:1490 msgid "Inline label display" msgstr "" -#: common/models.py:1472 +#: common/models.py:1491 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1478 +#: common/models.py:1497 msgid "Inline report display" msgstr "" -#: common/models.py:1479 +#: common/models.py:1498 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1485 +#: common/models.py:1504 msgid "Search Parts" msgstr "Zoek Onderdelen" -#: common/models.py:1486 +#: common/models.py:1505 msgid "Display parts in search preview window" msgstr "" -#: common/models.py:1492 +#: common/models.py:1511 msgid "Seach Supplier Parts" msgstr "" -#: common/models.py:1493 +#: common/models.py:1512 msgid "Display supplier parts in search preview window" msgstr "" -#: common/models.py:1499 +#: common/models.py:1518 msgid "Search Manufacturer Parts" msgstr "" -#: common/models.py:1500 +#: common/models.py:1519 msgid "Display manufacturer parts in search preview window" msgstr "" -#: common/models.py:1506 +#: common/models.py:1525 msgid "Hide Inactive Parts" msgstr "Inactieve Onderdelen Verbergen" -#: common/models.py:1507 +#: common/models.py:1526 msgid "Excluded inactive parts from search preview window" msgstr "" -#: common/models.py:1513 +#: common/models.py:1532 msgid "Search Categories" msgstr "" -#: common/models.py:1514 +#: common/models.py:1533 msgid "Display part categories in search preview window" msgstr "" -#: common/models.py:1520 +#: common/models.py:1539 msgid "Search Stock" msgstr "Zoek in Voorraad" -#: common/models.py:1521 +#: common/models.py:1540 msgid "Display stock items in search preview window" msgstr "" -#: common/models.py:1527 +#: common/models.py:1546 msgid "Hide Unavailable Stock Items" msgstr "" -#: common/models.py:1528 +#: common/models.py:1547 msgid "Exclude stock items which are not available from the search preview window" msgstr "" -#: common/models.py:1534 +#: common/models.py:1553 msgid "Search Locations" msgstr "" -#: common/models.py:1535 +#: common/models.py:1554 msgid "Display stock locations in search preview window" msgstr "" -#: common/models.py:1541 +#: common/models.py:1560 msgid "Search Companies" msgstr "" -#: common/models.py:1542 +#: common/models.py:1561 msgid "Display companies in search preview window" msgstr "" -#: common/models.py:1548 +#: common/models.py:1567 msgid "Search Purchase Orders" msgstr "Inkooporders Zoeken" -#: common/models.py:1549 +#: common/models.py:1568 msgid "Display purchase orders in search preview window" msgstr "Toon inkooporders in het zoekvenster" -#: common/models.py:1555 +#: common/models.py:1574 msgid "Exclude Inactive Purchase Orders" msgstr "Inactieve Inkooporders Weglaten" -#: common/models.py:1556 +#: common/models.py:1575 msgid "Exclude inactive purchase orders from search preview window" msgstr "Inactieve inkooporders weglaten in het zoekvenster" -#: common/models.py:1562 +#: common/models.py:1581 msgid "Search Sales Orders" msgstr "Verkooporders zoeken" -#: common/models.py:1563 +#: common/models.py:1582 msgid "Display sales orders in search preview window" msgstr "Toon verkooporders in het zoekvenster" -#: common/models.py:1569 +#: common/models.py:1588 msgid "Exclude Inactive Sales Orders" msgstr "Inactieve Verkooporders Weglaten" -#: common/models.py:1570 +#: common/models.py:1589 msgid "Exclude inactive sales orders from search preview window" msgstr "Inactieve verkooporders weglaten in het zoekvenster" -#: common/models.py:1576 +#: common/models.py:1595 msgid "Search Preview Results" msgstr "" -#: common/models.py:1577 +#: common/models.py:1596 msgid "Number of results to show in each section of the search preview window" msgstr "" -#: common/models.py:1583 +#: common/models.py:1602 msgid "Show Quantity in Forms" msgstr "" -#: common/models.py:1584 +#: common/models.py:1603 msgid "Display available part quantity in some forms" msgstr "" -#: common/models.py:1590 +#: common/models.py:1609 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:1591 +#: common/models.py:1610 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:1597 +#: common/models.py:1616 msgid "Fixed Navbar" msgstr "" -#: common/models.py:1598 +#: common/models.py:1617 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:1604 +#: common/models.py:1623 msgid "Date Format" msgstr "" -#: common/models.py:1605 +#: common/models.py:1624 msgid "Preferred format for displaying dates" msgstr "" -#: common/models.py:1619 part/templates/part/detail.html:41 +#: common/models.py:1638 part/templates/part/detail.html:41 msgid "Part Scheduling" msgstr "" -#: common/models.py:1620 +#: common/models.py:1639 msgid "Display part scheduling information" msgstr "" -#: common/models.py:1679 +#: common/models.py:1698 msgid "Price break quantity" msgstr "" -#: common/models.py:1686 company/serializers.py:366 +#: common/models.py:1705 company/serializers.py:366 #: company/templates/company/supplier_part.html:284 order/models.py:938 -#: templates/js/translated/part.js:1065 templates/js/translated/part.js:2152 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2161 msgid "Price" msgstr "Prijs" -#: common/models.py:1687 +#: common/models.py:1706 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:1847 common/models.py:2025 +#: common/models.py:1866 common/models.py:2044 msgid "Endpoint" msgstr "" -#: common/models.py:1848 +#: common/models.py:1867 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:1857 +#: common/models.py:1876 msgid "Name for this webhook" msgstr "" -#: common/models.py:1862 part/models.py:914 plugin/models.py:99 +#: common/models.py:1881 part/models.py:921 plugin/models.py:100 #: templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:104 #: templates/js/translated/table_filters.js:316 @@ -2591,67 +2619,67 @@ msgstr "" msgid "Active" msgstr "Actief" -#: common/models.py:1863 +#: common/models.py:1882 msgid "Is this webhook active" msgstr "" -#: common/models.py:1877 +#: common/models.py:1896 msgid "Token" msgstr "Token" -#: common/models.py:1878 +#: common/models.py:1897 msgid "Token for access" msgstr "Token voor toegang" -#: common/models.py:1885 +#: common/models.py:1904 msgid "Secret" msgstr "Geheim" -#: common/models.py:1886 +#: common/models.py:1905 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:1992 +#: common/models.py:2011 msgid "Message ID" msgstr "Bericht ID" -#: common/models.py:1993 +#: common/models.py:2012 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2001 +#: common/models.py:2020 msgid "Host" msgstr "Host" -#: common/models.py:2002 +#: common/models.py:2021 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2009 +#: common/models.py:2028 msgid "Header" msgstr "Koptekst" -#: common/models.py:2010 +#: common/models.py:2029 msgid "Header of this message" msgstr "Koptekst van dit bericht" -#: common/models.py:2016 +#: common/models.py:2035 msgid "Body" msgstr "Berichtinhoud" -#: common/models.py:2017 +#: common/models.py:2036 msgid "Body of this message" msgstr "Inhoud van dit bericht" -#: common/models.py:2026 +#: common/models.py:2045 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2031 +#: common/models.py:2050 msgid "Worked on" msgstr "" -#: common/models.py:2032 +#: common/models.py:2051 msgid "Was the work on this message finished?" msgstr "" @@ -2758,7 +2786,7 @@ msgstr "Contactpunt" msgid "Link to external company information" msgstr "Link naar externe bedrijfsinformatie" -#: company/models.py:135 part/models.py:808 +#: company/models.py:135 part/models.py:815 msgid "Image" msgstr "Afbeelding" @@ -2791,8 +2819,8 @@ msgid "Does this company manufacture parts?" msgstr "Fabriceert dit bedrijf onderdelen?" #: company/models.py:148 company/serializers.py:372 -#: company/templates/company/company_base.html:106 part/serializers.py:151 -#: part/serializers.py:182 stock/serializers.py:180 +#: company/templates/company/company_base.html:106 part/serializers.py:153 +#: part/serializers.py:184 stock/serializers.py:180 msgid "Currency" msgstr "Valuta" @@ -2800,7 +2828,7 @@ msgstr "Valuta" msgid "Default currency used for this company" msgstr "Standaardvaluta die gebruikt wordt voor dit bedrijf" -#: company/models.py:248 company/models.py:481 stock/models.py:591 +#: company/models.py:248 company/models.py:481 stock/models.py:598 #: stock/serializers.py:87 stock/templates/stock/item_base.html:148 #: templates/js/translated/bom.js:543 msgid "Base Part" @@ -2832,7 +2860,7 @@ msgstr "Fabrikant selecteren" #: templates/js/translated/company.js:497 #: templates/js/translated/company.js:649 #: templates/js/translated/company.js:937 templates/js/translated/order.js:1971 -#: templates/js/translated/part.js:247 templates/js/translated/part.js:1023 +#: templates/js/translated/part.js:247 templates/js/translated/part.js:1027 msgid "MPN" msgstr "MPN" @@ -2861,9 +2889,9 @@ msgstr "Parameternaam" #: company/models.py:365 #: report/templates/report/inventree_test_report_base.html:95 -#: stock/models.py:2088 templates/js/translated/company.js:546 -#: templates/js/translated/company.js:764 templates/js/translated/part.js:845 -#: templates/js/translated/stock.js:1356 +#: stock/models.py:2095 templates/js/translated/company.js:546 +#: templates/js/translated/company.js:764 templates/js/translated/part.js:849 +#: templates/js/translated/stock.js:1360 msgid "Value" msgstr "Waarde" @@ -2871,10 +2899,10 @@ msgstr "Waarde" msgid "Parameter value" msgstr "Parameterwaarde" -#: company/models.py:372 part/models.py:881 part/models.py:2379 +#: company/models.py:372 part/models.py:888 part/models.py:2386 #: part/templates/part/part_base.html:280 #: templates/InvenTree/settings/settings.html:352 -#: templates/js/translated/company.js:770 templates/js/translated/part.js:851 +#: templates/js/translated/company.js:770 templates/js/translated/part.js:855 msgid "Units" msgstr "Eenheden" @@ -2894,7 +2922,7 @@ msgstr "Gekoppeld fabrikant onderdeel moet verwijzen naar hetzelfde basis onderd #: templates/js/translated/company.js:268 #: templates/js/translated/company.js:401 #: templates/js/translated/company.js:893 templates/js/translated/order.js:1707 -#: templates/js/translated/part.js:217 templates/js/translated/part.js:991 +#: templates/js/translated/part.js:217 templates/js/translated/part.js:995 #: templates/js/translated/table_filters.js:423 msgid "Supplier" msgstr "Leverancier" @@ -2906,7 +2934,7 @@ msgstr "Leverancier selecteren" #: company/models.py:497 company/templates/company/supplier_part.html:118 #: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267 #: templates/js/translated/order.js:1958 templates/js/translated/part.js:228 -#: templates/js/translated/part.js:1009 +#: templates/js/translated/part.js:1013 msgid "SKU" msgstr "SKU" @@ -2927,23 +2955,23 @@ msgid "Supplier part description" msgstr "" #: company/models.py:522 company/templates/company/supplier_part.html:146 -#: part/models.py:2613 part/templates/part/upload_bom.html:59 +#: part/models.py:2620 part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401 msgid "Note" msgstr "Opmerking" -#: company/models.py:526 part/models.py:1735 +#: company/models.py:526 part/models.py:1742 msgid "base cost" msgstr "basisprijs" -#: company/models.py:526 part/models.py:1735 +#: company/models.py:526 part/models.py:1742 msgid "Minimum charge (e.g. stocking fee)" msgstr "Minimale kosten (bijv. voorraadkosten)" #: company/models.py:528 company/templates/company/supplier_part.html:139 -#: stock/models.py:617 stock/templates/stock/item_base.html:245 -#: templates/js/translated/company.js:969 templates/js/translated/stock.js:1972 +#: stock/models.py:624 stock/templates/stock/item_base.html:245 +#: templates/js/translated/company.js:969 templates/js/translated/stock.js:1976 msgid "Packaging" msgstr "" @@ -2951,7 +2979,7 @@ msgstr "" msgid "Part packaging" msgstr "" -#: company/models.py:530 part/models.py:1737 +#: company/models.py:530 part/models.py:1744 msgid "multiple" msgstr "meerdere" @@ -2964,7 +2992,7 @@ msgstr "Order meerdere" #: templates/email/low_stock_notification.html:18 #: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789 #: templates/js/translated/build.js:2645 templates/js/translated/company.js:979 -#: templates/js/translated/part.js:596 templates/js/translated/part.js:599 +#: templates/js/translated/part.js:600 templates/js/translated/part.js:603 #: templates/js/translated/table_filters.js:186 msgid "Available" msgstr "Beschikbaar" @@ -3037,12 +3065,12 @@ msgid "Download image from URL" msgstr "Afbeelding downloaden van URL" #: company/templates/company/company_base.html:86 order/models.py:637 -#: order/templates/order/sales_order_base.html:116 stock/models.py:636 -#: stock/models.py:637 stock/serializers.py:809 +#: order/templates/order/sales_order_base.html:116 stock/models.py:643 +#: stock/models.py:644 stock/serializers.py:811 #: stock/templates/stock/item_base.html:401 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:393 templates/js/translated/order.js:2513 -#: templates/js/translated/stock.js:2550 +#: templates/js/translated/stock.js:2559 #: templates/js/translated/table_filters.js:427 msgid "Customer" msgstr "Klant" @@ -3083,7 +3111,7 @@ msgstr "" #: company/templates/company/detail.html:36 #: company/templates/company/detail.html:84 -#: part/templates/part/category.html:176 +#: part/templates/part/category.html:182 msgid "Order parts" msgstr "Bestel onderdelen" @@ -3231,7 +3259,7 @@ msgstr "Parameters" #: company/templates/company/manufacturer_part.html:170 #: part/templates/part/detail.html:186 #: templates/InvenTree/settings/category.html:12 -#: templates/InvenTree/settings/part.html:66 +#: templates/InvenTree/settings/part.html:68 msgid "New Parameter" msgstr "Nieuwe Parameter" @@ -3261,10 +3289,10 @@ msgid "Assigned Stock Items" msgstr "Toegewezen Voorraadartikelen" #: company/templates/company/supplier_part.html:7 -#: company/templates/company/supplier_part.html:24 stock/models.py:600 +#: company/templates/company/supplier_part.html:24 stock/models.py:607 #: stock/templates/stock/item_base.html:238 #: templates/js/translated/company.js:909 templates/js/translated/order.js:935 -#: templates/js/translated/stock.js:1929 +#: templates/js/translated/stock.js:1933 msgid "Supplier Part" msgstr "Leveranciersonderdeel" @@ -3308,13 +3336,13 @@ msgid "Supplier Part Stock" msgstr "" #: company/templates/company/supplier_part.html:168 -#: part/templates/part/detail.html:24 stock/templates/stock/location.html:176 +#: part/templates/part/detail.html:24 stock/templates/stock/location.html:181 msgid "Create new stock item" msgstr "Nieuw voorraadartikel aanmaken" #: company/templates/company/supplier_part.html:169 -#: part/templates/part/detail.html:25 stock/templates/stock/location.html:177 -#: templates/js/translated/stock.js:431 +#: part/templates/part/detail.html:25 stock/templates/stock/location.html:182 +#: templates/js/translated/stock.js:435 msgid "New Stock Item" msgstr "Nieuw Voorraadartikel" @@ -3330,7 +3358,7 @@ msgstr "Prijsinformatie" #: company/templates/company/supplier_part.html:212 #: company/templates/company/supplier_part.html:326 -#: part/templates/part/prices.html:276 templates/js/translated/part.js:2224 +#: part/templates/part/prices.html:276 templates/js/translated/part.js:2233 msgid "Add Price Break" msgstr "" @@ -3339,12 +3367,12 @@ msgid "No price break information found" msgstr "" #: company/templates/company/supplier_part.html:252 -#: templates/js/translated/part.js:2234 +#: templates/js/translated/part.js:2243 msgid "Delete Price Break" msgstr "" #: company/templates/company/supplier_part.html:266 -#: templates/js/translated/part.js:2248 +#: templates/js/translated/part.js:2257 msgid "Edit Price Break" msgstr "" @@ -3366,13 +3394,13 @@ msgstr "" #: company/templates/company/supplier_part_navbar.html:15 #: part/templates/part/part_sidebar.html:14 -#: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:19 +#: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:24 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:151 #: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/bom.js:555 templates/js/translated/part.js:747 -#: templates/js/translated/part.js:1295 templates/js/translated/part.js:1456 -#: templates/js/translated/stock.js:955 templates/js/translated/stock.js:1750 +#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751 +#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460 +#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754 #: templates/navbar.html:31 msgid "Stock" msgstr "Voorraad" @@ -3392,14 +3420,14 @@ msgid "Pricing" msgstr "Prijzen" #: company/templates/company/supplier_part_sidebar.html:5 -#: part/templates/part/category.html:197 +#: part/templates/part/category.html:203 #: part/templates/part/category_sidebar.html:17 -#: stock/templates/stock/location.html:147 -#: stock/templates/stock/location.html:161 -#: stock/templates/stock/location.html:173 +#: stock/templates/stock/location.html:152 +#: stock/templates/stock/location.html:166 +#: stock/templates/stock/location.html:178 #: stock/templates/stock/location_sidebar.html:7 #: templates/InvenTree/search.html:153 templates/js/translated/search.js:223 -#: templates/js/translated/stock.js:2427 users/models.py:40 +#: templates/js/translated/stock.js:2436 users/models.py:40 msgid "Stock Items" msgstr "Voorraadartikelen" @@ -3656,8 +3684,8 @@ msgstr "Order" #: stock/templates/stock/item_base.html:184 #: templates/email/overdue_purchase_order.html:15 #: templates/js/translated/order.js:936 templates/js/translated/order.js:1691 -#: templates/js/translated/part.js:968 templates/js/translated/stock.js:1909 -#: templates/js/translated/stock.js:2531 +#: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913 +#: templates/js/translated/stock.js:2540 msgid "Purchase Order" msgstr "Inkooporder" @@ -3667,7 +3695,7 @@ msgstr "Leveranciersonderdeel" #: order/models.py:1009 order/templates/order/order_base.html:169 #: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073 -#: templates/js/translated/part.js:1060 templates/js/translated/part.js:1087 +#: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091 #: templates/js/translated/table_filters.js:338 msgid "Received" msgstr "Ontvangen" @@ -3676,9 +3704,9 @@ msgstr "Ontvangen" msgid "Number of items received" msgstr "Aantal ontvangen artikelen" -#: order/models.py:1017 part/templates/part/prices.html:181 stock/models.py:727 +#: order/models.py:1017 part/templates/part/prices.html:181 stock/models.py:734 #: stock/serializers.py:171 stock/templates/stock/item_base.html:191 -#: templates/js/translated/stock.js:1960 +#: templates/js/translated/stock.js:1964 msgid "Purchase Price" msgstr "Inkoopprijs" @@ -4066,8 +4094,8 @@ msgstr "Selecteer Leveranciersonderdeel" #: templates/js/translated/bom.js:77 templates/js/translated/build.js:431 #: templates/js/translated/build.js:583 templates/js/translated/build.js:1974 #: templates/js/translated/order.js:884 templates/js/translated/order.js:1337 -#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:621 -#: templates/js/translated/stock.js:789 +#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625 +#: templates/js/translated/stock.js:793 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "Rij verwijderen" @@ -4261,8 +4289,8 @@ msgstr "" msgid "This field is required" msgstr "" -#: part/bom.py:127 part/models.py:98 part/models.py:817 -#: part/templates/part/category.html:108 part/templates/part/part_base.html:330 +#: part/bom.py:127 part/models.py:98 part/models.py:824 +#: part/templates/part/category.html:114 part/templates/part/part_base.html:330 msgid "Default Location" msgstr "Standaard locatie" @@ -4276,9 +4304,9 @@ msgid "Available Stock" msgstr "Beschikbare Voorraad" #: part/bom.py:130 part/templates/part/part_base.html:207 -#: templates/js/translated/bom.js:947 templates/js/translated/part.js:586 -#: templates/js/translated/part.js:606 templates/js/translated/part.js:1298 -#: templates/js/translated/part.js:1470 templates/js/translated/part.js:1486 +#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590 +#: templates/js/translated/part.js:610 templates/js/translated/part.js:1302 +#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "In bestelling" @@ -4299,516 +4327,524 @@ msgstr "" msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:115 part/models.py:2455 part/templates/part/category.html:15 +#: part/models.py:107 stock/models.py:84 +msgid "Icon" +msgstr "" + +#: part/models.py:108 stock/models.py:85 +msgid "Icon (optional)" +msgstr "" + +#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" -#: part/models.py:116 part/templates/part/category.html:128 +#: part/models.py:123 part/templates/part/category.html:134 #: templates/InvenTree/search.html:95 templates/js/translated/search.js:198 #: users/models.py:37 msgid "Part Categories" msgstr "" -#: part/models.py:337 part/templates/part/cat_link.html:3 -#: part/templates/part/category.html:17 part/templates/part/category.html:133 -#: part/templates/part/category.html:153 +#: part/models.py:344 part/templates/part/cat_link.html:3 +#: part/templates/part/category.html:23 part/templates/part/category.html:139 +#: part/templates/part/category.html:159 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82 #: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:1946 templates/js/translated/search.js:144 +#: templates/js/translated/part.js:1955 templates/js/translated/search.js:144 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "" -#: part/models.py:422 +#: part/models.py:429 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:492 part/models.py:504 +#: part/models.py:499 part/models.py:511 #, python-brace-format msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)" msgstr "" -#: part/models.py:621 +#: part/models.py:628 msgid "Next available serial numbers are" msgstr "" -#: part/models.py:625 +#: part/models.py:632 msgid "Next available serial number is" msgstr "" -#: part/models.py:630 +#: part/models.py:637 msgid "Most recent serial number is" msgstr "" -#: part/models.py:711 +#: part/models.py:718 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:738 part/models.py:2509 +#: part/models.py:745 part/models.py:2516 msgid "Part name" msgstr "" -#: part/models.py:745 +#: part/models.py:752 msgid "Is Template" msgstr "" -#: part/models.py:746 +#: part/models.py:753 msgid "Is this part a template part?" msgstr "" -#: part/models.py:756 +#: part/models.py:763 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:757 +#: part/models.py:764 msgid "Variant Of" msgstr "" -#: part/models.py:763 +#: part/models.py:770 msgid "Part description" msgstr "" -#: part/models.py:768 part/templates/part/category.html:86 +#: part/models.py:775 part/templates/part/category.html:92 #: part/templates/part/part_base.html:294 msgid "Keywords" msgstr "" -#: part/models.py:769 +#: part/models.py:776 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:776 part/models.py:2211 part/models.py:2454 +#: part/models.py:783 part/models.py:2218 part/models.py:2461 #: part/templates/part/part_base.html:257 #: templates/InvenTree/settings/settings.html:232 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1438 templates/js/translated/part.js:1664 +#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1668 msgid "Category" msgstr "" -#: part/models.py:777 +#: part/models.py:784 msgid "Part category" msgstr "" -#: part/models.py:782 part/templates/part/part_base.html:266 -#: templates/js/translated/part.js:735 templates/js/translated/part.js:1391 -#: templates/js/translated/stock.js:1722 +#: part/models.py:789 part/templates/part/part_base.html:266 +#: templates/js/translated/part.js:739 templates/js/translated/part.js:1395 +#: templates/js/translated/stock.js:1726 msgid "IPN" msgstr "" -#: part/models.py:783 +#: part/models.py:790 msgid "Internal Part Number" msgstr "" -#: part/models.py:789 +#: part/models.py:796 msgid "Part revision or version number" msgstr "" -#: part/models.py:790 part/templates/part/part_base.html:273 -#: report/models.py:171 templates/js/translated/part.js:739 +#: part/models.py:797 part/templates/part/part_base.html:273 +#: report/models.py:171 templates/js/translated/part.js:743 msgid "Revision" msgstr "" -#: part/models.py:815 +#: part/models.py:822 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:860 part/templates/part/part_base.html:339 +#: part/models.py:867 part/templates/part/part_base.html:339 msgid "Default Supplier" msgstr "" -#: part/models.py:861 +#: part/models.py:868 msgid "Default supplier part" msgstr "" -#: part/models.py:868 +#: part/models.py:875 msgid "Default Expiry" msgstr "" -#: part/models.py:869 +#: part/models.py:876 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:874 part/templates/part/part_base.html:200 +#: part/models.py:881 part/templates/part/part_base.html:200 msgid "Minimum Stock" msgstr "" -#: part/models.py:875 +#: part/models.py:882 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:882 +#: part/models.py:889 msgid "Stock keeping units for this part" msgstr "" -#: part/models.py:888 +#: part/models.py:895 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:894 +#: part/models.py:901 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:900 +#: part/models.py:907 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:905 +#: part/models.py:912 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:910 +#: part/models.py:917 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:915 +#: part/models.py:922 msgid "Is this part active?" msgstr "" -#: part/models.py:920 +#: part/models.py:927 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:922 +#: part/models.py:929 msgid "Part notes" msgstr "" -#: part/models.py:924 +#: part/models.py:931 msgid "BOM checksum" msgstr "" -#: part/models.py:924 +#: part/models.py:931 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:927 +#: part/models.py:934 msgid "BOM checked by" msgstr "" -#: part/models.py:929 +#: part/models.py:936 msgid "BOM checked date" msgstr "" -#: part/models.py:933 +#: part/models.py:940 msgid "Creation User" msgstr "" -#: part/models.py:1737 +#: part/models.py:1744 msgid "Sell multiple" msgstr "" -#: part/models.py:2258 +#: part/models.py:2265 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:2275 +#: part/models.py:2282 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:2295 templates/js/translated/part.js:1997 -#: templates/js/translated/stock.js:1336 +#: part/models.py:2302 templates/js/translated/part.js:2006 +#: templates/js/translated/stock.js:1340 msgid "Test Name" msgstr "" -#: part/models.py:2296 +#: part/models.py:2303 msgid "Enter a name for the test" msgstr "" -#: part/models.py:2301 +#: part/models.py:2308 msgid "Test Description" msgstr "" -#: part/models.py:2302 +#: part/models.py:2309 msgid "Enter description for this test" msgstr "" -#: part/models.py:2307 templates/js/translated/part.js:2006 +#: part/models.py:2314 templates/js/translated/part.js:2015 #: templates/js/translated/table_filters.js:302 msgid "Required" msgstr "" -#: part/models.py:2308 +#: part/models.py:2315 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:2313 templates/js/translated/part.js:2014 +#: part/models.py:2320 templates/js/translated/part.js:2023 msgid "Requires Value" msgstr "" -#: part/models.py:2314 +#: part/models.py:2321 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:2319 templates/js/translated/part.js:2021 +#: part/models.py:2326 templates/js/translated/part.js:2030 msgid "Requires Attachment" msgstr "" -#: part/models.py:2320 +#: part/models.py:2327 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:2328 +#: part/models.py:2335 #, python-brace-format msgid "Illegal character in template name ({c})" msgstr "" -#: part/models.py:2364 +#: part/models.py:2371 msgid "Parameter template name must be unique" msgstr "De template van de parameter moet uniek zijn" -#: part/models.py:2372 +#: part/models.py:2379 msgid "Parameter Name" msgstr "Parameternaam" -#: part/models.py:2379 +#: part/models.py:2386 msgid "Parameter Units" msgstr "Parameter Eenheden" -#: part/models.py:2410 +#: part/models.py:2417 msgid "Parent Part" msgstr "" -#: part/models.py:2412 part/models.py:2460 part/models.py:2461 +#: part/models.py:2419 part/models.py:2467 part/models.py:2468 #: templates/InvenTree/settings/settings.html:227 msgid "Parameter Template" msgstr "Parameter Template" -#: part/models.py:2414 +#: part/models.py:2421 msgid "Data" msgstr "" -#: part/models.py:2414 +#: part/models.py:2421 msgid "Parameter Value" msgstr "Parameterwaarde" -#: part/models.py:2465 templates/InvenTree/settings/settings.html:236 +#: part/models.py:2472 templates/InvenTree/settings/settings.html:236 msgid "Default Value" msgstr "" -#: part/models.py:2466 +#: part/models.py:2473 msgid "Default Parameter Value" msgstr "Standaard Parameter Waarde" -#: part/models.py:2501 +#: part/models.py:2508 msgid "Part ID or part name" msgstr "" -#: part/models.py:2504 templates/js/translated/model_renderers.js:212 +#: part/models.py:2511 templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "" -#: part/models.py:2505 +#: part/models.py:2512 msgid "Unique part ID value" msgstr "" -#: part/models.py:2508 +#: part/models.py:2515 msgid "Part Name" msgstr "" -#: part/models.py:2512 +#: part/models.py:2519 msgid "Part IPN" msgstr "" -#: part/models.py:2513 +#: part/models.py:2520 msgid "Part IPN value" msgstr "" -#: part/models.py:2516 +#: part/models.py:2523 msgid "Level" msgstr "" -#: part/models.py:2517 +#: part/models.py:2524 msgid "BOM level" msgstr "" -#: part/models.py:2586 +#: part/models.py:2593 msgid "Select parent part" msgstr "" -#: part/models.py:2594 +#: part/models.py:2601 msgid "Sub part" msgstr "" -#: part/models.py:2595 +#: part/models.py:2602 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:2601 +#: part/models.py:2608 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:2603 part/templates/part/upload_bom.html:58 +#: part/models.py:2610 part/templates/part/upload_bom.html:58 #: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999 #: templates/js/translated/table_filters.js:100 msgid "Optional" msgstr "" -#: part/models.py:2603 +#: part/models.py:2610 msgid "This BOM item is optional" msgstr "" -#: part/models.py:2606 part/templates/part/upload_bom.html:55 +#: part/models.py:2613 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:2607 +#: part/models.py:2614 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:2610 +#: part/models.py:2617 msgid "BOM item reference" msgstr "" -#: part/models.py:2613 +#: part/models.py:2620 msgid "BOM item notes" msgstr "" -#: part/models.py:2615 +#: part/models.py:2622 msgid "Checksum" msgstr "" -#: part/models.py:2615 +#: part/models.py:2622 msgid "BOM line checksum" msgstr "" -#: part/models.py:2619 part/templates/part/upload_bom.html:57 +#: part/models.py:2626 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1016 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:96 msgid "Inherited" msgstr "" -#: part/models.py:2620 +#: part/models.py:2627 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:2625 part/templates/part/upload_bom.html:56 +#: part/models.py:2632 part/templates/part/upload_bom.html:56 #: templates/js/translated/bom.js:1008 msgid "Allow Variants" msgstr "" -#: part/models.py:2626 +#: part/models.py:2633 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:2704 stock/models.py:461 +#: part/models.py:2711 stock/models.py:468 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:2713 part/models.py:2715 +#: part/models.py:2720 part/models.py:2722 msgid "Sub part must be specified" msgstr "" -#: part/models.py:2820 +#: part/models.py:2827 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:2841 +#: part/models.py:2848 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:2854 +#: part/models.py:2861 msgid "Parent BOM item" msgstr "" -#: part/models.py:2862 +#: part/models.py:2869 msgid "Substitute part" msgstr "" -#: part/models.py:2877 +#: part/models.py:2884 msgid "Part 1" msgstr "" -#: part/models.py:2881 +#: part/models.py:2888 msgid "Part 2" msgstr "" -#: part/models.py:2881 +#: part/models.py:2888 msgid "Select Related Part" msgstr "" -#: part/models.py:2899 +#: part/models.py:2906 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:2903 +#: part/models.py:2910 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:152 part/serializers.py:183 stock/serializers.py:181 +#: part/serializers.py:154 part/serializers.py:185 stock/serializers.py:181 msgid "Purchase currency of this stock item" msgstr "" -#: part/serializers.py:812 +#: part/serializers.py:814 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:820 +#: part/serializers.py:822 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:821 +#: part/serializers.py:823 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:826 +#: part/serializers.py:828 msgid "Include Inherited" msgstr "" -#: part/serializers.py:827 +#: part/serializers.py:829 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:832 +#: part/serializers.py:834 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:833 +#: part/serializers.py:835 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:838 +#: part/serializers.py:840 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:839 +#: part/serializers.py:841 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:879 +#: part/serializers.py:881 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:880 +#: part/serializers.py:882 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:910 +#: part/serializers.py:912 msgid "No part column specified" msgstr "" -#: part/serializers.py:953 +#: part/serializers.py:955 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:956 +#: part/serializers.py:958 msgid "No matching part found" msgstr "" -#: part/serializers.py:959 +#: part/serializers.py:961 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:968 +#: part/serializers.py:970 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:976 +#: part/serializers.py:978 msgid "Invalid quantity" msgstr "Ongeldige hoeveelheid" -#: part/serializers.py:997 +#: part/serializers.py:999 msgid "At least one BOM item is required" msgstr "" @@ -4848,101 +4884,101 @@ msgstr "" msgid "Delete Items" msgstr "" -#: part/templates/part/category.html:28 part/templates/part/category.html:32 +#: part/templates/part/category.html:34 part/templates/part/category.html:38 msgid "You are subscribed to notifications for this category" msgstr "" -#: part/templates/part/category.html:36 +#: part/templates/part/category.html:42 msgid "Subscribe to notifications for this category" msgstr "" -#: part/templates/part/category.html:42 +#: part/templates/part/category.html:48 msgid "Category Actions" msgstr "" -#: part/templates/part/category.html:47 +#: part/templates/part/category.html:53 msgid "Edit category" msgstr "Categorie bewerken" -#: part/templates/part/category.html:48 +#: part/templates/part/category.html:54 msgid "Edit Category" msgstr "Categorie bewerken" -#: part/templates/part/category.html:52 +#: part/templates/part/category.html:58 msgid "Delete category" msgstr "Categorie verwijderen" -#: part/templates/part/category.html:53 +#: part/templates/part/category.html:59 msgid "Delete Category" msgstr "Categorie verwijderen" -#: part/templates/part/category.html:61 +#: part/templates/part/category.html:67 msgid "Create new part category" msgstr "" -#: part/templates/part/category.html:62 +#: part/templates/part/category.html:68 msgid "New Category" msgstr "Nieuwe Categorie" -#: part/templates/part/category.html:80 part/templates/part/category.html:93 +#: part/templates/part/category.html:86 part/templates/part/category.html:99 msgid "Category Path" msgstr "" -#: part/templates/part/category.html:94 +#: part/templates/part/category.html:100 msgid "Top level part category" msgstr "" -#: part/templates/part/category.html:114 part/templates/part/category.html:222 +#: part/templates/part/category.html:120 part/templates/part/category.html:228 #: part/templates/part/category_sidebar.html:7 msgid "Subcategories" msgstr "" -#: part/templates/part/category.html:119 +#: part/templates/part/category.html:125 msgid "Parts (Including subcategories)" msgstr "" -#: part/templates/part/category.html:157 +#: part/templates/part/category.html:163 msgid "Create new part" msgstr "" -#: part/templates/part/category.html:158 templates/js/translated/bom.js:367 +#: part/templates/part/category.html:164 templates/js/translated/bom.js:367 msgid "New Part" msgstr "" -#: part/templates/part/category.html:168 part/templates/part/detail.html:363 +#: part/templates/part/category.html:174 part/templates/part/detail.html:363 #: part/templates/part/detail.html:394 msgid "Options" msgstr "" -#: part/templates/part/category.html:172 +#: part/templates/part/category.html:178 msgid "Set category" msgstr "" -#: part/templates/part/category.html:173 +#: part/templates/part/category.html:179 msgid "Set Category" msgstr "" -#: part/templates/part/category.html:180 part/templates/part/category.html:181 +#: part/templates/part/category.html:186 part/templates/part/category.html:187 msgid "Print Labels" msgstr "" -#: part/templates/part/category.html:206 +#: part/templates/part/category.html:212 msgid "Part Parameters" msgstr "Onderdeel Parameters" -#: part/templates/part/category.html:320 +#: part/templates/part/category.html:327 msgid "Create Part Category" msgstr "" -#: part/templates/part/category.html:340 +#: part/templates/part/category.html:347 msgid "Create Part" msgstr "" -#: part/templates/part/category.html:343 +#: part/templates/part/category.html:350 msgid "Create another part after this one" msgstr "" -#: part/templates/part/category.html:344 +#: part/templates/part/category.html:351 msgid "Part created successfully" msgstr "" @@ -4950,7 +4986,7 @@ msgstr "" msgid "Import Parts" msgstr "" -#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:375 +#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:379 msgid "Duplicate Part" msgstr "" @@ -5172,19 +5208,19 @@ msgstr "" #: part/templates/part/part_base.html:43 #: stock/templates/stock/item_base.html:41 -#: stock/templates/stock/location.html:43 +#: stock/templates/stock/location.html:48 msgid "Barcode actions" msgstr "" #: part/templates/part/part_base.html:46 #: stock/templates/stock/item_base.html:45 -#: stock/templates/stock/location.html:45 templates/qr_button.html:1 +#: stock/templates/stock/location.html:50 templates/qr_button.html:1 msgid "Show QR Code" msgstr "QR-code weergeven" #: part/templates/part/part_base.html:49 #: stock/templates/stock/item_base.html:63 -#: stock/templates/stock/location.html:47 +#: stock/templates/stock/location.html:52 msgid "Print Label" msgstr "Label afdrukken" @@ -5194,7 +5230,7 @@ msgstr "" #: part/templates/part/part_base.html:60 #: stock/templates/stock/item_base.html:116 -#: stock/templates/stock/location.html:56 +#: stock/templates/stock/location.html:61 msgid "Stock actions" msgstr "Voorraad acties" @@ -5255,7 +5291,7 @@ msgstr "" #: templates/js/translated/company.js:624 #: templates/js/translated/company.js:884 #: templates/js/translated/model_renderers.js:204 -#: templates/js/translated/part.js:650 templates/js/translated/part.js:727 +#: templates/js/translated/part.js:654 templates/js/translated/part.js:731 msgid "Inactive" msgstr "" @@ -5289,9 +5325,9 @@ msgstr "Toegewezen aan verkooporders" msgid "Can Build" msgstr "" -#: part/templates/part/part_base.html:238 templates/js/translated/part.js:589 -#: templates/js/translated/part.js:609 templates/js/translated/part.js:1302 -#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490 +#: part/templates/part/part_base.html:238 templates/js/translated/part.js:593 +#: templates/js/translated/part.js:613 templates/js/translated/part.js:1306 +#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1494 msgid "Building" msgstr "" @@ -5464,8 +5500,8 @@ msgstr "" msgid "No sale pice history available for this part." msgstr "" -#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:612 -#: templates/js/translated/part.js:1290 templates/js/translated/part.js:1494 +#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616 +#: templates/js/translated/part.js:1294 templates/js/translated/part.js:1498 msgid "No Stock" msgstr "" @@ -5630,51 +5666,55 @@ msgstr "" msgid "Allow sending of emails for event notifications" msgstr "" -#: plugin/models.py:32 +#: plugin/models.py:33 msgid "Plugin Metadata" msgstr "" -#: plugin/models.py:33 +#: plugin/models.py:34 msgid "JSON metadata field, for use by external plugins" msgstr "" -#: plugin/models.py:79 +#: plugin/models.py:80 msgid "Plugin Configuration" msgstr "" -#: plugin/models.py:80 +#: plugin/models.py:81 msgid "Plugin Configurations" msgstr "" -#: plugin/models.py:85 +#: plugin/models.py:86 msgid "Key" msgstr "" -#: plugin/models.py:86 +#: plugin/models.py:87 msgid "Key of plugin" msgstr "" -#: plugin/models.py:94 +#: plugin/models.py:95 msgid "PluginName of the plugin" msgstr "" -#: plugin/models.py:100 +#: plugin/models.py:101 msgid "Is the plugin active" msgstr "" -#: plugin/models.py:168 +#: plugin/models.py:158 +msgid "Sample plugin" +msgstr "" + +#: plugin/models.py:186 msgid "Plugin" msgstr "" -#: plugin/models.py:231 +#: plugin/models.py:249 msgid "Method" msgstr "" -#: plugin/plugin.py:228 +#: plugin/plugin.py:251 msgid "No author found" msgstr "" -#: plugin/plugin.py:240 +#: plugin/plugin.py:263 msgid "No date found" msgstr "" @@ -5746,12 +5786,12 @@ msgstr "" msgid "No valid objects provided to template" msgstr "" -#: report/api.py:216 report/api.py:257 +#: report/api.py:216 report/api.py:252 #, python-brace-format msgid "Template file '{template}' is missing or does not exist" msgstr "" -#: report/api.py:360 +#: report/api.py:355 msgid "Test report" msgstr "" @@ -5852,12 +5892,12 @@ msgid "Stock Item Test Report" msgstr "" #: report/templates/report/inventree_test_report_base.html:79 -#: stock/models.py:641 stock/templates/stock/item_base.html:322 +#: stock/models.py:648 stock/templates/stock/item_base.html:322 #: templates/js/translated/build.js:424 templates/js/translated/build.js:576 #: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673 #: templates/js/translated/model_renderers.js:118 #: templates/js/translated/order.js:118 templates/js/translated/order.js:3297 -#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:486 +#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490 msgid "Serial Number" msgstr "Serienummer" @@ -5866,19 +5906,19 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report_base.html:93 -#: stock/models.py:2076 +#: stock/models.py:2083 msgid "Test" msgstr "" #: report/templates/report/inventree_test_report_base.html:94 -#: stock/models.py:2082 +#: stock/models.py:2089 msgid "Result" msgstr "" #: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:51 +#: templates/InvenTree/settings/plugin.html:53 #: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2459 +#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468 msgid "Date" msgstr "Datum" @@ -5896,8 +5936,8 @@ msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report_base.html:137 -#: templates/js/translated/stock.js:606 templates/js/translated/stock.js:776 -#: templates/js/translated/stock.js:2708 +#: templates/js/translated/stock.js:610 templates/js/translated/stock.js:780 +#: templates/js/translated/stock.js:2717 msgid "Serial" msgstr "" @@ -5913,241 +5953,241 @@ msgstr "" msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" -#: stock/models.py:82 stock/models.py:732 +#: stock/models.py:89 stock/models.py:739 #: stock/templates/stock/item_base.html:252 msgid "Owner" msgstr "" -#: stock/models.py:83 stock/models.py:733 +#: stock/models.py:90 stock/models.py:740 msgid "Select Owner" msgstr "" -#: stock/models.py:435 +#: stock/models.py:442 msgid "StockItem with this serial number already exists" msgstr "" -#: stock/models.py:467 stock/serializers.py:95 +#: stock/models.py:474 stock/serializers.py:95 msgid "Stock item cannot be created for virtual parts" msgstr "" -#: stock/models.py:484 +#: stock/models.py:491 #, python-brace-format msgid "Part type ('{pf}') must be {pe}" msgstr "" -#: stock/models.py:494 stock/models.py:503 +#: stock/models.py:501 stock/models.py:510 msgid "Quantity must be 1 for item with a serial number" msgstr "" -#: stock/models.py:495 +#: stock/models.py:502 msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:517 +#: stock/models.py:524 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:523 +#: stock/models.py:530 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:537 +#: stock/models.py:544 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:583 +#: stock/models.py:590 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:593 +#: stock/models.py:600 msgid "Base part" msgstr "" -#: stock/models.py:601 +#: stock/models.py:608 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:608 stock/templates/stock/location.html:17 +#: stock/models.py:615 stock/templates/stock/location.html:17 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" msgstr "Voorraadlocatie" -#: stock/models.py:611 +#: stock/models.py:618 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:618 +#: stock/models.py:625 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:624 stock/templates/stock/item_base.html:361 +#: stock/models.py:631 stock/templates/stock/item_base.html:361 msgid "Installed In" msgstr "" -#: stock/models.py:627 +#: stock/models.py:634 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:643 +#: stock/models.py:650 msgid "Serial number for this item" msgstr "" -#: stock/models.py:657 +#: stock/models.py:664 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:662 +#: stock/models.py:669 msgid "Stock Quantity" msgstr "" -#: stock/models.py:671 +#: stock/models.py:678 msgid "Source Build" msgstr "" -#: stock/models.py:673 +#: stock/models.py:680 msgid "Build for this stock item" msgstr "" -#: stock/models.py:684 +#: stock/models.py:691 msgid "Source Purchase Order" msgstr "Inkooporder Bron" -#: stock/models.py:687 +#: stock/models.py:694 msgid "Purchase order for this stock item" msgstr "Inkooporder voor dit voorraadartikel" -#: stock/models.py:693 +#: stock/models.py:700 msgid "Destination Sales Order" msgstr "Bestemming Verkooporder" -#: stock/models.py:699 stock/templates/stock/item_base.html:429 -#: templates/js/translated/stock.js:1879 +#: stock/models.py:706 stock/templates/stock/item_base.html:429 +#: templates/js/translated/stock.js:1883 msgid "Expiry Date" msgstr "" -#: stock/models.py:700 +#: stock/models.py:707 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:713 +#: stock/models.py:720 msgid "Delete on deplete" msgstr "" -#: stock/models.py:713 +#: stock/models.py:720 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:720 stock/templates/stock/item.html:132 +#: stock/models.py:727 stock/templates/stock/item.html:132 msgid "Stock Item Notes" msgstr "" -#: stock/models.py:728 +#: stock/models.py:735 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:756 +#: stock/models.py:763 msgid "Converted to part" msgstr "" -#: stock/models.py:1235 +#: stock/models.py:1242 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1241 +#: stock/models.py:1248 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1247 +#: stock/models.py:1254 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({n})" msgstr "" -#: stock/models.py:1250 +#: stock/models.py:1257 msgid "Serial numbers must be a list of integers" msgstr "" -#: stock/models.py:1253 +#: stock/models.py:1260 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1260 +#: stock/models.py:1267 #, python-brace-format msgid "Serial numbers already exist: {exists}" msgstr "" -#: stock/models.py:1330 +#: stock/models.py:1337 msgid "Stock item has been assigned to a sales order" msgstr "Voorraadartikel is toegewezen aan een verkooporder" -#: stock/models.py:1333 +#: stock/models.py:1340 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1336 +#: stock/models.py:1343 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1339 +#: stock/models.py:1346 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1342 +#: stock/models.py:1349 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1345 +#: stock/models.py:1352 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1352 stock/serializers.py:959 +#: stock/models.py:1359 stock/serializers.py:961 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1356 +#: stock/models.py:1363 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1360 +#: stock/models.py:1367 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1364 +#: stock/models.py:1371 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:1533 +#: stock/models.py:1540 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:1994 +#: stock/models.py:2001 msgid "Entry notes" msgstr "" -#: stock/models.py:2052 +#: stock/models.py:2059 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2058 +#: stock/models.py:2065 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2077 +#: stock/models.py:2084 msgid "Test name" msgstr "" -#: stock/models.py:2083 +#: stock/models.py:2090 msgid "Test result" msgstr "" -#: stock/models.py:2089 +#: stock/models.py:2096 msgid "Test output value" msgstr "" -#: stock/models.py:2096 +#: stock/models.py:2103 msgid "Test result attachment" msgstr "" -#: stock/models.py:2102 +#: stock/models.py:2109 msgid "Test notes" msgstr "" @@ -6172,7 +6212,7 @@ msgstr "" msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:323 stock/serializers.py:916 stock/serializers.py:1149 +#: stock/serializers.py:323 stock/serializers.py:918 stock/serializers.py:1151 msgid "Destination stock location" msgstr "" @@ -6220,63 +6260,63 @@ msgstr "" msgid "Destination location for returned item" msgstr "" -#: stock/serializers.py:771 +#: stock/serializers.py:773 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:775 +#: stock/serializers.py:777 msgid "Item is allocated to a sales order" msgstr "Artikel is toegewezen aan een verkooporder" -#: stock/serializers.py:779 +#: stock/serializers.py:781 msgid "Item is allocated to a build order" msgstr "Artikel is toegewezen aan een productieorder" -#: stock/serializers.py:810 +#: stock/serializers.py:812 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:816 +#: stock/serializers.py:818 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:824 +#: stock/serializers.py:826 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:834 stock/serializers.py:1065 +#: stock/serializers.py:836 stock/serializers.py:1067 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:923 +#: stock/serializers.py:925 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:928 +#: stock/serializers.py:930 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:929 +#: stock/serializers.py:931 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:934 +#: stock/serializers.py:936 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:935 +#: stock/serializers.py:937 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:945 +#: stock/serializers.py:947 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1027 +#: stock/serializers.py:1029 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1055 +#: stock/serializers.py:1057 msgid "Stock transaction notes" msgstr "" @@ -6313,7 +6353,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2852 +#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2861 msgid "Install Stock Item" msgstr "" @@ -6321,7 +6361,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1518 +#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1522 msgid "Add Test Result" msgstr "" @@ -6352,7 +6392,7 @@ msgid "Stock adjustment actions" msgstr "" #: stock/templates/stock/item_base.html:80 -#: stock/templates/stock/location.html:63 templates/stock_table.html:47 +#: stock/templates/stock/location.html:68 templates/stock_table.html:47 msgid "Count stock" msgstr "Voorraad tellen" @@ -6369,7 +6409,7 @@ msgid "Serialize stock" msgstr "" #: stock/templates/stock/item_base.html:93 -#: stock/templates/stock/location.html:69 templates/stock_table.html:48 +#: stock/templates/stock/location.html:74 templates/stock_table.html:48 msgid "Transfer stock" msgstr "Voorraad overzetten" @@ -6430,7 +6470,7 @@ msgid "You are not in the list of owners of this item. This stock item cannot be msgstr "" #: stock/templates/stock/item_base.html:257 -#: stock/templates/stock/location.html:127 +#: stock/templates/stock/location.html:132 msgid "Read only" msgstr "" @@ -6508,7 +6548,7 @@ msgid "Stale" msgstr "" #: stock/templates/stock/item_base.html:442 -#: templates/js/translated/company.js:985 templates/js/translated/stock.js:1895 +#: templates/js/translated/company.js:985 templates/js/translated/stock.js:1899 msgid "Last Updated" msgstr "" @@ -6552,58 +6592,58 @@ msgstr "" msgid "Select quantity to serialize, and unique serial numbers." msgstr "" -#: stock/templates/stock/location.html:33 +#: stock/templates/stock/location.html:38 msgid "Locate stock location" msgstr "" -#: stock/templates/stock/location.html:49 +#: stock/templates/stock/location.html:54 msgid "Check-in Items" msgstr "" -#: stock/templates/stock/location.html:77 +#: stock/templates/stock/location.html:82 msgid "Location actions" msgstr "Locatie acties" -#: stock/templates/stock/location.html:79 +#: stock/templates/stock/location.html:84 msgid "Edit location" msgstr "Bewerk locatie" -#: stock/templates/stock/location.html:81 +#: stock/templates/stock/location.html:86 msgid "Delete location" msgstr "Verwijder locatie" -#: stock/templates/stock/location.html:90 +#: stock/templates/stock/location.html:95 msgid "Create new stock location" msgstr "Maak nieuwe voorraadlocatie" -#: stock/templates/stock/location.html:91 +#: stock/templates/stock/location.html:96 msgid "New Location" msgstr "Nieuwe Locatie" -#: stock/templates/stock/location.html:109 -#: stock/templates/stock/location.html:115 +#: stock/templates/stock/location.html:114 +#: stock/templates/stock/location.html:120 msgid "Location Path" msgstr "" -#: stock/templates/stock/location.html:116 +#: stock/templates/stock/location.html:121 msgid "Top level stock location" msgstr "" -#: stock/templates/stock/location.html:122 +#: stock/templates/stock/location.html:127 msgid "Location Owner" msgstr "" -#: stock/templates/stock/location.html:126 +#: stock/templates/stock/location.html:131 msgid "You are not in the list of owners of this location. This stock location cannot be edited." msgstr "U staat niet in de lijst van eigenaars van deze locatie. Deze voorraadlocatie kan niet worden bewerkt." -#: stock/templates/stock/location.html:142 -#: stock/templates/stock/location.html:189 +#: stock/templates/stock/location.html:147 +#: stock/templates/stock/location.html:194 #: stock/templates/stock/location_sidebar.html:5 msgid "Sublocations" msgstr "Sublocaties" -#: stock/templates/stock/location.html:156 templates/InvenTree/search.html:165 +#: stock/templates/stock/location.html:161 templates/InvenTree/search.html:165 #: templates/js/translated/search.js:238 users/models.py:39 msgid "Stock Locations" msgstr "Voorraadlocaties" @@ -6875,15 +6915,15 @@ msgstr "" msgid "Part Settings" msgstr "" -#: templates/InvenTree/settings/part.html:44 +#: templates/InvenTree/settings/part.html:46 msgid "Part Import" msgstr "" -#: templates/InvenTree/settings/part.html:48 +#: templates/InvenTree/settings/part.html:50 msgid "Import Part" msgstr "" -#: templates/InvenTree/settings/part.html:62 +#: templates/InvenTree/settings/part.html:64 msgid "Part Parameter Templates" msgstr "" @@ -6895,47 +6935,47 @@ msgstr "" msgid "Changing the settings below require you to immediately restart the server. Do not change this while under active usage." msgstr "" -#: templates/InvenTree/settings/plugin.html:34 +#: templates/InvenTree/settings/plugin.html:36 msgid "Plugins" msgstr "" -#: templates/InvenTree/settings/plugin.html:39 +#: templates/InvenTree/settings/plugin.html:41 #: templates/js/translated/plugin.js:16 msgid "Install Plugin" msgstr "" -#: templates/InvenTree/settings/plugin.html:48 templates/navbar.html:137 +#: templates/InvenTree/settings/plugin.html:50 templates/navbar.html:137 #: users/models.py:36 msgid "Admin" msgstr "" -#: templates/InvenTree/settings/plugin.html:50 +#: templates/InvenTree/settings/plugin.html:52 #: templates/InvenTree/settings/plugin_settings.html:28 msgid "Author" msgstr "" -#: templates/InvenTree/settings/plugin.html:52 +#: templates/InvenTree/settings/plugin.html:54 #: templates/InvenTree/settings/plugin_settings.html:43 msgid "Version" msgstr "" -#: templates/InvenTree/settings/plugin.html:74 +#: templates/InvenTree/settings/plugin.html:76 msgid "Sample" msgstr "" -#: templates/InvenTree/settings/plugin.html:99 +#: templates/InvenTree/settings/plugin.html:101 msgid "Inactive plugins" msgstr "" -#: templates/InvenTree/settings/plugin.html:122 +#: templates/InvenTree/settings/plugin.html:124 msgid "Plugin Error Stack" msgstr "" -#: templates/InvenTree/settings/plugin.html:131 +#: templates/InvenTree/settings/plugin.html:133 msgid "Stage" msgstr "" -#: templates/InvenTree/settings/plugin.html:133 +#: templates/InvenTree/settings/plugin.html:135 #: templates/js/translated/notification.js:75 msgid "Message" msgstr "Bericht" @@ -6999,11 +7039,11 @@ msgstr "" msgid "Commit Message" msgstr "Bericht indienen" -#: templates/InvenTree/settings/plugin_settings.html:117 +#: templates/InvenTree/settings/plugin_settings.html:120 msgid "Sign Status" msgstr "" -#: templates/InvenTree/settings/plugin_settings.html:122 +#: templates/InvenTree/settings/plugin_settings.html:125 msgid "Sign Key" msgstr "" @@ -7828,7 +7868,7 @@ msgstr "" msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:456 templates/js/translated/stock.js:1050 +#: templates/js/translated/barcode.js:456 templates/js/translated/stock.js:1054 msgid "Remove stock item" msgstr "" @@ -8001,7 +8041,7 @@ msgid "Includes variant and substitute stock" msgstr "" #: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822 -#: templates/js/translated/part.js:759 +#: templates/js/translated/part.js:763 msgid "Includes variant stock" msgstr "" @@ -8098,12 +8138,12 @@ msgid "Complete Build Order" msgstr "Voltooi Productieoorder" #: templates/js/translated/build.js:263 templates/js/translated/stock.js:92 -#: templates/js/translated/stock.js:210 +#: templates/js/translated/stock.js:214 msgid "Next available serial number" msgstr "" #: templates/js/translated/build.js:265 templates/js/translated/stock.js:94 -#: templates/js/translated/stock.js:212 +#: templates/js/translated/stock.js:216 msgid "Latest serial number" msgstr "" @@ -8316,9 +8356,9 @@ msgstr "" msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1383 -#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1682 -#: templates/js/translated/stock.js:2382 +#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387 +#: templates/js/translated/part.js:1899 templates/js/translated/stock.js:1686 +#: templates/js/translated/stock.js:2386 msgid "Select" msgstr "" @@ -8330,7 +8370,7 @@ msgstr "Productieorder is achterstallig" msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2638 +#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647 msgid "No user information" msgstr "" @@ -8403,34 +8443,34 @@ msgid "No manufacturer parts found" msgstr "Geen fabrikantenonderdelen gevonden" #: templates/js/translated/company.js:616 -#: templates/js/translated/company.js:876 templates/js/translated/part.js:634 -#: templates/js/translated/part.js:719 +#: templates/js/translated/company.js:876 templates/js/translated/part.js:638 +#: templates/js/translated/part.js:723 msgid "Template part" msgstr "" #: templates/js/translated/company.js:620 -#: templates/js/translated/company.js:880 templates/js/translated/part.js:638 -#: templates/js/translated/part.js:723 +#: templates/js/translated/company.js:880 templates/js/translated/part.js:642 +#: templates/js/translated/part.js:727 msgid "Assembled part" msgstr "Samengesteld onderdeel" -#: templates/js/translated/company.js:748 templates/js/translated/part.js:826 +#: templates/js/translated/company.js:748 templates/js/translated/part.js:830 msgid "No parameters found" msgstr "Geen parameters gevonden" -#: templates/js/translated/company.js:785 templates/js/translated/part.js:868 +#: templates/js/translated/company.js:785 templates/js/translated/part.js:872 msgid "Edit parameter" msgstr "Parameter bewerken" -#: templates/js/translated/company.js:786 templates/js/translated/part.js:869 +#: templates/js/translated/company.js:786 templates/js/translated/part.js:873 msgid "Delete parameter" msgstr "Parameter verwijderen" -#: templates/js/translated/company.js:805 templates/js/translated/part.js:886 +#: templates/js/translated/company.js:805 templates/js/translated/part.js:890 msgid "Edit Parameter" msgstr "Parameter bewerken" -#: templates/js/translated/company.js:816 templates/js/translated/part.js:898 +#: templates/js/translated/company.js:816 templates/js/translated/part.js:902 msgid "Delete Parameter" msgstr "Parameter verwijderen" @@ -8555,7 +8595,7 @@ msgid "Labels sent to printer" msgstr "" #: templates/js/translated/label.js:60 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1078 msgid "Select Stock Items" msgstr "" @@ -8865,7 +8905,7 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2140 +#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144 msgid "Stock Status" msgstr "" @@ -8889,7 +8929,7 @@ msgstr "" msgid "Receive Purchase Order Items" msgstr "Ontvang Artikelen Inkooporder" -#: templates/js/translated/order.js:1672 templates/js/translated/part.js:939 +#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943 msgid "No purchase orders found" msgstr "Geen inkooporder gevonden" @@ -8924,7 +8964,7 @@ msgstr "Totaal" #: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203 #: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050 -#: templates/js/translated/part.js:2126 templates/js/translated/part.js:2479 +#: templates/js/translated/part.js:2135 templates/js/translated/part.js:2488 msgid "Unit Price" msgstr "Stukprijs" @@ -8934,11 +8974,11 @@ msgid "Total Price" msgstr "Totaalprijs" #: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600 -#: templates/js/translated/part.js:1046 +#: templates/js/translated/part.js:1050 msgid "This line item is overdue" msgstr "Dit artikel is achterstallig" -#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1092 +#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096 msgid "Receive line item" msgstr "Artikel ontvangen" @@ -9059,7 +9099,7 @@ msgid "Delete Stock Allocation" msgstr "Verwijder Voorraadtoewijzing" #: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398 -#: templates/js/translated/stock.js:1598 +#: templates/js/translated/stock.js:1602 msgid "Shipped to customer" msgstr "Verzonden aan klant" @@ -9183,241 +9223,245 @@ msgstr "Parameter data kopiëren van het originele onderdeel" msgid "Parent part category" msgstr "" -#: templates/js/translated/part.js:318 +#: templates/js/translated/part.js:306 templates/js/translated/stock.js:118 +msgid "Icon (optional) - Explore all available icons on" +msgstr "" + +#: templates/js/translated/part.js:322 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:331 +#: templates/js/translated/part.js:335 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:333 +#: templates/js/translated/part.js:337 msgid "Any child categories will be moved to the parent of this category" msgstr "" -#: templates/js/translated/part.js:334 +#: templates/js/translated/part.js:338 msgid "Any parts in this category will be moved to the parent of this category" msgstr "" -#: templates/js/translated/part.js:339 +#: templates/js/translated/part.js:343 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:365 +#: templates/js/translated/part.js:369 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:367 +#: templates/js/translated/part.js:371 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:378 +#: templates/js/translated/part.js:382 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:430 +#: templates/js/translated/part.js:434 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:431 +#: templates/js/translated/part.js:435 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:445 +#: templates/js/translated/part.js:449 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:447 +#: templates/js/translated/part.js:451 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:448 +#: templates/js/translated/part.js:452 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:449 +#: templates/js/translated/part.js:453 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:456 +#: templates/js/translated/part.js:460 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:492 +#: templates/js/translated/part.js:496 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:494 +#: templates/js/translated/part.js:498 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:499 +#: templates/js/translated/part.js:503 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:501 +#: templates/js/translated/part.js:505 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:518 +#: templates/js/translated/part.js:522 msgid "Validating the BOM will mark each line item as valid" msgstr "Validatie van de BOM markeert ieder artikel als geldig" -#: templates/js/translated/part.js:528 +#: templates/js/translated/part.js:532 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:531 +#: templates/js/translated/part.js:535 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:556 +#: templates/js/translated/part.js:560 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:582 templates/js/translated/part.js:1466 +#: templates/js/translated/part.js:586 templates/js/translated/part.js:1470 #: templates/js/translated/table_filters.js:468 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:592 templates/js/translated/part.js:1478 +#: templates/js/translated/part.js:596 templates/js/translated/part.js:1482 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:626 templates/js/translated/part.js:711 +#: templates/js/translated/part.js:630 templates/js/translated/part.js:715 msgid "Trackable part" msgstr "" -#: templates/js/translated/part.js:630 templates/js/translated/part.js:715 +#: templates/js/translated/part.js:634 templates/js/translated/part.js:719 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:642 +#: templates/js/translated/part.js:646 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:646 +#: templates/js/translated/part.js:650 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:774 +#: templates/js/translated/part.js:778 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1162 +#: templates/js/translated/part.js:1166 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1186 +#: templates/js/translated/part.js:1190 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:1253 templates/js/translated/part.js:1549 +#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1553 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:1292 +#: templates/js/translated/part.js:1296 msgid "Not available" msgstr "" -#: templates/js/translated/part.js:1443 +#: templates/js/translated/part.js:1447 msgid "No category" msgstr "" -#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816 -#: templates/js/translated/stock.js:2343 +#: templates/js/translated/part.js:1577 templates/js/translated/part.js:1820 +#: templates/js/translated/stock.js:2347 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:1589 +#: templates/js/translated/part.js:1593 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:1655 +#: templates/js/translated/part.js:1659 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:1660 +#: templates/js/translated/part.js:1664 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:1665 +#: templates/js/translated/part.js:1669 msgid "Select Part Category" msgstr "" -#: templates/js/translated/part.js:1678 +#: templates/js/translated/part.js:1682 msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2362 +#: templates/js/translated/part.js:1839 templates/js/translated/stock.js:2366 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:1914 +#: templates/js/translated/part.js:1918 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:1925 +#: templates/js/translated/part.js:1934 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:1983 +#: templates/js/translated/part.js:1992 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2034 templates/js/translated/stock.js:1295 +#: templates/js/translated/part.js:2043 templates/js/translated/stock.js:1299 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:2035 templates/js/translated/stock.js:1296 -#: templates/js/translated/stock.js:1556 +#: templates/js/translated/part.js:2044 templates/js/translated/stock.js:1300 +#: templates/js/translated/stock.js:1560 msgid "Delete test result" msgstr "" -#: templates/js/translated/part.js:2041 +#: templates/js/translated/part.js:2050 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2063 +#: templates/js/translated/part.js:2072 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2077 +#: templates/js/translated/part.js:2086 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2102 +#: templates/js/translated/part.js:2111 #, python-brace-format msgid "No ${human_name} information found" msgstr "" -#: templates/js/translated/part.js:2159 +#: templates/js/translated/part.js:2168 #, python-brace-format msgid "Edit ${human_name}" msgstr "" -#: templates/js/translated/part.js:2160 +#: templates/js/translated/part.js:2169 #, python-brace-format msgid "Delete ${human_name}" msgstr "" -#: templates/js/translated/part.js:2274 +#: templates/js/translated/part.js:2283 msgid "Current Stock" msgstr "" -#: templates/js/translated/part.js:2307 +#: templates/js/translated/part.js:2316 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2333 +#: templates/js/translated/part.js:2342 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2403 +#: templates/js/translated/part.js:2412 msgid "Single Price" msgstr "" -#: templates/js/translated/part.js:2422 +#: templates/js/translated/part.js:2431 msgid "Single Price Difference" msgstr "" @@ -9511,376 +9555,376 @@ msgstr "" msgid "Parent stock location" msgstr "" -#: templates/js/translated/stock.js:140 +#: templates/js/translated/stock.js:144 msgid "Edit Stock Location" msgstr "Bewerk Voorraadlocatie" -#: templates/js/translated/stock.js:155 +#: templates/js/translated/stock.js:159 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:169 +#: templates/js/translated/stock.js:173 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:171 +#: templates/js/translated/stock.js:175 msgid "Any child locations will be moved to the parent of this location" msgstr "" -#: templates/js/translated/stock.js:172 +#: templates/js/translated/stock.js:176 msgid "Any stock items in this location will be moved to the parent of this location" msgstr "" -#: templates/js/translated/stock.js:178 +#: templates/js/translated/stock.js:182 msgid "Delete Stock Location" msgstr "Verwijder Voorraadlocatie" -#: templates/js/translated/stock.js:223 +#: templates/js/translated/stock.js:227 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:262 +#: templates/js/translated/stock.js:266 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:268 +#: templates/js/translated/stock.js:272 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:333 +#: templates/js/translated/stock.js:337 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:353 +#: templates/js/translated/stock.js:357 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:369 +#: templates/js/translated/stock.js:373 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:374 +#: templates/js/translated/stock.js:378 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:395 +#: templates/js/translated/stock.js:399 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:445 +#: templates/js/translated/stock.js:449 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:458 +#: templates/js/translated/stock.js:462 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:483 +#: templates/js/translated/stock.js:487 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:487 templates/js/translated/stock.js:488 +#: templates/js/translated/stock.js:491 templates/js/translated/stock.js:492 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:504 +#: templates/js/translated/stock.js:508 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:524 +#: templates/js/translated/stock.js:528 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:533 +#: templates/js/translated/stock.js:537 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:656 +#: templates/js/translated/stock.js:660 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:657 +#: templates/js/translated/stock.js:661 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:734 +#: templates/js/translated/stock.js:738 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:735 +#: templates/js/translated/stock.js:739 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:737 +#: templates/js/translated/stock.js:741 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:738 +#: templates/js/translated/stock.js:742 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:824 +#: templates/js/translated/stock.js:828 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:825 +#: templates/js/translated/stock.js:829 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:920 +#: templates/js/translated/stock.js:924 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:921 +#: templates/js/translated/stock.js:925 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:927 +#: templates/js/translated/stock.js:931 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:928 +#: templates/js/translated/stock.js:932 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:932 +#: templates/js/translated/stock.js:936 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:933 +#: templates/js/translated/stock.js:937 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:937 +#: templates/js/translated/stock.js:941 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:938 users/models.py:216 +#: templates/js/translated/stock.js:942 users/models.py:216 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:942 +#: templates/js/translated/stock.js:946 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1035 +#: templates/js/translated/stock.js:1039 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1035 +#: templates/js/translated/stock.js:1039 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1075 +#: templates/js/translated/stock.js:1079 msgid "You must select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1098 +#: templates/js/translated/stock.js:1102 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1234 +#: templates/js/translated/stock.js:1238 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1236 +#: templates/js/translated/stock.js:1240 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1241 +#: templates/js/translated/stock.js:1245 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1288 +#: templates/js/translated/stock.js:1292 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1291 +#: templates/js/translated/stock.js:1295 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1317 +#: templates/js/translated/stock.js:1321 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1374 +#: templates/js/translated/stock.js:1378 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1539 +#: templates/js/translated/stock.js:1543 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1561 +#: templates/js/translated/stock.js:1565 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1590 +#: templates/js/translated/stock.js:1594 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1594 +#: templates/js/translated/stock.js:1598 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1602 +#: templates/js/translated/stock.js:1606 msgid "Assigned to Sales Order" msgstr "Toegewezen aan Verkooporder" -#: templates/js/translated/stock.js:1608 +#: templates/js/translated/stock.js:1612 msgid "No stock location set" msgstr "Geen voorraadlocatie ingesteld" -#: templates/js/translated/stock.js:1775 +#: templates/js/translated/stock.js:1779 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:1780 +#: templates/js/translated/stock.js:1784 msgid "Stock item assigned to sales order" msgstr "Voorraadartikel toegewezen aan verkooporder" -#: templates/js/translated/stock.js:1783 +#: templates/js/translated/stock.js:1787 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:1786 +#: templates/js/translated/stock.js:1790 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:1788 +#: templates/js/translated/stock.js:1792 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:1790 +#: templates/js/translated/stock.js:1794 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:1793 +#: templates/js/translated/stock.js:1797 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:1797 +#: templates/js/translated/stock.js:1801 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:1799 +#: templates/js/translated/stock.js:1803 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:1806 +#: templates/js/translated/stock.js:1810 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:1808 +#: templates/js/translated/stock.js:1812 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:1810 +#: templates/js/translated/stock.js:1814 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:1814 +#: templates/js/translated/stock.js:1818 #: templates/js/translated/table_filters.js:196 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:1865 +#: templates/js/translated/stock.js:1869 msgid "Stocktake" msgstr "" -#: templates/js/translated/stock.js:1944 +#: templates/js/translated/stock.js:1948 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:1982 +#: templates/js/translated/stock.js:1986 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2155 +#: templates/js/translated/stock.js:2159 msgid "Set Stock Status" msgstr "" -#: templates/js/translated/stock.js:2169 +#: templates/js/translated/stock.js:2173 msgid "Select Status Code" msgstr "" -#: templates/js/translated/stock.js:2170 +#: templates/js/translated/stock.js:2174 msgid "Status code must be selected" msgstr "" -#: templates/js/translated/stock.js:2400 +#: templates/js/translated/stock.js:2404 msgid "Load Subloactions" msgstr "" -#: templates/js/translated/stock.js:2484 +#: templates/js/translated/stock.js:2493 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2500 +#: templates/js/translated/stock.js:2509 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2522 +#: templates/js/translated/stock.js:2531 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2541 +#: templates/js/translated/stock.js:2550 msgid "Purchase order no longer exists" msgstr "Inkooporder bestaat niet meer" -#: templates/js/translated/stock.js:2560 +#: templates/js/translated/stock.js:2569 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2578 +#: templates/js/translated/stock.js:2587 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:2601 +#: templates/js/translated/stock.js:2610 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:2609 +#: templates/js/translated/stock.js:2618 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:2685 +#: templates/js/translated/stock.js:2694 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:2736 templates/js/translated/stock.js:2772 +#: templates/js/translated/stock.js:2745 templates/js/translated/stock.js:2781 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:2785 +#: templates/js/translated/stock.js:2794 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:2806 +#: templates/js/translated/stock.js:2815 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:2807 +#: templates/js/translated/stock.js:2816 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:2809 +#: templates/js/translated/stock.js:2818 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:2810 +#: templates/js/translated/stock.js:2819 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:2811 +#: templates/js/translated/stock.js:2820 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:2812 +#: templates/js/translated/stock.js:2821 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:2825 +#: templates/js/translated/stock.js:2834 msgid "Select part to install" msgstr "" diff --git a/InvenTree/locale/no/LC_MESSAGES/django.po b/InvenTree/locale/no/LC_MESSAGES/django.po index 6768d3f52f..6e0cf418be 100644 --- a/InvenTree/locale/no/LC_MESSAGES/django.po +++ b/InvenTree/locale/no/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-11 02:47+0000\n" -"PO-Revision-Date: 2022-08-11 13:49\n" +"POT-Creation-Date: 2022-08-16 11:53+0000\n" +"PO-Revision-Date: 2022-08-16 21:35\n" "Last-Translator: \n" "Language-Team: Norwegian\n" "Language: no_NO\n" @@ -36,15 +36,15 @@ msgstr "Oppgi dato" #: order/templates/order/so_sidebar.html:17 #: part/templates/part/part_sidebar.html:59 #: report/templates/report/inventree_build_order_base.html:172 -#: stock/models.py:1993 stock/models.py:2101 stock/serializers.py:329 -#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:823 -#: stock/serializers.py:922 stock/serializers.py:1054 +#: stock/models.py:2000 stock/models.py:2108 stock/serializers.py:329 +#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825 +#: stock/serializers.py:924 stock/serializers.py:1056 #: stock/templates/stock/stock_sidebar.html:25 #: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101 #: templates/js/translated/company.js:964 templates/js/translated/order.js:2104 #: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753 #: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102 -#: templates/js/translated/stock.js:1370 templates/js/translated/stock.js:1976 +#: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980 msgid "Notes" msgstr "Notater" @@ -163,6 +163,10 @@ msgstr "Ingen serienummer funnet" msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "Antall unike serienumre ({s}) må samsvare med antall ({q})" +#: InvenTree/mixins.py:71 +msgid "Remove HTML tags from this value" +msgstr "" + #: InvenTree/models.py:236 msgid "Improperly formatted pattern" msgstr "Uriktig formatert mønster" @@ -195,7 +199,7 @@ msgstr "Fil mangler" msgid "Missing external link" msgstr "Mangler eksternlenke" -#: InvenTree/models.py:395 stock/models.py:2095 +#: InvenTree/models.py:395 stock/models.py:2102 #: templates/js/translated/attachment.js:103 #: templates/js/translated/attachment.js:241 msgid "Attachment" @@ -207,16 +211,16 @@ msgstr "Velg fil å legge ved" #: InvenTree/models.py:402 company/models.py:124 company/models.py:276 #: company/models.py:510 order/models.py:84 order/models.py:1245 -#: part/models.py:795 +#: part/models.py:802 #: report/templates/report/inventree_build_order_base.html:164 #: templates/js/translated/company.js:656 #: templates/js/translated/company.js:948 templates/js/translated/order.js:2742 -#: templates/js/translated/part.js:1510 +#: templates/js/translated/part.js:1514 msgid "Link" msgstr "Lenke" -#: InvenTree/models.py:403 build/models.py:296 part/models.py:796 -#: stock/models.py:651 +#: InvenTree/models.py:403 build/models.py:296 part/models.py:803 +#: stock/models.py:658 msgid "Link to external URL" msgstr "Lenke til ekstern URL" @@ -229,12 +233,12 @@ msgstr "Kommenter" msgid "File comment" msgstr "Kommentar til fil" -#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1646 -#: common/models.py:1647 common/models.py:1870 common/models.py:1871 -#: common/models.py:2133 common/models.py:2134 part/models.py:2193 -#: part/models.py:2213 plugin/models.py:238 plugin/models.py:239 +#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665 +#: common/models.py:1666 common/models.py:1889 common/models.py:1890 +#: common/models.py:2152 common/models.py:2153 part/models.py:2200 +#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2632 +#: templates/js/translated/stock.js:2641 msgid "User" msgstr "Bruker" @@ -271,19 +275,19 @@ msgstr "Feil ved endring av navn" msgid "Invalid choice" msgstr "Ugyldig valg" -#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1856 -#: company/models.py:358 label/models.py:101 part/models.py:739 -#: part/models.py:2371 plugin/models.py:93 report/models.py:152 +#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875 +#: company/models.py:358 label/models.py:101 part/models.py:746 +#: part/models.py:2378 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 -#: templates/InvenTree/settings/plugin.html:49 -#: templates/InvenTree/settings/plugin.html:132 +#: templates/InvenTree/settings/plugin.html:51 +#: templates/InvenTree/settings/plugin.html:134 #: templates/InvenTree/settings/plugin_settings.html:23 #: templates/InvenTree/settings/settings.html:347 #: templates/js/translated/company.js:545 #: templates/js/translated/company.js:758 #: templates/js/translated/notification.js:71 -#: templates/js/translated/part.js:684 templates/js/translated/part.js:836 -#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2388 +#: templates/js/translated/part.js:688 templates/js/translated/part.js:840 +#: templates/js/translated/part.js:1906 templates/js/translated/stock.js:2392 msgid "Name" msgstr "Navn" @@ -292,21 +296,21 @@ msgstr "Navn" #: company/models.py:516 company/templates/company/company_base.html:71 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:87 label/models.py:108 -#: order/models.py:82 part/models.py:762 part/templates/part/category.html:74 +#: order/models.py:82 part/models.py:769 part/templates/part/category.html:80 #: part/templates/part/part_base.html:167 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 -#: stock/templates/stock/location.html:103 +#: stock/templates/stock/location.html:108 #: templates/InvenTree/settings/plugin_settings.html:33 #: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848 #: templates/js/translated/build.js:2471 templates/js/translated/company.js:409 #: templates/js/translated/company.js:667 #: templates/js/translated/company.js:959 templates/js/translated/order.js:1720 #: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531 -#: templates/js/translated/part.js:743 templates/js/translated/part.js:1149 -#: templates/js/translated/part.js:1424 templates/js/translated/part.js:1933 -#: templates/js/translated/part.js:2002 templates/js/translated/stock.js:1739 -#: templates/js/translated/stock.js:2415 templates/js/translated/stock.js:2469 +#: templates/js/translated/part.js:747 templates/js/translated/part.js:1153 +#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1942 +#: templates/js/translated/part.js:2011 templates/js/translated/stock.js:1743 +#: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478 msgid "Description" msgstr "Beskrivelse" @@ -319,7 +323,7 @@ msgid "parent" msgstr "overkategori" #: InvenTree/models.py:560 InvenTree/models.py:561 -#: templates/js/translated/part.js:1939 templates/js/translated/stock.js:2421 +#: templates/js/translated/part.js:1948 templates/js/translated/stock.js:2430 msgid "Path" msgstr "" @@ -331,7 +335,7 @@ msgstr "" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:55 part/models.py:2692 +#: InvenTree/serializers.py:55 part/models.py:2699 msgid "Must be a valid number" msgstr "Nummer må være gyldig" @@ -398,99 +402,99 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/settings.py:609 +#: InvenTree/settings.py:607 msgid "Czech" msgstr "Tsjekkisk" -#: InvenTree/settings.py:610 +#: InvenTree/settings.py:608 msgid "German" msgstr "Tysk" -#: InvenTree/settings.py:611 +#: InvenTree/settings.py:609 msgid "Greek" msgstr "Gresk" -#: InvenTree/settings.py:612 +#: InvenTree/settings.py:610 msgid "English" msgstr "Engelsk" -#: InvenTree/settings.py:613 +#: InvenTree/settings.py:611 msgid "Spanish" msgstr "Spansk" -#: InvenTree/settings.py:614 +#: InvenTree/settings.py:612 msgid "Spanish (Mexican)" msgstr "Spansk (Meksikansk)" -#: InvenTree/settings.py:615 +#: InvenTree/settings.py:613 msgid "Farsi / Persian" msgstr "Farsi / Persisk" -#: InvenTree/settings.py:616 +#: InvenTree/settings.py:614 msgid "French" msgstr "Fransk" -#: InvenTree/settings.py:617 +#: InvenTree/settings.py:615 msgid "Hebrew" msgstr "Hebraisk" -#: InvenTree/settings.py:618 +#: InvenTree/settings.py:616 msgid "Hungarian" msgstr "Ungarsk" -#: InvenTree/settings.py:619 +#: InvenTree/settings.py:617 msgid "Italian" msgstr "Italiensk" -#: InvenTree/settings.py:620 +#: InvenTree/settings.py:618 msgid "Japanese" msgstr "Japansk" -#: InvenTree/settings.py:621 +#: InvenTree/settings.py:619 msgid "Korean" msgstr "Koreansk" -#: InvenTree/settings.py:622 +#: InvenTree/settings.py:620 msgid "Dutch" msgstr "Nederlandsk" -#: InvenTree/settings.py:623 +#: InvenTree/settings.py:621 msgid "Norwegian" msgstr "Norsk" -#: InvenTree/settings.py:624 +#: InvenTree/settings.py:622 msgid "Polish" msgstr "Polsk" -#: InvenTree/settings.py:625 +#: InvenTree/settings.py:623 msgid "Portuguese" msgstr "Portugisisk" -#: InvenTree/settings.py:626 +#: InvenTree/settings.py:624 msgid "Portuguese (Brazilian)" msgstr "Portugisisk (Brasilian)" -#: InvenTree/settings.py:627 +#: InvenTree/settings.py:625 msgid "Russian" msgstr "Russisk" -#: InvenTree/settings.py:628 +#: InvenTree/settings.py:626 msgid "Swedish" msgstr "Svensk" -#: InvenTree/settings.py:629 +#: InvenTree/settings.py:627 msgid "Thai" msgstr "Thailandsk" -#: InvenTree/settings.py:630 +#: InvenTree/settings.py:628 msgid "Turkish" msgstr "Tyrkisk" -#: InvenTree/settings.py:631 +#: InvenTree/settings.py:629 msgid "Vietnamese" msgstr "Vietnamesisk" -#: InvenTree/settings.py:632 +#: InvenTree/settings.py:630 msgid "Chinese" msgstr "Kinesisk" @@ -621,7 +625,7 @@ msgstr "Delt fra overordnet element" msgid "Split child item" msgstr "Delt fra underelement" -#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2080 +#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2084 msgid "Merged stock items" msgstr "Sammenslått lagervare" @@ -743,7 +747,7 @@ msgid "Build Order Reference" msgstr "Bygg ordrereferanse" #: build/models.py:166 order/models.py:240 order/models.py:623 -#: order/models.py:904 part/models.py:2610 +#: order/models.py:904 part/models.py:2617 #: part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 @@ -770,10 +774,10 @@ msgstr "Build order som denne build er tildelt til" #: build/models.py:191 build/templates/build/build_base.html:77 #: build/templates/build/detail.html:29 company/models.py:670 #: order/models.py:1001 order/models.py:1112 order/models.py:1113 -#: part/models.py:336 part/models.py:2139 part/models.py:2154 -#: part/models.py:2173 part/models.py:2191 part/models.py:2290 -#: part/models.py:2410 part/models.py:2500 part/models.py:2585 -#: part/models.py:2861 part/serializers.py:811 +#: part/models.py:343 part/models.py:2146 part/models.py:2161 +#: part/models.py:2180 part/models.py:2198 part/models.py:2297 +#: part/models.py:2417 part/models.py:2507 part/models.py:2592 +#: part/models.py:2868 part/serializers.py:813 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -796,11 +800,11 @@ msgstr "Build order som denne build er tildelt til" #: templates/js/translated/order.js:934 templates/js/translated/order.js:1387 #: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885 #: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507 -#: templates/js/translated/part.js:1134 templates/js/translated/part.js:1206 -#: templates/js/translated/part.js:1402 templates/js/translated/stock.js:582 -#: templates/js/translated/stock.js:747 templates/js/translated/stock.js:954 -#: templates/js/translated/stock.js:1696 templates/js/translated/stock.js:2495 -#: templates/js/translated/stock.js:2690 templates/js/translated/stock.js:2824 +#: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210 +#: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586 +#: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958 +#: templates/js/translated/stock.js:1700 templates/js/translated/stock.js:2504 +#: templates/js/translated/stock.js:2699 templates/js/translated/stock.js:2833 msgid "Part" msgstr "Del" @@ -858,7 +862,7 @@ msgid "Build status code" msgstr "Byggstatuskode" #: build/models.py:251 build/serializers.py:225 order/serializers.py:447 -#: stock/models.py:655 templates/js/translated/order.js:1247 +#: stock/models.py:662 templates/js/translated/order.js:1247 msgid "Batch Code" msgstr "Batch kode" @@ -866,7 +870,7 @@ msgstr "Batch kode" msgid "Batch code for this build output" msgstr "Batch kode for denne build output" -#: build/models.py:258 order/models.py:86 part/models.py:931 +#: build/models.py:258 order/models.py:86 part/models.py:938 #: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544 msgid "Creation Date" msgstr "Opprettelsesdato" @@ -899,7 +903,7 @@ msgstr "Brukeren som utstede denne prosjekt order" #: build/models.py:289 build/templates/build/build_base.html:190 #: build/templates/build/detail.html:115 order/models.py:100 #: order/templates/order/order_base.html:176 -#: order/templates/order/sales_order_base.html:183 part/models.py:935 +#: order/templates/order/sales_order_base.html:183 part/models.py:942 #: report/templates/report/inventree_build_order_base.html:158 #: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754 msgid "Responsible" @@ -912,7 +916,7 @@ msgstr "Bruker ansvarlig for denne prosjekt order" #: build/models.py:295 build/templates/build/detail.html:101 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:153 -#: part/templates/part/part_base.html:346 stock/models.py:649 +#: part/templates/part/part_base.html:346 stock/models.py:656 #: stock/templates/stock/item_base.html:205 msgid "External Link" msgstr "Ekstern link" @@ -978,8 +982,8 @@ msgid "Build to allocate parts" msgstr "Bygge for å tildele deler" #: build/models.py:1345 build/serializers.py:645 order/serializers.py:1015 -#: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 -#: stock/serializers.py:880 stock/templates/stock/item_base.html:10 +#: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:756 +#: stock/serializers.py:882 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:199 #: templates/js/translated/build.js:741 templates/js/translated/build.js:746 @@ -987,8 +991,8 @@ msgstr "Bygge for å tildele deler" #: templates/js/translated/order.js:104 templates/js/translated/order.js:2886 #: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193 #: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380 -#: templates/js/translated/stock.js:583 templates/js/translated/stock.js:748 -#: templates/js/translated/stock.js:2568 +#: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752 +#: templates/js/translated/stock.js:2577 msgid "Stock Item" msgstr "Lagervare" @@ -998,11 +1002,11 @@ msgstr "Kilde lagervare" #: build/models.py:1358 build/serializers.py:193 #: build/templates/build/build_base.html:82 -#: build/templates/build/detail.html:34 common/models.py:1678 +#: build/templates/build/detail.html:34 common/models.py:1697 #: company/templates/company/supplier_part.html:279 order/models.py:897 #: order/models.py:1423 order/serializers.py:1155 #: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40 -#: part/models.py:2601 part/templates/part/detail.html:937 +#: part/models.py:2608 part/templates/part/detail.html:937 #: part/templates/part/detail.html:1023 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 @@ -1025,11 +1029,11 @@ msgstr "Kilde lagervare" #: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207 #: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386 #: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037 -#: templates/js/translated/part.js:1034 templates/js/translated/part.js:2147 -#: templates/js/translated/part.js:2378 templates/js/translated/part.js:2412 -#: templates/js/translated/part.js:2490 templates/js/translated/stock.js:454 -#: templates/js/translated/stock.js:608 templates/js/translated/stock.js:778 -#: templates/js/translated/stock.js:2617 templates/js/translated/stock.js:2702 +#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2156 +#: templates/js/translated/part.js:2387 templates/js/translated/part.js:2421 +#: templates/js/translated/part.js:2499 templates/js/translated/stock.js:458 +#: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782 +#: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711 msgid "Quantity" msgstr "Antall" @@ -1071,8 +1075,8 @@ msgid "Enter quantity for build output" msgstr "Angi antall for build utgang" #: build/serializers.py:208 build/serializers.py:665 order/models.py:318 -#: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 -#: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 +#: order/serializers.py:287 order/serializers.py:442 part/serializers.py:544 +#: part/serializers.py:976 stock/models.py:484 stock/models.py:1251 #: stock/serializers.py:302 msgid "Quantity must be greater than zero" msgstr "Mengden må være større enn null" @@ -1087,7 +1091,7 @@ msgstr "" #: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159 #: stock/serializers.py:311 templates/js/translated/order.js:1258 -#: templates/js/translated/stock.js:267 templates/js/translated/stock.js:455 +#: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459 msgid "Serial Numbers" msgstr "Serienummer" @@ -1113,16 +1117,16 @@ msgstr "" #: build/serializers.py:366 order/serializers.py:428 order/serializers.py:532 #: stock/serializers.py:322 stock/serializers.py:453 stock/serializers.py:534 -#: stock/serializers.py:915 stock/serializers.py:1148 +#: stock/serializers.py:917 stock/serializers.py:1150 #: stock/templates/stock/item_base.html:390 #: templates/js/translated/barcode.js:436 #: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753 #: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285 #: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305 #: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394 -#: templates/js/translated/part.js:181 templates/js/translated/stock.js:584 -#: templates/js/translated/stock.js:749 templates/js/translated/stock.js:956 -#: templates/js/translated/stock.js:1850 templates/js/translated/stock.js:2509 +#: templates/js/translated/part.js:181 templates/js/translated/stock.js:588 +#: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960 +#: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518 msgid "Location" msgstr "Beliggenhet" @@ -1135,8 +1139,8 @@ msgstr "" #: order/serializers.py:465 stock/templates/stock/item_base.html:423 #: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505 #: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724 -#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1825 -#: templates/js/translated/stock.js:2586 templates/js/translated/stock.js:2718 +#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829 +#: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727 msgid "Status" msgstr "" @@ -1212,8 +1216,8 @@ msgstr "" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:577 build/serializers.py:622 part/models.py:2719 -#: part/models.py:2853 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726 +#: part/models.py:2860 msgid "BOM Item" msgstr "BOM varer" @@ -1229,7 +1233,7 @@ msgstr "" msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:651 stock/serializers.py:767 +#: build/serializers.py:651 stock/serializers.py:769 msgid "Item must be in stock" msgstr "Varen må være på lager" @@ -1367,7 +1371,7 @@ msgstr "" #: report/templates/report/inventree_build_order_base.html:125 #: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741 #: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552 -#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1038 +#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042 msgid "Target Date" msgstr "Måldato" @@ -1445,8 +1449,8 @@ msgstr "Tildelte deler" #: stock/templates/stock/item_base.html:170 #: templates/js/translated/build.js:1182 #: templates/js/translated/model_renderers.js:124 -#: templates/js/translated/stock.js:1022 templates/js/translated/stock.js:1839 -#: templates/js/translated/stock.js:2725 +#: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843 +#: templates/js/translated/stock.js:2734 #: templates/js/translated/table_filters.js:159 #: templates/js/translated/table_filters.js:250 msgid "Batch" @@ -1506,7 +1510,7 @@ msgstr "Bestill nødvendige deler" #: build/templates/build/detail.html:187 #: company/templates/company/detail.html:37 #: company/templates/company/detail.html:85 -#: part/templates/part/category.html:177 templates/js/translated/order.js:977 +#: part/templates/part/category.html:183 templates/js/translated/order.js:977 msgid "Order Parts" msgstr "Bestill deler" @@ -1559,12 +1563,12 @@ msgid "Delete outputs" msgstr "" #: build/templates/build/detail.html:267 -#: stock/templates/stock/location.html:197 templates/stock_table.html:27 +#: stock/templates/stock/location.html:202 templates/stock_table.html:27 msgid "Printing Actions" msgstr "" #: build/templates/build/detail.html:271 build/templates/build/detail.html:272 -#: stock/templates/stock/location.html:201 templates/stock_table.html:31 +#: stock/templates/stock/location.html:206 templates/stock_table.html:31 msgid "Print labels" msgstr "" @@ -1841,7 +1845,7 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "Kopier kategori parametermaler ved oppretting av en del" -#: common/models.py:951 part/models.py:2412 report/models.py:158 +#: common/models.py:951 part/models.py:2419 report/models.py:158 #: templates/js/translated/table_filters.js:38 #: templates/js/translated/table_filters.js:484 msgid "Template" @@ -1851,7 +1855,7 @@ msgstr "Mal" msgid "Parts are templates by default" msgstr "Deler er maler som standard" -#: common/models.py:958 part/models.py:887 templates/js/translated/bom.js:1448 +#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448 #: templates/js/translated/table_filters.js:176 #: templates/js/translated/table_filters.js:447 msgid "Assembly" @@ -1861,7 +1865,7 @@ msgstr "Montering" msgid "Parts can be assembled from other components by default" msgstr "Deler kan settes sammen fra andre komponenter som standard" -#: common/models.py:965 part/models.py:893 +#: common/models.py:965 part/models.py:900 #: templates/js/translated/table_filters.js:455 msgid "Component" msgstr "Komponent" @@ -1870,7 +1874,7 @@ msgstr "Komponent" msgid "Parts can be used as sub-components by default" msgstr "Deler kan bli brukt som underkomponenter som standard" -#: common/models.py:972 part/models.py:904 +#: common/models.py:972 part/models.py:911 msgid "Purchaseable" msgstr "Kjøpbar" @@ -1878,7 +1882,7 @@ msgstr "Kjøpbar" msgid "Parts are purchaseable by default" msgstr "Deler er kjøpbare som standard" -#: common/models.py:979 part/models.py:909 +#: common/models.py:979 part/models.py:916 #: templates/js/translated/table_filters.js:476 msgid "Salable" msgstr "Salgbar" @@ -1887,7 +1891,7 @@ msgstr "Salgbar" msgid "Parts are salable by default" msgstr "Deler er salgbare som standard" -#: common/models.py:986 part/models.py:899 +#: common/models.py:986 part/models.py:906 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:108 #: templates/js/translated/table_filters.js:488 @@ -1898,7 +1902,7 @@ msgstr "Sporbar" msgid "Parts are trackable by default" msgstr "Deler er sporbare som standard" -#: common/models.py:993 part/models.py:919 +#: common/models.py:993 part/models.py:926 #: part/templates/part/part_base.html:151 #: templates/js/translated/table_filters.js:42 #: templates/js/translated/table_filters.js:492 @@ -1982,608 +1986,632 @@ msgid "Format to display the part name" msgstr "" #: common/models.py:1074 -msgid "Enable label printing" +msgid "Part Category Default Icon" msgstr "" #: common/models.py:1075 -msgid "Enable label printing from the web interface" +msgid "Part category default icon (empty means no icon)" +msgstr "" + +#: common/models.py:1080 +msgid "Enable label printing" msgstr "" #: common/models.py:1081 +msgid "Enable label printing from the web interface" +msgstr "" + +#: common/models.py:1087 msgid "Label Image DPI" msgstr "" -#: common/models.py:1082 +#: common/models.py:1088 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/models.py:1091 +#: common/models.py:1097 msgid "Enable Reports" msgstr "" -#: common/models.py:1092 +#: common/models.py:1098 msgid "Enable generation of reports" msgstr "" -#: common/models.py:1098 templates/stats.html:25 +#: common/models.py:1104 templates/stats.html:25 msgid "Debug Mode" msgstr "" -#: common/models.py:1099 +#: common/models.py:1105 msgid "Generate reports in debug mode (HTML output)" msgstr "" -#: common/models.py:1105 +#: common/models.py:1111 msgid "Page Size" msgstr "" -#: common/models.py:1106 +#: common/models.py:1112 msgid "Default page size for PDF reports" msgstr "" -#: common/models.py:1116 +#: common/models.py:1122 msgid "Enable Test Reports" msgstr "" -#: common/models.py:1117 +#: common/models.py:1123 msgid "Enable generation of test reports" msgstr "" -#: common/models.py:1123 +#: common/models.py:1129 msgid "Attach Test Reports" msgstr "" -#: common/models.py:1124 +#: common/models.py:1130 msgid "When printing a Test Report, attach a copy of the Test Report to the associated Stock Item" msgstr "" -#: common/models.py:1130 +#: common/models.py:1136 msgid "Batch Code Template" msgstr "" -#: common/models.py:1131 +#: common/models.py:1137 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/models.py:1136 +#: common/models.py:1142 msgid "Stock Expiry" msgstr "" -#: common/models.py:1137 +#: common/models.py:1143 msgid "Enable stock expiry functionality" msgstr "" -#: common/models.py:1143 +#: common/models.py:1149 msgid "Sell Expired Stock" msgstr "" -#: common/models.py:1144 +#: common/models.py:1150 msgid "Allow sale of expired stock" msgstr "" -#: common/models.py:1150 +#: common/models.py:1156 msgid "Stock Stale Time" msgstr "" -#: common/models.py:1151 +#: common/models.py:1157 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/models.py:1153 +#: common/models.py:1159 msgid "days" msgstr "" -#: common/models.py:1158 +#: common/models.py:1164 msgid "Build Expired Stock" msgstr "" -#: common/models.py:1159 +#: common/models.py:1165 msgid "Allow building with expired stock" msgstr "" -#: common/models.py:1165 +#: common/models.py:1171 msgid "Stock Ownership Control" msgstr "" -#: common/models.py:1166 +#: common/models.py:1172 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/models.py:1172 -msgid "Build Order Reference Pattern" -msgstr "" - -#: common/models.py:1173 -msgid "Required pattern for generating Build Order reference field" +#: common/models.py:1178 +msgid "Stock Location Default Icon" msgstr "" #: common/models.py:1179 +msgid "Stock location default icon (empty means no icon)" +msgstr "" + +#: common/models.py:1184 +msgid "Build Order Reference Pattern" +msgstr "" + +#: common/models.py:1185 +msgid "Required pattern for generating Build Order reference field" +msgstr "" + +#: common/models.py:1191 msgid "Sales Order Reference Pattern" msgstr "" -#: common/models.py:1180 +#: common/models.py:1192 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/models.py:1186 +#: common/models.py:1198 msgid "Sales Order Default Shipment" msgstr "" -#: common/models.py:1187 +#: common/models.py:1199 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/models.py:1193 +#: common/models.py:1205 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/models.py:1194 +#: common/models.py:1206 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/models.py:1201 +#: common/models.py:1213 msgid "Enable password forgot" msgstr "Aktiver passord glemt" -#: common/models.py:1202 +#: common/models.py:1214 msgid "Enable password forgot function on the login pages" msgstr "Ativer funskjon for glemt passord på innloggingssidene" -#: common/models.py:1208 +#: common/models.py:1220 msgid "Enable registration" msgstr "Aktiver registrering" -#: common/models.py:1209 +#: common/models.py:1221 msgid "Enable self-registration for users on the login pages" msgstr "Aktiver egenregistrerting for brukerer på påloggingssidene" -#: common/models.py:1215 +#: common/models.py:1227 msgid "Enable SSO" msgstr "Aktiver SSO" -#: common/models.py:1216 +#: common/models.py:1228 msgid "Enable SSO on the login pages" msgstr "Aktiver SSO på innloggingssidene" -#: common/models.py:1222 +#: common/models.py:1234 msgid "Email required" msgstr "E-postadresse kreves" -#: common/models.py:1223 +#: common/models.py:1235 msgid "Require user to supply mail on signup" msgstr "Krevt at brukeren angi e-post ved registrering" -#: common/models.py:1229 +#: common/models.py:1241 msgid "Auto-fill SSO users" msgstr "Auto-utfyll SSO brukere" -#: common/models.py:1230 +#: common/models.py:1242 msgid "Automatically fill out user-details from SSO account-data" msgstr "Fyll automatisk ut brukeropplysninger fra SSO kontodata" -#: common/models.py:1236 +#: common/models.py:1248 msgid "Mail twice" msgstr "E-post to ganger" -#: common/models.py:1237 +#: common/models.py:1249 msgid "On signup ask users twice for their mail" msgstr "Ved registrering spør brukere to ganger for e-posten" -#: common/models.py:1243 +#: common/models.py:1255 msgid "Password twice" msgstr "Passord to ganger" -#: common/models.py:1244 +#: common/models.py:1256 msgid "On signup ask users twice for their password" msgstr "Ved registrerting, spør brukere to ganger for passord" -#: common/models.py:1250 +#: common/models.py:1262 msgid "Group on signup" msgstr "" -#: common/models.py:1251 +#: common/models.py:1263 msgid "Group to which new users are assigned on registration" msgstr "Gruppe for hvilke nye brukere som er tilknyttet registrering" -#: common/models.py:1257 +#: common/models.py:1269 msgid "Enforce MFA" msgstr "" -#: common/models.py:1258 +#: common/models.py:1270 msgid "Users must use multifactor security." msgstr "Brukere må bruke flerfaktorsikkerhet." -#: common/models.py:1264 +#: common/models.py:1276 msgid "Check plugins on startup" msgstr "" -#: common/models.py:1265 +#: common/models.py:1277 msgid "Check that all plugins are installed on startup - enable in container enviroments" msgstr "" -#: common/models.py:1273 +#: common/models.py:1284 +msgid "Check plugin signatures" +msgstr "" + +#: common/models.py:1285 +msgid "Check and show signatures for plugins" +msgstr "" + +#: common/models.py:1292 msgid "Enable URL integration" msgstr "Aktiver URL integrering" -#: common/models.py:1274 +#: common/models.py:1293 msgid "Enable plugins to add URL routes" msgstr "" -#: common/models.py:1281 +#: common/models.py:1300 msgid "Enable navigation integration" msgstr "Aktiver navigasjonsintegrering" -#: common/models.py:1282 +#: common/models.py:1301 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/models.py:1289 +#: common/models.py:1308 msgid "Enable app integration" msgstr "Aktiver app integrasjon" -#: common/models.py:1290 +#: common/models.py:1309 msgid "Enable plugins to add apps" msgstr "" -#: common/models.py:1297 +#: common/models.py:1316 msgid "Enable schedule integration" msgstr "" -#: common/models.py:1298 +#: common/models.py:1317 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/models.py:1305 +#: common/models.py:1324 msgid "Enable event integration" msgstr "" -#: common/models.py:1306 +#: common/models.py:1325 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:1323 common/models.py:1639 +#: common/models.py:1342 common/models.py:1658 msgid "Settings key (must be unique - case insensitive" msgstr "" -#: common/models.py:1345 +#: common/models.py:1364 msgid "Show subscribed parts" msgstr "Vis abbonerte deler" -#: common/models.py:1346 +#: common/models.py:1365 msgid "Show subscribed parts on the homepage" msgstr "Vis abbonerte deler på hjemmesiden" -#: common/models.py:1352 +#: common/models.py:1371 msgid "Show subscribed categories" msgstr "Vis abbonerte kategorier" -#: common/models.py:1353 +#: common/models.py:1372 msgid "Show subscribed part categories on the homepage" msgstr "Vis abbonerte delkatekorier på hjemmesiden" -#: common/models.py:1359 +#: common/models.py:1378 msgid "Show latest parts" msgstr "Vis nyeste deler" -#: common/models.py:1360 +#: common/models.py:1379 msgid "Show latest parts on the homepage" msgstr "Vis nyeste deler på hjemmesiden" -#: common/models.py:1366 +#: common/models.py:1385 msgid "Recent Part Count" msgstr "Antall nylig deler" -#: common/models.py:1367 +#: common/models.py:1386 msgid "Number of recent parts to display on index page" msgstr "" -#: common/models.py:1373 +#: common/models.py:1392 msgid "Show unvalidated BOMs" msgstr "Vis uvaliderte BOMs" -#: common/models.py:1374 +#: common/models.py:1393 msgid "Show BOMs that await validation on the homepage" msgstr "Vis BOMs som venter validering på hjemmesiden" -#: common/models.py:1380 +#: common/models.py:1399 msgid "Show recent stock changes" msgstr "Vis nylige lagerendringer" -#: common/models.py:1381 +#: common/models.py:1400 msgid "Show recently changed stock items on the homepage" msgstr "Vis nylig endret lagervarer på hjemmesiden" -#: common/models.py:1387 +#: common/models.py:1406 msgid "Recent Stock Count" msgstr "Siste lagertelling" -#: common/models.py:1388 +#: common/models.py:1407 msgid "Number of recent stock items to display on index page" msgstr "Antall nylige lagervarer som skal vises på indeksside" -#: common/models.py:1394 +#: common/models.py:1413 msgid "Show low stock" msgstr "Vis lav lager" -#: common/models.py:1395 +#: common/models.py:1414 msgid "Show low stock items on the homepage" msgstr "Vis lav lagervarer på hjemmesiden" -#: common/models.py:1401 +#: common/models.py:1420 msgid "Show depleted stock" msgstr "Vis tom lagervarer" -#: common/models.py:1402 +#: common/models.py:1421 msgid "Show depleted stock items on the homepage" msgstr "" -#: common/models.py:1408 +#: common/models.py:1427 msgid "Show needed stock" msgstr "" -#: common/models.py:1409 +#: common/models.py:1428 msgid "Show stock items needed for builds on the homepage" msgstr "" -#: common/models.py:1415 +#: common/models.py:1434 msgid "Show expired stock" msgstr "" -#: common/models.py:1416 +#: common/models.py:1435 msgid "Show expired stock items on the homepage" msgstr "" -#: common/models.py:1422 +#: common/models.py:1441 msgid "Show stale stock" msgstr "" -#: common/models.py:1423 +#: common/models.py:1442 msgid "Show stale stock items on the homepage" msgstr "" -#: common/models.py:1429 +#: common/models.py:1448 msgid "Show pending builds" msgstr "" -#: common/models.py:1430 +#: common/models.py:1449 msgid "Show pending builds on the homepage" msgstr "" -#: common/models.py:1436 +#: common/models.py:1455 msgid "Show overdue builds" msgstr "" -#: common/models.py:1437 +#: common/models.py:1456 msgid "Show overdue builds on the homepage" msgstr "" -#: common/models.py:1443 +#: common/models.py:1462 msgid "Show outstanding POs" msgstr "" -#: common/models.py:1444 +#: common/models.py:1463 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:1450 +#: common/models.py:1469 msgid "Show overdue POs" msgstr "" -#: common/models.py:1451 +#: common/models.py:1470 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:1457 +#: common/models.py:1476 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:1458 +#: common/models.py:1477 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:1464 +#: common/models.py:1483 msgid "Show overdue SOs" msgstr "" -#: common/models.py:1465 +#: common/models.py:1484 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:1471 +#: common/models.py:1490 msgid "Inline label display" msgstr "" -#: common/models.py:1472 +#: common/models.py:1491 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1478 +#: common/models.py:1497 msgid "Inline report display" msgstr "" -#: common/models.py:1479 +#: common/models.py:1498 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1485 +#: common/models.py:1504 msgid "Search Parts" msgstr "" -#: common/models.py:1486 +#: common/models.py:1505 msgid "Display parts in search preview window" msgstr "" -#: common/models.py:1492 +#: common/models.py:1511 msgid "Seach Supplier Parts" msgstr "" -#: common/models.py:1493 +#: common/models.py:1512 msgid "Display supplier parts in search preview window" msgstr "" -#: common/models.py:1499 +#: common/models.py:1518 msgid "Search Manufacturer Parts" msgstr "" -#: common/models.py:1500 +#: common/models.py:1519 msgid "Display manufacturer parts in search preview window" msgstr "" -#: common/models.py:1506 +#: common/models.py:1525 msgid "Hide Inactive Parts" msgstr "" -#: common/models.py:1507 +#: common/models.py:1526 msgid "Excluded inactive parts from search preview window" msgstr "" -#: common/models.py:1513 +#: common/models.py:1532 msgid "Search Categories" msgstr "" -#: common/models.py:1514 +#: common/models.py:1533 msgid "Display part categories in search preview window" msgstr "" -#: common/models.py:1520 +#: common/models.py:1539 msgid "Search Stock" msgstr "" -#: common/models.py:1521 +#: common/models.py:1540 msgid "Display stock items in search preview window" msgstr "" -#: common/models.py:1527 +#: common/models.py:1546 msgid "Hide Unavailable Stock Items" msgstr "" -#: common/models.py:1528 +#: common/models.py:1547 msgid "Exclude stock items which are not available from the search preview window" msgstr "" -#: common/models.py:1534 +#: common/models.py:1553 msgid "Search Locations" msgstr "" -#: common/models.py:1535 +#: common/models.py:1554 msgid "Display stock locations in search preview window" msgstr "" -#: common/models.py:1541 +#: common/models.py:1560 msgid "Search Companies" msgstr "" -#: common/models.py:1542 +#: common/models.py:1561 msgid "Display companies in search preview window" msgstr "" -#: common/models.py:1548 +#: common/models.py:1567 msgid "Search Purchase Orders" msgstr "" -#: common/models.py:1549 +#: common/models.py:1568 msgid "Display purchase orders in search preview window" msgstr "" -#: common/models.py:1555 +#: common/models.py:1574 msgid "Exclude Inactive Purchase Orders" msgstr "" -#: common/models.py:1556 +#: common/models.py:1575 msgid "Exclude inactive purchase orders from search preview window" msgstr "" -#: common/models.py:1562 +#: common/models.py:1581 msgid "Search Sales Orders" msgstr "" -#: common/models.py:1563 +#: common/models.py:1582 msgid "Display sales orders in search preview window" msgstr "" -#: common/models.py:1569 +#: common/models.py:1588 msgid "Exclude Inactive Sales Orders" msgstr "" -#: common/models.py:1570 +#: common/models.py:1589 msgid "Exclude inactive sales orders from search preview window" msgstr "" -#: common/models.py:1576 +#: common/models.py:1595 msgid "Search Preview Results" msgstr "" -#: common/models.py:1577 +#: common/models.py:1596 msgid "Number of results to show in each section of the search preview window" msgstr "" -#: common/models.py:1583 +#: common/models.py:1602 msgid "Show Quantity in Forms" msgstr "" -#: common/models.py:1584 +#: common/models.py:1603 msgid "Display available part quantity in some forms" msgstr "" -#: common/models.py:1590 +#: common/models.py:1609 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:1591 +#: common/models.py:1610 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:1597 +#: common/models.py:1616 msgid "Fixed Navbar" msgstr "" -#: common/models.py:1598 +#: common/models.py:1617 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:1604 +#: common/models.py:1623 msgid "Date Format" msgstr "" -#: common/models.py:1605 +#: common/models.py:1624 msgid "Preferred format for displaying dates" msgstr "" -#: common/models.py:1619 part/templates/part/detail.html:41 +#: common/models.py:1638 part/templates/part/detail.html:41 msgid "Part Scheduling" msgstr "" -#: common/models.py:1620 +#: common/models.py:1639 msgid "Display part scheduling information" msgstr "" -#: common/models.py:1679 +#: common/models.py:1698 msgid "Price break quantity" msgstr "" -#: common/models.py:1686 company/serializers.py:366 +#: common/models.py:1705 company/serializers.py:366 #: company/templates/company/supplier_part.html:284 order/models.py:938 -#: templates/js/translated/part.js:1065 templates/js/translated/part.js:2152 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2161 msgid "Price" msgstr "" -#: common/models.py:1687 +#: common/models.py:1706 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:1847 common/models.py:2025 +#: common/models.py:1866 common/models.py:2044 msgid "Endpoint" msgstr "" -#: common/models.py:1848 +#: common/models.py:1867 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:1857 +#: common/models.py:1876 msgid "Name for this webhook" msgstr "" -#: common/models.py:1862 part/models.py:914 plugin/models.py:99 +#: common/models.py:1881 part/models.py:921 plugin/models.py:100 #: templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:104 #: templates/js/translated/table_filters.js:316 @@ -2591,67 +2619,67 @@ msgstr "" msgid "Active" msgstr "Aktiv" -#: common/models.py:1863 +#: common/models.py:1882 msgid "Is this webhook active" msgstr "" -#: common/models.py:1877 +#: common/models.py:1896 msgid "Token" msgstr "Sjetong" -#: common/models.py:1878 +#: common/models.py:1897 msgid "Token for access" msgstr "Nøkkel for tilgang" -#: common/models.py:1885 +#: common/models.py:1904 msgid "Secret" msgstr "Hemmelig" -#: common/models.py:1886 +#: common/models.py:1905 msgid "Shared secret for HMAC" msgstr "Delt hemmlighet for HMAC" -#: common/models.py:1992 +#: common/models.py:2011 msgid "Message ID" msgstr "Melding ID" -#: common/models.py:1993 +#: common/models.py:2012 msgid "Unique identifier for this message" msgstr "Unik Id for denne meldingen" -#: common/models.py:2001 +#: common/models.py:2020 msgid "Host" msgstr "Vert" -#: common/models.py:2002 +#: common/models.py:2021 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2009 +#: common/models.py:2028 msgid "Header" msgstr "Tittel" -#: common/models.py:2010 +#: common/models.py:2029 msgid "Header of this message" msgstr "Overskrift for denne meldingen" -#: common/models.py:2016 +#: common/models.py:2035 msgid "Body" msgstr "Brødtekst" -#: common/models.py:2017 +#: common/models.py:2036 msgid "Body of this message" msgstr "" -#: common/models.py:2026 +#: common/models.py:2045 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2031 +#: common/models.py:2050 msgid "Worked on" msgstr "Arbeidet med" -#: common/models.py:2032 +#: common/models.py:2051 msgid "Was the work on this message finished?" msgstr "Var arbeidet med denne meldingen ferdig?" @@ -2758,7 +2786,7 @@ msgstr "" msgid "Link to external company information" msgstr "Link til ekstern bedriftsinformasjon" -#: company/models.py:135 part/models.py:808 +#: company/models.py:135 part/models.py:815 msgid "Image" msgstr "Bilde" @@ -2791,8 +2819,8 @@ msgid "Does this company manufacture parts?" msgstr "Produserer dette firmaet deler?" #: company/models.py:148 company/serializers.py:372 -#: company/templates/company/company_base.html:106 part/serializers.py:151 -#: part/serializers.py:182 stock/serializers.py:180 +#: company/templates/company/company_base.html:106 part/serializers.py:153 +#: part/serializers.py:184 stock/serializers.py:180 msgid "Currency" msgstr "Valuta" @@ -2800,7 +2828,7 @@ msgstr "Valuta" msgid "Default currency used for this company" msgstr "Standardvaluta brukt for dette firmaet" -#: company/models.py:248 company/models.py:481 stock/models.py:591 +#: company/models.py:248 company/models.py:481 stock/models.py:598 #: stock/serializers.py:87 stock/templates/stock/item_base.html:148 #: templates/js/translated/bom.js:543 msgid "Base Part" @@ -2832,7 +2860,7 @@ msgstr "" #: templates/js/translated/company.js:497 #: templates/js/translated/company.js:649 #: templates/js/translated/company.js:937 templates/js/translated/order.js:1971 -#: templates/js/translated/part.js:247 templates/js/translated/part.js:1023 +#: templates/js/translated/part.js:247 templates/js/translated/part.js:1027 msgid "MPN" msgstr "" @@ -2861,9 +2889,9 @@ msgstr "" #: company/models.py:365 #: report/templates/report/inventree_test_report_base.html:95 -#: stock/models.py:2088 templates/js/translated/company.js:546 -#: templates/js/translated/company.js:764 templates/js/translated/part.js:845 -#: templates/js/translated/stock.js:1356 +#: stock/models.py:2095 templates/js/translated/company.js:546 +#: templates/js/translated/company.js:764 templates/js/translated/part.js:849 +#: templates/js/translated/stock.js:1360 msgid "Value" msgstr "" @@ -2871,10 +2899,10 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:372 part/models.py:881 part/models.py:2379 +#: company/models.py:372 part/models.py:888 part/models.py:2386 #: part/templates/part/part_base.html:280 #: templates/InvenTree/settings/settings.html:352 -#: templates/js/translated/company.js:770 templates/js/translated/part.js:851 +#: templates/js/translated/company.js:770 templates/js/translated/part.js:855 msgid "Units" msgstr "" @@ -2894,7 +2922,7 @@ msgstr "" #: templates/js/translated/company.js:268 #: templates/js/translated/company.js:401 #: templates/js/translated/company.js:893 templates/js/translated/order.js:1707 -#: templates/js/translated/part.js:217 templates/js/translated/part.js:991 +#: templates/js/translated/part.js:217 templates/js/translated/part.js:995 #: templates/js/translated/table_filters.js:423 msgid "Supplier" msgstr "" @@ -2906,7 +2934,7 @@ msgstr "" #: company/models.py:497 company/templates/company/supplier_part.html:118 #: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267 #: templates/js/translated/order.js:1958 templates/js/translated/part.js:228 -#: templates/js/translated/part.js:1009 +#: templates/js/translated/part.js:1013 msgid "SKU" msgstr "" @@ -2927,23 +2955,23 @@ msgid "Supplier part description" msgstr "" #: company/models.py:522 company/templates/company/supplier_part.html:146 -#: part/models.py:2613 part/templates/part/upload_bom.html:59 +#: part/models.py:2620 part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401 msgid "Note" msgstr "" -#: company/models.py:526 part/models.py:1735 +#: company/models.py:526 part/models.py:1742 msgid "base cost" msgstr "" -#: company/models.py:526 part/models.py:1735 +#: company/models.py:526 part/models.py:1742 msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:528 company/templates/company/supplier_part.html:139 -#: stock/models.py:617 stock/templates/stock/item_base.html:245 -#: templates/js/translated/company.js:969 templates/js/translated/stock.js:1972 +#: stock/models.py:624 stock/templates/stock/item_base.html:245 +#: templates/js/translated/company.js:969 templates/js/translated/stock.js:1976 msgid "Packaging" msgstr "" @@ -2951,7 +2979,7 @@ msgstr "" msgid "Part packaging" msgstr "" -#: company/models.py:530 part/models.py:1737 +#: company/models.py:530 part/models.py:1744 msgid "multiple" msgstr "" @@ -2964,7 +2992,7 @@ msgstr "" #: templates/email/low_stock_notification.html:18 #: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789 #: templates/js/translated/build.js:2645 templates/js/translated/company.js:979 -#: templates/js/translated/part.js:596 templates/js/translated/part.js:599 +#: templates/js/translated/part.js:600 templates/js/translated/part.js:603 #: templates/js/translated/table_filters.js:186 msgid "Available" msgstr "" @@ -3037,12 +3065,12 @@ msgid "Download image from URL" msgstr "Last ned bilde fra URL" #: company/templates/company/company_base.html:86 order/models.py:637 -#: order/templates/order/sales_order_base.html:116 stock/models.py:636 -#: stock/models.py:637 stock/serializers.py:809 +#: order/templates/order/sales_order_base.html:116 stock/models.py:643 +#: stock/models.py:644 stock/serializers.py:811 #: stock/templates/stock/item_base.html:401 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:393 templates/js/translated/order.js:2513 -#: templates/js/translated/stock.js:2550 +#: templates/js/translated/stock.js:2559 #: templates/js/translated/table_filters.js:427 msgid "Customer" msgstr "Kunde" @@ -3083,7 +3111,7 @@ msgstr "Ny leverandørdel" #: company/templates/company/detail.html:36 #: company/templates/company/detail.html:84 -#: part/templates/part/category.html:176 +#: part/templates/part/category.html:182 msgid "Order parts" msgstr "Bestill deler" @@ -3231,7 +3259,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:170 #: part/templates/part/detail.html:186 #: templates/InvenTree/settings/category.html:12 -#: templates/InvenTree/settings/part.html:66 +#: templates/InvenTree/settings/part.html:68 msgid "New Parameter" msgstr "" @@ -3261,10 +3289,10 @@ msgid "Assigned Stock Items" msgstr "Tildelt lagervarer" #: company/templates/company/supplier_part.html:7 -#: company/templates/company/supplier_part.html:24 stock/models.py:600 +#: company/templates/company/supplier_part.html:24 stock/models.py:607 #: stock/templates/stock/item_base.html:238 #: templates/js/translated/company.js:909 templates/js/translated/order.js:935 -#: templates/js/translated/stock.js:1929 +#: templates/js/translated/stock.js:1933 msgid "Supplier Part" msgstr "" @@ -3308,13 +3336,13 @@ msgid "Supplier Part Stock" msgstr "" #: company/templates/company/supplier_part.html:168 -#: part/templates/part/detail.html:24 stock/templates/stock/location.html:176 +#: part/templates/part/detail.html:24 stock/templates/stock/location.html:181 msgid "Create new stock item" msgstr "" #: company/templates/company/supplier_part.html:169 -#: part/templates/part/detail.html:25 stock/templates/stock/location.html:177 -#: templates/js/translated/stock.js:431 +#: part/templates/part/detail.html:25 stock/templates/stock/location.html:182 +#: templates/js/translated/stock.js:435 msgid "New Stock Item" msgstr "" @@ -3330,7 +3358,7 @@ msgstr "" #: company/templates/company/supplier_part.html:212 #: company/templates/company/supplier_part.html:326 -#: part/templates/part/prices.html:276 templates/js/translated/part.js:2224 +#: part/templates/part/prices.html:276 templates/js/translated/part.js:2233 msgid "Add Price Break" msgstr "" @@ -3339,12 +3367,12 @@ msgid "No price break information found" msgstr "" #: company/templates/company/supplier_part.html:252 -#: templates/js/translated/part.js:2234 +#: templates/js/translated/part.js:2243 msgid "Delete Price Break" msgstr "" #: company/templates/company/supplier_part.html:266 -#: templates/js/translated/part.js:2248 +#: templates/js/translated/part.js:2257 msgid "Edit Price Break" msgstr "" @@ -3366,13 +3394,13 @@ msgstr "" #: company/templates/company/supplier_part_navbar.html:15 #: part/templates/part/part_sidebar.html:14 -#: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:19 +#: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:24 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:151 #: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/bom.js:555 templates/js/translated/part.js:747 -#: templates/js/translated/part.js:1295 templates/js/translated/part.js:1456 -#: templates/js/translated/stock.js:955 templates/js/translated/stock.js:1750 +#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751 +#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460 +#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754 #: templates/navbar.html:31 msgid "Stock" msgstr "" @@ -3392,14 +3420,14 @@ msgid "Pricing" msgstr "" #: company/templates/company/supplier_part_sidebar.html:5 -#: part/templates/part/category.html:197 +#: part/templates/part/category.html:203 #: part/templates/part/category_sidebar.html:17 -#: stock/templates/stock/location.html:147 -#: stock/templates/stock/location.html:161 -#: stock/templates/stock/location.html:173 +#: stock/templates/stock/location.html:152 +#: stock/templates/stock/location.html:166 +#: stock/templates/stock/location.html:178 #: stock/templates/stock/location_sidebar.html:7 #: templates/InvenTree/search.html:153 templates/js/translated/search.js:223 -#: templates/js/translated/stock.js:2427 users/models.py:40 +#: templates/js/translated/stock.js:2436 users/models.py:40 msgid "Stock Items" msgstr "" @@ -3656,8 +3684,8 @@ msgstr "" #: stock/templates/stock/item_base.html:184 #: templates/email/overdue_purchase_order.html:15 #: templates/js/translated/order.js:936 templates/js/translated/order.js:1691 -#: templates/js/translated/part.js:968 templates/js/translated/stock.js:1909 -#: templates/js/translated/stock.js:2531 +#: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913 +#: templates/js/translated/stock.js:2540 msgid "Purchase Order" msgstr "" @@ -3667,7 +3695,7 @@ msgstr "" #: order/models.py:1009 order/templates/order/order_base.html:169 #: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073 -#: templates/js/translated/part.js:1060 templates/js/translated/part.js:1087 +#: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091 #: templates/js/translated/table_filters.js:338 msgid "Received" msgstr "" @@ -3676,9 +3704,9 @@ msgstr "" msgid "Number of items received" msgstr "" -#: order/models.py:1017 part/templates/part/prices.html:181 stock/models.py:727 +#: order/models.py:1017 part/templates/part/prices.html:181 stock/models.py:734 #: stock/serializers.py:171 stock/templates/stock/item_base.html:191 -#: templates/js/translated/stock.js:1960 +#: templates/js/translated/stock.js:1964 msgid "Purchase Price" msgstr "" @@ -4066,8 +4094,8 @@ msgstr "" #: templates/js/translated/bom.js:77 templates/js/translated/build.js:431 #: templates/js/translated/build.js:583 templates/js/translated/build.js:1974 #: templates/js/translated/order.js:884 templates/js/translated/order.js:1337 -#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:621 -#: templates/js/translated/stock.js:789 +#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625 +#: templates/js/translated/stock.js:793 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "" @@ -4261,8 +4289,8 @@ msgstr "" msgid "This field is required" msgstr "" -#: part/bom.py:127 part/models.py:98 part/models.py:817 -#: part/templates/part/category.html:108 part/templates/part/part_base.html:330 +#: part/bom.py:127 part/models.py:98 part/models.py:824 +#: part/templates/part/category.html:114 part/templates/part/part_base.html:330 msgid "Default Location" msgstr "" @@ -4276,9 +4304,9 @@ msgid "Available Stock" msgstr "" #: part/bom.py:130 part/templates/part/part_base.html:207 -#: templates/js/translated/bom.js:947 templates/js/translated/part.js:586 -#: templates/js/translated/part.js:606 templates/js/translated/part.js:1298 -#: templates/js/translated/part.js:1470 templates/js/translated/part.js:1486 +#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590 +#: templates/js/translated/part.js:610 templates/js/translated/part.js:1302 +#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "" @@ -4299,516 +4327,524 @@ msgstr "" msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:115 part/models.py:2455 part/templates/part/category.html:15 +#: part/models.py:107 stock/models.py:84 +msgid "Icon" +msgstr "" + +#: part/models.py:108 stock/models.py:85 +msgid "Icon (optional)" +msgstr "" + +#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" -#: part/models.py:116 part/templates/part/category.html:128 +#: part/models.py:123 part/templates/part/category.html:134 #: templates/InvenTree/search.html:95 templates/js/translated/search.js:198 #: users/models.py:37 msgid "Part Categories" msgstr "" -#: part/models.py:337 part/templates/part/cat_link.html:3 -#: part/templates/part/category.html:17 part/templates/part/category.html:133 -#: part/templates/part/category.html:153 +#: part/models.py:344 part/templates/part/cat_link.html:3 +#: part/templates/part/category.html:23 part/templates/part/category.html:139 +#: part/templates/part/category.html:159 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82 #: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:1946 templates/js/translated/search.js:144 +#: templates/js/translated/part.js:1955 templates/js/translated/search.js:144 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "" -#: part/models.py:422 +#: part/models.py:429 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:492 part/models.py:504 +#: part/models.py:499 part/models.py:511 #, python-brace-format msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)" msgstr "" -#: part/models.py:621 +#: part/models.py:628 msgid "Next available serial numbers are" msgstr "" -#: part/models.py:625 +#: part/models.py:632 msgid "Next available serial number is" msgstr "" -#: part/models.py:630 +#: part/models.py:637 msgid "Most recent serial number is" msgstr "" -#: part/models.py:711 +#: part/models.py:718 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:738 part/models.py:2509 +#: part/models.py:745 part/models.py:2516 msgid "Part name" msgstr "" -#: part/models.py:745 +#: part/models.py:752 msgid "Is Template" msgstr "" -#: part/models.py:746 +#: part/models.py:753 msgid "Is this part a template part?" msgstr "" -#: part/models.py:756 +#: part/models.py:763 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:757 +#: part/models.py:764 msgid "Variant Of" msgstr "" -#: part/models.py:763 +#: part/models.py:770 msgid "Part description" msgstr "" -#: part/models.py:768 part/templates/part/category.html:86 +#: part/models.py:775 part/templates/part/category.html:92 #: part/templates/part/part_base.html:294 msgid "Keywords" msgstr "" -#: part/models.py:769 +#: part/models.py:776 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:776 part/models.py:2211 part/models.py:2454 +#: part/models.py:783 part/models.py:2218 part/models.py:2461 #: part/templates/part/part_base.html:257 #: templates/InvenTree/settings/settings.html:232 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1438 templates/js/translated/part.js:1664 +#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1668 msgid "Category" msgstr "" -#: part/models.py:777 +#: part/models.py:784 msgid "Part category" msgstr "" -#: part/models.py:782 part/templates/part/part_base.html:266 -#: templates/js/translated/part.js:735 templates/js/translated/part.js:1391 -#: templates/js/translated/stock.js:1722 +#: part/models.py:789 part/templates/part/part_base.html:266 +#: templates/js/translated/part.js:739 templates/js/translated/part.js:1395 +#: templates/js/translated/stock.js:1726 msgid "IPN" msgstr "" -#: part/models.py:783 +#: part/models.py:790 msgid "Internal Part Number" msgstr "" -#: part/models.py:789 +#: part/models.py:796 msgid "Part revision or version number" msgstr "" -#: part/models.py:790 part/templates/part/part_base.html:273 -#: report/models.py:171 templates/js/translated/part.js:739 +#: part/models.py:797 part/templates/part/part_base.html:273 +#: report/models.py:171 templates/js/translated/part.js:743 msgid "Revision" msgstr "" -#: part/models.py:815 +#: part/models.py:822 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:860 part/templates/part/part_base.html:339 +#: part/models.py:867 part/templates/part/part_base.html:339 msgid "Default Supplier" msgstr "" -#: part/models.py:861 +#: part/models.py:868 msgid "Default supplier part" msgstr "" -#: part/models.py:868 +#: part/models.py:875 msgid "Default Expiry" msgstr "" -#: part/models.py:869 +#: part/models.py:876 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:874 part/templates/part/part_base.html:200 +#: part/models.py:881 part/templates/part/part_base.html:200 msgid "Minimum Stock" msgstr "" -#: part/models.py:875 +#: part/models.py:882 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:882 +#: part/models.py:889 msgid "Stock keeping units for this part" msgstr "" -#: part/models.py:888 +#: part/models.py:895 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:894 +#: part/models.py:901 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:900 +#: part/models.py:907 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:905 +#: part/models.py:912 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:910 +#: part/models.py:917 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:915 +#: part/models.py:922 msgid "Is this part active?" msgstr "" -#: part/models.py:920 +#: part/models.py:927 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:922 +#: part/models.py:929 msgid "Part notes" msgstr "" -#: part/models.py:924 +#: part/models.py:931 msgid "BOM checksum" msgstr "" -#: part/models.py:924 +#: part/models.py:931 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:927 +#: part/models.py:934 msgid "BOM checked by" msgstr "" -#: part/models.py:929 +#: part/models.py:936 msgid "BOM checked date" msgstr "" -#: part/models.py:933 +#: part/models.py:940 msgid "Creation User" msgstr "" -#: part/models.py:1737 +#: part/models.py:1744 msgid "Sell multiple" msgstr "" -#: part/models.py:2258 +#: part/models.py:2265 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:2275 +#: part/models.py:2282 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:2295 templates/js/translated/part.js:1997 -#: templates/js/translated/stock.js:1336 +#: part/models.py:2302 templates/js/translated/part.js:2006 +#: templates/js/translated/stock.js:1340 msgid "Test Name" msgstr "" -#: part/models.py:2296 +#: part/models.py:2303 msgid "Enter a name for the test" msgstr "" -#: part/models.py:2301 +#: part/models.py:2308 msgid "Test Description" msgstr "" -#: part/models.py:2302 +#: part/models.py:2309 msgid "Enter description for this test" msgstr "" -#: part/models.py:2307 templates/js/translated/part.js:2006 +#: part/models.py:2314 templates/js/translated/part.js:2015 #: templates/js/translated/table_filters.js:302 msgid "Required" msgstr "" -#: part/models.py:2308 +#: part/models.py:2315 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:2313 templates/js/translated/part.js:2014 +#: part/models.py:2320 templates/js/translated/part.js:2023 msgid "Requires Value" msgstr "" -#: part/models.py:2314 +#: part/models.py:2321 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:2319 templates/js/translated/part.js:2021 +#: part/models.py:2326 templates/js/translated/part.js:2030 msgid "Requires Attachment" msgstr "" -#: part/models.py:2320 +#: part/models.py:2327 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:2328 +#: part/models.py:2335 #, python-brace-format msgid "Illegal character in template name ({c})" msgstr "" -#: part/models.py:2364 +#: part/models.py:2371 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:2372 +#: part/models.py:2379 msgid "Parameter Name" msgstr "" -#: part/models.py:2379 +#: part/models.py:2386 msgid "Parameter Units" msgstr "" -#: part/models.py:2410 +#: part/models.py:2417 msgid "Parent Part" msgstr "" -#: part/models.py:2412 part/models.py:2460 part/models.py:2461 +#: part/models.py:2419 part/models.py:2467 part/models.py:2468 #: templates/InvenTree/settings/settings.html:227 msgid "Parameter Template" msgstr "" -#: part/models.py:2414 +#: part/models.py:2421 msgid "Data" msgstr "" -#: part/models.py:2414 +#: part/models.py:2421 msgid "Parameter Value" msgstr "" -#: part/models.py:2465 templates/InvenTree/settings/settings.html:236 +#: part/models.py:2472 templates/InvenTree/settings/settings.html:236 msgid "Default Value" msgstr "" -#: part/models.py:2466 +#: part/models.py:2473 msgid "Default Parameter Value" msgstr "" -#: part/models.py:2501 +#: part/models.py:2508 msgid "Part ID or part name" msgstr "" -#: part/models.py:2504 templates/js/translated/model_renderers.js:212 +#: part/models.py:2511 templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "" -#: part/models.py:2505 +#: part/models.py:2512 msgid "Unique part ID value" msgstr "" -#: part/models.py:2508 +#: part/models.py:2515 msgid "Part Name" msgstr "" -#: part/models.py:2512 +#: part/models.py:2519 msgid "Part IPN" msgstr "" -#: part/models.py:2513 +#: part/models.py:2520 msgid "Part IPN value" msgstr "" -#: part/models.py:2516 +#: part/models.py:2523 msgid "Level" msgstr "" -#: part/models.py:2517 +#: part/models.py:2524 msgid "BOM level" msgstr "" -#: part/models.py:2586 +#: part/models.py:2593 msgid "Select parent part" msgstr "" -#: part/models.py:2594 +#: part/models.py:2601 msgid "Sub part" msgstr "" -#: part/models.py:2595 +#: part/models.py:2602 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:2601 +#: part/models.py:2608 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:2603 part/templates/part/upload_bom.html:58 +#: part/models.py:2610 part/templates/part/upload_bom.html:58 #: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999 #: templates/js/translated/table_filters.js:100 msgid "Optional" msgstr "" -#: part/models.py:2603 +#: part/models.py:2610 msgid "This BOM item is optional" msgstr "" -#: part/models.py:2606 part/templates/part/upload_bom.html:55 +#: part/models.py:2613 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:2607 +#: part/models.py:2614 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:2610 +#: part/models.py:2617 msgid "BOM item reference" msgstr "" -#: part/models.py:2613 +#: part/models.py:2620 msgid "BOM item notes" msgstr "" -#: part/models.py:2615 +#: part/models.py:2622 msgid "Checksum" msgstr "" -#: part/models.py:2615 +#: part/models.py:2622 msgid "BOM line checksum" msgstr "" -#: part/models.py:2619 part/templates/part/upload_bom.html:57 +#: part/models.py:2626 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1016 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:96 msgid "Inherited" msgstr "" -#: part/models.py:2620 +#: part/models.py:2627 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:2625 part/templates/part/upload_bom.html:56 +#: part/models.py:2632 part/templates/part/upload_bom.html:56 #: templates/js/translated/bom.js:1008 msgid "Allow Variants" msgstr "" -#: part/models.py:2626 +#: part/models.py:2633 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:2704 stock/models.py:461 +#: part/models.py:2711 stock/models.py:468 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:2713 part/models.py:2715 +#: part/models.py:2720 part/models.py:2722 msgid "Sub part must be specified" msgstr "" -#: part/models.py:2820 +#: part/models.py:2827 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:2841 +#: part/models.py:2848 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:2854 +#: part/models.py:2861 msgid "Parent BOM item" msgstr "" -#: part/models.py:2862 +#: part/models.py:2869 msgid "Substitute part" msgstr "" -#: part/models.py:2877 +#: part/models.py:2884 msgid "Part 1" msgstr "" -#: part/models.py:2881 +#: part/models.py:2888 msgid "Part 2" msgstr "" -#: part/models.py:2881 +#: part/models.py:2888 msgid "Select Related Part" msgstr "" -#: part/models.py:2899 +#: part/models.py:2906 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:2903 +#: part/models.py:2910 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:152 part/serializers.py:183 stock/serializers.py:181 +#: part/serializers.py:154 part/serializers.py:185 stock/serializers.py:181 msgid "Purchase currency of this stock item" msgstr "" -#: part/serializers.py:812 +#: part/serializers.py:814 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:820 +#: part/serializers.py:822 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:821 +#: part/serializers.py:823 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:826 +#: part/serializers.py:828 msgid "Include Inherited" msgstr "" -#: part/serializers.py:827 +#: part/serializers.py:829 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:832 +#: part/serializers.py:834 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:833 +#: part/serializers.py:835 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:838 +#: part/serializers.py:840 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:839 +#: part/serializers.py:841 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:879 +#: part/serializers.py:881 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:880 +#: part/serializers.py:882 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:910 +#: part/serializers.py:912 msgid "No part column specified" msgstr "" -#: part/serializers.py:953 +#: part/serializers.py:955 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:956 +#: part/serializers.py:958 msgid "No matching part found" msgstr "" -#: part/serializers.py:959 +#: part/serializers.py:961 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:968 +#: part/serializers.py:970 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:976 +#: part/serializers.py:978 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:997 +#: part/serializers.py:999 msgid "At least one BOM item is required" msgstr "" @@ -4848,101 +4884,101 @@ msgstr "" msgid "Delete Items" msgstr "" -#: part/templates/part/category.html:28 part/templates/part/category.html:32 +#: part/templates/part/category.html:34 part/templates/part/category.html:38 msgid "You are subscribed to notifications for this category" msgstr "" -#: part/templates/part/category.html:36 +#: part/templates/part/category.html:42 msgid "Subscribe to notifications for this category" msgstr "" -#: part/templates/part/category.html:42 +#: part/templates/part/category.html:48 msgid "Category Actions" msgstr "" -#: part/templates/part/category.html:47 +#: part/templates/part/category.html:53 msgid "Edit category" msgstr "" -#: part/templates/part/category.html:48 +#: part/templates/part/category.html:54 msgid "Edit Category" msgstr "" -#: part/templates/part/category.html:52 +#: part/templates/part/category.html:58 msgid "Delete category" msgstr "" -#: part/templates/part/category.html:53 +#: part/templates/part/category.html:59 msgid "Delete Category" msgstr "" -#: part/templates/part/category.html:61 +#: part/templates/part/category.html:67 msgid "Create new part category" msgstr "" -#: part/templates/part/category.html:62 +#: part/templates/part/category.html:68 msgid "New Category" msgstr "" -#: part/templates/part/category.html:80 part/templates/part/category.html:93 +#: part/templates/part/category.html:86 part/templates/part/category.html:99 msgid "Category Path" msgstr "" -#: part/templates/part/category.html:94 +#: part/templates/part/category.html:100 msgid "Top level part category" msgstr "" -#: part/templates/part/category.html:114 part/templates/part/category.html:222 +#: part/templates/part/category.html:120 part/templates/part/category.html:228 #: part/templates/part/category_sidebar.html:7 msgid "Subcategories" msgstr "" -#: part/templates/part/category.html:119 +#: part/templates/part/category.html:125 msgid "Parts (Including subcategories)" msgstr "" -#: part/templates/part/category.html:157 +#: part/templates/part/category.html:163 msgid "Create new part" msgstr "" -#: part/templates/part/category.html:158 templates/js/translated/bom.js:367 +#: part/templates/part/category.html:164 templates/js/translated/bom.js:367 msgid "New Part" msgstr "" -#: part/templates/part/category.html:168 part/templates/part/detail.html:363 +#: part/templates/part/category.html:174 part/templates/part/detail.html:363 #: part/templates/part/detail.html:394 msgid "Options" msgstr "Valgmuligheter" -#: part/templates/part/category.html:172 +#: part/templates/part/category.html:178 msgid "Set category" msgstr "" -#: part/templates/part/category.html:173 +#: part/templates/part/category.html:179 msgid "Set Category" msgstr "" -#: part/templates/part/category.html:180 part/templates/part/category.html:181 +#: part/templates/part/category.html:186 part/templates/part/category.html:187 msgid "Print Labels" msgstr "" -#: part/templates/part/category.html:206 +#: part/templates/part/category.html:212 msgid "Part Parameters" msgstr "" -#: part/templates/part/category.html:320 +#: part/templates/part/category.html:327 msgid "Create Part Category" msgstr "" -#: part/templates/part/category.html:340 +#: part/templates/part/category.html:347 msgid "Create Part" msgstr "" -#: part/templates/part/category.html:343 +#: part/templates/part/category.html:350 msgid "Create another part after this one" msgstr "" -#: part/templates/part/category.html:344 +#: part/templates/part/category.html:351 msgid "Part created successfully" msgstr "" @@ -4950,7 +4986,7 @@ msgstr "" msgid "Import Parts" msgstr "" -#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:375 +#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:379 msgid "Duplicate Part" msgstr "" @@ -5172,19 +5208,19 @@ msgstr "" #: part/templates/part/part_base.html:43 #: stock/templates/stock/item_base.html:41 -#: stock/templates/stock/location.html:43 +#: stock/templates/stock/location.html:48 msgid "Barcode actions" msgstr "" #: part/templates/part/part_base.html:46 #: stock/templates/stock/item_base.html:45 -#: stock/templates/stock/location.html:45 templates/qr_button.html:1 +#: stock/templates/stock/location.html:50 templates/qr_button.html:1 msgid "Show QR Code" msgstr "" #: part/templates/part/part_base.html:49 #: stock/templates/stock/item_base.html:63 -#: stock/templates/stock/location.html:47 +#: stock/templates/stock/location.html:52 msgid "Print Label" msgstr "" @@ -5194,7 +5230,7 @@ msgstr "" #: part/templates/part/part_base.html:60 #: stock/templates/stock/item_base.html:116 -#: stock/templates/stock/location.html:56 +#: stock/templates/stock/location.html:61 msgid "Stock actions" msgstr "" @@ -5255,7 +5291,7 @@ msgstr "" #: templates/js/translated/company.js:624 #: templates/js/translated/company.js:884 #: templates/js/translated/model_renderers.js:204 -#: templates/js/translated/part.js:650 templates/js/translated/part.js:727 +#: templates/js/translated/part.js:654 templates/js/translated/part.js:731 msgid "Inactive" msgstr "" @@ -5289,9 +5325,9 @@ msgstr "" msgid "Can Build" msgstr "" -#: part/templates/part/part_base.html:238 templates/js/translated/part.js:589 -#: templates/js/translated/part.js:609 templates/js/translated/part.js:1302 -#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490 +#: part/templates/part/part_base.html:238 templates/js/translated/part.js:593 +#: templates/js/translated/part.js:613 templates/js/translated/part.js:1306 +#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1494 msgid "Building" msgstr "" @@ -5464,8 +5500,8 @@ msgstr "" msgid "No sale pice history available for this part." msgstr "" -#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:612 -#: templates/js/translated/part.js:1290 templates/js/translated/part.js:1494 +#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616 +#: templates/js/translated/part.js:1294 templates/js/translated/part.js:1498 msgid "No Stock" msgstr "" @@ -5630,51 +5666,55 @@ msgstr "" msgid "Allow sending of emails for event notifications" msgstr "" -#: plugin/models.py:32 +#: plugin/models.py:33 msgid "Plugin Metadata" msgstr "" -#: plugin/models.py:33 +#: plugin/models.py:34 msgid "JSON metadata field, for use by external plugins" msgstr "" -#: plugin/models.py:79 +#: plugin/models.py:80 msgid "Plugin Configuration" msgstr "" -#: plugin/models.py:80 +#: plugin/models.py:81 msgid "Plugin Configurations" msgstr "" -#: plugin/models.py:85 +#: plugin/models.py:86 msgid "Key" msgstr "" -#: plugin/models.py:86 +#: plugin/models.py:87 msgid "Key of plugin" msgstr "" -#: plugin/models.py:94 +#: plugin/models.py:95 msgid "PluginName of the plugin" msgstr "" -#: plugin/models.py:100 +#: plugin/models.py:101 msgid "Is the plugin active" msgstr "" -#: plugin/models.py:168 +#: plugin/models.py:158 +msgid "Sample plugin" +msgstr "" + +#: plugin/models.py:186 msgid "Plugin" msgstr "" -#: plugin/models.py:231 +#: plugin/models.py:249 msgid "Method" msgstr "" -#: plugin/plugin.py:228 +#: plugin/plugin.py:251 msgid "No author found" msgstr "" -#: plugin/plugin.py:240 +#: plugin/plugin.py:263 msgid "No date found" msgstr "" @@ -5746,12 +5786,12 @@ msgstr "" msgid "No valid objects provided to template" msgstr "" -#: report/api.py:216 report/api.py:257 +#: report/api.py:216 report/api.py:252 #, python-brace-format msgid "Template file '{template}' is missing or does not exist" msgstr "" -#: report/api.py:360 +#: report/api.py:355 msgid "Test report" msgstr "" @@ -5852,12 +5892,12 @@ msgid "Stock Item Test Report" msgstr "" #: report/templates/report/inventree_test_report_base.html:79 -#: stock/models.py:641 stock/templates/stock/item_base.html:322 +#: stock/models.py:648 stock/templates/stock/item_base.html:322 #: templates/js/translated/build.js:424 templates/js/translated/build.js:576 #: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673 #: templates/js/translated/model_renderers.js:118 #: templates/js/translated/order.js:118 templates/js/translated/order.js:3297 -#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:486 +#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490 msgid "Serial Number" msgstr "" @@ -5866,19 +5906,19 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report_base.html:93 -#: stock/models.py:2076 +#: stock/models.py:2083 msgid "Test" msgstr "" #: report/templates/report/inventree_test_report_base.html:94 -#: stock/models.py:2082 +#: stock/models.py:2089 msgid "Result" msgstr "" #: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:51 +#: templates/InvenTree/settings/plugin.html:53 #: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2459 +#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468 msgid "Date" msgstr "" @@ -5896,8 +5936,8 @@ msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report_base.html:137 -#: templates/js/translated/stock.js:606 templates/js/translated/stock.js:776 -#: templates/js/translated/stock.js:2708 +#: templates/js/translated/stock.js:610 templates/js/translated/stock.js:780 +#: templates/js/translated/stock.js:2717 msgid "Serial" msgstr "" @@ -5913,241 +5953,241 @@ msgstr "" msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" -#: stock/models.py:82 stock/models.py:732 +#: stock/models.py:89 stock/models.py:739 #: stock/templates/stock/item_base.html:252 msgid "Owner" msgstr "" -#: stock/models.py:83 stock/models.py:733 +#: stock/models.py:90 stock/models.py:740 msgid "Select Owner" msgstr "" -#: stock/models.py:435 +#: stock/models.py:442 msgid "StockItem with this serial number already exists" msgstr "" -#: stock/models.py:467 stock/serializers.py:95 +#: stock/models.py:474 stock/serializers.py:95 msgid "Stock item cannot be created for virtual parts" msgstr "" -#: stock/models.py:484 +#: stock/models.py:491 #, python-brace-format msgid "Part type ('{pf}') must be {pe}" msgstr "" -#: stock/models.py:494 stock/models.py:503 +#: stock/models.py:501 stock/models.py:510 msgid "Quantity must be 1 for item with a serial number" msgstr "" -#: stock/models.py:495 +#: stock/models.py:502 msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:517 +#: stock/models.py:524 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:523 +#: stock/models.py:530 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:537 +#: stock/models.py:544 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:583 +#: stock/models.py:590 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:593 +#: stock/models.py:600 msgid "Base part" msgstr "" -#: stock/models.py:601 +#: stock/models.py:608 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:608 stock/templates/stock/location.html:17 +#: stock/models.py:615 stock/templates/stock/location.html:17 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" msgstr "" -#: stock/models.py:611 +#: stock/models.py:618 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:618 +#: stock/models.py:625 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:624 stock/templates/stock/item_base.html:361 +#: stock/models.py:631 stock/templates/stock/item_base.html:361 msgid "Installed In" msgstr "" -#: stock/models.py:627 +#: stock/models.py:634 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:643 +#: stock/models.py:650 msgid "Serial number for this item" msgstr "" -#: stock/models.py:657 +#: stock/models.py:664 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:662 +#: stock/models.py:669 msgid "Stock Quantity" msgstr "" -#: stock/models.py:671 +#: stock/models.py:678 msgid "Source Build" msgstr "" -#: stock/models.py:673 +#: stock/models.py:680 msgid "Build for this stock item" msgstr "" -#: stock/models.py:684 +#: stock/models.py:691 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:687 +#: stock/models.py:694 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:693 +#: stock/models.py:700 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:699 stock/templates/stock/item_base.html:429 -#: templates/js/translated/stock.js:1879 +#: stock/models.py:706 stock/templates/stock/item_base.html:429 +#: templates/js/translated/stock.js:1883 msgid "Expiry Date" msgstr "" -#: stock/models.py:700 +#: stock/models.py:707 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:713 +#: stock/models.py:720 msgid "Delete on deplete" msgstr "" -#: stock/models.py:713 +#: stock/models.py:720 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:720 stock/templates/stock/item.html:132 +#: stock/models.py:727 stock/templates/stock/item.html:132 msgid "Stock Item Notes" msgstr "" -#: stock/models.py:728 +#: stock/models.py:735 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:756 +#: stock/models.py:763 msgid "Converted to part" msgstr "" -#: stock/models.py:1235 +#: stock/models.py:1242 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1241 +#: stock/models.py:1248 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1247 +#: stock/models.py:1254 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({n})" msgstr "" -#: stock/models.py:1250 +#: stock/models.py:1257 msgid "Serial numbers must be a list of integers" msgstr "" -#: stock/models.py:1253 +#: stock/models.py:1260 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1260 +#: stock/models.py:1267 #, python-brace-format msgid "Serial numbers already exist: {exists}" msgstr "" -#: stock/models.py:1330 +#: stock/models.py:1337 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1333 +#: stock/models.py:1340 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1336 +#: stock/models.py:1343 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1339 +#: stock/models.py:1346 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1342 +#: stock/models.py:1349 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1345 +#: stock/models.py:1352 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1352 stock/serializers.py:959 +#: stock/models.py:1359 stock/serializers.py:961 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1356 +#: stock/models.py:1363 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1360 +#: stock/models.py:1367 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1364 +#: stock/models.py:1371 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:1533 +#: stock/models.py:1540 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:1994 +#: stock/models.py:2001 msgid "Entry notes" msgstr "" -#: stock/models.py:2052 +#: stock/models.py:2059 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2058 +#: stock/models.py:2065 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2077 +#: stock/models.py:2084 msgid "Test name" msgstr "" -#: stock/models.py:2083 +#: stock/models.py:2090 msgid "Test result" msgstr "" -#: stock/models.py:2089 +#: stock/models.py:2096 msgid "Test output value" msgstr "" -#: stock/models.py:2096 +#: stock/models.py:2103 msgid "Test result attachment" msgstr "" -#: stock/models.py:2102 +#: stock/models.py:2109 msgid "Test notes" msgstr "" @@ -6172,7 +6212,7 @@ msgstr "" msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:323 stock/serializers.py:916 stock/serializers.py:1149 +#: stock/serializers.py:323 stock/serializers.py:918 stock/serializers.py:1151 msgid "Destination stock location" msgstr "" @@ -6220,63 +6260,63 @@ msgstr "" msgid "Destination location for returned item" msgstr "" -#: stock/serializers.py:771 +#: stock/serializers.py:773 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:775 +#: stock/serializers.py:777 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:779 +#: stock/serializers.py:781 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:810 +#: stock/serializers.py:812 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:816 +#: stock/serializers.py:818 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:824 +#: stock/serializers.py:826 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:834 stock/serializers.py:1065 +#: stock/serializers.py:836 stock/serializers.py:1067 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:923 +#: stock/serializers.py:925 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:928 +#: stock/serializers.py:930 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:929 +#: stock/serializers.py:931 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:934 +#: stock/serializers.py:936 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:935 +#: stock/serializers.py:937 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:945 +#: stock/serializers.py:947 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1027 +#: stock/serializers.py:1029 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1055 +#: stock/serializers.py:1057 msgid "Stock transaction notes" msgstr "" @@ -6313,7 +6353,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2852 +#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2861 msgid "Install Stock Item" msgstr "" @@ -6321,7 +6361,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1518 +#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1522 msgid "Add Test Result" msgstr "" @@ -6352,7 +6392,7 @@ msgid "Stock adjustment actions" msgstr "" #: stock/templates/stock/item_base.html:80 -#: stock/templates/stock/location.html:63 templates/stock_table.html:47 +#: stock/templates/stock/location.html:68 templates/stock_table.html:47 msgid "Count stock" msgstr "" @@ -6369,7 +6409,7 @@ msgid "Serialize stock" msgstr "" #: stock/templates/stock/item_base.html:93 -#: stock/templates/stock/location.html:69 templates/stock_table.html:48 +#: stock/templates/stock/location.html:74 templates/stock_table.html:48 msgid "Transfer stock" msgstr "" @@ -6430,7 +6470,7 @@ msgid "You are not in the list of owners of this item. This stock item cannot be msgstr "" #: stock/templates/stock/item_base.html:257 -#: stock/templates/stock/location.html:127 +#: stock/templates/stock/location.html:132 msgid "Read only" msgstr "" @@ -6508,7 +6548,7 @@ msgid "Stale" msgstr "" #: stock/templates/stock/item_base.html:442 -#: templates/js/translated/company.js:985 templates/js/translated/stock.js:1895 +#: templates/js/translated/company.js:985 templates/js/translated/stock.js:1899 msgid "Last Updated" msgstr "" @@ -6552,58 +6592,58 @@ msgstr "" msgid "Select quantity to serialize, and unique serial numbers." msgstr "" -#: stock/templates/stock/location.html:33 +#: stock/templates/stock/location.html:38 msgid "Locate stock location" msgstr "" -#: stock/templates/stock/location.html:49 +#: stock/templates/stock/location.html:54 msgid "Check-in Items" msgstr "" -#: stock/templates/stock/location.html:77 +#: stock/templates/stock/location.html:82 msgid "Location actions" msgstr "" -#: stock/templates/stock/location.html:79 +#: stock/templates/stock/location.html:84 msgid "Edit location" msgstr "" -#: stock/templates/stock/location.html:81 +#: stock/templates/stock/location.html:86 msgid "Delete location" msgstr "" -#: stock/templates/stock/location.html:90 +#: stock/templates/stock/location.html:95 msgid "Create new stock location" msgstr "" -#: stock/templates/stock/location.html:91 +#: stock/templates/stock/location.html:96 msgid "New Location" msgstr "" -#: stock/templates/stock/location.html:109 -#: stock/templates/stock/location.html:115 +#: stock/templates/stock/location.html:114 +#: stock/templates/stock/location.html:120 msgid "Location Path" msgstr "" -#: stock/templates/stock/location.html:116 +#: stock/templates/stock/location.html:121 msgid "Top level stock location" msgstr "" -#: stock/templates/stock/location.html:122 +#: stock/templates/stock/location.html:127 msgid "Location Owner" msgstr "" -#: stock/templates/stock/location.html:126 +#: stock/templates/stock/location.html:131 msgid "You are not in the list of owners of this location. This stock location cannot be edited." msgstr "" -#: stock/templates/stock/location.html:142 -#: stock/templates/stock/location.html:189 +#: stock/templates/stock/location.html:147 +#: stock/templates/stock/location.html:194 #: stock/templates/stock/location_sidebar.html:5 msgid "Sublocations" msgstr "" -#: stock/templates/stock/location.html:156 templates/InvenTree/search.html:165 +#: stock/templates/stock/location.html:161 templates/InvenTree/search.html:165 #: templates/js/translated/search.js:238 users/models.py:39 msgid "Stock Locations" msgstr "" @@ -6875,15 +6915,15 @@ msgstr "" msgid "Part Settings" msgstr "" -#: templates/InvenTree/settings/part.html:44 +#: templates/InvenTree/settings/part.html:46 msgid "Part Import" msgstr "" -#: templates/InvenTree/settings/part.html:48 +#: templates/InvenTree/settings/part.html:50 msgid "Import Part" msgstr "" -#: templates/InvenTree/settings/part.html:62 +#: templates/InvenTree/settings/part.html:64 msgid "Part Parameter Templates" msgstr "" @@ -6895,47 +6935,47 @@ msgstr "" msgid "Changing the settings below require you to immediately restart the server. Do not change this while under active usage." msgstr "" -#: templates/InvenTree/settings/plugin.html:34 +#: templates/InvenTree/settings/plugin.html:36 msgid "Plugins" msgstr "" -#: templates/InvenTree/settings/plugin.html:39 +#: templates/InvenTree/settings/plugin.html:41 #: templates/js/translated/plugin.js:16 msgid "Install Plugin" msgstr "" -#: templates/InvenTree/settings/plugin.html:48 templates/navbar.html:137 +#: templates/InvenTree/settings/plugin.html:50 templates/navbar.html:137 #: users/models.py:36 msgid "Admin" msgstr "" -#: templates/InvenTree/settings/plugin.html:50 +#: templates/InvenTree/settings/plugin.html:52 #: templates/InvenTree/settings/plugin_settings.html:28 msgid "Author" msgstr "" -#: templates/InvenTree/settings/plugin.html:52 +#: templates/InvenTree/settings/plugin.html:54 #: templates/InvenTree/settings/plugin_settings.html:43 msgid "Version" msgstr "" -#: templates/InvenTree/settings/plugin.html:74 +#: templates/InvenTree/settings/plugin.html:76 msgid "Sample" msgstr "" -#: templates/InvenTree/settings/plugin.html:99 +#: templates/InvenTree/settings/plugin.html:101 msgid "Inactive plugins" msgstr "" -#: templates/InvenTree/settings/plugin.html:122 +#: templates/InvenTree/settings/plugin.html:124 msgid "Plugin Error Stack" msgstr "" -#: templates/InvenTree/settings/plugin.html:131 +#: templates/InvenTree/settings/plugin.html:133 msgid "Stage" msgstr "" -#: templates/InvenTree/settings/plugin.html:133 +#: templates/InvenTree/settings/plugin.html:135 #: templates/js/translated/notification.js:75 msgid "Message" msgstr "" @@ -6999,11 +7039,11 @@ msgstr "" msgid "Commit Message" msgstr "" -#: templates/InvenTree/settings/plugin_settings.html:117 +#: templates/InvenTree/settings/plugin_settings.html:120 msgid "Sign Status" msgstr "" -#: templates/InvenTree/settings/plugin_settings.html:122 +#: templates/InvenTree/settings/plugin_settings.html:125 msgid "Sign Key" msgstr "" @@ -7828,7 +7868,7 @@ msgstr "" msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:456 templates/js/translated/stock.js:1050 +#: templates/js/translated/barcode.js:456 templates/js/translated/stock.js:1054 msgid "Remove stock item" msgstr "" @@ -8001,7 +8041,7 @@ msgid "Includes variant and substitute stock" msgstr "" #: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822 -#: templates/js/translated/part.js:759 +#: templates/js/translated/part.js:763 msgid "Includes variant stock" msgstr "" @@ -8098,12 +8138,12 @@ msgid "Complete Build Order" msgstr "" #: templates/js/translated/build.js:263 templates/js/translated/stock.js:92 -#: templates/js/translated/stock.js:210 +#: templates/js/translated/stock.js:214 msgid "Next available serial number" msgstr "" #: templates/js/translated/build.js:265 templates/js/translated/stock.js:94 -#: templates/js/translated/stock.js:212 +#: templates/js/translated/stock.js:216 msgid "Latest serial number" msgstr "" @@ -8316,9 +8356,9 @@ msgstr "" msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1383 -#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1682 -#: templates/js/translated/stock.js:2382 +#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387 +#: templates/js/translated/part.js:1899 templates/js/translated/stock.js:1686 +#: templates/js/translated/stock.js:2386 msgid "Select" msgstr "" @@ -8330,7 +8370,7 @@ msgstr "" msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2638 +#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647 msgid "No user information" msgstr "" @@ -8403,34 +8443,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:616 -#: templates/js/translated/company.js:876 templates/js/translated/part.js:634 -#: templates/js/translated/part.js:719 +#: templates/js/translated/company.js:876 templates/js/translated/part.js:638 +#: templates/js/translated/part.js:723 msgid "Template part" msgstr "" #: templates/js/translated/company.js:620 -#: templates/js/translated/company.js:880 templates/js/translated/part.js:638 -#: templates/js/translated/part.js:723 +#: templates/js/translated/company.js:880 templates/js/translated/part.js:642 +#: templates/js/translated/part.js:727 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:748 templates/js/translated/part.js:826 +#: templates/js/translated/company.js:748 templates/js/translated/part.js:830 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:785 templates/js/translated/part.js:868 +#: templates/js/translated/company.js:785 templates/js/translated/part.js:872 msgid "Edit parameter" msgstr "" -#: templates/js/translated/company.js:786 templates/js/translated/part.js:869 +#: templates/js/translated/company.js:786 templates/js/translated/part.js:873 msgid "Delete parameter" msgstr "" -#: templates/js/translated/company.js:805 templates/js/translated/part.js:886 +#: templates/js/translated/company.js:805 templates/js/translated/part.js:890 msgid "Edit Parameter" msgstr "" -#: templates/js/translated/company.js:816 templates/js/translated/part.js:898 +#: templates/js/translated/company.js:816 templates/js/translated/part.js:902 msgid "Delete Parameter" msgstr "" @@ -8555,7 +8595,7 @@ msgid "Labels sent to printer" msgstr "" #: templates/js/translated/label.js:60 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1078 msgid "Select Stock Items" msgstr "" @@ -8865,7 +8905,7 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2140 +#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144 msgid "Stock Status" msgstr "" @@ -8889,7 +8929,7 @@ msgstr "" msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:1672 templates/js/translated/part.js:939 +#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943 msgid "No purchase orders found" msgstr "" @@ -8924,7 +8964,7 @@ msgstr "" #: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203 #: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050 -#: templates/js/translated/part.js:2126 templates/js/translated/part.js:2479 +#: templates/js/translated/part.js:2135 templates/js/translated/part.js:2488 msgid "Unit Price" msgstr "" @@ -8934,11 +8974,11 @@ msgid "Total Price" msgstr "" #: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600 -#: templates/js/translated/part.js:1046 +#: templates/js/translated/part.js:1050 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1092 +#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096 msgid "Receive line item" msgstr "" @@ -9059,7 +9099,7 @@ msgid "Delete Stock Allocation" msgstr "" #: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398 -#: templates/js/translated/stock.js:1598 +#: templates/js/translated/stock.js:1602 msgid "Shipped to customer" msgstr "" @@ -9183,241 +9223,245 @@ msgstr "" msgid "Parent part category" msgstr "" -#: templates/js/translated/part.js:318 +#: templates/js/translated/part.js:306 templates/js/translated/stock.js:118 +msgid "Icon (optional) - Explore all available icons on" +msgstr "" + +#: templates/js/translated/part.js:322 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:331 +#: templates/js/translated/part.js:335 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:333 +#: templates/js/translated/part.js:337 msgid "Any child categories will be moved to the parent of this category" msgstr "" -#: templates/js/translated/part.js:334 +#: templates/js/translated/part.js:338 msgid "Any parts in this category will be moved to the parent of this category" msgstr "" -#: templates/js/translated/part.js:339 +#: templates/js/translated/part.js:343 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:365 +#: templates/js/translated/part.js:369 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:367 +#: templates/js/translated/part.js:371 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:378 +#: templates/js/translated/part.js:382 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:430 +#: templates/js/translated/part.js:434 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:431 +#: templates/js/translated/part.js:435 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:445 +#: templates/js/translated/part.js:449 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:447 +#: templates/js/translated/part.js:451 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:448 +#: templates/js/translated/part.js:452 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:449 +#: templates/js/translated/part.js:453 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:456 +#: templates/js/translated/part.js:460 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:492 +#: templates/js/translated/part.js:496 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:494 +#: templates/js/translated/part.js:498 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:499 +#: templates/js/translated/part.js:503 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:501 +#: templates/js/translated/part.js:505 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:518 +#: templates/js/translated/part.js:522 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:528 +#: templates/js/translated/part.js:532 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:531 +#: templates/js/translated/part.js:535 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:556 +#: templates/js/translated/part.js:560 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:582 templates/js/translated/part.js:1466 +#: templates/js/translated/part.js:586 templates/js/translated/part.js:1470 #: templates/js/translated/table_filters.js:468 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:592 templates/js/translated/part.js:1478 +#: templates/js/translated/part.js:596 templates/js/translated/part.js:1482 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:626 templates/js/translated/part.js:711 +#: templates/js/translated/part.js:630 templates/js/translated/part.js:715 msgid "Trackable part" msgstr "" -#: templates/js/translated/part.js:630 templates/js/translated/part.js:715 +#: templates/js/translated/part.js:634 templates/js/translated/part.js:719 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:642 +#: templates/js/translated/part.js:646 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:646 +#: templates/js/translated/part.js:650 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:774 +#: templates/js/translated/part.js:778 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1162 +#: templates/js/translated/part.js:1166 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1186 +#: templates/js/translated/part.js:1190 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:1253 templates/js/translated/part.js:1549 +#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1553 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:1292 +#: templates/js/translated/part.js:1296 msgid "Not available" msgstr "" -#: templates/js/translated/part.js:1443 +#: templates/js/translated/part.js:1447 msgid "No category" msgstr "" -#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816 -#: templates/js/translated/stock.js:2343 +#: templates/js/translated/part.js:1577 templates/js/translated/part.js:1820 +#: templates/js/translated/stock.js:2347 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:1589 +#: templates/js/translated/part.js:1593 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:1655 +#: templates/js/translated/part.js:1659 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:1660 +#: templates/js/translated/part.js:1664 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:1665 +#: templates/js/translated/part.js:1669 msgid "Select Part Category" msgstr "" -#: templates/js/translated/part.js:1678 +#: templates/js/translated/part.js:1682 msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2362 +#: templates/js/translated/part.js:1839 templates/js/translated/stock.js:2366 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:1914 +#: templates/js/translated/part.js:1918 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:1925 +#: templates/js/translated/part.js:1934 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:1983 +#: templates/js/translated/part.js:1992 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2034 templates/js/translated/stock.js:1295 +#: templates/js/translated/part.js:2043 templates/js/translated/stock.js:1299 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:2035 templates/js/translated/stock.js:1296 -#: templates/js/translated/stock.js:1556 +#: templates/js/translated/part.js:2044 templates/js/translated/stock.js:1300 +#: templates/js/translated/stock.js:1560 msgid "Delete test result" msgstr "" -#: templates/js/translated/part.js:2041 +#: templates/js/translated/part.js:2050 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2063 +#: templates/js/translated/part.js:2072 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2077 +#: templates/js/translated/part.js:2086 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2102 +#: templates/js/translated/part.js:2111 #, python-brace-format msgid "No ${human_name} information found" msgstr "" -#: templates/js/translated/part.js:2159 +#: templates/js/translated/part.js:2168 #, python-brace-format msgid "Edit ${human_name}" msgstr "" -#: templates/js/translated/part.js:2160 +#: templates/js/translated/part.js:2169 #, python-brace-format msgid "Delete ${human_name}" msgstr "" -#: templates/js/translated/part.js:2274 +#: templates/js/translated/part.js:2283 msgid "Current Stock" msgstr "" -#: templates/js/translated/part.js:2307 +#: templates/js/translated/part.js:2316 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2333 +#: templates/js/translated/part.js:2342 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2403 +#: templates/js/translated/part.js:2412 msgid "Single Price" msgstr "" -#: templates/js/translated/part.js:2422 +#: templates/js/translated/part.js:2431 msgid "Single Price Difference" msgstr "" @@ -9511,376 +9555,376 @@ msgstr "" msgid "Parent stock location" msgstr "" -#: templates/js/translated/stock.js:140 +#: templates/js/translated/stock.js:144 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:155 +#: templates/js/translated/stock.js:159 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:169 +#: templates/js/translated/stock.js:173 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:171 +#: templates/js/translated/stock.js:175 msgid "Any child locations will be moved to the parent of this location" msgstr "" -#: templates/js/translated/stock.js:172 +#: templates/js/translated/stock.js:176 msgid "Any stock items in this location will be moved to the parent of this location" msgstr "" -#: templates/js/translated/stock.js:178 +#: templates/js/translated/stock.js:182 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:223 +#: templates/js/translated/stock.js:227 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:262 +#: templates/js/translated/stock.js:266 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:268 +#: templates/js/translated/stock.js:272 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:333 +#: templates/js/translated/stock.js:337 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:353 +#: templates/js/translated/stock.js:357 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:369 +#: templates/js/translated/stock.js:373 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:374 +#: templates/js/translated/stock.js:378 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:395 +#: templates/js/translated/stock.js:399 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:445 +#: templates/js/translated/stock.js:449 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:458 +#: templates/js/translated/stock.js:462 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:483 +#: templates/js/translated/stock.js:487 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:487 templates/js/translated/stock.js:488 +#: templates/js/translated/stock.js:491 templates/js/translated/stock.js:492 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:504 +#: templates/js/translated/stock.js:508 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:524 +#: templates/js/translated/stock.js:528 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:533 +#: templates/js/translated/stock.js:537 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:656 +#: templates/js/translated/stock.js:660 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:657 +#: templates/js/translated/stock.js:661 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:734 +#: templates/js/translated/stock.js:738 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:735 +#: templates/js/translated/stock.js:739 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:737 +#: templates/js/translated/stock.js:741 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:738 +#: templates/js/translated/stock.js:742 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:824 +#: templates/js/translated/stock.js:828 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:825 +#: templates/js/translated/stock.js:829 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:920 +#: templates/js/translated/stock.js:924 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:921 +#: templates/js/translated/stock.js:925 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:927 +#: templates/js/translated/stock.js:931 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:928 +#: templates/js/translated/stock.js:932 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:932 +#: templates/js/translated/stock.js:936 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:933 +#: templates/js/translated/stock.js:937 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:937 +#: templates/js/translated/stock.js:941 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:938 users/models.py:216 +#: templates/js/translated/stock.js:942 users/models.py:216 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:942 +#: templates/js/translated/stock.js:946 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1035 +#: templates/js/translated/stock.js:1039 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1035 +#: templates/js/translated/stock.js:1039 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1075 +#: templates/js/translated/stock.js:1079 msgid "You must select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1098 +#: templates/js/translated/stock.js:1102 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1234 +#: templates/js/translated/stock.js:1238 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1236 +#: templates/js/translated/stock.js:1240 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1241 +#: templates/js/translated/stock.js:1245 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1288 +#: templates/js/translated/stock.js:1292 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1291 +#: templates/js/translated/stock.js:1295 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1317 +#: templates/js/translated/stock.js:1321 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1374 +#: templates/js/translated/stock.js:1378 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1539 +#: templates/js/translated/stock.js:1543 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1561 +#: templates/js/translated/stock.js:1565 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1590 +#: templates/js/translated/stock.js:1594 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1594 +#: templates/js/translated/stock.js:1598 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1602 +#: templates/js/translated/stock.js:1606 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1608 +#: templates/js/translated/stock.js:1612 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1775 +#: templates/js/translated/stock.js:1779 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:1780 +#: templates/js/translated/stock.js:1784 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:1783 +#: templates/js/translated/stock.js:1787 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:1786 +#: templates/js/translated/stock.js:1790 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:1788 +#: templates/js/translated/stock.js:1792 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:1790 +#: templates/js/translated/stock.js:1794 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:1793 +#: templates/js/translated/stock.js:1797 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:1797 +#: templates/js/translated/stock.js:1801 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:1799 +#: templates/js/translated/stock.js:1803 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:1806 +#: templates/js/translated/stock.js:1810 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:1808 +#: templates/js/translated/stock.js:1812 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:1810 +#: templates/js/translated/stock.js:1814 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:1814 +#: templates/js/translated/stock.js:1818 #: templates/js/translated/table_filters.js:196 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:1865 +#: templates/js/translated/stock.js:1869 msgid "Stocktake" msgstr "" -#: templates/js/translated/stock.js:1944 +#: templates/js/translated/stock.js:1948 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:1982 +#: templates/js/translated/stock.js:1986 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2155 +#: templates/js/translated/stock.js:2159 msgid "Set Stock Status" msgstr "" -#: templates/js/translated/stock.js:2169 +#: templates/js/translated/stock.js:2173 msgid "Select Status Code" msgstr "" -#: templates/js/translated/stock.js:2170 +#: templates/js/translated/stock.js:2174 msgid "Status code must be selected" msgstr "" -#: templates/js/translated/stock.js:2400 +#: templates/js/translated/stock.js:2404 msgid "Load Subloactions" msgstr "" -#: templates/js/translated/stock.js:2484 +#: templates/js/translated/stock.js:2493 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2500 +#: templates/js/translated/stock.js:2509 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2522 +#: templates/js/translated/stock.js:2531 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2541 +#: templates/js/translated/stock.js:2550 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2560 +#: templates/js/translated/stock.js:2569 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2578 +#: templates/js/translated/stock.js:2587 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:2601 +#: templates/js/translated/stock.js:2610 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:2609 +#: templates/js/translated/stock.js:2618 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:2685 +#: templates/js/translated/stock.js:2694 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:2736 templates/js/translated/stock.js:2772 +#: templates/js/translated/stock.js:2745 templates/js/translated/stock.js:2781 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:2785 +#: templates/js/translated/stock.js:2794 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:2806 +#: templates/js/translated/stock.js:2815 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:2807 +#: templates/js/translated/stock.js:2816 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:2809 +#: templates/js/translated/stock.js:2818 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:2810 +#: templates/js/translated/stock.js:2819 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:2811 +#: templates/js/translated/stock.js:2820 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:2812 +#: templates/js/translated/stock.js:2821 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:2825 +#: templates/js/translated/stock.js:2834 msgid "Select part to install" msgstr "" diff --git a/InvenTree/locale/pl/LC_MESSAGES/django.po b/InvenTree/locale/pl/LC_MESSAGES/django.po index 78a212bda2..ae64875ec8 100644 --- a/InvenTree/locale/pl/LC_MESSAGES/django.po +++ b/InvenTree/locale/pl/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-11 02:47+0000\n" -"PO-Revision-Date: 2022-08-11 13:49\n" +"POT-Creation-Date: 2022-08-16 11:53+0000\n" +"PO-Revision-Date: 2022-08-16 21:35\n" "Last-Translator: \n" "Language-Team: Polish\n" "Language: pl_PL\n" @@ -36,15 +36,15 @@ msgstr "Wprowadź dane" #: order/templates/order/so_sidebar.html:17 #: part/templates/part/part_sidebar.html:59 #: report/templates/report/inventree_build_order_base.html:172 -#: stock/models.py:1993 stock/models.py:2101 stock/serializers.py:329 -#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:823 -#: stock/serializers.py:922 stock/serializers.py:1054 +#: stock/models.py:2000 stock/models.py:2108 stock/serializers.py:329 +#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825 +#: stock/serializers.py:924 stock/serializers.py:1056 #: stock/templates/stock/stock_sidebar.html:25 #: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101 #: templates/js/translated/company.js:964 templates/js/translated/order.js:2104 #: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753 #: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102 -#: templates/js/translated/stock.js:1370 templates/js/translated/stock.js:1976 +#: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980 msgid "Notes" msgstr "Uwagi" @@ -163,6 +163,10 @@ msgstr "Nie znaleziono numerów seryjnych" msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "Liczba unikalnych numerów seryjnych ({s}) musi odpowiadać ilości ({q})" +#: InvenTree/mixins.py:71 +msgid "Remove HTML tags from this value" +msgstr "" + #: InvenTree/models.py:236 msgid "Improperly formatted pattern" msgstr "" @@ -195,7 +199,7 @@ msgstr "Brak pliku" msgid "Missing external link" msgstr "Brak zewnętrznego odnośnika" -#: InvenTree/models.py:395 stock/models.py:2095 +#: InvenTree/models.py:395 stock/models.py:2102 #: templates/js/translated/attachment.js:103 #: templates/js/translated/attachment.js:241 msgid "Attachment" @@ -207,16 +211,16 @@ msgstr "Wybierz plik do załączenia" #: InvenTree/models.py:402 company/models.py:124 company/models.py:276 #: company/models.py:510 order/models.py:84 order/models.py:1245 -#: part/models.py:795 +#: part/models.py:802 #: report/templates/report/inventree_build_order_base.html:164 #: templates/js/translated/company.js:656 #: templates/js/translated/company.js:948 templates/js/translated/order.js:2742 -#: templates/js/translated/part.js:1510 +#: templates/js/translated/part.js:1514 msgid "Link" msgstr "Łącze" -#: InvenTree/models.py:403 build/models.py:296 part/models.py:796 -#: stock/models.py:651 +#: InvenTree/models.py:403 build/models.py:296 part/models.py:803 +#: stock/models.py:658 msgid "Link to external URL" msgstr "Link do zewnętrznego adresu URL" @@ -229,12 +233,12 @@ msgstr "Komentarz" msgid "File comment" msgstr "Komentarz pliku" -#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1646 -#: common/models.py:1647 common/models.py:1870 common/models.py:1871 -#: common/models.py:2133 common/models.py:2134 part/models.py:2193 -#: part/models.py:2213 plugin/models.py:238 plugin/models.py:239 +#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665 +#: common/models.py:1666 common/models.py:1889 common/models.py:1890 +#: common/models.py:2152 common/models.py:2153 part/models.py:2200 +#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2632 +#: templates/js/translated/stock.js:2641 msgid "User" msgstr "Użytkownik" @@ -271,19 +275,19 @@ msgstr "Błąd zmiany nazwy pliku" msgid "Invalid choice" msgstr "Błędny wybór" -#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1856 -#: company/models.py:358 label/models.py:101 part/models.py:739 -#: part/models.py:2371 plugin/models.py:93 report/models.py:152 +#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875 +#: company/models.py:358 label/models.py:101 part/models.py:746 +#: part/models.py:2378 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 -#: templates/InvenTree/settings/plugin.html:49 -#: templates/InvenTree/settings/plugin.html:132 +#: templates/InvenTree/settings/plugin.html:51 +#: templates/InvenTree/settings/plugin.html:134 #: templates/InvenTree/settings/plugin_settings.html:23 #: templates/InvenTree/settings/settings.html:347 #: templates/js/translated/company.js:545 #: templates/js/translated/company.js:758 #: templates/js/translated/notification.js:71 -#: templates/js/translated/part.js:684 templates/js/translated/part.js:836 -#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2388 +#: templates/js/translated/part.js:688 templates/js/translated/part.js:840 +#: templates/js/translated/part.js:1906 templates/js/translated/stock.js:2392 msgid "Name" msgstr "Nazwa" @@ -292,21 +296,21 @@ msgstr "Nazwa" #: company/models.py:516 company/templates/company/company_base.html:71 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:87 label/models.py:108 -#: order/models.py:82 part/models.py:762 part/templates/part/category.html:74 +#: order/models.py:82 part/models.py:769 part/templates/part/category.html:80 #: part/templates/part/part_base.html:167 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 -#: stock/templates/stock/location.html:103 +#: stock/templates/stock/location.html:108 #: templates/InvenTree/settings/plugin_settings.html:33 #: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848 #: templates/js/translated/build.js:2471 templates/js/translated/company.js:409 #: templates/js/translated/company.js:667 #: templates/js/translated/company.js:959 templates/js/translated/order.js:1720 #: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531 -#: templates/js/translated/part.js:743 templates/js/translated/part.js:1149 -#: templates/js/translated/part.js:1424 templates/js/translated/part.js:1933 -#: templates/js/translated/part.js:2002 templates/js/translated/stock.js:1739 -#: templates/js/translated/stock.js:2415 templates/js/translated/stock.js:2469 +#: templates/js/translated/part.js:747 templates/js/translated/part.js:1153 +#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1942 +#: templates/js/translated/part.js:2011 templates/js/translated/stock.js:1743 +#: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478 msgid "Description" msgstr "Opis" @@ -319,7 +323,7 @@ msgid "parent" msgstr "nadrzędny" #: InvenTree/models.py:560 InvenTree/models.py:561 -#: templates/js/translated/part.js:1939 templates/js/translated/stock.js:2421 +#: templates/js/translated/part.js:1948 templates/js/translated/stock.js:2430 msgid "Path" msgstr "Ścieżka" @@ -331,7 +335,7 @@ msgstr "Błąd serwera" msgid "An error has been logged by the server." msgstr "Błąd został zapisany w logach serwera." -#: InvenTree/serializers.py:55 part/models.py:2692 +#: InvenTree/serializers.py:55 part/models.py:2699 msgid "Must be a valid number" msgstr "Numer musi być prawidłowy" @@ -398,99 +402,99 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/settings.py:609 +#: InvenTree/settings.py:607 msgid "Czech" msgstr "Czeski" -#: InvenTree/settings.py:610 +#: InvenTree/settings.py:608 msgid "German" msgstr "Niemiecki" -#: InvenTree/settings.py:611 +#: InvenTree/settings.py:609 msgid "Greek" msgstr "Grecki" -#: InvenTree/settings.py:612 +#: InvenTree/settings.py:610 msgid "English" msgstr "Angielski" -#: InvenTree/settings.py:613 +#: InvenTree/settings.py:611 msgid "Spanish" msgstr "Hiszpański" -#: InvenTree/settings.py:614 +#: InvenTree/settings.py:612 msgid "Spanish (Mexican)" msgstr "Hiszpański (Meksyk)" -#: InvenTree/settings.py:615 +#: InvenTree/settings.py:613 msgid "Farsi / Persian" msgstr "Perski" -#: InvenTree/settings.py:616 +#: InvenTree/settings.py:614 msgid "French" msgstr "Francuski" -#: InvenTree/settings.py:617 +#: InvenTree/settings.py:615 msgid "Hebrew" msgstr "Hebrajski" -#: InvenTree/settings.py:618 +#: InvenTree/settings.py:616 msgid "Hungarian" msgstr "Węgierski" -#: InvenTree/settings.py:619 +#: InvenTree/settings.py:617 msgid "Italian" msgstr "Włoski" -#: InvenTree/settings.py:620 +#: InvenTree/settings.py:618 msgid "Japanese" msgstr "Japoński" -#: InvenTree/settings.py:621 +#: InvenTree/settings.py:619 msgid "Korean" msgstr "Koreański" -#: InvenTree/settings.py:622 +#: InvenTree/settings.py:620 msgid "Dutch" msgstr "Holenderski" -#: InvenTree/settings.py:623 +#: InvenTree/settings.py:621 msgid "Norwegian" msgstr "Norweski" -#: InvenTree/settings.py:624 +#: InvenTree/settings.py:622 msgid "Polish" msgstr "Polski" -#: InvenTree/settings.py:625 +#: InvenTree/settings.py:623 msgid "Portuguese" msgstr "Portugalski" -#: InvenTree/settings.py:626 +#: InvenTree/settings.py:624 msgid "Portuguese (Brazilian)" msgstr "Portugalski (Brazylijski)" -#: InvenTree/settings.py:627 +#: InvenTree/settings.py:625 msgid "Russian" msgstr "Rosyjski" -#: InvenTree/settings.py:628 +#: InvenTree/settings.py:626 msgid "Swedish" msgstr "Szwedzki" -#: InvenTree/settings.py:629 +#: InvenTree/settings.py:627 msgid "Thai" msgstr "Tajski" -#: InvenTree/settings.py:630 +#: InvenTree/settings.py:628 msgid "Turkish" msgstr "Turecki" -#: InvenTree/settings.py:631 +#: InvenTree/settings.py:629 msgid "Vietnamese" msgstr "Wietnamski" -#: InvenTree/settings.py:632 +#: InvenTree/settings.py:630 msgid "Chinese" msgstr "Chiński" @@ -621,7 +625,7 @@ msgstr "Podziel z pozycji nadrzędnej" msgid "Split child item" msgstr "Podziel element podrzędny" -#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2080 +#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2084 msgid "Merged stock items" msgstr "Scalone przedmioty magazynowe" @@ -743,7 +747,7 @@ msgid "Build Order Reference" msgstr "Odwołanie do zamówienia wykonania" #: build/models.py:166 order/models.py:240 order/models.py:623 -#: order/models.py:904 part/models.py:2610 +#: order/models.py:904 part/models.py:2617 #: part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 @@ -770,10 +774,10 @@ msgstr "Zamówienie budowy, do którego budowa jest przypisana" #: build/models.py:191 build/templates/build/build_base.html:77 #: build/templates/build/detail.html:29 company/models.py:670 #: order/models.py:1001 order/models.py:1112 order/models.py:1113 -#: part/models.py:336 part/models.py:2139 part/models.py:2154 -#: part/models.py:2173 part/models.py:2191 part/models.py:2290 -#: part/models.py:2410 part/models.py:2500 part/models.py:2585 -#: part/models.py:2861 part/serializers.py:811 +#: part/models.py:343 part/models.py:2146 part/models.py:2161 +#: part/models.py:2180 part/models.py:2198 part/models.py:2297 +#: part/models.py:2417 part/models.py:2507 part/models.py:2592 +#: part/models.py:2868 part/serializers.py:813 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -796,11 +800,11 @@ msgstr "Zamówienie budowy, do którego budowa jest przypisana" #: templates/js/translated/order.js:934 templates/js/translated/order.js:1387 #: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885 #: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507 -#: templates/js/translated/part.js:1134 templates/js/translated/part.js:1206 -#: templates/js/translated/part.js:1402 templates/js/translated/stock.js:582 -#: templates/js/translated/stock.js:747 templates/js/translated/stock.js:954 -#: templates/js/translated/stock.js:1696 templates/js/translated/stock.js:2495 -#: templates/js/translated/stock.js:2690 templates/js/translated/stock.js:2824 +#: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210 +#: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586 +#: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958 +#: templates/js/translated/stock.js:1700 templates/js/translated/stock.js:2504 +#: templates/js/translated/stock.js:2699 templates/js/translated/stock.js:2833 msgid "Part" msgstr "Komponent" @@ -858,7 +862,7 @@ msgid "Build status code" msgstr "Kod statusu budowania" #: build/models.py:251 build/serializers.py:225 order/serializers.py:447 -#: stock/models.py:655 templates/js/translated/order.js:1247 +#: stock/models.py:662 templates/js/translated/order.js:1247 msgid "Batch Code" msgstr "Kod partii" @@ -866,7 +870,7 @@ msgstr "Kod partii" msgid "Batch code for this build output" msgstr "Kod partii dla wyjścia budowy" -#: build/models.py:258 order/models.py:86 part/models.py:931 +#: build/models.py:258 order/models.py:86 part/models.py:938 #: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544 msgid "Creation Date" msgstr "Data utworzenia" @@ -899,7 +903,7 @@ msgstr "Użytkownik, który wydał to zamówienie" #: build/models.py:289 build/templates/build/build_base.html:190 #: build/templates/build/detail.html:115 order/models.py:100 #: order/templates/order/order_base.html:176 -#: order/templates/order/sales_order_base.html:183 part/models.py:935 +#: order/templates/order/sales_order_base.html:183 part/models.py:942 #: report/templates/report/inventree_build_order_base.html:158 #: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754 msgid "Responsible" @@ -912,7 +916,7 @@ msgstr "Użytkownik odpowiedzialny za to zamówienie budowy" #: build/models.py:295 build/templates/build/detail.html:101 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:153 -#: part/templates/part/part_base.html:346 stock/models.py:649 +#: part/templates/part/part_base.html:346 stock/models.py:656 #: stock/templates/stock/item_base.html:205 msgid "External Link" msgstr "Link Zewnętrzny" @@ -978,8 +982,8 @@ msgid "Build to allocate parts" msgstr "" #: build/models.py:1345 build/serializers.py:645 order/serializers.py:1015 -#: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 -#: stock/serializers.py:880 stock/templates/stock/item_base.html:10 +#: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:756 +#: stock/serializers.py:882 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:199 #: templates/js/translated/build.js:741 templates/js/translated/build.js:746 @@ -987,8 +991,8 @@ msgstr "" #: templates/js/translated/order.js:104 templates/js/translated/order.js:2886 #: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193 #: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380 -#: templates/js/translated/stock.js:583 templates/js/translated/stock.js:748 -#: templates/js/translated/stock.js:2568 +#: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752 +#: templates/js/translated/stock.js:2577 msgid "Stock Item" msgstr "Element magazynowy" @@ -998,11 +1002,11 @@ msgstr "Lokalizacja magazynowania przedmiotu" #: build/models.py:1358 build/serializers.py:193 #: build/templates/build/build_base.html:82 -#: build/templates/build/detail.html:34 common/models.py:1678 +#: build/templates/build/detail.html:34 common/models.py:1697 #: company/templates/company/supplier_part.html:279 order/models.py:897 #: order/models.py:1423 order/serializers.py:1155 #: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40 -#: part/models.py:2601 part/templates/part/detail.html:937 +#: part/models.py:2608 part/templates/part/detail.html:937 #: part/templates/part/detail.html:1023 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 @@ -1025,11 +1029,11 @@ msgstr "Lokalizacja magazynowania przedmiotu" #: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207 #: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386 #: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037 -#: templates/js/translated/part.js:1034 templates/js/translated/part.js:2147 -#: templates/js/translated/part.js:2378 templates/js/translated/part.js:2412 -#: templates/js/translated/part.js:2490 templates/js/translated/stock.js:454 -#: templates/js/translated/stock.js:608 templates/js/translated/stock.js:778 -#: templates/js/translated/stock.js:2617 templates/js/translated/stock.js:2702 +#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2156 +#: templates/js/translated/part.js:2387 templates/js/translated/part.js:2421 +#: templates/js/translated/part.js:2499 templates/js/translated/stock.js:458 +#: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782 +#: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711 msgid "Quantity" msgstr "Ilość" @@ -1071,8 +1075,8 @@ msgid "Enter quantity for build output" msgstr "" #: build/serializers.py:208 build/serializers.py:665 order/models.py:318 -#: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 -#: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 +#: order/serializers.py:287 order/serializers.py:442 part/serializers.py:544 +#: part/serializers.py:976 stock/models.py:484 stock/models.py:1251 #: stock/serializers.py:302 msgid "Quantity must be greater than zero" msgstr "Ilość musi być większa niż zero" @@ -1087,7 +1091,7 @@ msgstr "" #: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159 #: stock/serializers.py:311 templates/js/translated/order.js:1258 -#: templates/js/translated/stock.js:267 templates/js/translated/stock.js:455 +#: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459 msgid "Serial Numbers" msgstr "Numer seryjny" @@ -1113,16 +1117,16 @@ msgstr "" #: build/serializers.py:366 order/serializers.py:428 order/serializers.py:532 #: stock/serializers.py:322 stock/serializers.py:453 stock/serializers.py:534 -#: stock/serializers.py:915 stock/serializers.py:1148 +#: stock/serializers.py:917 stock/serializers.py:1150 #: stock/templates/stock/item_base.html:390 #: templates/js/translated/barcode.js:436 #: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753 #: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285 #: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305 #: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394 -#: templates/js/translated/part.js:181 templates/js/translated/stock.js:584 -#: templates/js/translated/stock.js:749 templates/js/translated/stock.js:956 -#: templates/js/translated/stock.js:1850 templates/js/translated/stock.js:2509 +#: templates/js/translated/part.js:181 templates/js/translated/stock.js:588 +#: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960 +#: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518 msgid "Location" msgstr "Lokalizacja" @@ -1135,8 +1139,8 @@ msgstr "" #: order/serializers.py:465 stock/templates/stock/item_base.html:423 #: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505 #: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724 -#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1825 -#: templates/js/translated/stock.js:2586 templates/js/translated/stock.js:2718 +#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829 +#: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727 msgid "Status" msgstr "Status" @@ -1212,8 +1216,8 @@ msgstr "" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:577 build/serializers.py:622 part/models.py:2719 -#: part/models.py:2853 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726 +#: part/models.py:2860 msgid "BOM Item" msgstr "Element BOM" @@ -1229,7 +1233,7 @@ msgstr "" msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:651 stock/serializers.py:767 +#: build/serializers.py:651 stock/serializers.py:769 msgid "Item must be in stock" msgstr "Towar musi znajdować się w magazynie" @@ -1367,7 +1371,7 @@ msgstr "" #: report/templates/report/inventree_build_order_base.html:125 #: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741 #: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552 -#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1038 +#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042 msgid "Target Date" msgstr "Data docelowa" @@ -1445,8 +1449,8 @@ msgstr "" #: stock/templates/stock/item_base.html:170 #: templates/js/translated/build.js:1182 #: templates/js/translated/model_renderers.js:124 -#: templates/js/translated/stock.js:1022 templates/js/translated/stock.js:1839 -#: templates/js/translated/stock.js:2725 +#: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843 +#: templates/js/translated/stock.js:2734 #: templates/js/translated/table_filters.js:159 #: templates/js/translated/table_filters.js:250 msgid "Batch" @@ -1506,7 +1510,7 @@ msgstr "Zamów wymagane komponenty" #: build/templates/build/detail.html:187 #: company/templates/company/detail.html:37 #: company/templates/company/detail.html:85 -#: part/templates/part/category.html:177 templates/js/translated/order.js:977 +#: part/templates/part/category.html:183 templates/js/translated/order.js:977 msgid "Order Parts" msgstr "Zamów komponent" @@ -1559,12 +1563,12 @@ msgid "Delete outputs" msgstr "" #: build/templates/build/detail.html:267 -#: stock/templates/stock/location.html:197 templates/stock_table.html:27 +#: stock/templates/stock/location.html:202 templates/stock_table.html:27 msgid "Printing Actions" msgstr "" #: build/templates/build/detail.html:271 build/templates/build/detail.html:272 -#: stock/templates/stock/location.html:201 templates/stock_table.html:31 +#: stock/templates/stock/location.html:206 templates/stock_table.html:31 msgid "Print labels" msgstr "Drukuj etykiety" @@ -1841,7 +1845,7 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:951 part/models.py:2412 report/models.py:158 +#: common/models.py:951 part/models.py:2419 report/models.py:158 #: templates/js/translated/table_filters.js:38 #: templates/js/translated/table_filters.js:484 msgid "Template" @@ -1851,7 +1855,7 @@ msgstr "Szablon" msgid "Parts are templates by default" msgstr "" -#: common/models.py:958 part/models.py:887 templates/js/translated/bom.js:1448 +#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448 #: templates/js/translated/table_filters.js:176 #: templates/js/translated/table_filters.js:447 msgid "Assembly" @@ -1861,7 +1865,7 @@ msgstr "Złożenie" msgid "Parts can be assembled from other components by default" msgstr "" -#: common/models.py:965 part/models.py:893 +#: common/models.py:965 part/models.py:900 #: templates/js/translated/table_filters.js:455 msgid "Component" msgstr "Komponent" @@ -1870,7 +1874,7 @@ msgstr "Komponent" msgid "Parts can be used as sub-components by default" msgstr "" -#: common/models.py:972 part/models.py:904 +#: common/models.py:972 part/models.py:911 msgid "Purchaseable" msgstr "Możliwość zakupu" @@ -1878,7 +1882,7 @@ msgstr "Możliwość zakupu" msgid "Parts are purchaseable by default" msgstr "Części są domyślnie z możliwością zakupu" -#: common/models.py:979 part/models.py:909 +#: common/models.py:979 part/models.py:916 #: templates/js/translated/table_filters.js:476 msgid "Salable" msgstr "Możliwość sprzedaży" @@ -1887,7 +1891,7 @@ msgstr "Możliwość sprzedaży" msgid "Parts are salable by default" msgstr "Części są domyślnie z możliwością sprzedaży" -#: common/models.py:986 part/models.py:899 +#: common/models.py:986 part/models.py:906 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:108 #: templates/js/translated/table_filters.js:488 @@ -1898,7 +1902,7 @@ msgstr "Możliwość śledzenia" msgid "Parts are trackable by default" msgstr "Części są domyślnie z możliwością śledzenia" -#: common/models.py:993 part/models.py:919 +#: common/models.py:993 part/models.py:926 #: part/templates/part/part_base.html:151 #: templates/js/translated/table_filters.js:42 #: templates/js/translated/table_filters.js:492 @@ -1982,608 +1986,632 @@ msgid "Format to display the part name" msgstr "" #: common/models.py:1074 +msgid "Part Category Default Icon" +msgstr "" + +#: common/models.py:1075 +msgid "Part category default icon (empty means no icon)" +msgstr "" + +#: common/models.py:1080 msgid "Enable label printing" msgstr "Włącz drukowanie etykiet" -#: common/models.py:1075 +#: common/models.py:1081 msgid "Enable label printing from the web interface" msgstr "Włącz drukowanie etykiet z interfejsu WWW" -#: common/models.py:1081 +#: common/models.py:1087 msgid "Label Image DPI" msgstr "DPI etykiety" -#: common/models.py:1082 +#: common/models.py:1088 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/models.py:1091 +#: common/models.py:1097 msgid "Enable Reports" msgstr "Włącz raporty" -#: common/models.py:1092 +#: common/models.py:1098 msgid "Enable generation of reports" msgstr "" -#: common/models.py:1098 templates/stats.html:25 +#: common/models.py:1104 templates/stats.html:25 msgid "Debug Mode" msgstr "Tryb Debugowania" -#: common/models.py:1099 +#: common/models.py:1105 msgid "Generate reports in debug mode (HTML output)" msgstr "" -#: common/models.py:1105 +#: common/models.py:1111 msgid "Page Size" msgstr "Rozmiar strony" -#: common/models.py:1106 +#: common/models.py:1112 msgid "Default page size for PDF reports" msgstr "Domyślna wielkość strony dla raportów PDF" -#: common/models.py:1116 +#: common/models.py:1122 msgid "Enable Test Reports" msgstr "" -#: common/models.py:1117 +#: common/models.py:1123 msgid "Enable generation of test reports" msgstr "Włącz generowanie raportów testów" -#: common/models.py:1123 +#: common/models.py:1129 msgid "Attach Test Reports" msgstr "" -#: common/models.py:1124 +#: common/models.py:1130 msgid "When printing a Test Report, attach a copy of the Test Report to the associated Stock Item" msgstr "" -#: common/models.py:1130 +#: common/models.py:1136 msgid "Batch Code Template" msgstr "" -#: common/models.py:1131 +#: common/models.py:1137 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/models.py:1136 +#: common/models.py:1142 msgid "Stock Expiry" msgstr "" -#: common/models.py:1137 +#: common/models.py:1143 msgid "Enable stock expiry functionality" msgstr "" -#: common/models.py:1143 +#: common/models.py:1149 msgid "Sell Expired Stock" msgstr "" -#: common/models.py:1144 +#: common/models.py:1150 msgid "Allow sale of expired stock" msgstr "" -#: common/models.py:1150 +#: common/models.py:1156 msgid "Stock Stale Time" msgstr "" -#: common/models.py:1151 +#: common/models.py:1157 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/models.py:1153 +#: common/models.py:1159 msgid "days" msgstr "dni" -#: common/models.py:1158 +#: common/models.py:1164 msgid "Build Expired Stock" msgstr "" -#: common/models.py:1159 +#: common/models.py:1165 msgid "Allow building with expired stock" msgstr "" -#: common/models.py:1165 +#: common/models.py:1171 msgid "Stock Ownership Control" msgstr "" -#: common/models.py:1166 +#: common/models.py:1172 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/models.py:1172 -msgid "Build Order Reference Pattern" -msgstr "" - -#: common/models.py:1173 -msgid "Required pattern for generating Build Order reference field" +#: common/models.py:1178 +msgid "Stock Location Default Icon" msgstr "" #: common/models.py:1179 +msgid "Stock location default icon (empty means no icon)" +msgstr "" + +#: common/models.py:1184 +msgid "Build Order Reference Pattern" +msgstr "" + +#: common/models.py:1185 +msgid "Required pattern for generating Build Order reference field" +msgstr "" + +#: common/models.py:1191 msgid "Sales Order Reference Pattern" msgstr "" -#: common/models.py:1180 +#: common/models.py:1192 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/models.py:1186 +#: common/models.py:1198 msgid "Sales Order Default Shipment" msgstr "" -#: common/models.py:1187 +#: common/models.py:1199 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/models.py:1193 +#: common/models.py:1205 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/models.py:1194 +#: common/models.py:1206 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/models.py:1201 +#: common/models.py:1213 msgid "Enable password forgot" msgstr "Włącz opcję zapomnianego hasła" -#: common/models.py:1202 +#: common/models.py:1214 msgid "Enable password forgot function on the login pages" msgstr "Włącz funkcję zapomnianego hasła na stronach logowania" -#: common/models.py:1208 +#: common/models.py:1220 msgid "Enable registration" msgstr "Włącz rejestrację" -#: common/models.py:1209 +#: common/models.py:1221 msgid "Enable self-registration for users on the login pages" msgstr "Włącz samodzielną rejestrację dla użytkowników na stronach logowania" -#: common/models.py:1215 +#: common/models.py:1227 msgid "Enable SSO" msgstr "Włącz SSO" -#: common/models.py:1216 +#: common/models.py:1228 msgid "Enable SSO on the login pages" msgstr "Włącz SSO na stronach logowania" -#: common/models.py:1222 +#: common/models.py:1234 msgid "Email required" msgstr "Adres e-mail jest wymagany" -#: common/models.py:1223 +#: common/models.py:1235 msgid "Require user to supply mail on signup" msgstr "" -#: common/models.py:1229 +#: common/models.py:1241 msgid "Auto-fill SSO users" msgstr "Autouzupełnianie użytkowników SSO" -#: common/models.py:1230 +#: common/models.py:1242 msgid "Automatically fill out user-details from SSO account-data" msgstr "Automatycznie wypełnij dane użytkownika z danych konta SSO" -#: common/models.py:1236 +#: common/models.py:1248 msgid "Mail twice" msgstr "E-mail dwa razy" -#: common/models.py:1237 +#: common/models.py:1249 msgid "On signup ask users twice for their mail" msgstr "Przy rejestracji dwukrotnie zapytaj użytkowników o ich adres e-mail" -#: common/models.py:1243 +#: common/models.py:1255 msgid "Password twice" msgstr "Hasło dwukrotnie" -#: common/models.py:1244 +#: common/models.py:1256 msgid "On signup ask users twice for their password" msgstr "Przy rejestracji dwukrotnie zapytaj użytkowników o ich hasło" -#: common/models.py:1250 +#: common/models.py:1262 msgid "Group on signup" msgstr "Grupuj przy rejestracji" -#: common/models.py:1251 +#: common/models.py:1263 msgid "Group to which new users are assigned on registration" msgstr "" -#: common/models.py:1257 +#: common/models.py:1269 msgid "Enforce MFA" msgstr "Wymuś MFA" -#: common/models.py:1258 +#: common/models.py:1270 msgid "Users must use multifactor security." msgstr "Użytkownicy muszą używać zabezpieczeń wieloskładnikowych." -#: common/models.py:1264 +#: common/models.py:1276 msgid "Check plugins on startup" msgstr "Sprawdź wtyczki przy starcie" -#: common/models.py:1265 +#: common/models.py:1277 msgid "Check that all plugins are installed on startup - enable in container enviroments" msgstr "" -#: common/models.py:1273 +#: common/models.py:1284 +msgid "Check plugin signatures" +msgstr "" + +#: common/models.py:1285 +msgid "Check and show signatures for plugins" +msgstr "" + +#: common/models.py:1292 msgid "Enable URL integration" msgstr "Włącz integrację URL" -#: common/models.py:1274 +#: common/models.py:1293 msgid "Enable plugins to add URL routes" msgstr "Włącz wtyczki, aby dodać ścieżki URL" -#: common/models.py:1281 +#: common/models.py:1300 msgid "Enable navigation integration" msgstr "" -#: common/models.py:1282 +#: common/models.py:1301 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/models.py:1289 +#: common/models.py:1308 msgid "Enable app integration" msgstr "Włącz integrację z aplikacją" -#: common/models.py:1290 +#: common/models.py:1309 msgid "Enable plugins to add apps" msgstr "Włącz wtyczki, aby dodać aplikacje" -#: common/models.py:1297 +#: common/models.py:1316 msgid "Enable schedule integration" msgstr "" -#: common/models.py:1298 +#: common/models.py:1317 msgid "Enable plugins to run scheduled tasks" msgstr "Włącz wtyczki, aby uruchamiać zaplanowane zadania" -#: common/models.py:1305 +#: common/models.py:1324 msgid "Enable event integration" msgstr "" -#: common/models.py:1306 +#: common/models.py:1325 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:1323 common/models.py:1639 +#: common/models.py:1342 common/models.py:1658 msgid "Settings key (must be unique - case insensitive" msgstr "Klucz ustawień (musi być unikalny - niewrażliwy na wielkość liter" -#: common/models.py:1345 +#: common/models.py:1364 msgid "Show subscribed parts" msgstr "Pokaż obserwowane części" -#: common/models.py:1346 +#: common/models.py:1365 msgid "Show subscribed parts on the homepage" msgstr "Pokaż obserwowane części na stronie głównej" -#: common/models.py:1352 +#: common/models.py:1371 msgid "Show subscribed categories" msgstr "Pokaż obserwowane kategorie" -#: common/models.py:1353 +#: common/models.py:1372 msgid "Show subscribed part categories on the homepage" msgstr "Pokaż obserwowane kategorie części na stronie głównej" -#: common/models.py:1359 +#: common/models.py:1378 msgid "Show latest parts" msgstr "Pokaż najnowsze części" -#: common/models.py:1360 +#: common/models.py:1379 msgid "Show latest parts on the homepage" msgstr "Pokaż najnowsze części na stronie głównej" -#: common/models.py:1366 +#: common/models.py:1385 msgid "Recent Part Count" msgstr "" -#: common/models.py:1367 +#: common/models.py:1386 msgid "Number of recent parts to display on index page" msgstr "" -#: common/models.py:1373 +#: common/models.py:1392 msgid "Show unvalidated BOMs" msgstr "" -#: common/models.py:1374 +#: common/models.py:1393 msgid "Show BOMs that await validation on the homepage" msgstr "" -#: common/models.py:1380 +#: common/models.py:1399 msgid "Show recent stock changes" msgstr "" -#: common/models.py:1381 +#: common/models.py:1400 msgid "Show recently changed stock items on the homepage" msgstr "" -#: common/models.py:1387 +#: common/models.py:1406 msgid "Recent Stock Count" msgstr "" -#: common/models.py:1388 +#: common/models.py:1407 msgid "Number of recent stock items to display on index page" msgstr "" -#: common/models.py:1394 +#: common/models.py:1413 msgid "Show low stock" msgstr "Pokaż niski stan magazynowy" -#: common/models.py:1395 +#: common/models.py:1414 msgid "Show low stock items on the homepage" msgstr "Pokaż elementy o niskim stanie na stronie głównej" -#: common/models.py:1401 +#: common/models.py:1420 msgid "Show depleted stock" msgstr "" -#: common/models.py:1402 +#: common/models.py:1421 msgid "Show depleted stock items on the homepage" msgstr "" -#: common/models.py:1408 +#: common/models.py:1427 msgid "Show needed stock" msgstr "Pokaż wymagany stan zapasów" -#: common/models.py:1409 +#: common/models.py:1428 msgid "Show stock items needed for builds on the homepage" msgstr "" -#: common/models.py:1415 +#: common/models.py:1434 msgid "Show expired stock" msgstr "" -#: common/models.py:1416 +#: common/models.py:1435 msgid "Show expired stock items on the homepage" msgstr "" -#: common/models.py:1422 +#: common/models.py:1441 msgid "Show stale stock" msgstr "" -#: common/models.py:1423 +#: common/models.py:1442 msgid "Show stale stock items on the homepage" msgstr "" -#: common/models.py:1429 +#: common/models.py:1448 msgid "Show pending builds" msgstr "" -#: common/models.py:1430 +#: common/models.py:1449 msgid "Show pending builds on the homepage" msgstr "" -#: common/models.py:1436 +#: common/models.py:1455 msgid "Show overdue builds" msgstr "" -#: common/models.py:1437 +#: common/models.py:1456 msgid "Show overdue builds on the homepage" msgstr "" -#: common/models.py:1443 +#: common/models.py:1462 msgid "Show outstanding POs" msgstr "" -#: common/models.py:1444 +#: common/models.py:1463 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:1450 +#: common/models.py:1469 msgid "Show overdue POs" msgstr "" -#: common/models.py:1451 +#: common/models.py:1470 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:1457 +#: common/models.py:1476 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:1458 +#: common/models.py:1477 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:1464 +#: common/models.py:1483 msgid "Show overdue SOs" msgstr "" -#: common/models.py:1465 +#: common/models.py:1484 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:1471 +#: common/models.py:1490 msgid "Inline label display" msgstr "" -#: common/models.py:1472 +#: common/models.py:1491 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1478 +#: common/models.py:1497 msgid "Inline report display" msgstr "" -#: common/models.py:1479 +#: common/models.py:1498 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1485 +#: common/models.py:1504 msgid "Search Parts" msgstr "Szukaj części" -#: common/models.py:1486 +#: common/models.py:1505 msgid "Display parts in search preview window" msgstr "" -#: common/models.py:1492 +#: common/models.py:1511 msgid "Seach Supplier Parts" msgstr "" -#: common/models.py:1493 +#: common/models.py:1512 msgid "Display supplier parts in search preview window" msgstr "" -#: common/models.py:1499 +#: common/models.py:1518 msgid "Search Manufacturer Parts" msgstr "" -#: common/models.py:1500 +#: common/models.py:1519 msgid "Display manufacturer parts in search preview window" msgstr "" -#: common/models.py:1506 +#: common/models.py:1525 msgid "Hide Inactive Parts" msgstr "Ukryj nieaktywne części" -#: common/models.py:1507 +#: common/models.py:1526 msgid "Excluded inactive parts from search preview window" msgstr "" -#: common/models.py:1513 +#: common/models.py:1532 msgid "Search Categories" msgstr "" -#: common/models.py:1514 +#: common/models.py:1533 msgid "Display part categories in search preview window" msgstr "" -#: common/models.py:1520 +#: common/models.py:1539 msgid "Search Stock" msgstr "" -#: common/models.py:1521 +#: common/models.py:1540 msgid "Display stock items in search preview window" msgstr "" -#: common/models.py:1527 +#: common/models.py:1546 msgid "Hide Unavailable Stock Items" msgstr "" -#: common/models.py:1528 +#: common/models.py:1547 msgid "Exclude stock items which are not available from the search preview window" msgstr "" -#: common/models.py:1534 +#: common/models.py:1553 msgid "Search Locations" msgstr "" -#: common/models.py:1535 +#: common/models.py:1554 msgid "Display stock locations in search preview window" msgstr "" -#: common/models.py:1541 +#: common/models.py:1560 msgid "Search Companies" msgstr "" -#: common/models.py:1542 +#: common/models.py:1561 msgid "Display companies in search preview window" msgstr "" -#: common/models.py:1548 +#: common/models.py:1567 msgid "Search Purchase Orders" msgstr "" -#: common/models.py:1549 +#: common/models.py:1568 msgid "Display purchase orders in search preview window" msgstr "" -#: common/models.py:1555 +#: common/models.py:1574 msgid "Exclude Inactive Purchase Orders" msgstr "" -#: common/models.py:1556 +#: common/models.py:1575 msgid "Exclude inactive purchase orders from search preview window" msgstr "" -#: common/models.py:1562 +#: common/models.py:1581 msgid "Search Sales Orders" msgstr "" -#: common/models.py:1563 +#: common/models.py:1582 msgid "Display sales orders in search preview window" msgstr "" -#: common/models.py:1569 +#: common/models.py:1588 msgid "Exclude Inactive Sales Orders" msgstr "" -#: common/models.py:1570 +#: common/models.py:1589 msgid "Exclude inactive sales orders from search preview window" msgstr "" -#: common/models.py:1576 +#: common/models.py:1595 msgid "Search Preview Results" msgstr "" -#: common/models.py:1577 +#: common/models.py:1596 msgid "Number of results to show in each section of the search preview window" msgstr "" -#: common/models.py:1583 +#: common/models.py:1602 msgid "Show Quantity in Forms" msgstr "Pokaż ilość w formularzach" -#: common/models.py:1584 +#: common/models.py:1603 msgid "Display available part quantity in some forms" msgstr "" -#: common/models.py:1590 +#: common/models.py:1609 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:1591 +#: common/models.py:1610 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:1597 +#: common/models.py:1616 msgid "Fixed Navbar" msgstr "Stały pasek nawigacyjny" -#: common/models.py:1598 +#: common/models.py:1617 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:1604 +#: common/models.py:1623 msgid "Date Format" msgstr "Format daty" -#: common/models.py:1605 +#: common/models.py:1624 msgid "Preferred format for displaying dates" msgstr "Preferowany format wyświetlania dat" -#: common/models.py:1619 part/templates/part/detail.html:41 +#: common/models.py:1638 part/templates/part/detail.html:41 msgid "Part Scheduling" msgstr "Planowanie komponentów" -#: common/models.py:1620 +#: common/models.py:1639 msgid "Display part scheduling information" msgstr "" -#: common/models.py:1679 +#: common/models.py:1698 msgid "Price break quantity" msgstr "" -#: common/models.py:1686 company/serializers.py:366 +#: common/models.py:1705 company/serializers.py:366 #: company/templates/company/supplier_part.html:284 order/models.py:938 -#: templates/js/translated/part.js:1065 templates/js/translated/part.js:2152 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2161 msgid "Price" msgstr "Cena" -#: common/models.py:1687 +#: common/models.py:1706 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:1847 common/models.py:2025 +#: common/models.py:1866 common/models.py:2044 msgid "Endpoint" msgstr "Punkt końcowy" -#: common/models.py:1848 +#: common/models.py:1867 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:1857 +#: common/models.py:1876 msgid "Name for this webhook" msgstr "" -#: common/models.py:1862 part/models.py:914 plugin/models.py:99 +#: common/models.py:1881 part/models.py:921 plugin/models.py:100 #: templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:104 #: templates/js/translated/table_filters.js:316 @@ -2591,67 +2619,67 @@ msgstr "" msgid "Active" msgstr "Aktywny" -#: common/models.py:1863 +#: common/models.py:1882 msgid "Is this webhook active" msgstr "" -#: common/models.py:1877 +#: common/models.py:1896 msgid "Token" msgstr "" -#: common/models.py:1878 +#: common/models.py:1897 msgid "Token for access" msgstr "" -#: common/models.py:1885 +#: common/models.py:1904 msgid "Secret" msgstr "Sekret" -#: common/models.py:1886 +#: common/models.py:1905 msgid "Shared secret for HMAC" msgstr "Współdzielony sekret dla HMAC" -#: common/models.py:1992 +#: common/models.py:2011 msgid "Message ID" msgstr "Id wiadomości" -#: common/models.py:1993 +#: common/models.py:2012 msgid "Unique identifier for this message" msgstr "Unikalny identyfikator dla tej wiadomości" -#: common/models.py:2001 +#: common/models.py:2020 msgid "Host" msgstr "" -#: common/models.py:2002 +#: common/models.py:2021 msgid "Host from which this message was received" msgstr "Host, od którego otrzymano tę wiadomość" -#: common/models.py:2009 +#: common/models.py:2028 msgid "Header" msgstr "Nagłówek" -#: common/models.py:2010 +#: common/models.py:2029 msgid "Header of this message" msgstr "Nagłówek tej wiadomości" -#: common/models.py:2016 +#: common/models.py:2035 msgid "Body" msgstr "Zawartość" -#: common/models.py:2017 +#: common/models.py:2036 msgid "Body of this message" msgstr "" -#: common/models.py:2026 +#: common/models.py:2045 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2031 +#: common/models.py:2050 msgid "Worked on" msgstr "" -#: common/models.py:2032 +#: common/models.py:2051 msgid "Was the work on this message finished?" msgstr "" @@ -2758,7 +2786,7 @@ msgstr "Punkt kontaktowy" msgid "Link to external company information" msgstr "Link do informacji o zewnętrznym przedsiębiorstwie" -#: company/models.py:135 part/models.py:808 +#: company/models.py:135 part/models.py:815 msgid "Image" msgstr "Obraz" @@ -2791,8 +2819,8 @@ msgid "Does this company manufacture parts?" msgstr "Czy to przedsiębiorstwo produkuje części?" #: company/models.py:148 company/serializers.py:372 -#: company/templates/company/company_base.html:106 part/serializers.py:151 -#: part/serializers.py:182 stock/serializers.py:180 +#: company/templates/company/company_base.html:106 part/serializers.py:153 +#: part/serializers.py:184 stock/serializers.py:180 msgid "Currency" msgstr "Waluta" @@ -2800,7 +2828,7 @@ msgstr "Waluta" msgid "Default currency used for this company" msgstr "" -#: company/models.py:248 company/models.py:481 stock/models.py:591 +#: company/models.py:248 company/models.py:481 stock/models.py:598 #: stock/serializers.py:87 stock/templates/stock/item_base.html:148 #: templates/js/translated/bom.js:543 msgid "Base Part" @@ -2832,7 +2860,7 @@ msgstr "Wybierz producenta" #: templates/js/translated/company.js:497 #: templates/js/translated/company.js:649 #: templates/js/translated/company.js:937 templates/js/translated/order.js:1971 -#: templates/js/translated/part.js:247 templates/js/translated/part.js:1023 +#: templates/js/translated/part.js:247 templates/js/translated/part.js:1027 msgid "MPN" msgstr "" @@ -2861,9 +2889,9 @@ msgstr "" #: company/models.py:365 #: report/templates/report/inventree_test_report_base.html:95 -#: stock/models.py:2088 templates/js/translated/company.js:546 -#: templates/js/translated/company.js:764 templates/js/translated/part.js:845 -#: templates/js/translated/stock.js:1356 +#: stock/models.py:2095 templates/js/translated/company.js:546 +#: templates/js/translated/company.js:764 templates/js/translated/part.js:849 +#: templates/js/translated/stock.js:1360 msgid "Value" msgstr "Wartość" @@ -2871,10 +2899,10 @@ msgstr "Wartość" msgid "Parameter value" msgstr "" -#: company/models.py:372 part/models.py:881 part/models.py:2379 +#: company/models.py:372 part/models.py:888 part/models.py:2386 #: part/templates/part/part_base.html:280 #: templates/InvenTree/settings/settings.html:352 -#: templates/js/translated/company.js:770 templates/js/translated/part.js:851 +#: templates/js/translated/company.js:770 templates/js/translated/part.js:855 msgid "Units" msgstr "Jednostki" @@ -2894,7 +2922,7 @@ msgstr "" #: templates/js/translated/company.js:268 #: templates/js/translated/company.js:401 #: templates/js/translated/company.js:893 templates/js/translated/order.js:1707 -#: templates/js/translated/part.js:217 templates/js/translated/part.js:991 +#: templates/js/translated/part.js:217 templates/js/translated/part.js:995 #: templates/js/translated/table_filters.js:423 msgid "Supplier" msgstr "Dostawca" @@ -2906,7 +2934,7 @@ msgstr "Wybierz dostawcę" #: company/models.py:497 company/templates/company/supplier_part.html:118 #: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267 #: templates/js/translated/order.js:1958 templates/js/translated/part.js:228 -#: templates/js/translated/part.js:1009 +#: templates/js/translated/part.js:1013 msgid "SKU" msgstr "" @@ -2927,23 +2955,23 @@ msgid "Supplier part description" msgstr "" #: company/models.py:522 company/templates/company/supplier_part.html:146 -#: part/models.py:2613 part/templates/part/upload_bom.html:59 +#: part/models.py:2620 part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401 msgid "Note" msgstr "Uwaga" -#: company/models.py:526 part/models.py:1735 +#: company/models.py:526 part/models.py:1742 msgid "base cost" msgstr "koszt podstawowy" -#: company/models.py:526 part/models.py:1735 +#: company/models.py:526 part/models.py:1742 msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:528 company/templates/company/supplier_part.html:139 -#: stock/models.py:617 stock/templates/stock/item_base.html:245 -#: templates/js/translated/company.js:969 templates/js/translated/stock.js:1972 +#: stock/models.py:624 stock/templates/stock/item_base.html:245 +#: templates/js/translated/company.js:969 templates/js/translated/stock.js:1976 msgid "Packaging" msgstr "Opakowanie" @@ -2951,7 +2979,7 @@ msgstr "Opakowanie" msgid "Part packaging" msgstr "Opakowanie części" -#: company/models.py:530 part/models.py:1737 +#: company/models.py:530 part/models.py:1744 msgid "multiple" msgstr "wielokrotność" @@ -2964,7 +2992,7 @@ msgstr "" #: templates/email/low_stock_notification.html:18 #: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789 #: templates/js/translated/build.js:2645 templates/js/translated/company.js:979 -#: templates/js/translated/part.js:596 templates/js/translated/part.js:599 +#: templates/js/translated/part.js:600 templates/js/translated/part.js:603 #: templates/js/translated/table_filters.js:186 msgid "Available" msgstr "Dostępne" @@ -3037,12 +3065,12 @@ msgid "Download image from URL" msgstr "Pobierz obraz z adresu URL" #: company/templates/company/company_base.html:86 order/models.py:637 -#: order/templates/order/sales_order_base.html:116 stock/models.py:636 -#: stock/models.py:637 stock/serializers.py:809 +#: order/templates/order/sales_order_base.html:116 stock/models.py:643 +#: stock/models.py:644 stock/serializers.py:811 #: stock/templates/stock/item_base.html:401 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:393 templates/js/translated/order.js:2513 -#: templates/js/translated/stock.js:2550 +#: templates/js/translated/stock.js:2559 #: templates/js/translated/table_filters.js:427 msgid "Customer" msgstr "Klient" @@ -3083,7 +3111,7 @@ msgstr "Nowy dostawca części" #: company/templates/company/detail.html:36 #: company/templates/company/detail.html:84 -#: part/templates/part/category.html:176 +#: part/templates/part/category.html:182 msgid "Order parts" msgstr "Zamów komponenty" @@ -3231,7 +3259,7 @@ msgstr "Parametry" #: company/templates/company/manufacturer_part.html:170 #: part/templates/part/detail.html:186 #: templates/InvenTree/settings/category.html:12 -#: templates/InvenTree/settings/part.html:66 +#: templates/InvenTree/settings/part.html:68 msgid "New Parameter" msgstr "Nowy parametr" @@ -3261,10 +3289,10 @@ msgid "Assigned Stock Items" msgstr "" #: company/templates/company/supplier_part.html:7 -#: company/templates/company/supplier_part.html:24 stock/models.py:600 +#: company/templates/company/supplier_part.html:24 stock/models.py:607 #: stock/templates/stock/item_base.html:238 #: templates/js/translated/company.js:909 templates/js/translated/order.js:935 -#: templates/js/translated/stock.js:1929 +#: templates/js/translated/stock.js:1933 msgid "Supplier Part" msgstr "" @@ -3308,13 +3336,13 @@ msgid "Supplier Part Stock" msgstr "" #: company/templates/company/supplier_part.html:168 -#: part/templates/part/detail.html:24 stock/templates/stock/location.html:176 +#: part/templates/part/detail.html:24 stock/templates/stock/location.html:181 msgid "Create new stock item" msgstr "Utwórz nowy towar" #: company/templates/company/supplier_part.html:169 -#: part/templates/part/detail.html:25 stock/templates/stock/location.html:177 -#: templates/js/translated/stock.js:431 +#: part/templates/part/detail.html:25 stock/templates/stock/location.html:182 +#: templates/js/translated/stock.js:435 msgid "New Stock Item" msgstr "Nowy towar" @@ -3330,7 +3358,7 @@ msgstr "Informacja cenowa" #: company/templates/company/supplier_part.html:212 #: company/templates/company/supplier_part.html:326 -#: part/templates/part/prices.html:276 templates/js/translated/part.js:2224 +#: part/templates/part/prices.html:276 templates/js/translated/part.js:2233 msgid "Add Price Break" msgstr "" @@ -3339,12 +3367,12 @@ msgid "No price break information found" msgstr "" #: company/templates/company/supplier_part.html:252 -#: templates/js/translated/part.js:2234 +#: templates/js/translated/part.js:2243 msgid "Delete Price Break" msgstr "" #: company/templates/company/supplier_part.html:266 -#: templates/js/translated/part.js:2248 +#: templates/js/translated/part.js:2257 msgid "Edit Price Break" msgstr "Edytuj przedział cenowy" @@ -3366,13 +3394,13 @@ msgstr "" #: company/templates/company/supplier_part_navbar.html:15 #: part/templates/part/part_sidebar.html:14 -#: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:19 +#: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:24 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:151 #: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/bom.js:555 templates/js/translated/part.js:747 -#: templates/js/translated/part.js:1295 templates/js/translated/part.js:1456 -#: templates/js/translated/stock.js:955 templates/js/translated/stock.js:1750 +#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751 +#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460 +#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754 #: templates/navbar.html:31 msgid "Stock" msgstr "Stan" @@ -3392,14 +3420,14 @@ msgid "Pricing" msgstr "Cennik" #: company/templates/company/supplier_part_sidebar.html:5 -#: part/templates/part/category.html:197 +#: part/templates/part/category.html:203 #: part/templates/part/category_sidebar.html:17 -#: stock/templates/stock/location.html:147 -#: stock/templates/stock/location.html:161 -#: stock/templates/stock/location.html:173 +#: stock/templates/stock/location.html:152 +#: stock/templates/stock/location.html:166 +#: stock/templates/stock/location.html:178 #: stock/templates/stock/location_sidebar.html:7 #: templates/InvenTree/search.html:153 templates/js/translated/search.js:223 -#: templates/js/translated/stock.js:2427 users/models.py:40 +#: templates/js/translated/stock.js:2436 users/models.py:40 msgid "Stock Items" msgstr "Towary" @@ -3656,8 +3684,8 @@ msgstr "Zamówienie" #: stock/templates/stock/item_base.html:184 #: templates/email/overdue_purchase_order.html:15 #: templates/js/translated/order.js:936 templates/js/translated/order.js:1691 -#: templates/js/translated/part.js:968 templates/js/translated/stock.js:1909 -#: templates/js/translated/stock.js:2531 +#: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913 +#: templates/js/translated/stock.js:2540 msgid "Purchase Order" msgstr "Zlecenie zakupu" @@ -3667,7 +3695,7 @@ msgstr "" #: order/models.py:1009 order/templates/order/order_base.html:169 #: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073 -#: templates/js/translated/part.js:1060 templates/js/translated/part.js:1087 +#: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091 #: templates/js/translated/table_filters.js:338 msgid "Received" msgstr "Odebrane" @@ -3676,9 +3704,9 @@ msgstr "Odebrane" msgid "Number of items received" msgstr "" -#: order/models.py:1017 part/templates/part/prices.html:181 stock/models.py:727 +#: order/models.py:1017 part/templates/part/prices.html:181 stock/models.py:734 #: stock/serializers.py:171 stock/templates/stock/item_base.html:191 -#: templates/js/translated/stock.js:1960 +#: templates/js/translated/stock.js:1964 msgid "Purchase Price" msgstr "Cena zakupu" @@ -4066,8 +4094,8 @@ msgstr "Wybierz dostawcę części" #: templates/js/translated/bom.js:77 templates/js/translated/build.js:431 #: templates/js/translated/build.js:583 templates/js/translated/build.js:1974 #: templates/js/translated/order.js:884 templates/js/translated/order.js:1337 -#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:621 -#: templates/js/translated/stock.js:789 +#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625 +#: templates/js/translated/stock.js:793 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "Usuń wiersz" @@ -4261,8 +4289,8 @@ msgstr "" msgid "This field is required" msgstr "To pole jest wymagane" -#: part/bom.py:127 part/models.py:98 part/models.py:817 -#: part/templates/part/category.html:108 part/templates/part/part_base.html:330 +#: part/bom.py:127 part/models.py:98 part/models.py:824 +#: part/templates/part/category.html:114 part/templates/part/part_base.html:330 msgid "Default Location" msgstr "Domyślna lokalizacja" @@ -4276,9 +4304,9 @@ msgid "Available Stock" msgstr "Dostępna ilość" #: part/bom.py:130 part/templates/part/part_base.html:207 -#: templates/js/translated/bom.js:947 templates/js/translated/part.js:586 -#: templates/js/translated/part.js:606 templates/js/translated/part.js:1298 -#: templates/js/translated/part.js:1470 templates/js/translated/part.js:1486 +#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590 +#: templates/js/translated/part.js:610 templates/js/translated/part.js:1302 +#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "W Zamówieniu" @@ -4299,516 +4327,524 @@ msgstr "Domyślne słowa kluczowe" msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:115 part/models.py:2455 part/templates/part/category.html:15 +#: part/models.py:107 stock/models.py:84 +msgid "Icon" +msgstr "" + +#: part/models.py:108 stock/models.py:85 +msgid "Icon (optional)" +msgstr "" + +#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "Kategoria komponentu" -#: part/models.py:116 part/templates/part/category.html:128 +#: part/models.py:123 part/templates/part/category.html:134 #: templates/InvenTree/search.html:95 templates/js/translated/search.js:198 #: users/models.py:37 msgid "Part Categories" msgstr "Kategorie części" -#: part/models.py:337 part/templates/part/cat_link.html:3 -#: part/templates/part/category.html:17 part/templates/part/category.html:133 -#: part/templates/part/category.html:153 +#: part/models.py:344 part/templates/part/cat_link.html:3 +#: part/templates/part/category.html:23 part/templates/part/category.html:139 +#: part/templates/part/category.html:159 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82 #: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:1946 templates/js/translated/search.js:144 +#: templates/js/translated/part.js:1955 templates/js/translated/search.js:144 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "Części" -#: part/models.py:422 +#: part/models.py:429 msgid "Invalid choice for parent part" msgstr "Nieprawidłowy wybór dla części nadrzędnej" -#: part/models.py:492 part/models.py:504 +#: part/models.py:499 part/models.py:511 #, python-brace-format msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)" msgstr "Część '{p1}' jest używana w BOM dla '{p2}' (rekursywne)" -#: part/models.py:621 +#: part/models.py:628 msgid "Next available serial numbers are" msgstr "" -#: part/models.py:625 +#: part/models.py:632 msgid "Next available serial number is" msgstr "" -#: part/models.py:630 +#: part/models.py:637 msgid "Most recent serial number is" msgstr "" -#: part/models.py:711 +#: part/models.py:718 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:738 part/models.py:2509 +#: part/models.py:745 part/models.py:2516 msgid "Part name" msgstr "Nazwa komponentu" -#: part/models.py:745 +#: part/models.py:752 msgid "Is Template" msgstr "Czy szablon" -#: part/models.py:746 +#: part/models.py:753 msgid "Is this part a template part?" msgstr "Czy ta część stanowi szablon części?" -#: part/models.py:756 +#: part/models.py:763 msgid "Is this part a variant of another part?" msgstr "Czy ta część jest wariantem innej części?" -#: part/models.py:757 +#: part/models.py:764 msgid "Variant Of" msgstr "Wariant" -#: part/models.py:763 +#: part/models.py:770 msgid "Part description" msgstr "Opis komponentu" -#: part/models.py:768 part/templates/part/category.html:86 +#: part/models.py:775 part/templates/part/category.html:92 #: part/templates/part/part_base.html:294 msgid "Keywords" msgstr "Słowa kluczowe" -#: part/models.py:769 +#: part/models.py:776 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:776 part/models.py:2211 part/models.py:2454 +#: part/models.py:783 part/models.py:2218 part/models.py:2461 #: part/templates/part/part_base.html:257 #: templates/InvenTree/settings/settings.html:232 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1438 templates/js/translated/part.js:1664 +#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1668 msgid "Category" msgstr "Kategoria" -#: part/models.py:777 +#: part/models.py:784 msgid "Part category" msgstr "" -#: part/models.py:782 part/templates/part/part_base.html:266 -#: templates/js/translated/part.js:735 templates/js/translated/part.js:1391 -#: templates/js/translated/stock.js:1722 +#: part/models.py:789 part/templates/part/part_base.html:266 +#: templates/js/translated/part.js:739 templates/js/translated/part.js:1395 +#: templates/js/translated/stock.js:1726 msgid "IPN" msgstr "" -#: part/models.py:783 +#: part/models.py:790 msgid "Internal Part Number" msgstr "" -#: part/models.py:789 +#: part/models.py:796 msgid "Part revision or version number" msgstr "" -#: part/models.py:790 part/templates/part/part_base.html:273 -#: report/models.py:171 templates/js/translated/part.js:739 +#: part/models.py:797 part/templates/part/part_base.html:273 +#: report/models.py:171 templates/js/translated/part.js:743 msgid "Revision" msgstr "Wersja" -#: part/models.py:815 +#: part/models.py:822 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:860 part/templates/part/part_base.html:339 +#: part/models.py:867 part/templates/part/part_base.html:339 msgid "Default Supplier" msgstr "" -#: part/models.py:861 +#: part/models.py:868 msgid "Default supplier part" msgstr "" -#: part/models.py:868 +#: part/models.py:875 msgid "Default Expiry" msgstr "Domyślne wygasanie" -#: part/models.py:869 +#: part/models.py:876 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:874 part/templates/part/part_base.html:200 +#: part/models.py:881 part/templates/part/part_base.html:200 msgid "Minimum Stock" msgstr "Minimalny stan magazynowy" -#: part/models.py:875 +#: part/models.py:882 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:882 +#: part/models.py:889 msgid "Stock keeping units for this part" msgstr "" -#: part/models.py:888 +#: part/models.py:895 msgid "Can this part be built from other parts?" msgstr "Czy ten komponent może być zbudowany z innych komponentów?" -#: part/models.py:894 +#: part/models.py:901 msgid "Can this part be used to build other parts?" msgstr "Czy ta część może być użyta do budowy innych części?" -#: part/models.py:900 +#: part/models.py:907 msgid "Does this part have tracking for unique items?" msgstr "Czy ta część wymaga śledzenia każdego towaru z osobna?" -#: part/models.py:905 +#: part/models.py:912 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:910 +#: part/models.py:917 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:915 +#: part/models.py:922 msgid "Is this part active?" msgstr "Czy ta część jest aktywna?" -#: part/models.py:920 +#: part/models.py:927 msgid "Is this a virtual part, such as a software product or license?" msgstr "Czy to wirtualna część, taka jak oprogramowanie lub licencja?" -#: part/models.py:922 +#: part/models.py:929 msgid "Part notes" msgstr "" -#: part/models.py:924 +#: part/models.py:931 msgid "BOM checksum" msgstr "" -#: part/models.py:924 +#: part/models.py:931 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:927 +#: part/models.py:934 msgid "BOM checked by" msgstr "" -#: part/models.py:929 +#: part/models.py:936 msgid "BOM checked date" msgstr "" -#: part/models.py:933 +#: part/models.py:940 msgid "Creation User" msgstr "Tworzenie użytkownika" -#: part/models.py:1737 +#: part/models.py:1744 msgid "Sell multiple" msgstr "Sprzedaj wiele" -#: part/models.py:2258 +#: part/models.py:2265 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:2275 +#: part/models.py:2282 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:2295 templates/js/translated/part.js:1997 -#: templates/js/translated/stock.js:1336 +#: part/models.py:2302 templates/js/translated/part.js:2006 +#: templates/js/translated/stock.js:1340 msgid "Test Name" msgstr "Nazwa testu" -#: part/models.py:2296 +#: part/models.py:2303 msgid "Enter a name for the test" msgstr "" -#: part/models.py:2301 +#: part/models.py:2308 msgid "Test Description" msgstr "Testowy opis" -#: part/models.py:2302 +#: part/models.py:2309 msgid "Enter description for this test" msgstr "Wprowadź opis do tego testu" -#: part/models.py:2307 templates/js/translated/part.js:2006 +#: part/models.py:2314 templates/js/translated/part.js:2015 #: templates/js/translated/table_filters.js:302 msgid "Required" msgstr "Wymagane" -#: part/models.py:2308 +#: part/models.py:2315 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:2313 templates/js/translated/part.js:2014 +#: part/models.py:2320 templates/js/translated/part.js:2023 msgid "Requires Value" msgstr "Wymaga wartości" -#: part/models.py:2314 +#: part/models.py:2321 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:2319 templates/js/translated/part.js:2021 +#: part/models.py:2326 templates/js/translated/part.js:2030 msgid "Requires Attachment" msgstr "Wymaga załącznika" -#: part/models.py:2320 +#: part/models.py:2327 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:2328 +#: part/models.py:2335 #, python-brace-format msgid "Illegal character in template name ({c})" msgstr "" -#: part/models.py:2364 +#: part/models.py:2371 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:2372 +#: part/models.py:2379 msgid "Parameter Name" msgstr "" -#: part/models.py:2379 +#: part/models.py:2386 msgid "Parameter Units" msgstr "" -#: part/models.py:2410 +#: part/models.py:2417 msgid "Parent Part" msgstr "Część nadrzędna" -#: part/models.py:2412 part/models.py:2460 part/models.py:2461 +#: part/models.py:2419 part/models.py:2467 part/models.py:2468 #: templates/InvenTree/settings/settings.html:227 msgid "Parameter Template" msgstr "" -#: part/models.py:2414 +#: part/models.py:2421 msgid "Data" msgstr "Dane" -#: part/models.py:2414 +#: part/models.py:2421 msgid "Parameter Value" msgstr "Wartość parametru" -#: part/models.py:2465 templates/InvenTree/settings/settings.html:236 +#: part/models.py:2472 templates/InvenTree/settings/settings.html:236 msgid "Default Value" msgstr "Wartość domyślna" -#: part/models.py:2466 +#: part/models.py:2473 msgid "Default Parameter Value" msgstr "" -#: part/models.py:2501 +#: part/models.py:2508 msgid "Part ID or part name" msgstr "" -#: part/models.py:2504 templates/js/translated/model_renderers.js:212 +#: part/models.py:2511 templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "ID komponentu" -#: part/models.py:2505 +#: part/models.py:2512 msgid "Unique part ID value" msgstr "Unikalny wartość ID komponentu" -#: part/models.py:2508 +#: part/models.py:2515 msgid "Part Name" msgstr "Nazwa komponentu" -#: part/models.py:2512 +#: part/models.py:2519 msgid "Part IPN" msgstr "IPN komponentu" -#: part/models.py:2513 +#: part/models.py:2520 msgid "Part IPN value" msgstr "Wartość IPN części" -#: part/models.py:2516 +#: part/models.py:2523 msgid "Level" msgstr "Poziom" -#: part/models.py:2517 +#: part/models.py:2524 msgid "BOM level" msgstr "" -#: part/models.py:2586 +#: part/models.py:2593 msgid "Select parent part" msgstr "Wybierz część nadrzędną" -#: part/models.py:2594 +#: part/models.py:2601 msgid "Sub part" msgstr "Podczęść" -#: part/models.py:2595 +#: part/models.py:2602 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:2601 +#: part/models.py:2608 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:2603 part/templates/part/upload_bom.html:58 +#: part/models.py:2610 part/templates/part/upload_bom.html:58 #: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999 #: templates/js/translated/table_filters.js:100 msgid "Optional" msgstr "Opcjonalne" -#: part/models.py:2603 +#: part/models.py:2610 msgid "This BOM item is optional" msgstr "Ten element BOM jest opcjonalny" -#: part/models.py:2606 part/templates/part/upload_bom.html:55 +#: part/models.py:2613 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:2607 +#: part/models.py:2614 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:2610 +#: part/models.py:2617 msgid "BOM item reference" msgstr "" -#: part/models.py:2613 +#: part/models.py:2620 msgid "BOM item notes" msgstr "Notatki pozycji BOM" -#: part/models.py:2615 +#: part/models.py:2622 msgid "Checksum" msgstr "Suma kontrolna" -#: part/models.py:2615 +#: part/models.py:2622 msgid "BOM line checksum" msgstr "" -#: part/models.py:2619 part/templates/part/upload_bom.html:57 +#: part/models.py:2626 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1016 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:96 msgid "Inherited" msgstr "Dziedziczone" -#: part/models.py:2620 +#: part/models.py:2627 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:2625 part/templates/part/upload_bom.html:56 +#: part/models.py:2632 part/templates/part/upload_bom.html:56 #: templates/js/translated/bom.js:1008 msgid "Allow Variants" msgstr "Zezwalaj na warianty" -#: part/models.py:2626 +#: part/models.py:2633 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:2704 stock/models.py:461 +#: part/models.py:2711 stock/models.py:468 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:2713 part/models.py:2715 +#: part/models.py:2720 part/models.py:2722 msgid "Sub part must be specified" msgstr "" -#: part/models.py:2820 +#: part/models.py:2827 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:2841 +#: part/models.py:2848 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:2854 +#: part/models.py:2861 msgid "Parent BOM item" msgstr "" -#: part/models.py:2862 +#: part/models.py:2869 msgid "Substitute part" msgstr "Część zastępcza" -#: part/models.py:2877 +#: part/models.py:2884 msgid "Part 1" msgstr "Część 1" -#: part/models.py:2881 +#: part/models.py:2888 msgid "Part 2" msgstr "Część 2" -#: part/models.py:2881 +#: part/models.py:2888 msgid "Select Related Part" msgstr "Wybierz powiązaną część" -#: part/models.py:2899 +#: part/models.py:2906 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:2903 +#: part/models.py:2910 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:152 part/serializers.py:183 stock/serializers.py:181 +#: part/serializers.py:154 part/serializers.py:185 stock/serializers.py:181 msgid "Purchase currency of this stock item" msgstr "Waluta zakupu tego towaru" -#: part/serializers.py:812 +#: part/serializers.py:814 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:820 +#: part/serializers.py:822 msgid "Remove Existing Data" msgstr "Usuń istniejące dane" -#: part/serializers.py:821 +#: part/serializers.py:823 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:826 +#: part/serializers.py:828 msgid "Include Inherited" msgstr "" -#: part/serializers.py:827 +#: part/serializers.py:829 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:832 +#: part/serializers.py:834 msgid "Skip Invalid Rows" msgstr "Pomiń nieprawidłowe wiersze" -#: part/serializers.py:833 +#: part/serializers.py:835 msgid "Enable this option to skip invalid rows" msgstr "Włącz tę opcję, aby pominąć nieprawidłowe wiersze" -#: part/serializers.py:838 +#: part/serializers.py:840 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:839 +#: part/serializers.py:841 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:879 +#: part/serializers.py:881 msgid "Clear Existing BOM" msgstr "Wyczyść istniejący BOM" -#: part/serializers.py:880 +#: part/serializers.py:882 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:910 +#: part/serializers.py:912 msgid "No part column specified" msgstr "" -#: part/serializers.py:953 +#: part/serializers.py:955 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:956 +#: part/serializers.py:958 msgid "No matching part found" msgstr "" -#: part/serializers.py:959 +#: part/serializers.py:961 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:968 +#: part/serializers.py:970 msgid "Quantity not provided" msgstr "Nie podano ilości" -#: part/serializers.py:976 +#: part/serializers.py:978 msgid "Invalid quantity" msgstr "Nieprawidłowa ilość" -#: part/serializers.py:997 +#: part/serializers.py:999 msgid "At least one BOM item is required" msgstr "" @@ -4848,101 +4884,101 @@ msgstr "" msgid "Delete Items" msgstr "Usuń elementy" -#: part/templates/part/category.html:28 part/templates/part/category.html:32 +#: part/templates/part/category.html:34 part/templates/part/category.html:38 msgid "You are subscribed to notifications for this category" msgstr "Masz włączone powiadomienia dla tej kategorii" -#: part/templates/part/category.html:36 +#: part/templates/part/category.html:42 msgid "Subscribe to notifications for this category" msgstr "Włącz powiadomienia dla tej kategorii" -#: part/templates/part/category.html:42 +#: part/templates/part/category.html:48 msgid "Category Actions" msgstr "Akcje kategorii" -#: part/templates/part/category.html:47 +#: part/templates/part/category.html:53 msgid "Edit category" msgstr "Edytuj kategorię" -#: part/templates/part/category.html:48 +#: part/templates/part/category.html:54 msgid "Edit Category" msgstr "Edytuj kategorię" -#: part/templates/part/category.html:52 +#: part/templates/part/category.html:58 msgid "Delete category" msgstr "Usuń kategorię" -#: part/templates/part/category.html:53 +#: part/templates/part/category.html:59 msgid "Delete Category" msgstr "Usuń kategorię" -#: part/templates/part/category.html:61 +#: part/templates/part/category.html:67 msgid "Create new part category" msgstr "Stwórz nową kategorię komponentów" -#: part/templates/part/category.html:62 +#: part/templates/part/category.html:68 msgid "New Category" msgstr "Nowa kategoria" -#: part/templates/part/category.html:80 part/templates/part/category.html:93 +#: part/templates/part/category.html:86 part/templates/part/category.html:99 msgid "Category Path" msgstr "Ścieżka kategorii" -#: part/templates/part/category.html:94 +#: part/templates/part/category.html:100 msgid "Top level part category" msgstr "Kategoria najwyższego poziomu" -#: part/templates/part/category.html:114 part/templates/part/category.html:222 +#: part/templates/part/category.html:120 part/templates/part/category.html:228 #: part/templates/part/category_sidebar.html:7 msgid "Subcategories" msgstr "Podkategorie" -#: part/templates/part/category.html:119 +#: part/templates/part/category.html:125 msgid "Parts (Including subcategories)" msgstr "Części (w tym podkategorie)" -#: part/templates/part/category.html:157 +#: part/templates/part/category.html:163 msgid "Create new part" msgstr "Utwórz nową część" -#: part/templates/part/category.html:158 templates/js/translated/bom.js:367 +#: part/templates/part/category.html:164 templates/js/translated/bom.js:367 msgid "New Part" msgstr "Nowy komponent" -#: part/templates/part/category.html:168 part/templates/part/detail.html:363 +#: part/templates/part/category.html:174 part/templates/part/detail.html:363 #: part/templates/part/detail.html:394 msgid "Options" msgstr "Opcje" -#: part/templates/part/category.html:172 +#: part/templates/part/category.html:178 msgid "Set category" msgstr "Ustaw kategorię" -#: part/templates/part/category.html:173 +#: part/templates/part/category.html:179 msgid "Set Category" msgstr "Ustaw kategorię" -#: part/templates/part/category.html:180 part/templates/part/category.html:181 +#: part/templates/part/category.html:186 part/templates/part/category.html:187 msgid "Print Labels" msgstr "Drukuj etykiety" -#: part/templates/part/category.html:206 +#: part/templates/part/category.html:212 msgid "Part Parameters" msgstr "Parametry części" -#: part/templates/part/category.html:320 +#: part/templates/part/category.html:327 msgid "Create Part Category" msgstr "Utwórz nową kategorię części" -#: part/templates/part/category.html:340 +#: part/templates/part/category.html:347 msgid "Create Part" msgstr "Utwórz część" -#: part/templates/part/category.html:343 +#: part/templates/part/category.html:350 msgid "Create another part after this one" msgstr "Utwórz kolejną część po tej" -#: part/templates/part/category.html:344 +#: part/templates/part/category.html:351 msgid "Part created successfully" msgstr "Część utworzona pomyślnie" @@ -4950,7 +4986,7 @@ msgstr "Część utworzona pomyślnie" msgid "Import Parts" msgstr "Importuj Części" -#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:375 +#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:379 msgid "Duplicate Part" msgstr "Duplikuj część" @@ -5172,19 +5208,19 @@ msgstr "Włącz powiadomienia dla tej części" #: part/templates/part/part_base.html:43 #: stock/templates/stock/item_base.html:41 -#: stock/templates/stock/location.html:43 +#: stock/templates/stock/location.html:48 msgid "Barcode actions" msgstr "Akcje kodów kreskowych" #: part/templates/part/part_base.html:46 #: stock/templates/stock/item_base.html:45 -#: stock/templates/stock/location.html:45 templates/qr_button.html:1 +#: stock/templates/stock/location.html:50 templates/qr_button.html:1 msgid "Show QR Code" msgstr "Pokaż Kod QR" #: part/templates/part/part_base.html:49 #: stock/templates/stock/item_base.html:63 -#: stock/templates/stock/location.html:47 +#: stock/templates/stock/location.html:52 msgid "Print Label" msgstr "Drukuj etykietę" @@ -5194,7 +5230,7 @@ msgstr "Pokaż informacje o cenach" #: part/templates/part/part_base.html:60 #: stock/templates/stock/item_base.html:116 -#: stock/templates/stock/location.html:56 +#: stock/templates/stock/location.html:61 msgid "Stock actions" msgstr "Akcje magazynowe" @@ -5255,7 +5291,7 @@ msgstr "Część jest wirtualna (nie fizyczna)" #: templates/js/translated/company.js:624 #: templates/js/translated/company.js:884 #: templates/js/translated/model_renderers.js:204 -#: templates/js/translated/part.js:650 templates/js/translated/part.js:727 +#: templates/js/translated/part.js:654 templates/js/translated/part.js:731 msgid "Inactive" msgstr "Nieaktywny" @@ -5289,9 +5325,9 @@ msgstr "Przypisane do zamówień sprzedaży" msgid "Can Build" msgstr "" -#: part/templates/part/part_base.html:238 templates/js/translated/part.js:589 -#: templates/js/translated/part.js:609 templates/js/translated/part.js:1302 -#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490 +#: part/templates/part/part_base.html:238 templates/js/translated/part.js:593 +#: templates/js/translated/part.js:613 templates/js/translated/part.js:1306 +#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1494 msgid "Building" msgstr "" @@ -5464,8 +5500,8 @@ msgstr "Koszt sprzedaży" msgid "No sale pice history available for this part." msgstr "" -#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:612 -#: templates/js/translated/part.js:1290 templates/js/translated/part.js:1494 +#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616 +#: templates/js/translated/part.js:1294 templates/js/translated/part.js:1498 msgid "No Stock" msgstr "Brak w magazynie" @@ -5630,51 +5666,55 @@ msgstr "" msgid "Allow sending of emails for event notifications" msgstr "" -#: plugin/models.py:32 +#: plugin/models.py:33 msgid "Plugin Metadata" msgstr "" -#: plugin/models.py:33 +#: plugin/models.py:34 msgid "JSON metadata field, for use by external plugins" msgstr "" -#: plugin/models.py:79 +#: plugin/models.py:80 msgid "Plugin Configuration" msgstr "Konfiguracja wtyczki" -#: plugin/models.py:80 +#: plugin/models.py:81 msgid "Plugin Configurations" msgstr "Konfiguracja wtyczek" -#: plugin/models.py:85 +#: plugin/models.py:86 msgid "Key" msgstr "Klucz" -#: plugin/models.py:86 +#: plugin/models.py:87 msgid "Key of plugin" msgstr "Klucz wtyczki" -#: plugin/models.py:94 +#: plugin/models.py:95 msgid "PluginName of the plugin" msgstr "Nazwa wtyczki" -#: plugin/models.py:100 +#: plugin/models.py:101 msgid "Is the plugin active" msgstr "Czy wtyczka jest aktywna" -#: plugin/models.py:168 +#: plugin/models.py:158 +msgid "Sample plugin" +msgstr "" + +#: plugin/models.py:186 msgid "Plugin" msgstr "Wtyczka" -#: plugin/models.py:231 +#: plugin/models.py:249 msgid "Method" msgstr "" -#: plugin/plugin.py:228 +#: plugin/plugin.py:251 msgid "No author found" msgstr "" -#: plugin/plugin.py:240 +#: plugin/plugin.py:263 msgid "No date found" msgstr "" @@ -5746,12 +5786,12 @@ msgstr "" msgid "No valid objects provided to template" msgstr "" -#: report/api.py:216 report/api.py:257 +#: report/api.py:216 report/api.py:252 #, python-brace-format msgid "Template file '{template}' is missing or does not exist" msgstr "" -#: report/api.py:360 +#: report/api.py:355 msgid "Test report" msgstr "" @@ -5852,12 +5892,12 @@ msgid "Stock Item Test Report" msgstr "" #: report/templates/report/inventree_test_report_base.html:79 -#: stock/models.py:641 stock/templates/stock/item_base.html:322 +#: stock/models.py:648 stock/templates/stock/item_base.html:322 #: templates/js/translated/build.js:424 templates/js/translated/build.js:576 #: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673 #: templates/js/translated/model_renderers.js:118 #: templates/js/translated/order.js:118 templates/js/translated/order.js:3297 -#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:486 +#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490 msgid "Serial Number" msgstr "Numer Seryjny" @@ -5866,19 +5906,19 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report_base.html:93 -#: stock/models.py:2076 +#: stock/models.py:2083 msgid "Test" msgstr "" #: report/templates/report/inventree_test_report_base.html:94 -#: stock/models.py:2082 +#: stock/models.py:2089 msgid "Result" msgstr "Wynik" #: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:51 +#: templates/InvenTree/settings/plugin.html:53 #: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2459 +#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468 msgid "Date" msgstr "Data" @@ -5896,8 +5936,8 @@ msgid "Installed Items" msgstr "Zainstalowane elementy" #: report/templates/report/inventree_test_report_base.html:137 -#: templates/js/translated/stock.js:606 templates/js/translated/stock.js:776 -#: templates/js/translated/stock.js:2708 +#: templates/js/translated/stock.js:610 templates/js/translated/stock.js:780 +#: templates/js/translated/stock.js:2717 msgid "Serial" msgstr "Numer seryjny" @@ -5913,241 +5953,241 @@ msgstr "" msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" -#: stock/models.py:82 stock/models.py:732 +#: stock/models.py:89 stock/models.py:739 #: stock/templates/stock/item_base.html:252 msgid "Owner" msgstr "Właściciel" -#: stock/models.py:83 stock/models.py:733 +#: stock/models.py:90 stock/models.py:740 msgid "Select Owner" msgstr "Wybierz właściciela" -#: stock/models.py:435 +#: stock/models.py:442 msgid "StockItem with this serial number already exists" msgstr "" -#: stock/models.py:467 stock/serializers.py:95 +#: stock/models.py:474 stock/serializers.py:95 msgid "Stock item cannot be created for virtual parts" msgstr "" -#: stock/models.py:484 +#: stock/models.py:491 #, python-brace-format msgid "Part type ('{pf}') must be {pe}" msgstr "" -#: stock/models.py:494 stock/models.py:503 +#: stock/models.py:501 stock/models.py:510 msgid "Quantity must be 1 for item with a serial number" msgstr "" -#: stock/models.py:495 +#: stock/models.py:502 msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:517 +#: stock/models.py:524 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:523 +#: stock/models.py:530 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:537 +#: stock/models.py:544 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:583 +#: stock/models.py:590 msgid "Parent Stock Item" msgstr "Nadrzędny towar" -#: stock/models.py:593 +#: stock/models.py:600 msgid "Base part" msgstr "Część podstawowa" -#: stock/models.py:601 +#: stock/models.py:608 msgid "Select a matching supplier part for this stock item" msgstr "Wybierz pasującą część dostawcy dla tego towaru" -#: stock/models.py:608 stock/templates/stock/location.html:17 +#: stock/models.py:615 stock/templates/stock/location.html:17 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" msgstr "" -#: stock/models.py:611 +#: stock/models.py:618 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:618 +#: stock/models.py:625 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:624 stock/templates/stock/item_base.html:361 +#: stock/models.py:631 stock/templates/stock/item_base.html:361 msgid "Installed In" msgstr "Zainstalowane w" -#: stock/models.py:627 +#: stock/models.py:634 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:643 +#: stock/models.py:650 msgid "Serial number for this item" msgstr "" -#: stock/models.py:657 +#: stock/models.py:664 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:662 +#: stock/models.py:669 msgid "Stock Quantity" msgstr "Ilość w magazynie" -#: stock/models.py:671 +#: stock/models.py:678 msgid "Source Build" msgstr "" -#: stock/models.py:673 +#: stock/models.py:680 msgid "Build for this stock item" msgstr "" -#: stock/models.py:684 +#: stock/models.py:691 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:687 +#: stock/models.py:694 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:693 +#: stock/models.py:700 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:699 stock/templates/stock/item_base.html:429 -#: templates/js/translated/stock.js:1879 +#: stock/models.py:706 stock/templates/stock/item_base.html:429 +#: templates/js/translated/stock.js:1883 msgid "Expiry Date" msgstr "Data ważności" -#: stock/models.py:700 +#: stock/models.py:707 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:713 +#: stock/models.py:720 msgid "Delete on deplete" msgstr "Usuń po wyczerpaniu" -#: stock/models.py:713 +#: stock/models.py:720 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:720 stock/templates/stock/item.html:132 +#: stock/models.py:727 stock/templates/stock/item.html:132 msgid "Stock Item Notes" msgstr "" -#: stock/models.py:728 +#: stock/models.py:735 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:756 +#: stock/models.py:763 msgid "Converted to part" msgstr "" -#: stock/models.py:1235 +#: stock/models.py:1242 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1241 +#: stock/models.py:1248 msgid "Quantity must be integer" msgstr "Ilość musi być liczbą całkowitą" -#: stock/models.py:1247 +#: stock/models.py:1254 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({n})" msgstr "Ilość nie może przekraczać dostępnej ilości towaru ({n})" -#: stock/models.py:1250 +#: stock/models.py:1257 msgid "Serial numbers must be a list of integers" msgstr "" -#: stock/models.py:1253 +#: stock/models.py:1260 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1260 +#: stock/models.py:1267 #, python-brace-format msgid "Serial numbers already exist: {exists}" msgstr "" -#: stock/models.py:1330 +#: stock/models.py:1337 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1333 +#: stock/models.py:1340 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1336 +#: stock/models.py:1343 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1339 +#: stock/models.py:1346 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1342 +#: stock/models.py:1349 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1345 +#: stock/models.py:1352 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1352 stock/serializers.py:959 +#: stock/models.py:1359 stock/serializers.py:961 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1356 +#: stock/models.py:1363 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1360 +#: stock/models.py:1367 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1364 +#: stock/models.py:1371 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:1533 +#: stock/models.py:1540 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:1994 +#: stock/models.py:2001 msgid "Entry notes" msgstr "Notatki do wpisu" -#: stock/models.py:2052 +#: stock/models.py:2059 msgid "Value must be provided for this test" msgstr "Należy podać wartość dla tego testu" -#: stock/models.py:2058 +#: stock/models.py:2065 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2077 +#: stock/models.py:2084 msgid "Test name" msgstr "Nazwa testu" -#: stock/models.py:2083 +#: stock/models.py:2090 msgid "Test result" msgstr "Wynik testu" -#: stock/models.py:2089 +#: stock/models.py:2096 msgid "Test output value" msgstr "" -#: stock/models.py:2096 +#: stock/models.py:2103 msgid "Test result attachment" msgstr "" -#: stock/models.py:2102 +#: stock/models.py:2109 msgid "Test notes" msgstr "" @@ -6172,7 +6212,7 @@ msgstr "" msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:323 stock/serializers.py:916 stock/serializers.py:1149 +#: stock/serializers.py:323 stock/serializers.py:918 stock/serializers.py:1151 msgid "Destination stock location" msgstr "" @@ -6220,63 +6260,63 @@ msgstr "" msgid "Destination location for returned item" msgstr "" -#: stock/serializers.py:771 +#: stock/serializers.py:773 msgid "Part must be salable" msgstr "Część musi być dostępna do sprzedaży" -#: stock/serializers.py:775 +#: stock/serializers.py:777 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:779 +#: stock/serializers.py:781 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:810 +#: stock/serializers.py:812 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:816 +#: stock/serializers.py:818 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:824 +#: stock/serializers.py:826 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:834 stock/serializers.py:1065 +#: stock/serializers.py:836 stock/serializers.py:1067 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:923 +#: stock/serializers.py:925 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:928 +#: stock/serializers.py:930 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:929 +#: stock/serializers.py:931 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:934 +#: stock/serializers.py:936 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:935 +#: stock/serializers.py:937 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:945 +#: stock/serializers.py:947 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1027 +#: stock/serializers.py:1029 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1055 +#: stock/serializers.py:1057 msgid "Stock transaction notes" msgstr "" @@ -6313,7 +6353,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2852 +#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2861 msgid "Install Stock Item" msgstr "" @@ -6321,7 +6361,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1518 +#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1522 msgid "Add Test Result" msgstr "" @@ -6352,7 +6392,7 @@ msgid "Stock adjustment actions" msgstr "" #: stock/templates/stock/item_base.html:80 -#: stock/templates/stock/location.html:63 templates/stock_table.html:47 +#: stock/templates/stock/location.html:68 templates/stock_table.html:47 msgid "Count stock" msgstr "Przelicz stan magazynowy" @@ -6369,7 +6409,7 @@ msgid "Serialize stock" msgstr "" #: stock/templates/stock/item_base.html:93 -#: stock/templates/stock/location.html:69 templates/stock_table.html:48 +#: stock/templates/stock/location.html:74 templates/stock_table.html:48 msgid "Transfer stock" msgstr "Przenieś stan magazynowy" @@ -6430,7 +6470,7 @@ msgid "You are not in the list of owners of this item. This stock item cannot be msgstr "" #: stock/templates/stock/item_base.html:257 -#: stock/templates/stock/location.html:127 +#: stock/templates/stock/location.html:132 msgid "Read only" msgstr "Tylko do odczytu" @@ -6508,7 +6548,7 @@ msgid "Stale" msgstr "" #: stock/templates/stock/item_base.html:442 -#: templates/js/translated/company.js:985 templates/js/translated/stock.js:1895 +#: templates/js/translated/company.js:985 templates/js/translated/stock.js:1899 msgid "Last Updated" msgstr "Ostatnia aktualizacja" @@ -6552,58 +6592,58 @@ msgstr "" msgid "Select quantity to serialize, and unique serial numbers." msgstr "" -#: stock/templates/stock/location.html:33 +#: stock/templates/stock/location.html:38 msgid "Locate stock location" msgstr "" -#: stock/templates/stock/location.html:49 +#: stock/templates/stock/location.html:54 msgid "Check-in Items" msgstr "" -#: stock/templates/stock/location.html:77 +#: stock/templates/stock/location.html:82 msgid "Location actions" msgstr "" -#: stock/templates/stock/location.html:79 +#: stock/templates/stock/location.html:84 msgid "Edit location" msgstr "Edytuj lokację" -#: stock/templates/stock/location.html:81 +#: stock/templates/stock/location.html:86 msgid "Delete location" msgstr "" -#: stock/templates/stock/location.html:90 +#: stock/templates/stock/location.html:95 msgid "Create new stock location" msgstr "" -#: stock/templates/stock/location.html:91 +#: stock/templates/stock/location.html:96 msgid "New Location" msgstr "Nowa lokalizacja" -#: stock/templates/stock/location.html:109 -#: stock/templates/stock/location.html:115 +#: stock/templates/stock/location.html:114 +#: stock/templates/stock/location.html:120 msgid "Location Path" msgstr "Ścieżka lokalizacji" -#: stock/templates/stock/location.html:116 +#: stock/templates/stock/location.html:121 msgid "Top level stock location" msgstr "" -#: stock/templates/stock/location.html:122 +#: stock/templates/stock/location.html:127 msgid "Location Owner" msgstr "" -#: stock/templates/stock/location.html:126 +#: stock/templates/stock/location.html:131 msgid "You are not in the list of owners of this location. This stock location cannot be edited." msgstr "" -#: stock/templates/stock/location.html:142 -#: stock/templates/stock/location.html:189 +#: stock/templates/stock/location.html:147 +#: stock/templates/stock/location.html:194 #: stock/templates/stock/location_sidebar.html:5 msgid "Sublocations" msgstr "Podlokalizacje" -#: stock/templates/stock/location.html:156 templates/InvenTree/search.html:165 +#: stock/templates/stock/location.html:161 templates/InvenTree/search.html:165 #: templates/js/translated/search.js:238 users/models.py:39 msgid "Stock Locations" msgstr "Lokacje stanu magazynowego" @@ -6875,15 +6915,15 @@ msgstr "Otwórz w nowej karcie" msgid "Part Settings" msgstr "Ustawienia części" -#: templates/InvenTree/settings/part.html:44 +#: templates/InvenTree/settings/part.html:46 msgid "Part Import" msgstr "Import części" -#: templates/InvenTree/settings/part.html:48 +#: templates/InvenTree/settings/part.html:50 msgid "Import Part" msgstr "Import części" -#: templates/InvenTree/settings/part.html:62 +#: templates/InvenTree/settings/part.html:64 msgid "Part Parameter Templates" msgstr "" @@ -6895,47 +6935,47 @@ msgstr "" msgid "Changing the settings below require you to immediately restart the server. Do not change this while under active usage." msgstr "" -#: templates/InvenTree/settings/plugin.html:34 +#: templates/InvenTree/settings/plugin.html:36 msgid "Plugins" msgstr "Wtyczki" -#: templates/InvenTree/settings/plugin.html:39 +#: templates/InvenTree/settings/plugin.html:41 #: templates/js/translated/plugin.js:16 msgid "Install Plugin" msgstr "Instaluj wtyczkę" -#: templates/InvenTree/settings/plugin.html:48 templates/navbar.html:137 +#: templates/InvenTree/settings/plugin.html:50 templates/navbar.html:137 #: users/models.py:36 msgid "Admin" msgstr "" -#: templates/InvenTree/settings/plugin.html:50 +#: templates/InvenTree/settings/plugin.html:52 #: templates/InvenTree/settings/plugin_settings.html:28 msgid "Author" msgstr "Autor" -#: templates/InvenTree/settings/plugin.html:52 +#: templates/InvenTree/settings/plugin.html:54 #: templates/InvenTree/settings/plugin_settings.html:43 msgid "Version" msgstr "Wersja" -#: templates/InvenTree/settings/plugin.html:74 +#: templates/InvenTree/settings/plugin.html:76 msgid "Sample" msgstr "" -#: templates/InvenTree/settings/plugin.html:99 +#: templates/InvenTree/settings/plugin.html:101 msgid "Inactive plugins" msgstr "Nieaktywne wtyczki" -#: templates/InvenTree/settings/plugin.html:122 +#: templates/InvenTree/settings/plugin.html:124 msgid "Plugin Error Stack" msgstr "Błąd stosu wtyczki" -#: templates/InvenTree/settings/plugin.html:131 +#: templates/InvenTree/settings/plugin.html:133 msgid "Stage" msgstr "Etap" -#: templates/InvenTree/settings/plugin.html:133 +#: templates/InvenTree/settings/plugin.html:135 #: templates/js/translated/notification.js:75 msgid "Message" msgstr "Wiadomość" @@ -6999,11 +7039,11 @@ msgstr "Hash commitu" msgid "Commit Message" msgstr "Wiadomość commitu" -#: templates/InvenTree/settings/plugin_settings.html:117 +#: templates/InvenTree/settings/plugin_settings.html:120 msgid "Sign Status" msgstr "Status podpisu" -#: templates/InvenTree/settings/plugin_settings.html:122 +#: templates/InvenTree/settings/plugin_settings.html:125 msgid "Sign Key" msgstr "Klucz podpisu" @@ -7831,7 +7871,7 @@ msgstr "" msgid "Unlink" msgstr "Rozłącz" -#: templates/js/translated/barcode.js:456 templates/js/translated/stock.js:1050 +#: templates/js/translated/barcode.js:456 templates/js/translated/stock.js:1054 msgid "Remove stock item" msgstr "" @@ -8004,7 +8044,7 @@ msgid "Includes variant and substitute stock" msgstr "" #: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822 -#: templates/js/translated/part.js:759 +#: templates/js/translated/part.js:763 msgid "Includes variant stock" msgstr "" @@ -8101,12 +8141,12 @@ msgid "Complete Build Order" msgstr "" #: templates/js/translated/build.js:263 templates/js/translated/stock.js:92 -#: templates/js/translated/stock.js:210 +#: templates/js/translated/stock.js:214 msgid "Next available serial number" msgstr "" #: templates/js/translated/build.js:265 templates/js/translated/stock.js:94 -#: templates/js/translated/stock.js:212 +#: templates/js/translated/stock.js:216 msgid "Latest serial number" msgstr "Ostatni numer seryjny" @@ -8319,9 +8359,9 @@ msgstr "" msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1383 -#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1682 -#: templates/js/translated/stock.js:2382 +#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387 +#: templates/js/translated/part.js:1899 templates/js/translated/stock.js:1686 +#: templates/js/translated/stock.js:2386 msgid "Select" msgstr "Wybierz" @@ -8333,7 +8373,7 @@ msgstr "" msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2638 +#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647 msgid "No user information" msgstr "Brak informacji o użytkowniku" @@ -8406,34 +8446,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:616 -#: templates/js/translated/company.js:876 templates/js/translated/part.js:634 -#: templates/js/translated/part.js:719 +#: templates/js/translated/company.js:876 templates/js/translated/part.js:638 +#: templates/js/translated/part.js:723 msgid "Template part" msgstr "" #: templates/js/translated/company.js:620 -#: templates/js/translated/company.js:880 templates/js/translated/part.js:638 -#: templates/js/translated/part.js:723 +#: templates/js/translated/company.js:880 templates/js/translated/part.js:642 +#: templates/js/translated/part.js:727 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:748 templates/js/translated/part.js:826 +#: templates/js/translated/company.js:748 templates/js/translated/part.js:830 msgid "No parameters found" msgstr "Nie znaleziono parametrów" -#: templates/js/translated/company.js:785 templates/js/translated/part.js:868 +#: templates/js/translated/company.js:785 templates/js/translated/part.js:872 msgid "Edit parameter" msgstr "Edytuj Parametr" -#: templates/js/translated/company.js:786 templates/js/translated/part.js:869 +#: templates/js/translated/company.js:786 templates/js/translated/part.js:873 msgid "Delete parameter" msgstr "Usuń parametr" -#: templates/js/translated/company.js:805 templates/js/translated/part.js:886 +#: templates/js/translated/company.js:805 templates/js/translated/part.js:890 msgid "Edit Parameter" msgstr "Edytuj Parametr" -#: templates/js/translated/company.js:816 templates/js/translated/part.js:898 +#: templates/js/translated/company.js:816 templates/js/translated/part.js:902 msgid "Delete Parameter" msgstr "Usuń parametr" @@ -8558,7 +8598,7 @@ msgid "Labels sent to printer" msgstr "" #: templates/js/translated/label.js:60 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1078 msgid "Select Stock Items" msgstr "Wybierz przedmioty magazynowe" @@ -8868,7 +8908,7 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2140 +#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144 msgid "Stock Status" msgstr "" @@ -8892,7 +8932,7 @@ msgstr "Potwierdź odbiór elementów" msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:1672 templates/js/translated/part.js:939 +#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943 msgid "No purchase orders found" msgstr "" @@ -8927,7 +8967,7 @@ msgstr "Razem" #: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203 #: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050 -#: templates/js/translated/part.js:2126 templates/js/translated/part.js:2479 +#: templates/js/translated/part.js:2135 templates/js/translated/part.js:2488 msgid "Unit Price" msgstr "Cena jednostkowa" @@ -8937,11 +8977,11 @@ msgid "Total Price" msgstr "Cena całkowita" #: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600 -#: templates/js/translated/part.js:1046 +#: templates/js/translated/part.js:1050 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1092 +#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096 msgid "Receive line item" msgstr "" @@ -9062,7 +9102,7 @@ msgid "Delete Stock Allocation" msgstr "" #: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398 -#: templates/js/translated/stock.js:1598 +#: templates/js/translated/stock.js:1602 msgid "Shipped to customer" msgstr "" @@ -9186,241 +9226,245 @@ msgstr "" msgid "Parent part category" msgstr "" -#: templates/js/translated/part.js:318 +#: templates/js/translated/part.js:306 templates/js/translated/stock.js:118 +msgid "Icon (optional) - Explore all available icons on" +msgstr "" + +#: templates/js/translated/part.js:322 msgid "Edit Part Category" msgstr "Edytuj kategorię części" -#: templates/js/translated/part.js:331 +#: templates/js/translated/part.js:335 msgid "Are you sure you want to delete this part category?" msgstr "Czy na pewno chcesz usunąć tę kategorię części?" -#: templates/js/translated/part.js:333 +#: templates/js/translated/part.js:337 msgid "Any child categories will be moved to the parent of this category" msgstr "" -#: templates/js/translated/part.js:334 +#: templates/js/translated/part.js:338 msgid "Any parts in this category will be moved to the parent of this category" msgstr "" -#: templates/js/translated/part.js:339 +#: templates/js/translated/part.js:343 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:365 +#: templates/js/translated/part.js:369 msgid "Edit Part" msgstr "Edytuj część" -#: templates/js/translated/part.js:367 +#: templates/js/translated/part.js:371 msgid "Part edited" msgstr "Część zmodyfikowana" -#: templates/js/translated/part.js:378 +#: templates/js/translated/part.js:382 msgid "Create Part Variant" msgstr "Utwórz wariant części" -#: templates/js/translated/part.js:430 +#: templates/js/translated/part.js:434 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:431 +#: templates/js/translated/part.js:435 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:445 +#: templates/js/translated/part.js:449 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:447 +#: templates/js/translated/part.js:451 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:448 +#: templates/js/translated/part.js:452 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:449 +#: templates/js/translated/part.js:453 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:456 +#: templates/js/translated/part.js:460 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:492 +#: templates/js/translated/part.js:496 msgid "You are subscribed to notifications for this item" msgstr "Masz włączone powiadomienia dla tej części" -#: templates/js/translated/part.js:494 +#: templates/js/translated/part.js:498 msgid "You have subscribed to notifications for this item" msgstr "Masz włączone powiadomienia dla tej części" -#: templates/js/translated/part.js:499 +#: templates/js/translated/part.js:503 msgid "Subscribe to notifications for this item" msgstr "Włącz powiadomienia dla tej części" -#: templates/js/translated/part.js:501 +#: templates/js/translated/part.js:505 msgid "You have unsubscribed to notifications for this item" msgstr "Zostałeś wypisany z powiadomień dla tej części" -#: templates/js/translated/part.js:518 +#: templates/js/translated/part.js:522 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:528 +#: templates/js/translated/part.js:532 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:531 +#: templates/js/translated/part.js:535 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:556 +#: templates/js/translated/part.js:560 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:582 templates/js/translated/part.js:1466 +#: templates/js/translated/part.js:586 templates/js/translated/part.js:1470 #: templates/js/translated/table_filters.js:468 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:592 templates/js/translated/part.js:1478 +#: templates/js/translated/part.js:596 templates/js/translated/part.js:1482 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:626 templates/js/translated/part.js:711 +#: templates/js/translated/part.js:630 templates/js/translated/part.js:715 msgid "Trackable part" msgstr "" -#: templates/js/translated/part.js:630 templates/js/translated/part.js:715 +#: templates/js/translated/part.js:634 templates/js/translated/part.js:719 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:642 +#: templates/js/translated/part.js:646 msgid "Subscribed part" msgstr "Obserwowane części" -#: templates/js/translated/part.js:646 +#: templates/js/translated/part.js:650 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:774 +#: templates/js/translated/part.js:778 msgid "No variants found" msgstr "Nie znaleziono wariantów" -#: templates/js/translated/part.js:1162 +#: templates/js/translated/part.js:1166 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1186 +#: templates/js/translated/part.js:1190 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:1253 templates/js/translated/part.js:1549 +#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1553 msgid "No parts found" msgstr "Nie znaleziono części" -#: templates/js/translated/part.js:1292 +#: templates/js/translated/part.js:1296 msgid "Not available" msgstr "" -#: templates/js/translated/part.js:1443 +#: templates/js/translated/part.js:1447 msgid "No category" msgstr "Brak kategorii" -#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816 -#: templates/js/translated/stock.js:2343 +#: templates/js/translated/part.js:1577 templates/js/translated/part.js:1820 +#: templates/js/translated/stock.js:2347 msgid "Display as list" msgstr "Wyświetl jako listę" -#: templates/js/translated/part.js:1589 +#: templates/js/translated/part.js:1593 msgid "Display as grid" msgstr "Wyświetl jako siatkę" -#: templates/js/translated/part.js:1655 +#: templates/js/translated/part.js:1659 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:1660 +#: templates/js/translated/part.js:1664 msgid "Set Part Category" msgstr "Ustaw kategorię części" -#: templates/js/translated/part.js:1665 +#: templates/js/translated/part.js:1669 msgid "Select Part Category" msgstr "" -#: templates/js/translated/part.js:1678 +#: templates/js/translated/part.js:1682 msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2362 +#: templates/js/translated/part.js:1839 templates/js/translated/stock.js:2366 msgid "Display as tree" msgstr "Wyświetl jako drzewo" -#: templates/js/translated/part.js:1914 +#: templates/js/translated/part.js:1918 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:1925 +#: templates/js/translated/part.js:1934 msgid "Subscribed category" msgstr "Obserwowana kategoria" -#: templates/js/translated/part.js:1983 +#: templates/js/translated/part.js:1992 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2034 templates/js/translated/stock.js:1295 +#: templates/js/translated/part.js:2043 templates/js/translated/stock.js:1299 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:2035 templates/js/translated/stock.js:1296 -#: templates/js/translated/stock.js:1556 +#: templates/js/translated/part.js:2044 templates/js/translated/stock.js:1300 +#: templates/js/translated/stock.js:1560 msgid "Delete test result" msgstr "" -#: templates/js/translated/part.js:2041 +#: templates/js/translated/part.js:2050 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2063 +#: templates/js/translated/part.js:2072 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2077 +#: templates/js/translated/part.js:2086 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2102 +#: templates/js/translated/part.js:2111 #, python-brace-format msgid "No ${human_name} information found" msgstr "Nie znaleziono informacji o ${human_name}" -#: templates/js/translated/part.js:2159 +#: templates/js/translated/part.js:2168 #, python-brace-format msgid "Edit ${human_name}" msgstr "Edytuj ${human_name}" -#: templates/js/translated/part.js:2160 +#: templates/js/translated/part.js:2169 #, python-brace-format msgid "Delete ${human_name}" msgstr "Usuń ${human_name}" -#: templates/js/translated/part.js:2274 +#: templates/js/translated/part.js:2283 msgid "Current Stock" msgstr "" -#: templates/js/translated/part.js:2307 +#: templates/js/translated/part.js:2316 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2333 +#: templates/js/translated/part.js:2342 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2403 +#: templates/js/translated/part.js:2412 msgid "Single Price" msgstr "Cena jednostkowa" -#: templates/js/translated/part.js:2422 +#: templates/js/translated/part.js:2431 msgid "Single Price Difference" msgstr "" @@ -9514,376 +9558,376 @@ msgstr "" msgid "Parent stock location" msgstr "" -#: templates/js/translated/stock.js:140 +#: templates/js/translated/stock.js:144 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:155 +#: templates/js/translated/stock.js:159 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:169 +#: templates/js/translated/stock.js:173 msgid "Are you sure you want to delete this stock location?" msgstr "Czy na pewno chcesz skasować tą lokację?" -#: templates/js/translated/stock.js:171 +#: templates/js/translated/stock.js:175 msgid "Any child locations will be moved to the parent of this location" msgstr "" -#: templates/js/translated/stock.js:172 +#: templates/js/translated/stock.js:176 msgid "Any stock items in this location will be moved to the parent of this location" msgstr "" -#: templates/js/translated/stock.js:178 +#: templates/js/translated/stock.js:182 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:223 +#: templates/js/translated/stock.js:227 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:262 +#: templates/js/translated/stock.js:266 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:268 +#: templates/js/translated/stock.js:272 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:333 +#: templates/js/translated/stock.js:337 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:353 +#: templates/js/translated/stock.js:357 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:369 +#: templates/js/translated/stock.js:373 msgid "Are you sure you want to delete this stock item?" msgstr "Czy na pewno chcesz usunąć tą część?" -#: templates/js/translated/stock.js:374 +#: templates/js/translated/stock.js:378 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:395 +#: templates/js/translated/stock.js:399 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:445 +#: templates/js/translated/stock.js:449 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:458 +#: templates/js/translated/stock.js:462 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:483 +#: templates/js/translated/stock.js:487 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:487 templates/js/translated/stock.js:488 +#: templates/js/translated/stock.js:491 templates/js/translated/stock.js:492 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:504 +#: templates/js/translated/stock.js:508 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:524 +#: templates/js/translated/stock.js:528 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:533 +#: templates/js/translated/stock.js:537 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:656 +#: templates/js/translated/stock.js:660 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:657 +#: templates/js/translated/stock.js:661 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:734 +#: templates/js/translated/stock.js:738 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:735 +#: templates/js/translated/stock.js:739 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:737 +#: templates/js/translated/stock.js:741 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:738 +#: templates/js/translated/stock.js:742 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:824 +#: templates/js/translated/stock.js:828 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:825 +#: templates/js/translated/stock.js:829 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:920 +#: templates/js/translated/stock.js:924 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:921 +#: templates/js/translated/stock.js:925 msgid "Move" msgstr "Przenieś" -#: templates/js/translated/stock.js:927 +#: templates/js/translated/stock.js:931 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:928 +#: templates/js/translated/stock.js:932 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:932 +#: templates/js/translated/stock.js:936 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:933 +#: templates/js/translated/stock.js:937 msgid "Take" msgstr "Weź" -#: templates/js/translated/stock.js:937 +#: templates/js/translated/stock.js:941 msgid "Add Stock" msgstr "Dodaj stan" -#: templates/js/translated/stock.js:938 users/models.py:216 +#: templates/js/translated/stock.js:942 users/models.py:216 msgid "Add" msgstr "Dodaj" -#: templates/js/translated/stock.js:942 +#: templates/js/translated/stock.js:946 msgid "Delete Stock" msgstr "Usuń stan magazynowy" -#: templates/js/translated/stock.js:1035 +#: templates/js/translated/stock.js:1039 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1035 +#: templates/js/translated/stock.js:1039 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1075 +#: templates/js/translated/stock.js:1079 msgid "You must select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1098 +#: templates/js/translated/stock.js:1102 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1234 +#: templates/js/translated/stock.js:1238 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1236 +#: templates/js/translated/stock.js:1240 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1241 +#: templates/js/translated/stock.js:1245 msgid "NO RESULT" msgstr "BRAK WYNIKÓW" -#: templates/js/translated/stock.js:1288 +#: templates/js/translated/stock.js:1292 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1291 +#: templates/js/translated/stock.js:1295 msgid "Add test result" msgstr "Dodaj wynik testu" -#: templates/js/translated/stock.js:1317 +#: templates/js/translated/stock.js:1321 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1374 +#: templates/js/translated/stock.js:1378 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1539 +#: templates/js/translated/stock.js:1543 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1561 +#: templates/js/translated/stock.js:1565 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1590 +#: templates/js/translated/stock.js:1594 msgid "In production" msgstr "W produkcji" -#: templates/js/translated/stock.js:1594 +#: templates/js/translated/stock.js:1598 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1602 +#: templates/js/translated/stock.js:1606 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1608 +#: templates/js/translated/stock.js:1612 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1775 +#: templates/js/translated/stock.js:1779 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:1780 +#: templates/js/translated/stock.js:1784 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:1783 +#: templates/js/translated/stock.js:1787 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:1786 +#: templates/js/translated/stock.js:1790 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:1788 +#: templates/js/translated/stock.js:1792 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:1790 +#: templates/js/translated/stock.js:1794 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:1793 +#: templates/js/translated/stock.js:1797 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:1797 +#: templates/js/translated/stock.js:1801 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:1799 +#: templates/js/translated/stock.js:1803 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:1806 +#: templates/js/translated/stock.js:1810 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:1808 +#: templates/js/translated/stock.js:1812 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:1810 +#: templates/js/translated/stock.js:1814 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:1814 +#: templates/js/translated/stock.js:1818 #: templates/js/translated/table_filters.js:196 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:1865 +#: templates/js/translated/stock.js:1869 msgid "Stocktake" msgstr "" -#: templates/js/translated/stock.js:1944 +#: templates/js/translated/stock.js:1948 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:1982 +#: templates/js/translated/stock.js:1986 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2155 +#: templates/js/translated/stock.js:2159 msgid "Set Stock Status" msgstr "" -#: templates/js/translated/stock.js:2169 +#: templates/js/translated/stock.js:2173 msgid "Select Status Code" msgstr "" -#: templates/js/translated/stock.js:2170 +#: templates/js/translated/stock.js:2174 msgid "Status code must be selected" msgstr "Kod statusu musi być wybrany" -#: templates/js/translated/stock.js:2400 +#: templates/js/translated/stock.js:2404 msgid "Load Subloactions" msgstr "" -#: templates/js/translated/stock.js:2484 +#: templates/js/translated/stock.js:2493 msgid "Details" msgstr "Szczegóły" -#: templates/js/translated/stock.js:2500 +#: templates/js/translated/stock.js:2509 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2522 +#: templates/js/translated/stock.js:2531 msgid "Location no longer exists" msgstr "Lokalizacja już nie istnieje" -#: templates/js/translated/stock.js:2541 +#: templates/js/translated/stock.js:2550 msgid "Purchase order no longer exists" msgstr "Zamówienie zakupu już nie istnieje" -#: templates/js/translated/stock.js:2560 +#: templates/js/translated/stock.js:2569 msgid "Customer no longer exists" msgstr "Klient już nie istnieje" -#: templates/js/translated/stock.js:2578 +#: templates/js/translated/stock.js:2587 msgid "Stock item no longer exists" msgstr "Element magazynowy już nie istnieje" -#: templates/js/translated/stock.js:2601 +#: templates/js/translated/stock.js:2610 msgid "Added" msgstr "Dodano" -#: templates/js/translated/stock.js:2609 +#: templates/js/translated/stock.js:2618 msgid "Removed" msgstr "Usunięto" -#: templates/js/translated/stock.js:2685 +#: templates/js/translated/stock.js:2694 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:2736 templates/js/translated/stock.js:2772 +#: templates/js/translated/stock.js:2745 templates/js/translated/stock.js:2781 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:2785 +#: templates/js/translated/stock.js:2794 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:2806 +#: templates/js/translated/stock.js:2815 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:2807 +#: templates/js/translated/stock.js:2816 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:2809 +#: templates/js/translated/stock.js:2818 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:2810 +#: templates/js/translated/stock.js:2819 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:2811 +#: templates/js/translated/stock.js:2820 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:2812 +#: templates/js/translated/stock.js:2821 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:2825 +#: templates/js/translated/stock.js:2834 msgid "Select part to install" msgstr "" diff --git a/InvenTree/locale/pt/LC_MESSAGES/django.po b/InvenTree/locale/pt/LC_MESSAGES/django.po index f7e3c19ab5..be9d592f45 100644 --- a/InvenTree/locale/pt/LC_MESSAGES/django.po +++ b/InvenTree/locale/pt/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-11 02:47+0000\n" -"PO-Revision-Date: 2022-08-11 13:49\n" +"POT-Creation-Date: 2022-08-16 11:53+0000\n" +"PO-Revision-Date: 2022-08-16 21:35\n" "Last-Translator: \n" "Language-Team: Portuguese, Brazilian\n" "Language: pt_BR\n" @@ -36,15 +36,15 @@ msgstr "Insira uma Data" #: order/templates/order/so_sidebar.html:17 #: part/templates/part/part_sidebar.html:59 #: report/templates/report/inventree_build_order_base.html:172 -#: stock/models.py:1993 stock/models.py:2101 stock/serializers.py:329 -#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:823 -#: stock/serializers.py:922 stock/serializers.py:1054 +#: stock/models.py:2000 stock/models.py:2108 stock/serializers.py:329 +#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825 +#: stock/serializers.py:924 stock/serializers.py:1056 #: stock/templates/stock/stock_sidebar.html:25 #: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101 #: templates/js/translated/company.js:964 templates/js/translated/order.js:2104 #: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753 #: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102 -#: templates/js/translated/stock.js:1370 templates/js/translated/stock.js:1976 +#: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980 msgid "Notes" msgstr "" @@ -163,6 +163,10 @@ msgstr "Nenhum numero serial encontrado" msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "Numero de numeros seriais ({s}) precisa bater com quantidade ({q})" +#: InvenTree/mixins.py:71 +msgid "Remove HTML tags from this value" +msgstr "" + #: InvenTree/models.py:236 msgid "Improperly formatted pattern" msgstr "" @@ -195,7 +199,7 @@ msgstr "Arquivo nao encontrado" msgid "Missing external link" msgstr "Link externo nao encontrado" -#: InvenTree/models.py:395 stock/models.py:2095 +#: InvenTree/models.py:395 stock/models.py:2102 #: templates/js/translated/attachment.js:103 #: templates/js/translated/attachment.js:241 msgid "Attachment" @@ -207,16 +211,16 @@ msgstr "Selecione arquivo para anexar" #: InvenTree/models.py:402 company/models.py:124 company/models.py:276 #: company/models.py:510 order/models.py:84 order/models.py:1245 -#: part/models.py:795 +#: part/models.py:802 #: report/templates/report/inventree_build_order_base.html:164 #: templates/js/translated/company.js:656 #: templates/js/translated/company.js:948 templates/js/translated/order.js:2742 -#: templates/js/translated/part.js:1510 +#: templates/js/translated/part.js:1514 msgid "Link" msgstr "Link" -#: InvenTree/models.py:403 build/models.py:296 part/models.py:796 -#: stock/models.py:651 +#: InvenTree/models.py:403 build/models.py:296 part/models.py:803 +#: stock/models.py:658 msgid "Link to external URL" msgstr "Link para URL externa" @@ -229,12 +233,12 @@ msgstr "Comentario" msgid "File comment" msgstr "Comentario sobre arquivo" -#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1646 -#: common/models.py:1647 common/models.py:1870 common/models.py:1871 -#: common/models.py:2133 common/models.py:2134 part/models.py:2193 -#: part/models.py:2213 plugin/models.py:238 plugin/models.py:239 +#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665 +#: common/models.py:1666 common/models.py:1889 common/models.py:1890 +#: common/models.py:2152 common/models.py:2153 part/models.py:2200 +#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2632 +#: templates/js/translated/stock.js:2641 msgid "User" msgstr "Usuario" @@ -271,19 +275,19 @@ msgstr "Erro renomeando o arquivo" msgid "Invalid choice" msgstr "Escolha invalida" -#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1856 -#: company/models.py:358 label/models.py:101 part/models.py:739 -#: part/models.py:2371 plugin/models.py:93 report/models.py:152 +#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875 +#: company/models.py:358 label/models.py:101 part/models.py:746 +#: part/models.py:2378 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 -#: templates/InvenTree/settings/plugin.html:49 -#: templates/InvenTree/settings/plugin.html:132 +#: templates/InvenTree/settings/plugin.html:51 +#: templates/InvenTree/settings/plugin.html:134 #: templates/InvenTree/settings/plugin_settings.html:23 #: templates/InvenTree/settings/settings.html:347 #: templates/js/translated/company.js:545 #: templates/js/translated/company.js:758 #: templates/js/translated/notification.js:71 -#: templates/js/translated/part.js:684 templates/js/translated/part.js:836 -#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2388 +#: templates/js/translated/part.js:688 templates/js/translated/part.js:840 +#: templates/js/translated/part.js:1906 templates/js/translated/stock.js:2392 msgid "Name" msgstr "Nome" @@ -292,21 +296,21 @@ msgstr "Nome" #: company/models.py:516 company/templates/company/company_base.html:71 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:87 label/models.py:108 -#: order/models.py:82 part/models.py:762 part/templates/part/category.html:74 +#: order/models.py:82 part/models.py:769 part/templates/part/category.html:80 #: part/templates/part/part_base.html:167 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 -#: stock/templates/stock/location.html:103 +#: stock/templates/stock/location.html:108 #: templates/InvenTree/settings/plugin_settings.html:33 #: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848 #: templates/js/translated/build.js:2471 templates/js/translated/company.js:409 #: templates/js/translated/company.js:667 #: templates/js/translated/company.js:959 templates/js/translated/order.js:1720 #: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531 -#: templates/js/translated/part.js:743 templates/js/translated/part.js:1149 -#: templates/js/translated/part.js:1424 templates/js/translated/part.js:1933 -#: templates/js/translated/part.js:2002 templates/js/translated/stock.js:1739 -#: templates/js/translated/stock.js:2415 templates/js/translated/stock.js:2469 +#: templates/js/translated/part.js:747 templates/js/translated/part.js:1153 +#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1942 +#: templates/js/translated/part.js:2011 templates/js/translated/stock.js:1743 +#: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478 msgid "Description" msgstr "Descricao" @@ -319,7 +323,7 @@ msgid "parent" msgstr "parent" #: InvenTree/models.py:560 InvenTree/models.py:561 -#: templates/js/translated/part.js:1939 templates/js/translated/stock.js:2421 +#: templates/js/translated/part.js:1948 templates/js/translated/stock.js:2430 msgid "Path" msgstr "" @@ -331,7 +335,7 @@ msgstr "Erro de servidor" msgid "An error has been logged by the server." msgstr "Log de erro salvo pelo servidor." -#: InvenTree/serializers.py:55 part/models.py:2692 +#: InvenTree/serializers.py:55 part/models.py:2699 msgid "Must be a valid number" msgstr "Preicsa ser um numero valido" @@ -398,99 +402,99 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/settings.py:609 +#: InvenTree/settings.py:607 msgid "Czech" msgstr "" -#: InvenTree/settings.py:610 +#: InvenTree/settings.py:608 msgid "German" msgstr "" -#: InvenTree/settings.py:611 +#: InvenTree/settings.py:609 msgid "Greek" msgstr "" -#: InvenTree/settings.py:612 +#: InvenTree/settings.py:610 msgid "English" msgstr "" -#: InvenTree/settings.py:613 +#: InvenTree/settings.py:611 msgid "Spanish" msgstr "" -#: InvenTree/settings.py:614 +#: InvenTree/settings.py:612 msgid "Spanish (Mexican)" msgstr "" -#: InvenTree/settings.py:615 +#: InvenTree/settings.py:613 msgid "Farsi / Persian" msgstr "" -#: InvenTree/settings.py:616 +#: InvenTree/settings.py:614 msgid "French" msgstr "" -#: InvenTree/settings.py:617 +#: InvenTree/settings.py:615 msgid "Hebrew" msgstr "" -#: InvenTree/settings.py:618 +#: InvenTree/settings.py:616 msgid "Hungarian" msgstr "" -#: InvenTree/settings.py:619 +#: InvenTree/settings.py:617 msgid "Italian" msgstr "" -#: InvenTree/settings.py:620 +#: InvenTree/settings.py:618 msgid "Japanese" msgstr "" -#: InvenTree/settings.py:621 +#: InvenTree/settings.py:619 msgid "Korean" msgstr "" -#: InvenTree/settings.py:622 +#: InvenTree/settings.py:620 msgid "Dutch" msgstr "" -#: InvenTree/settings.py:623 +#: InvenTree/settings.py:621 msgid "Norwegian" msgstr "" -#: InvenTree/settings.py:624 +#: InvenTree/settings.py:622 msgid "Polish" msgstr "" -#: InvenTree/settings.py:625 +#: InvenTree/settings.py:623 msgid "Portuguese" msgstr "" -#: InvenTree/settings.py:626 +#: InvenTree/settings.py:624 msgid "Portuguese (Brazilian)" msgstr "" -#: InvenTree/settings.py:627 +#: InvenTree/settings.py:625 msgid "Russian" msgstr "" -#: InvenTree/settings.py:628 +#: InvenTree/settings.py:626 msgid "Swedish" msgstr "" -#: InvenTree/settings.py:629 +#: InvenTree/settings.py:627 msgid "Thai" msgstr "" -#: InvenTree/settings.py:630 +#: InvenTree/settings.py:628 msgid "Turkish" msgstr "" -#: InvenTree/settings.py:631 +#: InvenTree/settings.py:629 msgid "Vietnamese" msgstr "" -#: InvenTree/settings.py:632 +#: InvenTree/settings.py:630 msgid "Chinese" msgstr "" @@ -621,7 +625,7 @@ msgstr "" msgid "Split child item" msgstr "" -#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2080 +#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2084 msgid "Merged stock items" msgstr "" @@ -743,7 +747,7 @@ msgid "Build Order Reference" msgstr "" #: build/models.py:166 order/models.py:240 order/models.py:623 -#: order/models.py:904 part/models.py:2610 +#: order/models.py:904 part/models.py:2617 #: part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 @@ -770,10 +774,10 @@ msgstr "" #: build/models.py:191 build/templates/build/build_base.html:77 #: build/templates/build/detail.html:29 company/models.py:670 #: order/models.py:1001 order/models.py:1112 order/models.py:1113 -#: part/models.py:336 part/models.py:2139 part/models.py:2154 -#: part/models.py:2173 part/models.py:2191 part/models.py:2290 -#: part/models.py:2410 part/models.py:2500 part/models.py:2585 -#: part/models.py:2861 part/serializers.py:811 +#: part/models.py:343 part/models.py:2146 part/models.py:2161 +#: part/models.py:2180 part/models.py:2198 part/models.py:2297 +#: part/models.py:2417 part/models.py:2507 part/models.py:2592 +#: part/models.py:2868 part/serializers.py:813 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -796,11 +800,11 @@ msgstr "" #: templates/js/translated/order.js:934 templates/js/translated/order.js:1387 #: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885 #: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507 -#: templates/js/translated/part.js:1134 templates/js/translated/part.js:1206 -#: templates/js/translated/part.js:1402 templates/js/translated/stock.js:582 -#: templates/js/translated/stock.js:747 templates/js/translated/stock.js:954 -#: templates/js/translated/stock.js:1696 templates/js/translated/stock.js:2495 -#: templates/js/translated/stock.js:2690 templates/js/translated/stock.js:2824 +#: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210 +#: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586 +#: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958 +#: templates/js/translated/stock.js:1700 templates/js/translated/stock.js:2504 +#: templates/js/translated/stock.js:2699 templates/js/translated/stock.js:2833 msgid "Part" msgstr "" @@ -858,7 +862,7 @@ msgid "Build status code" msgstr "" #: build/models.py:251 build/serializers.py:225 order/serializers.py:447 -#: stock/models.py:655 templates/js/translated/order.js:1247 +#: stock/models.py:662 templates/js/translated/order.js:1247 msgid "Batch Code" msgstr "" @@ -866,7 +870,7 @@ msgstr "" msgid "Batch code for this build output" msgstr "" -#: build/models.py:258 order/models.py:86 part/models.py:931 +#: build/models.py:258 order/models.py:86 part/models.py:938 #: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544 msgid "Creation Date" msgstr "" @@ -899,7 +903,7 @@ msgstr "" #: build/models.py:289 build/templates/build/build_base.html:190 #: build/templates/build/detail.html:115 order/models.py:100 #: order/templates/order/order_base.html:176 -#: order/templates/order/sales_order_base.html:183 part/models.py:935 +#: order/templates/order/sales_order_base.html:183 part/models.py:942 #: report/templates/report/inventree_build_order_base.html:158 #: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754 msgid "Responsible" @@ -912,7 +916,7 @@ msgstr "" #: build/models.py:295 build/templates/build/detail.html:101 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:153 -#: part/templates/part/part_base.html:346 stock/models.py:649 +#: part/templates/part/part_base.html:346 stock/models.py:656 #: stock/templates/stock/item_base.html:205 msgid "External Link" msgstr "" @@ -978,8 +982,8 @@ msgid "Build to allocate parts" msgstr "" #: build/models.py:1345 build/serializers.py:645 order/serializers.py:1015 -#: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 -#: stock/serializers.py:880 stock/templates/stock/item_base.html:10 +#: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:756 +#: stock/serializers.py:882 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:199 #: templates/js/translated/build.js:741 templates/js/translated/build.js:746 @@ -987,8 +991,8 @@ msgstr "" #: templates/js/translated/order.js:104 templates/js/translated/order.js:2886 #: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193 #: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380 -#: templates/js/translated/stock.js:583 templates/js/translated/stock.js:748 -#: templates/js/translated/stock.js:2568 +#: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752 +#: templates/js/translated/stock.js:2577 msgid "Stock Item" msgstr "" @@ -998,11 +1002,11 @@ msgstr "" #: build/models.py:1358 build/serializers.py:193 #: build/templates/build/build_base.html:82 -#: build/templates/build/detail.html:34 common/models.py:1678 +#: build/templates/build/detail.html:34 common/models.py:1697 #: company/templates/company/supplier_part.html:279 order/models.py:897 #: order/models.py:1423 order/serializers.py:1155 #: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40 -#: part/models.py:2601 part/templates/part/detail.html:937 +#: part/models.py:2608 part/templates/part/detail.html:937 #: part/templates/part/detail.html:1023 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 @@ -1025,11 +1029,11 @@ msgstr "" #: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207 #: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386 #: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037 -#: templates/js/translated/part.js:1034 templates/js/translated/part.js:2147 -#: templates/js/translated/part.js:2378 templates/js/translated/part.js:2412 -#: templates/js/translated/part.js:2490 templates/js/translated/stock.js:454 -#: templates/js/translated/stock.js:608 templates/js/translated/stock.js:778 -#: templates/js/translated/stock.js:2617 templates/js/translated/stock.js:2702 +#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2156 +#: templates/js/translated/part.js:2387 templates/js/translated/part.js:2421 +#: templates/js/translated/part.js:2499 templates/js/translated/stock.js:458 +#: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782 +#: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711 msgid "Quantity" msgstr "" @@ -1071,8 +1075,8 @@ msgid "Enter quantity for build output" msgstr "" #: build/serializers.py:208 build/serializers.py:665 order/models.py:318 -#: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 -#: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 +#: order/serializers.py:287 order/serializers.py:442 part/serializers.py:544 +#: part/serializers.py:976 stock/models.py:484 stock/models.py:1251 #: stock/serializers.py:302 msgid "Quantity must be greater than zero" msgstr "" @@ -1087,7 +1091,7 @@ msgstr "" #: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159 #: stock/serializers.py:311 templates/js/translated/order.js:1258 -#: templates/js/translated/stock.js:267 templates/js/translated/stock.js:455 +#: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459 msgid "Serial Numbers" msgstr "" @@ -1113,16 +1117,16 @@ msgstr "" #: build/serializers.py:366 order/serializers.py:428 order/serializers.py:532 #: stock/serializers.py:322 stock/serializers.py:453 stock/serializers.py:534 -#: stock/serializers.py:915 stock/serializers.py:1148 +#: stock/serializers.py:917 stock/serializers.py:1150 #: stock/templates/stock/item_base.html:390 #: templates/js/translated/barcode.js:436 #: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753 #: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285 #: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305 #: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394 -#: templates/js/translated/part.js:181 templates/js/translated/stock.js:584 -#: templates/js/translated/stock.js:749 templates/js/translated/stock.js:956 -#: templates/js/translated/stock.js:1850 templates/js/translated/stock.js:2509 +#: templates/js/translated/part.js:181 templates/js/translated/stock.js:588 +#: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960 +#: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518 msgid "Location" msgstr "" @@ -1135,8 +1139,8 @@ msgstr "" #: order/serializers.py:465 stock/templates/stock/item_base.html:423 #: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505 #: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724 -#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1825 -#: templates/js/translated/stock.js:2586 templates/js/translated/stock.js:2718 +#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829 +#: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727 msgid "Status" msgstr "" @@ -1212,8 +1216,8 @@ msgstr "" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:577 build/serializers.py:622 part/models.py:2719 -#: part/models.py:2853 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726 +#: part/models.py:2860 msgid "BOM Item" msgstr "" @@ -1229,7 +1233,7 @@ msgstr "" msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:651 stock/serializers.py:767 +#: build/serializers.py:651 stock/serializers.py:769 msgid "Item must be in stock" msgstr "" @@ -1367,7 +1371,7 @@ msgstr "" #: report/templates/report/inventree_build_order_base.html:125 #: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741 #: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552 -#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1038 +#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042 msgid "Target Date" msgstr "" @@ -1445,8 +1449,8 @@ msgstr "" #: stock/templates/stock/item_base.html:170 #: templates/js/translated/build.js:1182 #: templates/js/translated/model_renderers.js:124 -#: templates/js/translated/stock.js:1022 templates/js/translated/stock.js:1839 -#: templates/js/translated/stock.js:2725 +#: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843 +#: templates/js/translated/stock.js:2734 #: templates/js/translated/table_filters.js:159 #: templates/js/translated/table_filters.js:250 msgid "Batch" @@ -1506,7 +1510,7 @@ msgstr "" #: build/templates/build/detail.html:187 #: company/templates/company/detail.html:37 #: company/templates/company/detail.html:85 -#: part/templates/part/category.html:177 templates/js/translated/order.js:977 +#: part/templates/part/category.html:183 templates/js/translated/order.js:977 msgid "Order Parts" msgstr "" @@ -1559,12 +1563,12 @@ msgid "Delete outputs" msgstr "" #: build/templates/build/detail.html:267 -#: stock/templates/stock/location.html:197 templates/stock_table.html:27 +#: stock/templates/stock/location.html:202 templates/stock_table.html:27 msgid "Printing Actions" msgstr "" #: build/templates/build/detail.html:271 build/templates/build/detail.html:272 -#: stock/templates/stock/location.html:201 templates/stock_table.html:31 +#: stock/templates/stock/location.html:206 templates/stock_table.html:31 msgid "Print labels" msgstr "" @@ -1841,7 +1845,7 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:951 part/models.py:2412 report/models.py:158 +#: common/models.py:951 part/models.py:2419 report/models.py:158 #: templates/js/translated/table_filters.js:38 #: templates/js/translated/table_filters.js:484 msgid "Template" @@ -1851,7 +1855,7 @@ msgstr "" msgid "Parts are templates by default" msgstr "" -#: common/models.py:958 part/models.py:887 templates/js/translated/bom.js:1448 +#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448 #: templates/js/translated/table_filters.js:176 #: templates/js/translated/table_filters.js:447 msgid "Assembly" @@ -1861,7 +1865,7 @@ msgstr "" msgid "Parts can be assembled from other components by default" msgstr "" -#: common/models.py:965 part/models.py:893 +#: common/models.py:965 part/models.py:900 #: templates/js/translated/table_filters.js:455 msgid "Component" msgstr "" @@ -1870,7 +1874,7 @@ msgstr "" msgid "Parts can be used as sub-components by default" msgstr "" -#: common/models.py:972 part/models.py:904 +#: common/models.py:972 part/models.py:911 msgid "Purchaseable" msgstr "" @@ -1878,7 +1882,7 @@ msgstr "" msgid "Parts are purchaseable by default" msgstr "" -#: common/models.py:979 part/models.py:909 +#: common/models.py:979 part/models.py:916 #: templates/js/translated/table_filters.js:476 msgid "Salable" msgstr "" @@ -1887,7 +1891,7 @@ msgstr "" msgid "Parts are salable by default" msgstr "" -#: common/models.py:986 part/models.py:899 +#: common/models.py:986 part/models.py:906 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:108 #: templates/js/translated/table_filters.js:488 @@ -1898,7 +1902,7 @@ msgstr "" msgid "Parts are trackable by default" msgstr "" -#: common/models.py:993 part/models.py:919 +#: common/models.py:993 part/models.py:926 #: part/templates/part/part_base.html:151 #: templates/js/translated/table_filters.js:42 #: templates/js/translated/table_filters.js:492 @@ -1982,608 +1986,632 @@ msgid "Format to display the part name" msgstr "" #: common/models.py:1074 -msgid "Enable label printing" +msgid "Part Category Default Icon" msgstr "" #: common/models.py:1075 -msgid "Enable label printing from the web interface" +msgid "Part category default icon (empty means no icon)" +msgstr "" + +#: common/models.py:1080 +msgid "Enable label printing" msgstr "" #: common/models.py:1081 +msgid "Enable label printing from the web interface" +msgstr "" + +#: common/models.py:1087 msgid "Label Image DPI" msgstr "" -#: common/models.py:1082 +#: common/models.py:1088 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/models.py:1091 +#: common/models.py:1097 msgid "Enable Reports" msgstr "" -#: common/models.py:1092 +#: common/models.py:1098 msgid "Enable generation of reports" msgstr "" -#: common/models.py:1098 templates/stats.html:25 +#: common/models.py:1104 templates/stats.html:25 msgid "Debug Mode" msgstr "" -#: common/models.py:1099 +#: common/models.py:1105 msgid "Generate reports in debug mode (HTML output)" msgstr "" -#: common/models.py:1105 +#: common/models.py:1111 msgid "Page Size" msgstr "" -#: common/models.py:1106 +#: common/models.py:1112 msgid "Default page size for PDF reports" msgstr "" -#: common/models.py:1116 +#: common/models.py:1122 msgid "Enable Test Reports" msgstr "" -#: common/models.py:1117 +#: common/models.py:1123 msgid "Enable generation of test reports" msgstr "" -#: common/models.py:1123 +#: common/models.py:1129 msgid "Attach Test Reports" msgstr "" -#: common/models.py:1124 +#: common/models.py:1130 msgid "When printing a Test Report, attach a copy of the Test Report to the associated Stock Item" msgstr "" -#: common/models.py:1130 +#: common/models.py:1136 msgid "Batch Code Template" msgstr "" -#: common/models.py:1131 +#: common/models.py:1137 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/models.py:1136 +#: common/models.py:1142 msgid "Stock Expiry" msgstr "" -#: common/models.py:1137 +#: common/models.py:1143 msgid "Enable stock expiry functionality" msgstr "" -#: common/models.py:1143 +#: common/models.py:1149 msgid "Sell Expired Stock" msgstr "" -#: common/models.py:1144 +#: common/models.py:1150 msgid "Allow sale of expired stock" msgstr "" -#: common/models.py:1150 +#: common/models.py:1156 msgid "Stock Stale Time" msgstr "" -#: common/models.py:1151 +#: common/models.py:1157 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/models.py:1153 +#: common/models.py:1159 msgid "days" msgstr "" -#: common/models.py:1158 +#: common/models.py:1164 msgid "Build Expired Stock" msgstr "" -#: common/models.py:1159 +#: common/models.py:1165 msgid "Allow building with expired stock" msgstr "" -#: common/models.py:1165 +#: common/models.py:1171 msgid "Stock Ownership Control" msgstr "" -#: common/models.py:1166 +#: common/models.py:1172 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/models.py:1172 -msgid "Build Order Reference Pattern" -msgstr "" - -#: common/models.py:1173 -msgid "Required pattern for generating Build Order reference field" +#: common/models.py:1178 +msgid "Stock Location Default Icon" msgstr "" #: common/models.py:1179 +msgid "Stock location default icon (empty means no icon)" +msgstr "" + +#: common/models.py:1184 +msgid "Build Order Reference Pattern" +msgstr "" + +#: common/models.py:1185 +msgid "Required pattern for generating Build Order reference field" +msgstr "" + +#: common/models.py:1191 msgid "Sales Order Reference Pattern" msgstr "" -#: common/models.py:1180 +#: common/models.py:1192 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/models.py:1186 +#: common/models.py:1198 msgid "Sales Order Default Shipment" msgstr "" -#: common/models.py:1187 +#: common/models.py:1199 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/models.py:1193 +#: common/models.py:1205 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/models.py:1194 +#: common/models.py:1206 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/models.py:1201 +#: common/models.py:1213 msgid "Enable password forgot" msgstr "" -#: common/models.py:1202 +#: common/models.py:1214 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/models.py:1208 +#: common/models.py:1220 msgid "Enable registration" msgstr "" -#: common/models.py:1209 +#: common/models.py:1221 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/models.py:1215 +#: common/models.py:1227 msgid "Enable SSO" msgstr "" -#: common/models.py:1216 +#: common/models.py:1228 msgid "Enable SSO on the login pages" msgstr "" -#: common/models.py:1222 +#: common/models.py:1234 msgid "Email required" msgstr "" -#: common/models.py:1223 +#: common/models.py:1235 msgid "Require user to supply mail on signup" msgstr "" -#: common/models.py:1229 +#: common/models.py:1241 msgid "Auto-fill SSO users" msgstr "" -#: common/models.py:1230 +#: common/models.py:1242 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/models.py:1236 +#: common/models.py:1248 msgid "Mail twice" msgstr "" -#: common/models.py:1237 +#: common/models.py:1249 msgid "On signup ask users twice for their mail" msgstr "" -#: common/models.py:1243 +#: common/models.py:1255 msgid "Password twice" msgstr "" -#: common/models.py:1244 +#: common/models.py:1256 msgid "On signup ask users twice for their password" msgstr "" -#: common/models.py:1250 +#: common/models.py:1262 msgid "Group on signup" msgstr "" -#: common/models.py:1251 +#: common/models.py:1263 msgid "Group to which new users are assigned on registration" msgstr "" -#: common/models.py:1257 +#: common/models.py:1269 msgid "Enforce MFA" msgstr "" -#: common/models.py:1258 +#: common/models.py:1270 msgid "Users must use multifactor security." msgstr "" -#: common/models.py:1264 +#: common/models.py:1276 msgid "Check plugins on startup" msgstr "" -#: common/models.py:1265 +#: common/models.py:1277 msgid "Check that all plugins are installed on startup - enable in container enviroments" msgstr "" -#: common/models.py:1273 +#: common/models.py:1284 +msgid "Check plugin signatures" +msgstr "" + +#: common/models.py:1285 +msgid "Check and show signatures for plugins" +msgstr "" + +#: common/models.py:1292 msgid "Enable URL integration" msgstr "" -#: common/models.py:1274 +#: common/models.py:1293 msgid "Enable plugins to add URL routes" msgstr "" -#: common/models.py:1281 +#: common/models.py:1300 msgid "Enable navigation integration" msgstr "" -#: common/models.py:1282 +#: common/models.py:1301 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/models.py:1289 +#: common/models.py:1308 msgid "Enable app integration" msgstr "" -#: common/models.py:1290 +#: common/models.py:1309 msgid "Enable plugins to add apps" msgstr "" -#: common/models.py:1297 +#: common/models.py:1316 msgid "Enable schedule integration" msgstr "" -#: common/models.py:1298 +#: common/models.py:1317 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/models.py:1305 +#: common/models.py:1324 msgid "Enable event integration" msgstr "" -#: common/models.py:1306 +#: common/models.py:1325 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:1323 common/models.py:1639 +#: common/models.py:1342 common/models.py:1658 msgid "Settings key (must be unique - case insensitive" msgstr "" -#: common/models.py:1345 +#: common/models.py:1364 msgid "Show subscribed parts" msgstr "" -#: common/models.py:1346 +#: common/models.py:1365 msgid "Show subscribed parts on the homepage" msgstr "" -#: common/models.py:1352 +#: common/models.py:1371 msgid "Show subscribed categories" msgstr "" -#: common/models.py:1353 +#: common/models.py:1372 msgid "Show subscribed part categories on the homepage" msgstr "" -#: common/models.py:1359 +#: common/models.py:1378 msgid "Show latest parts" msgstr "" -#: common/models.py:1360 +#: common/models.py:1379 msgid "Show latest parts on the homepage" msgstr "" -#: common/models.py:1366 +#: common/models.py:1385 msgid "Recent Part Count" msgstr "" -#: common/models.py:1367 +#: common/models.py:1386 msgid "Number of recent parts to display on index page" msgstr "" -#: common/models.py:1373 +#: common/models.py:1392 msgid "Show unvalidated BOMs" msgstr "" -#: common/models.py:1374 +#: common/models.py:1393 msgid "Show BOMs that await validation on the homepage" msgstr "" -#: common/models.py:1380 +#: common/models.py:1399 msgid "Show recent stock changes" msgstr "" -#: common/models.py:1381 +#: common/models.py:1400 msgid "Show recently changed stock items on the homepage" msgstr "" -#: common/models.py:1387 +#: common/models.py:1406 msgid "Recent Stock Count" msgstr "" -#: common/models.py:1388 +#: common/models.py:1407 msgid "Number of recent stock items to display on index page" msgstr "" -#: common/models.py:1394 +#: common/models.py:1413 msgid "Show low stock" msgstr "" -#: common/models.py:1395 +#: common/models.py:1414 msgid "Show low stock items on the homepage" msgstr "" -#: common/models.py:1401 +#: common/models.py:1420 msgid "Show depleted stock" msgstr "" -#: common/models.py:1402 +#: common/models.py:1421 msgid "Show depleted stock items on the homepage" msgstr "" -#: common/models.py:1408 +#: common/models.py:1427 msgid "Show needed stock" msgstr "" -#: common/models.py:1409 +#: common/models.py:1428 msgid "Show stock items needed for builds on the homepage" msgstr "" -#: common/models.py:1415 +#: common/models.py:1434 msgid "Show expired stock" msgstr "" -#: common/models.py:1416 +#: common/models.py:1435 msgid "Show expired stock items on the homepage" msgstr "" -#: common/models.py:1422 +#: common/models.py:1441 msgid "Show stale stock" msgstr "" -#: common/models.py:1423 +#: common/models.py:1442 msgid "Show stale stock items on the homepage" msgstr "" -#: common/models.py:1429 +#: common/models.py:1448 msgid "Show pending builds" msgstr "" -#: common/models.py:1430 +#: common/models.py:1449 msgid "Show pending builds on the homepage" msgstr "" -#: common/models.py:1436 +#: common/models.py:1455 msgid "Show overdue builds" msgstr "" -#: common/models.py:1437 +#: common/models.py:1456 msgid "Show overdue builds on the homepage" msgstr "" -#: common/models.py:1443 +#: common/models.py:1462 msgid "Show outstanding POs" msgstr "" -#: common/models.py:1444 +#: common/models.py:1463 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:1450 +#: common/models.py:1469 msgid "Show overdue POs" msgstr "" -#: common/models.py:1451 +#: common/models.py:1470 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:1457 +#: common/models.py:1476 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:1458 +#: common/models.py:1477 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:1464 +#: common/models.py:1483 msgid "Show overdue SOs" msgstr "" -#: common/models.py:1465 +#: common/models.py:1484 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:1471 +#: common/models.py:1490 msgid "Inline label display" msgstr "" -#: common/models.py:1472 +#: common/models.py:1491 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1478 +#: common/models.py:1497 msgid "Inline report display" msgstr "" -#: common/models.py:1479 +#: common/models.py:1498 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1485 +#: common/models.py:1504 msgid "Search Parts" msgstr "" -#: common/models.py:1486 +#: common/models.py:1505 msgid "Display parts in search preview window" msgstr "" -#: common/models.py:1492 +#: common/models.py:1511 msgid "Seach Supplier Parts" msgstr "" -#: common/models.py:1493 +#: common/models.py:1512 msgid "Display supplier parts in search preview window" msgstr "" -#: common/models.py:1499 +#: common/models.py:1518 msgid "Search Manufacturer Parts" msgstr "" -#: common/models.py:1500 +#: common/models.py:1519 msgid "Display manufacturer parts in search preview window" msgstr "" -#: common/models.py:1506 +#: common/models.py:1525 msgid "Hide Inactive Parts" msgstr "" -#: common/models.py:1507 +#: common/models.py:1526 msgid "Excluded inactive parts from search preview window" msgstr "" -#: common/models.py:1513 +#: common/models.py:1532 msgid "Search Categories" msgstr "" -#: common/models.py:1514 +#: common/models.py:1533 msgid "Display part categories in search preview window" msgstr "" -#: common/models.py:1520 +#: common/models.py:1539 msgid "Search Stock" msgstr "" -#: common/models.py:1521 +#: common/models.py:1540 msgid "Display stock items in search preview window" msgstr "" -#: common/models.py:1527 +#: common/models.py:1546 msgid "Hide Unavailable Stock Items" msgstr "" -#: common/models.py:1528 +#: common/models.py:1547 msgid "Exclude stock items which are not available from the search preview window" msgstr "" -#: common/models.py:1534 +#: common/models.py:1553 msgid "Search Locations" msgstr "" -#: common/models.py:1535 +#: common/models.py:1554 msgid "Display stock locations in search preview window" msgstr "" -#: common/models.py:1541 +#: common/models.py:1560 msgid "Search Companies" msgstr "" -#: common/models.py:1542 +#: common/models.py:1561 msgid "Display companies in search preview window" msgstr "" -#: common/models.py:1548 +#: common/models.py:1567 msgid "Search Purchase Orders" msgstr "" -#: common/models.py:1549 +#: common/models.py:1568 msgid "Display purchase orders in search preview window" msgstr "" -#: common/models.py:1555 +#: common/models.py:1574 msgid "Exclude Inactive Purchase Orders" msgstr "" -#: common/models.py:1556 +#: common/models.py:1575 msgid "Exclude inactive purchase orders from search preview window" msgstr "" -#: common/models.py:1562 +#: common/models.py:1581 msgid "Search Sales Orders" msgstr "" -#: common/models.py:1563 +#: common/models.py:1582 msgid "Display sales orders in search preview window" msgstr "" -#: common/models.py:1569 +#: common/models.py:1588 msgid "Exclude Inactive Sales Orders" msgstr "" -#: common/models.py:1570 +#: common/models.py:1589 msgid "Exclude inactive sales orders from search preview window" msgstr "" -#: common/models.py:1576 +#: common/models.py:1595 msgid "Search Preview Results" msgstr "" -#: common/models.py:1577 +#: common/models.py:1596 msgid "Number of results to show in each section of the search preview window" msgstr "" -#: common/models.py:1583 +#: common/models.py:1602 msgid "Show Quantity in Forms" msgstr "" -#: common/models.py:1584 +#: common/models.py:1603 msgid "Display available part quantity in some forms" msgstr "" -#: common/models.py:1590 +#: common/models.py:1609 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:1591 +#: common/models.py:1610 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:1597 +#: common/models.py:1616 msgid "Fixed Navbar" msgstr "" -#: common/models.py:1598 +#: common/models.py:1617 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:1604 +#: common/models.py:1623 msgid "Date Format" msgstr "" -#: common/models.py:1605 +#: common/models.py:1624 msgid "Preferred format for displaying dates" msgstr "" -#: common/models.py:1619 part/templates/part/detail.html:41 +#: common/models.py:1638 part/templates/part/detail.html:41 msgid "Part Scheduling" msgstr "" -#: common/models.py:1620 +#: common/models.py:1639 msgid "Display part scheduling information" msgstr "" -#: common/models.py:1679 +#: common/models.py:1698 msgid "Price break quantity" msgstr "" -#: common/models.py:1686 company/serializers.py:366 +#: common/models.py:1705 company/serializers.py:366 #: company/templates/company/supplier_part.html:284 order/models.py:938 -#: templates/js/translated/part.js:1065 templates/js/translated/part.js:2152 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2161 msgid "Price" msgstr "" -#: common/models.py:1687 +#: common/models.py:1706 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:1847 common/models.py:2025 +#: common/models.py:1866 common/models.py:2044 msgid "Endpoint" msgstr "" -#: common/models.py:1848 +#: common/models.py:1867 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:1857 +#: common/models.py:1876 msgid "Name for this webhook" msgstr "" -#: common/models.py:1862 part/models.py:914 plugin/models.py:99 +#: common/models.py:1881 part/models.py:921 plugin/models.py:100 #: templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:104 #: templates/js/translated/table_filters.js:316 @@ -2591,67 +2619,67 @@ msgstr "" msgid "Active" msgstr "" -#: common/models.py:1863 +#: common/models.py:1882 msgid "Is this webhook active" msgstr "" -#: common/models.py:1877 +#: common/models.py:1896 msgid "Token" msgstr "" -#: common/models.py:1878 +#: common/models.py:1897 msgid "Token for access" msgstr "" -#: common/models.py:1885 +#: common/models.py:1904 msgid "Secret" msgstr "" -#: common/models.py:1886 +#: common/models.py:1905 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:1992 +#: common/models.py:2011 msgid "Message ID" msgstr "" -#: common/models.py:1993 +#: common/models.py:2012 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2001 +#: common/models.py:2020 msgid "Host" msgstr "" -#: common/models.py:2002 +#: common/models.py:2021 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2009 +#: common/models.py:2028 msgid "Header" msgstr "" -#: common/models.py:2010 +#: common/models.py:2029 msgid "Header of this message" msgstr "" -#: common/models.py:2016 +#: common/models.py:2035 msgid "Body" msgstr "" -#: common/models.py:2017 +#: common/models.py:2036 msgid "Body of this message" msgstr "" -#: common/models.py:2026 +#: common/models.py:2045 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2031 +#: common/models.py:2050 msgid "Worked on" msgstr "" -#: common/models.py:2032 +#: common/models.py:2051 msgid "Was the work on this message finished?" msgstr "" @@ -2758,7 +2786,7 @@ msgstr "" msgid "Link to external company information" msgstr "" -#: company/models.py:135 part/models.py:808 +#: company/models.py:135 part/models.py:815 msgid "Image" msgstr "" @@ -2791,8 +2819,8 @@ msgid "Does this company manufacture parts?" msgstr "" #: company/models.py:148 company/serializers.py:372 -#: company/templates/company/company_base.html:106 part/serializers.py:151 -#: part/serializers.py:182 stock/serializers.py:180 +#: company/templates/company/company_base.html:106 part/serializers.py:153 +#: part/serializers.py:184 stock/serializers.py:180 msgid "Currency" msgstr "" @@ -2800,7 +2828,7 @@ msgstr "" msgid "Default currency used for this company" msgstr "" -#: company/models.py:248 company/models.py:481 stock/models.py:591 +#: company/models.py:248 company/models.py:481 stock/models.py:598 #: stock/serializers.py:87 stock/templates/stock/item_base.html:148 #: templates/js/translated/bom.js:543 msgid "Base Part" @@ -2832,7 +2860,7 @@ msgstr "" #: templates/js/translated/company.js:497 #: templates/js/translated/company.js:649 #: templates/js/translated/company.js:937 templates/js/translated/order.js:1971 -#: templates/js/translated/part.js:247 templates/js/translated/part.js:1023 +#: templates/js/translated/part.js:247 templates/js/translated/part.js:1027 msgid "MPN" msgstr "" @@ -2861,9 +2889,9 @@ msgstr "" #: company/models.py:365 #: report/templates/report/inventree_test_report_base.html:95 -#: stock/models.py:2088 templates/js/translated/company.js:546 -#: templates/js/translated/company.js:764 templates/js/translated/part.js:845 -#: templates/js/translated/stock.js:1356 +#: stock/models.py:2095 templates/js/translated/company.js:546 +#: templates/js/translated/company.js:764 templates/js/translated/part.js:849 +#: templates/js/translated/stock.js:1360 msgid "Value" msgstr "" @@ -2871,10 +2899,10 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:372 part/models.py:881 part/models.py:2379 +#: company/models.py:372 part/models.py:888 part/models.py:2386 #: part/templates/part/part_base.html:280 #: templates/InvenTree/settings/settings.html:352 -#: templates/js/translated/company.js:770 templates/js/translated/part.js:851 +#: templates/js/translated/company.js:770 templates/js/translated/part.js:855 msgid "Units" msgstr "" @@ -2894,7 +2922,7 @@ msgstr "" #: templates/js/translated/company.js:268 #: templates/js/translated/company.js:401 #: templates/js/translated/company.js:893 templates/js/translated/order.js:1707 -#: templates/js/translated/part.js:217 templates/js/translated/part.js:991 +#: templates/js/translated/part.js:217 templates/js/translated/part.js:995 #: templates/js/translated/table_filters.js:423 msgid "Supplier" msgstr "" @@ -2906,7 +2934,7 @@ msgstr "" #: company/models.py:497 company/templates/company/supplier_part.html:118 #: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267 #: templates/js/translated/order.js:1958 templates/js/translated/part.js:228 -#: templates/js/translated/part.js:1009 +#: templates/js/translated/part.js:1013 msgid "SKU" msgstr "" @@ -2927,23 +2955,23 @@ msgid "Supplier part description" msgstr "" #: company/models.py:522 company/templates/company/supplier_part.html:146 -#: part/models.py:2613 part/templates/part/upload_bom.html:59 +#: part/models.py:2620 part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401 msgid "Note" msgstr "" -#: company/models.py:526 part/models.py:1735 +#: company/models.py:526 part/models.py:1742 msgid "base cost" msgstr "" -#: company/models.py:526 part/models.py:1735 +#: company/models.py:526 part/models.py:1742 msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:528 company/templates/company/supplier_part.html:139 -#: stock/models.py:617 stock/templates/stock/item_base.html:245 -#: templates/js/translated/company.js:969 templates/js/translated/stock.js:1972 +#: stock/models.py:624 stock/templates/stock/item_base.html:245 +#: templates/js/translated/company.js:969 templates/js/translated/stock.js:1976 msgid "Packaging" msgstr "" @@ -2951,7 +2979,7 @@ msgstr "" msgid "Part packaging" msgstr "" -#: company/models.py:530 part/models.py:1737 +#: company/models.py:530 part/models.py:1744 msgid "multiple" msgstr "" @@ -2964,7 +2992,7 @@ msgstr "" #: templates/email/low_stock_notification.html:18 #: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789 #: templates/js/translated/build.js:2645 templates/js/translated/company.js:979 -#: templates/js/translated/part.js:596 templates/js/translated/part.js:599 +#: templates/js/translated/part.js:600 templates/js/translated/part.js:603 #: templates/js/translated/table_filters.js:186 msgid "Available" msgstr "" @@ -3037,12 +3065,12 @@ msgid "Download image from URL" msgstr "" #: company/templates/company/company_base.html:86 order/models.py:637 -#: order/templates/order/sales_order_base.html:116 stock/models.py:636 -#: stock/models.py:637 stock/serializers.py:809 +#: order/templates/order/sales_order_base.html:116 stock/models.py:643 +#: stock/models.py:644 stock/serializers.py:811 #: stock/templates/stock/item_base.html:401 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:393 templates/js/translated/order.js:2513 -#: templates/js/translated/stock.js:2550 +#: templates/js/translated/stock.js:2559 #: templates/js/translated/table_filters.js:427 msgid "Customer" msgstr "" @@ -3083,7 +3111,7 @@ msgstr "" #: company/templates/company/detail.html:36 #: company/templates/company/detail.html:84 -#: part/templates/part/category.html:176 +#: part/templates/part/category.html:182 msgid "Order parts" msgstr "" @@ -3231,7 +3259,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:170 #: part/templates/part/detail.html:186 #: templates/InvenTree/settings/category.html:12 -#: templates/InvenTree/settings/part.html:66 +#: templates/InvenTree/settings/part.html:68 msgid "New Parameter" msgstr "" @@ -3261,10 +3289,10 @@ msgid "Assigned Stock Items" msgstr "" #: company/templates/company/supplier_part.html:7 -#: company/templates/company/supplier_part.html:24 stock/models.py:600 +#: company/templates/company/supplier_part.html:24 stock/models.py:607 #: stock/templates/stock/item_base.html:238 #: templates/js/translated/company.js:909 templates/js/translated/order.js:935 -#: templates/js/translated/stock.js:1929 +#: templates/js/translated/stock.js:1933 msgid "Supplier Part" msgstr "" @@ -3308,13 +3336,13 @@ msgid "Supplier Part Stock" msgstr "" #: company/templates/company/supplier_part.html:168 -#: part/templates/part/detail.html:24 stock/templates/stock/location.html:176 +#: part/templates/part/detail.html:24 stock/templates/stock/location.html:181 msgid "Create new stock item" msgstr "" #: company/templates/company/supplier_part.html:169 -#: part/templates/part/detail.html:25 stock/templates/stock/location.html:177 -#: templates/js/translated/stock.js:431 +#: part/templates/part/detail.html:25 stock/templates/stock/location.html:182 +#: templates/js/translated/stock.js:435 msgid "New Stock Item" msgstr "" @@ -3330,7 +3358,7 @@ msgstr "" #: company/templates/company/supplier_part.html:212 #: company/templates/company/supplier_part.html:326 -#: part/templates/part/prices.html:276 templates/js/translated/part.js:2224 +#: part/templates/part/prices.html:276 templates/js/translated/part.js:2233 msgid "Add Price Break" msgstr "" @@ -3339,12 +3367,12 @@ msgid "No price break information found" msgstr "" #: company/templates/company/supplier_part.html:252 -#: templates/js/translated/part.js:2234 +#: templates/js/translated/part.js:2243 msgid "Delete Price Break" msgstr "" #: company/templates/company/supplier_part.html:266 -#: templates/js/translated/part.js:2248 +#: templates/js/translated/part.js:2257 msgid "Edit Price Break" msgstr "" @@ -3366,13 +3394,13 @@ msgstr "" #: company/templates/company/supplier_part_navbar.html:15 #: part/templates/part/part_sidebar.html:14 -#: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:19 +#: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:24 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:151 #: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/bom.js:555 templates/js/translated/part.js:747 -#: templates/js/translated/part.js:1295 templates/js/translated/part.js:1456 -#: templates/js/translated/stock.js:955 templates/js/translated/stock.js:1750 +#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751 +#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460 +#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754 #: templates/navbar.html:31 msgid "Stock" msgstr "" @@ -3392,14 +3420,14 @@ msgid "Pricing" msgstr "" #: company/templates/company/supplier_part_sidebar.html:5 -#: part/templates/part/category.html:197 +#: part/templates/part/category.html:203 #: part/templates/part/category_sidebar.html:17 -#: stock/templates/stock/location.html:147 -#: stock/templates/stock/location.html:161 -#: stock/templates/stock/location.html:173 +#: stock/templates/stock/location.html:152 +#: stock/templates/stock/location.html:166 +#: stock/templates/stock/location.html:178 #: stock/templates/stock/location_sidebar.html:7 #: templates/InvenTree/search.html:153 templates/js/translated/search.js:223 -#: templates/js/translated/stock.js:2427 users/models.py:40 +#: templates/js/translated/stock.js:2436 users/models.py:40 msgid "Stock Items" msgstr "" @@ -3656,8 +3684,8 @@ msgstr "" #: stock/templates/stock/item_base.html:184 #: templates/email/overdue_purchase_order.html:15 #: templates/js/translated/order.js:936 templates/js/translated/order.js:1691 -#: templates/js/translated/part.js:968 templates/js/translated/stock.js:1909 -#: templates/js/translated/stock.js:2531 +#: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913 +#: templates/js/translated/stock.js:2540 msgid "Purchase Order" msgstr "" @@ -3667,7 +3695,7 @@ msgstr "" #: order/models.py:1009 order/templates/order/order_base.html:169 #: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073 -#: templates/js/translated/part.js:1060 templates/js/translated/part.js:1087 +#: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091 #: templates/js/translated/table_filters.js:338 msgid "Received" msgstr "" @@ -3676,9 +3704,9 @@ msgstr "" msgid "Number of items received" msgstr "" -#: order/models.py:1017 part/templates/part/prices.html:181 stock/models.py:727 +#: order/models.py:1017 part/templates/part/prices.html:181 stock/models.py:734 #: stock/serializers.py:171 stock/templates/stock/item_base.html:191 -#: templates/js/translated/stock.js:1960 +#: templates/js/translated/stock.js:1964 msgid "Purchase Price" msgstr "" @@ -4066,8 +4094,8 @@ msgstr "" #: templates/js/translated/bom.js:77 templates/js/translated/build.js:431 #: templates/js/translated/build.js:583 templates/js/translated/build.js:1974 #: templates/js/translated/order.js:884 templates/js/translated/order.js:1337 -#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:621 -#: templates/js/translated/stock.js:789 +#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625 +#: templates/js/translated/stock.js:793 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "" @@ -4261,8 +4289,8 @@ msgstr "" msgid "This field is required" msgstr "" -#: part/bom.py:127 part/models.py:98 part/models.py:817 -#: part/templates/part/category.html:108 part/templates/part/part_base.html:330 +#: part/bom.py:127 part/models.py:98 part/models.py:824 +#: part/templates/part/category.html:114 part/templates/part/part_base.html:330 msgid "Default Location" msgstr "" @@ -4276,9 +4304,9 @@ msgid "Available Stock" msgstr "" #: part/bom.py:130 part/templates/part/part_base.html:207 -#: templates/js/translated/bom.js:947 templates/js/translated/part.js:586 -#: templates/js/translated/part.js:606 templates/js/translated/part.js:1298 -#: templates/js/translated/part.js:1470 templates/js/translated/part.js:1486 +#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590 +#: templates/js/translated/part.js:610 templates/js/translated/part.js:1302 +#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "" @@ -4299,516 +4327,524 @@ msgstr "" msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:115 part/models.py:2455 part/templates/part/category.html:15 +#: part/models.py:107 stock/models.py:84 +msgid "Icon" +msgstr "" + +#: part/models.py:108 stock/models.py:85 +msgid "Icon (optional)" +msgstr "" + +#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" -#: part/models.py:116 part/templates/part/category.html:128 +#: part/models.py:123 part/templates/part/category.html:134 #: templates/InvenTree/search.html:95 templates/js/translated/search.js:198 #: users/models.py:37 msgid "Part Categories" msgstr "" -#: part/models.py:337 part/templates/part/cat_link.html:3 -#: part/templates/part/category.html:17 part/templates/part/category.html:133 -#: part/templates/part/category.html:153 +#: part/models.py:344 part/templates/part/cat_link.html:3 +#: part/templates/part/category.html:23 part/templates/part/category.html:139 +#: part/templates/part/category.html:159 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82 #: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:1946 templates/js/translated/search.js:144 +#: templates/js/translated/part.js:1955 templates/js/translated/search.js:144 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "" -#: part/models.py:422 +#: part/models.py:429 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:492 part/models.py:504 +#: part/models.py:499 part/models.py:511 #, python-brace-format msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)" msgstr "" -#: part/models.py:621 +#: part/models.py:628 msgid "Next available serial numbers are" msgstr "" -#: part/models.py:625 +#: part/models.py:632 msgid "Next available serial number is" msgstr "" -#: part/models.py:630 +#: part/models.py:637 msgid "Most recent serial number is" msgstr "" -#: part/models.py:711 +#: part/models.py:718 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:738 part/models.py:2509 +#: part/models.py:745 part/models.py:2516 msgid "Part name" msgstr "" -#: part/models.py:745 +#: part/models.py:752 msgid "Is Template" msgstr "" -#: part/models.py:746 +#: part/models.py:753 msgid "Is this part a template part?" msgstr "" -#: part/models.py:756 +#: part/models.py:763 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:757 +#: part/models.py:764 msgid "Variant Of" msgstr "" -#: part/models.py:763 +#: part/models.py:770 msgid "Part description" msgstr "" -#: part/models.py:768 part/templates/part/category.html:86 +#: part/models.py:775 part/templates/part/category.html:92 #: part/templates/part/part_base.html:294 msgid "Keywords" msgstr "" -#: part/models.py:769 +#: part/models.py:776 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:776 part/models.py:2211 part/models.py:2454 +#: part/models.py:783 part/models.py:2218 part/models.py:2461 #: part/templates/part/part_base.html:257 #: templates/InvenTree/settings/settings.html:232 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1438 templates/js/translated/part.js:1664 +#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1668 msgid "Category" msgstr "" -#: part/models.py:777 +#: part/models.py:784 msgid "Part category" msgstr "" -#: part/models.py:782 part/templates/part/part_base.html:266 -#: templates/js/translated/part.js:735 templates/js/translated/part.js:1391 -#: templates/js/translated/stock.js:1722 +#: part/models.py:789 part/templates/part/part_base.html:266 +#: templates/js/translated/part.js:739 templates/js/translated/part.js:1395 +#: templates/js/translated/stock.js:1726 msgid "IPN" msgstr "" -#: part/models.py:783 +#: part/models.py:790 msgid "Internal Part Number" msgstr "" -#: part/models.py:789 +#: part/models.py:796 msgid "Part revision or version number" msgstr "" -#: part/models.py:790 part/templates/part/part_base.html:273 -#: report/models.py:171 templates/js/translated/part.js:739 +#: part/models.py:797 part/templates/part/part_base.html:273 +#: report/models.py:171 templates/js/translated/part.js:743 msgid "Revision" msgstr "" -#: part/models.py:815 +#: part/models.py:822 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:860 part/templates/part/part_base.html:339 +#: part/models.py:867 part/templates/part/part_base.html:339 msgid "Default Supplier" msgstr "" -#: part/models.py:861 +#: part/models.py:868 msgid "Default supplier part" msgstr "" -#: part/models.py:868 +#: part/models.py:875 msgid "Default Expiry" msgstr "" -#: part/models.py:869 +#: part/models.py:876 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:874 part/templates/part/part_base.html:200 +#: part/models.py:881 part/templates/part/part_base.html:200 msgid "Minimum Stock" msgstr "" -#: part/models.py:875 +#: part/models.py:882 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:882 +#: part/models.py:889 msgid "Stock keeping units for this part" msgstr "" -#: part/models.py:888 +#: part/models.py:895 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:894 +#: part/models.py:901 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:900 +#: part/models.py:907 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:905 +#: part/models.py:912 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:910 +#: part/models.py:917 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:915 +#: part/models.py:922 msgid "Is this part active?" msgstr "" -#: part/models.py:920 +#: part/models.py:927 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:922 +#: part/models.py:929 msgid "Part notes" msgstr "" -#: part/models.py:924 +#: part/models.py:931 msgid "BOM checksum" msgstr "" -#: part/models.py:924 +#: part/models.py:931 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:927 +#: part/models.py:934 msgid "BOM checked by" msgstr "" -#: part/models.py:929 +#: part/models.py:936 msgid "BOM checked date" msgstr "" -#: part/models.py:933 +#: part/models.py:940 msgid "Creation User" msgstr "" -#: part/models.py:1737 +#: part/models.py:1744 msgid "Sell multiple" msgstr "" -#: part/models.py:2258 +#: part/models.py:2265 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:2275 +#: part/models.py:2282 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:2295 templates/js/translated/part.js:1997 -#: templates/js/translated/stock.js:1336 +#: part/models.py:2302 templates/js/translated/part.js:2006 +#: templates/js/translated/stock.js:1340 msgid "Test Name" msgstr "" -#: part/models.py:2296 +#: part/models.py:2303 msgid "Enter a name for the test" msgstr "" -#: part/models.py:2301 +#: part/models.py:2308 msgid "Test Description" msgstr "" -#: part/models.py:2302 +#: part/models.py:2309 msgid "Enter description for this test" msgstr "" -#: part/models.py:2307 templates/js/translated/part.js:2006 +#: part/models.py:2314 templates/js/translated/part.js:2015 #: templates/js/translated/table_filters.js:302 msgid "Required" msgstr "" -#: part/models.py:2308 +#: part/models.py:2315 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:2313 templates/js/translated/part.js:2014 +#: part/models.py:2320 templates/js/translated/part.js:2023 msgid "Requires Value" msgstr "" -#: part/models.py:2314 +#: part/models.py:2321 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:2319 templates/js/translated/part.js:2021 +#: part/models.py:2326 templates/js/translated/part.js:2030 msgid "Requires Attachment" msgstr "" -#: part/models.py:2320 +#: part/models.py:2327 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:2328 +#: part/models.py:2335 #, python-brace-format msgid "Illegal character in template name ({c})" msgstr "" -#: part/models.py:2364 +#: part/models.py:2371 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:2372 +#: part/models.py:2379 msgid "Parameter Name" msgstr "" -#: part/models.py:2379 +#: part/models.py:2386 msgid "Parameter Units" msgstr "" -#: part/models.py:2410 +#: part/models.py:2417 msgid "Parent Part" msgstr "" -#: part/models.py:2412 part/models.py:2460 part/models.py:2461 +#: part/models.py:2419 part/models.py:2467 part/models.py:2468 #: templates/InvenTree/settings/settings.html:227 msgid "Parameter Template" msgstr "" -#: part/models.py:2414 +#: part/models.py:2421 msgid "Data" msgstr "" -#: part/models.py:2414 +#: part/models.py:2421 msgid "Parameter Value" msgstr "" -#: part/models.py:2465 templates/InvenTree/settings/settings.html:236 +#: part/models.py:2472 templates/InvenTree/settings/settings.html:236 msgid "Default Value" msgstr "" -#: part/models.py:2466 +#: part/models.py:2473 msgid "Default Parameter Value" msgstr "" -#: part/models.py:2501 +#: part/models.py:2508 msgid "Part ID or part name" msgstr "" -#: part/models.py:2504 templates/js/translated/model_renderers.js:212 +#: part/models.py:2511 templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "" -#: part/models.py:2505 +#: part/models.py:2512 msgid "Unique part ID value" msgstr "" -#: part/models.py:2508 +#: part/models.py:2515 msgid "Part Name" msgstr "" -#: part/models.py:2512 +#: part/models.py:2519 msgid "Part IPN" msgstr "" -#: part/models.py:2513 +#: part/models.py:2520 msgid "Part IPN value" msgstr "" -#: part/models.py:2516 +#: part/models.py:2523 msgid "Level" msgstr "" -#: part/models.py:2517 +#: part/models.py:2524 msgid "BOM level" msgstr "" -#: part/models.py:2586 +#: part/models.py:2593 msgid "Select parent part" msgstr "" -#: part/models.py:2594 +#: part/models.py:2601 msgid "Sub part" msgstr "" -#: part/models.py:2595 +#: part/models.py:2602 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:2601 +#: part/models.py:2608 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:2603 part/templates/part/upload_bom.html:58 +#: part/models.py:2610 part/templates/part/upload_bom.html:58 #: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999 #: templates/js/translated/table_filters.js:100 msgid "Optional" msgstr "" -#: part/models.py:2603 +#: part/models.py:2610 msgid "This BOM item is optional" msgstr "" -#: part/models.py:2606 part/templates/part/upload_bom.html:55 +#: part/models.py:2613 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:2607 +#: part/models.py:2614 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:2610 +#: part/models.py:2617 msgid "BOM item reference" msgstr "" -#: part/models.py:2613 +#: part/models.py:2620 msgid "BOM item notes" msgstr "" -#: part/models.py:2615 +#: part/models.py:2622 msgid "Checksum" msgstr "" -#: part/models.py:2615 +#: part/models.py:2622 msgid "BOM line checksum" msgstr "" -#: part/models.py:2619 part/templates/part/upload_bom.html:57 +#: part/models.py:2626 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1016 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:96 msgid "Inherited" msgstr "" -#: part/models.py:2620 +#: part/models.py:2627 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:2625 part/templates/part/upload_bom.html:56 +#: part/models.py:2632 part/templates/part/upload_bom.html:56 #: templates/js/translated/bom.js:1008 msgid "Allow Variants" msgstr "" -#: part/models.py:2626 +#: part/models.py:2633 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:2704 stock/models.py:461 +#: part/models.py:2711 stock/models.py:468 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:2713 part/models.py:2715 +#: part/models.py:2720 part/models.py:2722 msgid "Sub part must be specified" msgstr "" -#: part/models.py:2820 +#: part/models.py:2827 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:2841 +#: part/models.py:2848 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:2854 +#: part/models.py:2861 msgid "Parent BOM item" msgstr "" -#: part/models.py:2862 +#: part/models.py:2869 msgid "Substitute part" msgstr "" -#: part/models.py:2877 +#: part/models.py:2884 msgid "Part 1" msgstr "" -#: part/models.py:2881 +#: part/models.py:2888 msgid "Part 2" msgstr "" -#: part/models.py:2881 +#: part/models.py:2888 msgid "Select Related Part" msgstr "" -#: part/models.py:2899 +#: part/models.py:2906 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:2903 +#: part/models.py:2910 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:152 part/serializers.py:183 stock/serializers.py:181 +#: part/serializers.py:154 part/serializers.py:185 stock/serializers.py:181 msgid "Purchase currency of this stock item" msgstr "" -#: part/serializers.py:812 +#: part/serializers.py:814 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:820 +#: part/serializers.py:822 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:821 +#: part/serializers.py:823 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:826 +#: part/serializers.py:828 msgid "Include Inherited" msgstr "" -#: part/serializers.py:827 +#: part/serializers.py:829 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:832 +#: part/serializers.py:834 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:833 +#: part/serializers.py:835 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:838 +#: part/serializers.py:840 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:839 +#: part/serializers.py:841 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:879 +#: part/serializers.py:881 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:880 +#: part/serializers.py:882 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:910 +#: part/serializers.py:912 msgid "No part column specified" msgstr "" -#: part/serializers.py:953 +#: part/serializers.py:955 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:956 +#: part/serializers.py:958 msgid "No matching part found" msgstr "" -#: part/serializers.py:959 +#: part/serializers.py:961 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:968 +#: part/serializers.py:970 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:976 +#: part/serializers.py:978 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:997 +#: part/serializers.py:999 msgid "At least one BOM item is required" msgstr "" @@ -4848,101 +4884,101 @@ msgstr "" msgid "Delete Items" msgstr "" -#: part/templates/part/category.html:28 part/templates/part/category.html:32 +#: part/templates/part/category.html:34 part/templates/part/category.html:38 msgid "You are subscribed to notifications for this category" msgstr "" -#: part/templates/part/category.html:36 +#: part/templates/part/category.html:42 msgid "Subscribe to notifications for this category" msgstr "" -#: part/templates/part/category.html:42 +#: part/templates/part/category.html:48 msgid "Category Actions" msgstr "" -#: part/templates/part/category.html:47 +#: part/templates/part/category.html:53 msgid "Edit category" msgstr "" -#: part/templates/part/category.html:48 +#: part/templates/part/category.html:54 msgid "Edit Category" msgstr "" -#: part/templates/part/category.html:52 +#: part/templates/part/category.html:58 msgid "Delete category" msgstr "" -#: part/templates/part/category.html:53 +#: part/templates/part/category.html:59 msgid "Delete Category" msgstr "" -#: part/templates/part/category.html:61 +#: part/templates/part/category.html:67 msgid "Create new part category" msgstr "" -#: part/templates/part/category.html:62 +#: part/templates/part/category.html:68 msgid "New Category" msgstr "" -#: part/templates/part/category.html:80 part/templates/part/category.html:93 +#: part/templates/part/category.html:86 part/templates/part/category.html:99 msgid "Category Path" msgstr "" -#: part/templates/part/category.html:94 +#: part/templates/part/category.html:100 msgid "Top level part category" msgstr "" -#: part/templates/part/category.html:114 part/templates/part/category.html:222 +#: part/templates/part/category.html:120 part/templates/part/category.html:228 #: part/templates/part/category_sidebar.html:7 msgid "Subcategories" msgstr "" -#: part/templates/part/category.html:119 +#: part/templates/part/category.html:125 msgid "Parts (Including subcategories)" msgstr "" -#: part/templates/part/category.html:157 +#: part/templates/part/category.html:163 msgid "Create new part" msgstr "" -#: part/templates/part/category.html:158 templates/js/translated/bom.js:367 +#: part/templates/part/category.html:164 templates/js/translated/bom.js:367 msgid "New Part" msgstr "" -#: part/templates/part/category.html:168 part/templates/part/detail.html:363 +#: part/templates/part/category.html:174 part/templates/part/detail.html:363 #: part/templates/part/detail.html:394 msgid "Options" msgstr "" -#: part/templates/part/category.html:172 +#: part/templates/part/category.html:178 msgid "Set category" msgstr "" -#: part/templates/part/category.html:173 +#: part/templates/part/category.html:179 msgid "Set Category" msgstr "" -#: part/templates/part/category.html:180 part/templates/part/category.html:181 +#: part/templates/part/category.html:186 part/templates/part/category.html:187 msgid "Print Labels" msgstr "" -#: part/templates/part/category.html:206 +#: part/templates/part/category.html:212 msgid "Part Parameters" msgstr "" -#: part/templates/part/category.html:320 +#: part/templates/part/category.html:327 msgid "Create Part Category" msgstr "" -#: part/templates/part/category.html:340 +#: part/templates/part/category.html:347 msgid "Create Part" msgstr "" -#: part/templates/part/category.html:343 +#: part/templates/part/category.html:350 msgid "Create another part after this one" msgstr "" -#: part/templates/part/category.html:344 +#: part/templates/part/category.html:351 msgid "Part created successfully" msgstr "" @@ -4950,7 +4986,7 @@ msgstr "" msgid "Import Parts" msgstr "" -#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:375 +#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:379 msgid "Duplicate Part" msgstr "" @@ -5172,19 +5208,19 @@ msgstr "" #: part/templates/part/part_base.html:43 #: stock/templates/stock/item_base.html:41 -#: stock/templates/stock/location.html:43 +#: stock/templates/stock/location.html:48 msgid "Barcode actions" msgstr "" #: part/templates/part/part_base.html:46 #: stock/templates/stock/item_base.html:45 -#: stock/templates/stock/location.html:45 templates/qr_button.html:1 +#: stock/templates/stock/location.html:50 templates/qr_button.html:1 msgid "Show QR Code" msgstr "" #: part/templates/part/part_base.html:49 #: stock/templates/stock/item_base.html:63 -#: stock/templates/stock/location.html:47 +#: stock/templates/stock/location.html:52 msgid "Print Label" msgstr "" @@ -5194,7 +5230,7 @@ msgstr "" #: part/templates/part/part_base.html:60 #: stock/templates/stock/item_base.html:116 -#: stock/templates/stock/location.html:56 +#: stock/templates/stock/location.html:61 msgid "Stock actions" msgstr "" @@ -5255,7 +5291,7 @@ msgstr "" #: templates/js/translated/company.js:624 #: templates/js/translated/company.js:884 #: templates/js/translated/model_renderers.js:204 -#: templates/js/translated/part.js:650 templates/js/translated/part.js:727 +#: templates/js/translated/part.js:654 templates/js/translated/part.js:731 msgid "Inactive" msgstr "" @@ -5289,9 +5325,9 @@ msgstr "" msgid "Can Build" msgstr "" -#: part/templates/part/part_base.html:238 templates/js/translated/part.js:589 -#: templates/js/translated/part.js:609 templates/js/translated/part.js:1302 -#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490 +#: part/templates/part/part_base.html:238 templates/js/translated/part.js:593 +#: templates/js/translated/part.js:613 templates/js/translated/part.js:1306 +#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1494 msgid "Building" msgstr "" @@ -5464,8 +5500,8 @@ msgstr "" msgid "No sale pice history available for this part." msgstr "" -#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:612 -#: templates/js/translated/part.js:1290 templates/js/translated/part.js:1494 +#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616 +#: templates/js/translated/part.js:1294 templates/js/translated/part.js:1498 msgid "No Stock" msgstr "" @@ -5630,51 +5666,55 @@ msgstr "" msgid "Allow sending of emails for event notifications" msgstr "" -#: plugin/models.py:32 +#: plugin/models.py:33 msgid "Plugin Metadata" msgstr "" -#: plugin/models.py:33 +#: plugin/models.py:34 msgid "JSON metadata field, for use by external plugins" msgstr "" -#: plugin/models.py:79 +#: plugin/models.py:80 msgid "Plugin Configuration" msgstr "" -#: plugin/models.py:80 +#: plugin/models.py:81 msgid "Plugin Configurations" msgstr "" -#: plugin/models.py:85 +#: plugin/models.py:86 msgid "Key" msgstr "" -#: plugin/models.py:86 +#: plugin/models.py:87 msgid "Key of plugin" msgstr "" -#: plugin/models.py:94 +#: plugin/models.py:95 msgid "PluginName of the plugin" msgstr "" -#: plugin/models.py:100 +#: plugin/models.py:101 msgid "Is the plugin active" msgstr "" -#: plugin/models.py:168 +#: plugin/models.py:158 +msgid "Sample plugin" +msgstr "" + +#: plugin/models.py:186 msgid "Plugin" msgstr "" -#: plugin/models.py:231 +#: plugin/models.py:249 msgid "Method" msgstr "" -#: plugin/plugin.py:228 +#: plugin/plugin.py:251 msgid "No author found" msgstr "" -#: plugin/plugin.py:240 +#: plugin/plugin.py:263 msgid "No date found" msgstr "" @@ -5746,12 +5786,12 @@ msgstr "" msgid "No valid objects provided to template" msgstr "" -#: report/api.py:216 report/api.py:257 +#: report/api.py:216 report/api.py:252 #, python-brace-format msgid "Template file '{template}' is missing or does not exist" msgstr "" -#: report/api.py:360 +#: report/api.py:355 msgid "Test report" msgstr "" @@ -5852,12 +5892,12 @@ msgid "Stock Item Test Report" msgstr "" #: report/templates/report/inventree_test_report_base.html:79 -#: stock/models.py:641 stock/templates/stock/item_base.html:322 +#: stock/models.py:648 stock/templates/stock/item_base.html:322 #: templates/js/translated/build.js:424 templates/js/translated/build.js:576 #: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673 #: templates/js/translated/model_renderers.js:118 #: templates/js/translated/order.js:118 templates/js/translated/order.js:3297 -#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:486 +#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490 msgid "Serial Number" msgstr "" @@ -5866,19 +5906,19 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report_base.html:93 -#: stock/models.py:2076 +#: stock/models.py:2083 msgid "Test" msgstr "" #: report/templates/report/inventree_test_report_base.html:94 -#: stock/models.py:2082 +#: stock/models.py:2089 msgid "Result" msgstr "" #: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:51 +#: templates/InvenTree/settings/plugin.html:53 #: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2459 +#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468 msgid "Date" msgstr "" @@ -5896,8 +5936,8 @@ msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report_base.html:137 -#: templates/js/translated/stock.js:606 templates/js/translated/stock.js:776 -#: templates/js/translated/stock.js:2708 +#: templates/js/translated/stock.js:610 templates/js/translated/stock.js:780 +#: templates/js/translated/stock.js:2717 msgid "Serial" msgstr "" @@ -5913,241 +5953,241 @@ msgstr "" msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" -#: stock/models.py:82 stock/models.py:732 +#: stock/models.py:89 stock/models.py:739 #: stock/templates/stock/item_base.html:252 msgid "Owner" msgstr "" -#: stock/models.py:83 stock/models.py:733 +#: stock/models.py:90 stock/models.py:740 msgid "Select Owner" msgstr "" -#: stock/models.py:435 +#: stock/models.py:442 msgid "StockItem with this serial number already exists" msgstr "" -#: stock/models.py:467 stock/serializers.py:95 +#: stock/models.py:474 stock/serializers.py:95 msgid "Stock item cannot be created for virtual parts" msgstr "" -#: stock/models.py:484 +#: stock/models.py:491 #, python-brace-format msgid "Part type ('{pf}') must be {pe}" msgstr "" -#: stock/models.py:494 stock/models.py:503 +#: stock/models.py:501 stock/models.py:510 msgid "Quantity must be 1 for item with a serial number" msgstr "" -#: stock/models.py:495 +#: stock/models.py:502 msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:517 +#: stock/models.py:524 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:523 +#: stock/models.py:530 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:537 +#: stock/models.py:544 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:583 +#: stock/models.py:590 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:593 +#: stock/models.py:600 msgid "Base part" msgstr "" -#: stock/models.py:601 +#: stock/models.py:608 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:608 stock/templates/stock/location.html:17 +#: stock/models.py:615 stock/templates/stock/location.html:17 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" msgstr "" -#: stock/models.py:611 +#: stock/models.py:618 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:618 +#: stock/models.py:625 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:624 stock/templates/stock/item_base.html:361 +#: stock/models.py:631 stock/templates/stock/item_base.html:361 msgid "Installed In" msgstr "" -#: stock/models.py:627 +#: stock/models.py:634 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:643 +#: stock/models.py:650 msgid "Serial number for this item" msgstr "" -#: stock/models.py:657 +#: stock/models.py:664 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:662 +#: stock/models.py:669 msgid "Stock Quantity" msgstr "" -#: stock/models.py:671 +#: stock/models.py:678 msgid "Source Build" msgstr "" -#: stock/models.py:673 +#: stock/models.py:680 msgid "Build for this stock item" msgstr "" -#: stock/models.py:684 +#: stock/models.py:691 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:687 +#: stock/models.py:694 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:693 +#: stock/models.py:700 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:699 stock/templates/stock/item_base.html:429 -#: templates/js/translated/stock.js:1879 +#: stock/models.py:706 stock/templates/stock/item_base.html:429 +#: templates/js/translated/stock.js:1883 msgid "Expiry Date" msgstr "" -#: stock/models.py:700 +#: stock/models.py:707 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:713 +#: stock/models.py:720 msgid "Delete on deplete" msgstr "" -#: stock/models.py:713 +#: stock/models.py:720 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:720 stock/templates/stock/item.html:132 +#: stock/models.py:727 stock/templates/stock/item.html:132 msgid "Stock Item Notes" msgstr "" -#: stock/models.py:728 +#: stock/models.py:735 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:756 +#: stock/models.py:763 msgid "Converted to part" msgstr "" -#: stock/models.py:1235 +#: stock/models.py:1242 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1241 +#: stock/models.py:1248 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1247 +#: stock/models.py:1254 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({n})" msgstr "" -#: stock/models.py:1250 +#: stock/models.py:1257 msgid "Serial numbers must be a list of integers" msgstr "" -#: stock/models.py:1253 +#: stock/models.py:1260 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1260 +#: stock/models.py:1267 #, python-brace-format msgid "Serial numbers already exist: {exists}" msgstr "" -#: stock/models.py:1330 +#: stock/models.py:1337 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1333 +#: stock/models.py:1340 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1336 +#: stock/models.py:1343 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1339 +#: stock/models.py:1346 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1342 +#: stock/models.py:1349 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1345 +#: stock/models.py:1352 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1352 stock/serializers.py:959 +#: stock/models.py:1359 stock/serializers.py:961 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1356 +#: stock/models.py:1363 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1360 +#: stock/models.py:1367 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1364 +#: stock/models.py:1371 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:1533 +#: stock/models.py:1540 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:1994 +#: stock/models.py:2001 msgid "Entry notes" msgstr "" -#: stock/models.py:2052 +#: stock/models.py:2059 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2058 +#: stock/models.py:2065 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2077 +#: stock/models.py:2084 msgid "Test name" msgstr "" -#: stock/models.py:2083 +#: stock/models.py:2090 msgid "Test result" msgstr "" -#: stock/models.py:2089 +#: stock/models.py:2096 msgid "Test output value" msgstr "" -#: stock/models.py:2096 +#: stock/models.py:2103 msgid "Test result attachment" msgstr "" -#: stock/models.py:2102 +#: stock/models.py:2109 msgid "Test notes" msgstr "" @@ -6172,7 +6212,7 @@ msgstr "" msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:323 stock/serializers.py:916 stock/serializers.py:1149 +#: stock/serializers.py:323 stock/serializers.py:918 stock/serializers.py:1151 msgid "Destination stock location" msgstr "" @@ -6220,63 +6260,63 @@ msgstr "" msgid "Destination location for returned item" msgstr "" -#: stock/serializers.py:771 +#: stock/serializers.py:773 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:775 +#: stock/serializers.py:777 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:779 +#: stock/serializers.py:781 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:810 +#: stock/serializers.py:812 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:816 +#: stock/serializers.py:818 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:824 +#: stock/serializers.py:826 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:834 stock/serializers.py:1065 +#: stock/serializers.py:836 stock/serializers.py:1067 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:923 +#: stock/serializers.py:925 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:928 +#: stock/serializers.py:930 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:929 +#: stock/serializers.py:931 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:934 +#: stock/serializers.py:936 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:935 +#: stock/serializers.py:937 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:945 +#: stock/serializers.py:947 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1027 +#: stock/serializers.py:1029 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1055 +#: stock/serializers.py:1057 msgid "Stock transaction notes" msgstr "" @@ -6313,7 +6353,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2852 +#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2861 msgid "Install Stock Item" msgstr "" @@ -6321,7 +6361,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1518 +#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1522 msgid "Add Test Result" msgstr "" @@ -6352,7 +6392,7 @@ msgid "Stock adjustment actions" msgstr "" #: stock/templates/stock/item_base.html:80 -#: stock/templates/stock/location.html:63 templates/stock_table.html:47 +#: stock/templates/stock/location.html:68 templates/stock_table.html:47 msgid "Count stock" msgstr "" @@ -6369,7 +6409,7 @@ msgid "Serialize stock" msgstr "" #: stock/templates/stock/item_base.html:93 -#: stock/templates/stock/location.html:69 templates/stock_table.html:48 +#: stock/templates/stock/location.html:74 templates/stock_table.html:48 msgid "Transfer stock" msgstr "" @@ -6430,7 +6470,7 @@ msgid "You are not in the list of owners of this item. This stock item cannot be msgstr "" #: stock/templates/stock/item_base.html:257 -#: stock/templates/stock/location.html:127 +#: stock/templates/stock/location.html:132 msgid "Read only" msgstr "" @@ -6508,7 +6548,7 @@ msgid "Stale" msgstr "" #: stock/templates/stock/item_base.html:442 -#: templates/js/translated/company.js:985 templates/js/translated/stock.js:1895 +#: templates/js/translated/company.js:985 templates/js/translated/stock.js:1899 msgid "Last Updated" msgstr "" @@ -6552,58 +6592,58 @@ msgstr "" msgid "Select quantity to serialize, and unique serial numbers." msgstr "" -#: stock/templates/stock/location.html:33 +#: stock/templates/stock/location.html:38 msgid "Locate stock location" msgstr "" -#: stock/templates/stock/location.html:49 +#: stock/templates/stock/location.html:54 msgid "Check-in Items" msgstr "" -#: stock/templates/stock/location.html:77 +#: stock/templates/stock/location.html:82 msgid "Location actions" msgstr "" -#: stock/templates/stock/location.html:79 +#: stock/templates/stock/location.html:84 msgid "Edit location" msgstr "" -#: stock/templates/stock/location.html:81 +#: stock/templates/stock/location.html:86 msgid "Delete location" msgstr "" -#: stock/templates/stock/location.html:90 +#: stock/templates/stock/location.html:95 msgid "Create new stock location" msgstr "" -#: stock/templates/stock/location.html:91 +#: stock/templates/stock/location.html:96 msgid "New Location" msgstr "" -#: stock/templates/stock/location.html:109 -#: stock/templates/stock/location.html:115 +#: stock/templates/stock/location.html:114 +#: stock/templates/stock/location.html:120 msgid "Location Path" msgstr "" -#: stock/templates/stock/location.html:116 +#: stock/templates/stock/location.html:121 msgid "Top level stock location" msgstr "" -#: stock/templates/stock/location.html:122 +#: stock/templates/stock/location.html:127 msgid "Location Owner" msgstr "" -#: stock/templates/stock/location.html:126 +#: stock/templates/stock/location.html:131 msgid "You are not in the list of owners of this location. This stock location cannot be edited." msgstr "" -#: stock/templates/stock/location.html:142 -#: stock/templates/stock/location.html:189 +#: stock/templates/stock/location.html:147 +#: stock/templates/stock/location.html:194 #: stock/templates/stock/location_sidebar.html:5 msgid "Sublocations" msgstr "" -#: stock/templates/stock/location.html:156 templates/InvenTree/search.html:165 +#: stock/templates/stock/location.html:161 templates/InvenTree/search.html:165 #: templates/js/translated/search.js:238 users/models.py:39 msgid "Stock Locations" msgstr "" @@ -6875,15 +6915,15 @@ msgstr "" msgid "Part Settings" msgstr "" -#: templates/InvenTree/settings/part.html:44 +#: templates/InvenTree/settings/part.html:46 msgid "Part Import" msgstr "" -#: templates/InvenTree/settings/part.html:48 +#: templates/InvenTree/settings/part.html:50 msgid "Import Part" msgstr "" -#: templates/InvenTree/settings/part.html:62 +#: templates/InvenTree/settings/part.html:64 msgid "Part Parameter Templates" msgstr "" @@ -6895,47 +6935,47 @@ msgstr "" msgid "Changing the settings below require you to immediately restart the server. Do not change this while under active usage." msgstr "" -#: templates/InvenTree/settings/plugin.html:34 +#: templates/InvenTree/settings/plugin.html:36 msgid "Plugins" msgstr "" -#: templates/InvenTree/settings/plugin.html:39 +#: templates/InvenTree/settings/plugin.html:41 #: templates/js/translated/plugin.js:16 msgid "Install Plugin" msgstr "" -#: templates/InvenTree/settings/plugin.html:48 templates/navbar.html:137 +#: templates/InvenTree/settings/plugin.html:50 templates/navbar.html:137 #: users/models.py:36 msgid "Admin" msgstr "" -#: templates/InvenTree/settings/plugin.html:50 +#: templates/InvenTree/settings/plugin.html:52 #: templates/InvenTree/settings/plugin_settings.html:28 msgid "Author" msgstr "" -#: templates/InvenTree/settings/plugin.html:52 +#: templates/InvenTree/settings/plugin.html:54 #: templates/InvenTree/settings/plugin_settings.html:43 msgid "Version" msgstr "" -#: templates/InvenTree/settings/plugin.html:74 +#: templates/InvenTree/settings/plugin.html:76 msgid "Sample" msgstr "" -#: templates/InvenTree/settings/plugin.html:99 +#: templates/InvenTree/settings/plugin.html:101 msgid "Inactive plugins" msgstr "" -#: templates/InvenTree/settings/plugin.html:122 +#: templates/InvenTree/settings/plugin.html:124 msgid "Plugin Error Stack" msgstr "" -#: templates/InvenTree/settings/plugin.html:131 +#: templates/InvenTree/settings/plugin.html:133 msgid "Stage" msgstr "" -#: templates/InvenTree/settings/plugin.html:133 +#: templates/InvenTree/settings/plugin.html:135 #: templates/js/translated/notification.js:75 msgid "Message" msgstr "" @@ -6999,11 +7039,11 @@ msgstr "" msgid "Commit Message" msgstr "" -#: templates/InvenTree/settings/plugin_settings.html:117 +#: templates/InvenTree/settings/plugin_settings.html:120 msgid "Sign Status" msgstr "" -#: templates/InvenTree/settings/plugin_settings.html:122 +#: templates/InvenTree/settings/plugin_settings.html:125 msgid "Sign Key" msgstr "" @@ -7828,7 +7868,7 @@ msgstr "" msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:456 templates/js/translated/stock.js:1050 +#: templates/js/translated/barcode.js:456 templates/js/translated/stock.js:1054 msgid "Remove stock item" msgstr "" @@ -8001,7 +8041,7 @@ msgid "Includes variant and substitute stock" msgstr "" #: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822 -#: templates/js/translated/part.js:759 +#: templates/js/translated/part.js:763 msgid "Includes variant stock" msgstr "" @@ -8098,12 +8138,12 @@ msgid "Complete Build Order" msgstr "" #: templates/js/translated/build.js:263 templates/js/translated/stock.js:92 -#: templates/js/translated/stock.js:210 +#: templates/js/translated/stock.js:214 msgid "Next available serial number" msgstr "" #: templates/js/translated/build.js:265 templates/js/translated/stock.js:94 -#: templates/js/translated/stock.js:212 +#: templates/js/translated/stock.js:216 msgid "Latest serial number" msgstr "" @@ -8316,9 +8356,9 @@ msgstr "" msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1383 -#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1682 -#: templates/js/translated/stock.js:2382 +#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387 +#: templates/js/translated/part.js:1899 templates/js/translated/stock.js:1686 +#: templates/js/translated/stock.js:2386 msgid "Select" msgstr "" @@ -8330,7 +8370,7 @@ msgstr "" msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2638 +#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647 msgid "No user information" msgstr "" @@ -8403,34 +8443,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:616 -#: templates/js/translated/company.js:876 templates/js/translated/part.js:634 -#: templates/js/translated/part.js:719 +#: templates/js/translated/company.js:876 templates/js/translated/part.js:638 +#: templates/js/translated/part.js:723 msgid "Template part" msgstr "" #: templates/js/translated/company.js:620 -#: templates/js/translated/company.js:880 templates/js/translated/part.js:638 -#: templates/js/translated/part.js:723 +#: templates/js/translated/company.js:880 templates/js/translated/part.js:642 +#: templates/js/translated/part.js:727 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:748 templates/js/translated/part.js:826 +#: templates/js/translated/company.js:748 templates/js/translated/part.js:830 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:785 templates/js/translated/part.js:868 +#: templates/js/translated/company.js:785 templates/js/translated/part.js:872 msgid "Edit parameter" msgstr "" -#: templates/js/translated/company.js:786 templates/js/translated/part.js:869 +#: templates/js/translated/company.js:786 templates/js/translated/part.js:873 msgid "Delete parameter" msgstr "" -#: templates/js/translated/company.js:805 templates/js/translated/part.js:886 +#: templates/js/translated/company.js:805 templates/js/translated/part.js:890 msgid "Edit Parameter" msgstr "" -#: templates/js/translated/company.js:816 templates/js/translated/part.js:898 +#: templates/js/translated/company.js:816 templates/js/translated/part.js:902 msgid "Delete Parameter" msgstr "" @@ -8555,7 +8595,7 @@ msgid "Labels sent to printer" msgstr "" #: templates/js/translated/label.js:60 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1078 msgid "Select Stock Items" msgstr "" @@ -8865,7 +8905,7 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2140 +#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144 msgid "Stock Status" msgstr "" @@ -8889,7 +8929,7 @@ msgstr "" msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:1672 templates/js/translated/part.js:939 +#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943 msgid "No purchase orders found" msgstr "" @@ -8924,7 +8964,7 @@ msgstr "" #: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203 #: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050 -#: templates/js/translated/part.js:2126 templates/js/translated/part.js:2479 +#: templates/js/translated/part.js:2135 templates/js/translated/part.js:2488 msgid "Unit Price" msgstr "" @@ -8934,11 +8974,11 @@ msgid "Total Price" msgstr "" #: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600 -#: templates/js/translated/part.js:1046 +#: templates/js/translated/part.js:1050 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1092 +#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096 msgid "Receive line item" msgstr "" @@ -9059,7 +9099,7 @@ msgid "Delete Stock Allocation" msgstr "" #: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398 -#: templates/js/translated/stock.js:1598 +#: templates/js/translated/stock.js:1602 msgid "Shipped to customer" msgstr "" @@ -9183,241 +9223,245 @@ msgstr "" msgid "Parent part category" msgstr "" -#: templates/js/translated/part.js:318 +#: templates/js/translated/part.js:306 templates/js/translated/stock.js:118 +msgid "Icon (optional) - Explore all available icons on" +msgstr "" + +#: templates/js/translated/part.js:322 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:331 +#: templates/js/translated/part.js:335 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:333 +#: templates/js/translated/part.js:337 msgid "Any child categories will be moved to the parent of this category" msgstr "" -#: templates/js/translated/part.js:334 +#: templates/js/translated/part.js:338 msgid "Any parts in this category will be moved to the parent of this category" msgstr "" -#: templates/js/translated/part.js:339 +#: templates/js/translated/part.js:343 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:365 +#: templates/js/translated/part.js:369 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:367 +#: templates/js/translated/part.js:371 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:378 +#: templates/js/translated/part.js:382 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:430 +#: templates/js/translated/part.js:434 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:431 +#: templates/js/translated/part.js:435 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:445 +#: templates/js/translated/part.js:449 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:447 +#: templates/js/translated/part.js:451 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:448 +#: templates/js/translated/part.js:452 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:449 +#: templates/js/translated/part.js:453 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:456 +#: templates/js/translated/part.js:460 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:492 +#: templates/js/translated/part.js:496 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:494 +#: templates/js/translated/part.js:498 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:499 +#: templates/js/translated/part.js:503 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:501 +#: templates/js/translated/part.js:505 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:518 +#: templates/js/translated/part.js:522 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:528 +#: templates/js/translated/part.js:532 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:531 +#: templates/js/translated/part.js:535 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:556 +#: templates/js/translated/part.js:560 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:582 templates/js/translated/part.js:1466 +#: templates/js/translated/part.js:586 templates/js/translated/part.js:1470 #: templates/js/translated/table_filters.js:468 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:592 templates/js/translated/part.js:1478 +#: templates/js/translated/part.js:596 templates/js/translated/part.js:1482 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:626 templates/js/translated/part.js:711 +#: templates/js/translated/part.js:630 templates/js/translated/part.js:715 msgid "Trackable part" msgstr "" -#: templates/js/translated/part.js:630 templates/js/translated/part.js:715 +#: templates/js/translated/part.js:634 templates/js/translated/part.js:719 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:642 +#: templates/js/translated/part.js:646 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:646 +#: templates/js/translated/part.js:650 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:774 +#: templates/js/translated/part.js:778 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1162 +#: templates/js/translated/part.js:1166 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1186 +#: templates/js/translated/part.js:1190 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:1253 templates/js/translated/part.js:1549 +#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1553 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:1292 +#: templates/js/translated/part.js:1296 msgid "Not available" msgstr "" -#: templates/js/translated/part.js:1443 +#: templates/js/translated/part.js:1447 msgid "No category" msgstr "" -#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816 -#: templates/js/translated/stock.js:2343 +#: templates/js/translated/part.js:1577 templates/js/translated/part.js:1820 +#: templates/js/translated/stock.js:2347 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:1589 +#: templates/js/translated/part.js:1593 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:1655 +#: templates/js/translated/part.js:1659 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:1660 +#: templates/js/translated/part.js:1664 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:1665 +#: templates/js/translated/part.js:1669 msgid "Select Part Category" msgstr "" -#: templates/js/translated/part.js:1678 +#: templates/js/translated/part.js:1682 msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2362 +#: templates/js/translated/part.js:1839 templates/js/translated/stock.js:2366 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:1914 +#: templates/js/translated/part.js:1918 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:1925 +#: templates/js/translated/part.js:1934 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:1983 +#: templates/js/translated/part.js:1992 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2034 templates/js/translated/stock.js:1295 +#: templates/js/translated/part.js:2043 templates/js/translated/stock.js:1299 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:2035 templates/js/translated/stock.js:1296 -#: templates/js/translated/stock.js:1556 +#: templates/js/translated/part.js:2044 templates/js/translated/stock.js:1300 +#: templates/js/translated/stock.js:1560 msgid "Delete test result" msgstr "" -#: templates/js/translated/part.js:2041 +#: templates/js/translated/part.js:2050 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2063 +#: templates/js/translated/part.js:2072 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2077 +#: templates/js/translated/part.js:2086 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2102 +#: templates/js/translated/part.js:2111 #, python-brace-format msgid "No ${human_name} information found" msgstr "" -#: templates/js/translated/part.js:2159 +#: templates/js/translated/part.js:2168 #, python-brace-format msgid "Edit ${human_name}" msgstr "" -#: templates/js/translated/part.js:2160 +#: templates/js/translated/part.js:2169 #, python-brace-format msgid "Delete ${human_name}" msgstr "" -#: templates/js/translated/part.js:2274 +#: templates/js/translated/part.js:2283 msgid "Current Stock" msgstr "" -#: templates/js/translated/part.js:2307 +#: templates/js/translated/part.js:2316 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2333 +#: templates/js/translated/part.js:2342 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2403 +#: templates/js/translated/part.js:2412 msgid "Single Price" msgstr "" -#: templates/js/translated/part.js:2422 +#: templates/js/translated/part.js:2431 msgid "Single Price Difference" msgstr "" @@ -9511,376 +9555,376 @@ msgstr "" msgid "Parent stock location" msgstr "" -#: templates/js/translated/stock.js:140 +#: templates/js/translated/stock.js:144 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:155 +#: templates/js/translated/stock.js:159 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:169 +#: templates/js/translated/stock.js:173 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:171 +#: templates/js/translated/stock.js:175 msgid "Any child locations will be moved to the parent of this location" msgstr "" -#: templates/js/translated/stock.js:172 +#: templates/js/translated/stock.js:176 msgid "Any stock items in this location will be moved to the parent of this location" msgstr "" -#: templates/js/translated/stock.js:178 +#: templates/js/translated/stock.js:182 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:223 +#: templates/js/translated/stock.js:227 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:262 +#: templates/js/translated/stock.js:266 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:268 +#: templates/js/translated/stock.js:272 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:333 +#: templates/js/translated/stock.js:337 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:353 +#: templates/js/translated/stock.js:357 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:369 +#: templates/js/translated/stock.js:373 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:374 +#: templates/js/translated/stock.js:378 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:395 +#: templates/js/translated/stock.js:399 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:445 +#: templates/js/translated/stock.js:449 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:458 +#: templates/js/translated/stock.js:462 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:483 +#: templates/js/translated/stock.js:487 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:487 templates/js/translated/stock.js:488 +#: templates/js/translated/stock.js:491 templates/js/translated/stock.js:492 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:504 +#: templates/js/translated/stock.js:508 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:524 +#: templates/js/translated/stock.js:528 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:533 +#: templates/js/translated/stock.js:537 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:656 +#: templates/js/translated/stock.js:660 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:657 +#: templates/js/translated/stock.js:661 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:734 +#: templates/js/translated/stock.js:738 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:735 +#: templates/js/translated/stock.js:739 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:737 +#: templates/js/translated/stock.js:741 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:738 +#: templates/js/translated/stock.js:742 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:824 +#: templates/js/translated/stock.js:828 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:825 +#: templates/js/translated/stock.js:829 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:920 +#: templates/js/translated/stock.js:924 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:921 +#: templates/js/translated/stock.js:925 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:927 +#: templates/js/translated/stock.js:931 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:928 +#: templates/js/translated/stock.js:932 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:932 +#: templates/js/translated/stock.js:936 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:933 +#: templates/js/translated/stock.js:937 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:937 +#: templates/js/translated/stock.js:941 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:938 users/models.py:216 +#: templates/js/translated/stock.js:942 users/models.py:216 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:942 +#: templates/js/translated/stock.js:946 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1035 +#: templates/js/translated/stock.js:1039 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1035 +#: templates/js/translated/stock.js:1039 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1075 +#: templates/js/translated/stock.js:1079 msgid "You must select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1098 +#: templates/js/translated/stock.js:1102 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1234 +#: templates/js/translated/stock.js:1238 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1236 +#: templates/js/translated/stock.js:1240 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1241 +#: templates/js/translated/stock.js:1245 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1288 +#: templates/js/translated/stock.js:1292 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1291 +#: templates/js/translated/stock.js:1295 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1317 +#: templates/js/translated/stock.js:1321 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1374 +#: templates/js/translated/stock.js:1378 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1539 +#: templates/js/translated/stock.js:1543 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1561 +#: templates/js/translated/stock.js:1565 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1590 +#: templates/js/translated/stock.js:1594 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1594 +#: templates/js/translated/stock.js:1598 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1602 +#: templates/js/translated/stock.js:1606 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1608 +#: templates/js/translated/stock.js:1612 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1775 +#: templates/js/translated/stock.js:1779 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:1780 +#: templates/js/translated/stock.js:1784 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:1783 +#: templates/js/translated/stock.js:1787 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:1786 +#: templates/js/translated/stock.js:1790 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:1788 +#: templates/js/translated/stock.js:1792 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:1790 +#: templates/js/translated/stock.js:1794 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:1793 +#: templates/js/translated/stock.js:1797 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:1797 +#: templates/js/translated/stock.js:1801 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:1799 +#: templates/js/translated/stock.js:1803 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:1806 +#: templates/js/translated/stock.js:1810 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:1808 +#: templates/js/translated/stock.js:1812 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:1810 +#: templates/js/translated/stock.js:1814 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:1814 +#: templates/js/translated/stock.js:1818 #: templates/js/translated/table_filters.js:196 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:1865 +#: templates/js/translated/stock.js:1869 msgid "Stocktake" msgstr "" -#: templates/js/translated/stock.js:1944 +#: templates/js/translated/stock.js:1948 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:1982 +#: templates/js/translated/stock.js:1986 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2155 +#: templates/js/translated/stock.js:2159 msgid "Set Stock Status" msgstr "" -#: templates/js/translated/stock.js:2169 +#: templates/js/translated/stock.js:2173 msgid "Select Status Code" msgstr "" -#: templates/js/translated/stock.js:2170 +#: templates/js/translated/stock.js:2174 msgid "Status code must be selected" msgstr "" -#: templates/js/translated/stock.js:2400 +#: templates/js/translated/stock.js:2404 msgid "Load Subloactions" msgstr "" -#: templates/js/translated/stock.js:2484 +#: templates/js/translated/stock.js:2493 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2500 +#: templates/js/translated/stock.js:2509 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2522 +#: templates/js/translated/stock.js:2531 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2541 +#: templates/js/translated/stock.js:2550 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2560 +#: templates/js/translated/stock.js:2569 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2578 +#: templates/js/translated/stock.js:2587 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:2601 +#: templates/js/translated/stock.js:2610 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:2609 +#: templates/js/translated/stock.js:2618 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:2685 +#: templates/js/translated/stock.js:2694 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:2736 templates/js/translated/stock.js:2772 +#: templates/js/translated/stock.js:2745 templates/js/translated/stock.js:2781 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:2785 +#: templates/js/translated/stock.js:2794 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:2806 +#: templates/js/translated/stock.js:2815 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:2807 +#: templates/js/translated/stock.js:2816 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:2809 +#: templates/js/translated/stock.js:2818 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:2810 +#: templates/js/translated/stock.js:2819 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:2811 +#: templates/js/translated/stock.js:2820 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:2812 +#: templates/js/translated/stock.js:2821 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:2825 +#: templates/js/translated/stock.js:2834 msgid "Select part to install" msgstr "" diff --git a/InvenTree/locale/pt_br/LC_MESSAGES/django.po b/InvenTree/locale/pt_br/LC_MESSAGES/django.po index b9309f0062..5548cd4fd5 100644 --- a/InvenTree/locale/pt_br/LC_MESSAGES/django.po +++ b/InvenTree/locale/pt_br/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-11 02:47+0000\n" +"POT-Creation-Date: 2022-08-15 13:12+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -164,6 +164,10 @@ msgstr "" msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "" +#: InvenTree/mixins.py:71 +msgid "Remove HTML tags from this value" +msgstr "" + #: InvenTree/models.py:236 msgid "Improperly formatted pattern" msgstr "" @@ -399,99 +403,99 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/settings.py:609 +#: InvenTree/settings.py:607 msgid "Czech" msgstr "" -#: InvenTree/settings.py:610 +#: InvenTree/settings.py:608 msgid "German" msgstr "" -#: InvenTree/settings.py:611 +#: InvenTree/settings.py:609 msgid "Greek" msgstr "" -#: InvenTree/settings.py:612 +#: InvenTree/settings.py:610 msgid "English" msgstr "" -#: InvenTree/settings.py:613 +#: InvenTree/settings.py:611 msgid "Spanish" msgstr "" -#: InvenTree/settings.py:614 +#: InvenTree/settings.py:612 msgid "Spanish (Mexican)" msgstr "" -#: InvenTree/settings.py:615 +#: InvenTree/settings.py:613 msgid "Farsi / Persian" msgstr "" -#: InvenTree/settings.py:616 +#: InvenTree/settings.py:614 msgid "French" msgstr "" -#: InvenTree/settings.py:617 +#: InvenTree/settings.py:615 msgid "Hebrew" msgstr "" -#: InvenTree/settings.py:618 +#: InvenTree/settings.py:616 msgid "Hungarian" msgstr "" -#: InvenTree/settings.py:619 +#: InvenTree/settings.py:617 msgid "Italian" msgstr "" -#: InvenTree/settings.py:620 +#: InvenTree/settings.py:618 msgid "Japanese" msgstr "" -#: InvenTree/settings.py:621 +#: InvenTree/settings.py:619 msgid "Korean" msgstr "" -#: InvenTree/settings.py:622 +#: InvenTree/settings.py:620 msgid "Dutch" msgstr "" -#: InvenTree/settings.py:623 +#: InvenTree/settings.py:621 msgid "Norwegian" msgstr "" -#: InvenTree/settings.py:624 +#: InvenTree/settings.py:622 msgid "Polish" msgstr "" -#: InvenTree/settings.py:625 +#: InvenTree/settings.py:623 msgid "Portuguese" msgstr "" -#: InvenTree/settings.py:626 +#: InvenTree/settings.py:624 msgid "Portuguese (Brazilian)" msgstr "" -#: InvenTree/settings.py:627 +#: InvenTree/settings.py:625 msgid "Russian" msgstr "" -#: InvenTree/settings.py:628 +#: InvenTree/settings.py:626 msgid "Swedish" msgstr "" -#: InvenTree/settings.py:629 +#: InvenTree/settings.py:627 msgid "Thai" msgstr "" -#: InvenTree/settings.py:630 +#: InvenTree/settings.py:628 msgid "Turkish" msgstr "" -#: InvenTree/settings.py:631 +#: InvenTree/settings.py:629 msgid "Vietnamese" msgstr "" -#: InvenTree/settings.py:632 +#: InvenTree/settings.py:630 msgid "Chinese" msgstr "" @@ -5747,12 +5751,12 @@ msgstr "" msgid "No valid objects provided to template" msgstr "" -#: report/api.py:216 report/api.py:257 +#: report/api.py:216 report/api.py:252 #, python-brace-format msgid "Template file '{template}' is missing or does not exist" msgstr "" -#: report/api.py:360 +#: report/api.py:355 msgid "Test report" msgstr "" diff --git a/InvenTree/locale/ru/LC_MESSAGES/django.po b/InvenTree/locale/ru/LC_MESSAGES/django.po index 065fc226d6..764fb7e315 100644 --- a/InvenTree/locale/ru/LC_MESSAGES/django.po +++ b/InvenTree/locale/ru/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-11 02:47+0000\n" -"PO-Revision-Date: 2022-08-11 13:49\n" +"POT-Creation-Date: 2022-08-16 11:53+0000\n" +"PO-Revision-Date: 2022-08-16 21:35\n" "Last-Translator: \n" "Language-Team: Russian\n" "Language: ru_RU\n" @@ -36,15 +36,15 @@ msgstr "Введите дату" #: order/templates/order/so_sidebar.html:17 #: part/templates/part/part_sidebar.html:59 #: report/templates/report/inventree_build_order_base.html:172 -#: stock/models.py:1993 stock/models.py:2101 stock/serializers.py:329 -#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:823 -#: stock/serializers.py:922 stock/serializers.py:1054 +#: stock/models.py:2000 stock/models.py:2108 stock/serializers.py:329 +#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825 +#: stock/serializers.py:924 stock/serializers.py:1056 #: stock/templates/stock/stock_sidebar.html:25 #: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101 #: templates/js/translated/company.js:964 templates/js/translated/order.js:2104 #: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753 #: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102 -#: templates/js/translated/stock.js:1370 templates/js/translated/stock.js:1976 +#: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980 msgid "Notes" msgstr "Заметки" @@ -163,6 +163,10 @@ msgstr "Серийных номеров не найдено" msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "" +#: InvenTree/mixins.py:71 +msgid "Remove HTML tags from this value" +msgstr "" + #: InvenTree/models.py:236 msgid "Improperly formatted pattern" msgstr "" @@ -195,7 +199,7 @@ msgstr "Файл не найден" msgid "Missing external link" msgstr "Отсутствует внешняя ссылка" -#: InvenTree/models.py:395 stock/models.py:2095 +#: InvenTree/models.py:395 stock/models.py:2102 #: templates/js/translated/attachment.js:103 #: templates/js/translated/attachment.js:241 msgid "Attachment" @@ -207,16 +211,16 @@ msgstr "Выберите файл для вложения" #: InvenTree/models.py:402 company/models.py:124 company/models.py:276 #: company/models.py:510 order/models.py:84 order/models.py:1245 -#: part/models.py:795 +#: part/models.py:802 #: report/templates/report/inventree_build_order_base.html:164 #: templates/js/translated/company.js:656 #: templates/js/translated/company.js:948 templates/js/translated/order.js:2742 -#: templates/js/translated/part.js:1510 +#: templates/js/translated/part.js:1514 msgid "Link" msgstr "Ссылка" -#: InvenTree/models.py:403 build/models.py:296 part/models.py:796 -#: stock/models.py:651 +#: InvenTree/models.py:403 build/models.py:296 part/models.py:803 +#: stock/models.py:658 msgid "Link to external URL" msgstr "Ссылка на внешний URL" @@ -229,12 +233,12 @@ msgstr "Комментарий" msgid "File comment" msgstr "Комментарий к файлу" -#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1646 -#: common/models.py:1647 common/models.py:1870 common/models.py:1871 -#: common/models.py:2133 common/models.py:2134 part/models.py:2193 -#: part/models.py:2213 plugin/models.py:238 plugin/models.py:239 +#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665 +#: common/models.py:1666 common/models.py:1889 common/models.py:1890 +#: common/models.py:2152 common/models.py:2153 part/models.py:2200 +#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2632 +#: templates/js/translated/stock.js:2641 msgid "User" msgstr "Пользователь" @@ -271,19 +275,19 @@ msgstr "Ошибка переименования файла" msgid "Invalid choice" msgstr "Неверный выбор" -#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1856 -#: company/models.py:358 label/models.py:101 part/models.py:739 -#: part/models.py:2371 plugin/models.py:93 report/models.py:152 +#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875 +#: company/models.py:358 label/models.py:101 part/models.py:746 +#: part/models.py:2378 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 -#: templates/InvenTree/settings/plugin.html:49 -#: templates/InvenTree/settings/plugin.html:132 +#: templates/InvenTree/settings/plugin.html:51 +#: templates/InvenTree/settings/plugin.html:134 #: templates/InvenTree/settings/plugin_settings.html:23 #: templates/InvenTree/settings/settings.html:347 #: templates/js/translated/company.js:545 #: templates/js/translated/company.js:758 #: templates/js/translated/notification.js:71 -#: templates/js/translated/part.js:684 templates/js/translated/part.js:836 -#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2388 +#: templates/js/translated/part.js:688 templates/js/translated/part.js:840 +#: templates/js/translated/part.js:1906 templates/js/translated/stock.js:2392 msgid "Name" msgstr "Название" @@ -292,21 +296,21 @@ msgstr "Название" #: company/models.py:516 company/templates/company/company_base.html:71 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:87 label/models.py:108 -#: order/models.py:82 part/models.py:762 part/templates/part/category.html:74 +#: order/models.py:82 part/models.py:769 part/templates/part/category.html:80 #: part/templates/part/part_base.html:167 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 -#: stock/templates/stock/location.html:103 +#: stock/templates/stock/location.html:108 #: templates/InvenTree/settings/plugin_settings.html:33 #: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848 #: templates/js/translated/build.js:2471 templates/js/translated/company.js:409 #: templates/js/translated/company.js:667 #: templates/js/translated/company.js:959 templates/js/translated/order.js:1720 #: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531 -#: templates/js/translated/part.js:743 templates/js/translated/part.js:1149 -#: templates/js/translated/part.js:1424 templates/js/translated/part.js:1933 -#: templates/js/translated/part.js:2002 templates/js/translated/stock.js:1739 -#: templates/js/translated/stock.js:2415 templates/js/translated/stock.js:2469 +#: templates/js/translated/part.js:747 templates/js/translated/part.js:1153 +#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1942 +#: templates/js/translated/part.js:2011 templates/js/translated/stock.js:1743 +#: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478 msgid "Description" msgstr "Описание" @@ -319,7 +323,7 @@ msgid "parent" msgstr "родитель" #: InvenTree/models.py:560 InvenTree/models.py:561 -#: templates/js/translated/part.js:1939 templates/js/translated/stock.js:2421 +#: templates/js/translated/part.js:1948 templates/js/translated/stock.js:2430 msgid "Path" msgstr "Путь" @@ -331,7 +335,7 @@ msgstr "" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:55 part/models.py:2692 +#: InvenTree/serializers.py:55 part/models.py:2699 msgid "Must be a valid number" msgstr "Должно быть действительным номером" @@ -398,99 +402,99 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/settings.py:609 +#: InvenTree/settings.py:607 msgid "Czech" msgstr "" -#: InvenTree/settings.py:610 +#: InvenTree/settings.py:608 msgid "German" msgstr "Немецкий" -#: InvenTree/settings.py:611 +#: InvenTree/settings.py:609 msgid "Greek" msgstr "Греческий" -#: InvenTree/settings.py:612 +#: InvenTree/settings.py:610 msgid "English" msgstr "Английский" -#: InvenTree/settings.py:613 +#: InvenTree/settings.py:611 msgid "Spanish" msgstr "Испанский" -#: InvenTree/settings.py:614 +#: InvenTree/settings.py:612 msgid "Spanish (Mexican)" msgstr "Испанский (Мексика)" -#: InvenTree/settings.py:615 +#: InvenTree/settings.py:613 msgid "Farsi / Persian" msgstr "" -#: InvenTree/settings.py:616 +#: InvenTree/settings.py:614 msgid "French" msgstr "Французский" -#: InvenTree/settings.py:617 +#: InvenTree/settings.py:615 msgid "Hebrew" msgstr "Иврит" -#: InvenTree/settings.py:618 +#: InvenTree/settings.py:616 msgid "Hungarian" msgstr "Венгерский" -#: InvenTree/settings.py:619 +#: InvenTree/settings.py:617 msgid "Italian" msgstr "Итальянский" -#: InvenTree/settings.py:620 +#: InvenTree/settings.py:618 msgid "Japanese" msgstr "Японский" -#: InvenTree/settings.py:621 +#: InvenTree/settings.py:619 msgid "Korean" msgstr "Корейский" -#: InvenTree/settings.py:622 +#: InvenTree/settings.py:620 msgid "Dutch" msgstr "Голландский" -#: InvenTree/settings.py:623 +#: InvenTree/settings.py:621 msgid "Norwegian" msgstr "Норвежский" -#: InvenTree/settings.py:624 +#: InvenTree/settings.py:622 msgid "Polish" msgstr "Польский" -#: InvenTree/settings.py:625 +#: InvenTree/settings.py:623 msgid "Portuguese" msgstr "" -#: InvenTree/settings.py:626 +#: InvenTree/settings.py:624 msgid "Portuguese (Brazilian)" msgstr "" -#: InvenTree/settings.py:627 +#: InvenTree/settings.py:625 msgid "Russian" msgstr "Русский" -#: InvenTree/settings.py:628 +#: InvenTree/settings.py:626 msgid "Swedish" msgstr "Шведский" -#: InvenTree/settings.py:629 +#: InvenTree/settings.py:627 msgid "Thai" msgstr "Тайский" -#: InvenTree/settings.py:630 +#: InvenTree/settings.py:628 msgid "Turkish" msgstr "Турецкий" -#: InvenTree/settings.py:631 +#: InvenTree/settings.py:629 msgid "Vietnamese" msgstr "Вьетнамский" -#: InvenTree/settings.py:632 +#: InvenTree/settings.py:630 msgid "Chinese" msgstr "Китайский" @@ -621,7 +625,7 @@ msgstr "Отделить от родительского элемента" msgid "Split child item" msgstr "Разбить дочерний элемент" -#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2080 +#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2084 msgid "Merged stock items" msgstr "Объединенные позиции на складе" @@ -743,7 +747,7 @@ msgid "Build Order Reference" msgstr "Ссылка на заказ" #: build/models.py:166 order/models.py:240 order/models.py:623 -#: order/models.py:904 part/models.py:2610 +#: order/models.py:904 part/models.py:2617 #: part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 @@ -770,10 +774,10 @@ msgstr "" #: build/models.py:191 build/templates/build/build_base.html:77 #: build/templates/build/detail.html:29 company/models.py:670 #: order/models.py:1001 order/models.py:1112 order/models.py:1113 -#: part/models.py:336 part/models.py:2139 part/models.py:2154 -#: part/models.py:2173 part/models.py:2191 part/models.py:2290 -#: part/models.py:2410 part/models.py:2500 part/models.py:2585 -#: part/models.py:2861 part/serializers.py:811 +#: part/models.py:343 part/models.py:2146 part/models.py:2161 +#: part/models.py:2180 part/models.py:2198 part/models.py:2297 +#: part/models.py:2417 part/models.py:2507 part/models.py:2592 +#: part/models.py:2868 part/serializers.py:813 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -796,11 +800,11 @@ msgstr "" #: templates/js/translated/order.js:934 templates/js/translated/order.js:1387 #: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885 #: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507 -#: templates/js/translated/part.js:1134 templates/js/translated/part.js:1206 -#: templates/js/translated/part.js:1402 templates/js/translated/stock.js:582 -#: templates/js/translated/stock.js:747 templates/js/translated/stock.js:954 -#: templates/js/translated/stock.js:1696 templates/js/translated/stock.js:2495 -#: templates/js/translated/stock.js:2690 templates/js/translated/stock.js:2824 +#: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210 +#: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586 +#: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958 +#: templates/js/translated/stock.js:1700 templates/js/translated/stock.js:2504 +#: templates/js/translated/stock.js:2699 templates/js/translated/stock.js:2833 msgid "Part" msgstr "Детали" @@ -858,7 +862,7 @@ msgid "Build status code" msgstr "Код статуса сборки" #: build/models.py:251 build/serializers.py:225 order/serializers.py:447 -#: stock/models.py:655 templates/js/translated/order.js:1247 +#: stock/models.py:662 templates/js/translated/order.js:1247 msgid "Batch Code" msgstr "Код партии" @@ -866,7 +870,7 @@ msgstr "Код партии" msgid "Batch code for this build output" msgstr "Код партии для этого вывода сборки" -#: build/models.py:258 order/models.py:86 part/models.py:931 +#: build/models.py:258 order/models.py:86 part/models.py:938 #: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544 msgid "Creation Date" msgstr "Дата создания" @@ -899,7 +903,7 @@ msgstr "Пользователь, выпустивший этот заказ н #: build/models.py:289 build/templates/build/build_base.html:190 #: build/templates/build/detail.html:115 order/models.py:100 #: order/templates/order/order_base.html:176 -#: order/templates/order/sales_order_base.html:183 part/models.py:935 +#: order/templates/order/sales_order_base.html:183 part/models.py:942 #: report/templates/report/inventree_build_order_base.html:158 #: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754 msgid "Responsible" @@ -912,7 +916,7 @@ msgstr "Пользователь, ответственный за этот за #: build/models.py:295 build/templates/build/detail.html:101 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:153 -#: part/templates/part/part_base.html:346 stock/models.py:649 +#: part/templates/part/part_base.html:346 stock/models.py:656 #: stock/templates/stock/item_base.html:205 msgid "External Link" msgstr "Внешняя ссылка" @@ -978,8 +982,8 @@ msgid "Build to allocate parts" msgstr "" #: build/models.py:1345 build/serializers.py:645 order/serializers.py:1015 -#: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 -#: stock/serializers.py:880 stock/templates/stock/item_base.html:10 +#: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:756 +#: stock/serializers.py:882 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:199 #: templates/js/translated/build.js:741 templates/js/translated/build.js:746 @@ -987,8 +991,8 @@ msgstr "" #: templates/js/translated/order.js:104 templates/js/translated/order.js:2886 #: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193 #: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380 -#: templates/js/translated/stock.js:583 templates/js/translated/stock.js:748 -#: templates/js/translated/stock.js:2568 +#: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752 +#: templates/js/translated/stock.js:2577 msgid "Stock Item" msgstr "Предметы на складе" @@ -998,11 +1002,11 @@ msgstr "Исходный складской предмет" #: build/models.py:1358 build/serializers.py:193 #: build/templates/build/build_base.html:82 -#: build/templates/build/detail.html:34 common/models.py:1678 +#: build/templates/build/detail.html:34 common/models.py:1697 #: company/templates/company/supplier_part.html:279 order/models.py:897 #: order/models.py:1423 order/serializers.py:1155 #: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40 -#: part/models.py:2601 part/templates/part/detail.html:937 +#: part/models.py:2608 part/templates/part/detail.html:937 #: part/templates/part/detail.html:1023 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 @@ -1025,11 +1029,11 @@ msgstr "Исходный складской предмет" #: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207 #: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386 #: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037 -#: templates/js/translated/part.js:1034 templates/js/translated/part.js:2147 -#: templates/js/translated/part.js:2378 templates/js/translated/part.js:2412 -#: templates/js/translated/part.js:2490 templates/js/translated/stock.js:454 -#: templates/js/translated/stock.js:608 templates/js/translated/stock.js:778 -#: templates/js/translated/stock.js:2617 templates/js/translated/stock.js:2702 +#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2156 +#: templates/js/translated/part.js:2387 templates/js/translated/part.js:2421 +#: templates/js/translated/part.js:2499 templates/js/translated/stock.js:458 +#: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782 +#: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711 msgid "Quantity" msgstr "Количество" @@ -1071,8 +1075,8 @@ msgid "Enter quantity for build output" msgstr "Введите количество для вывода сборки" #: build/serializers.py:208 build/serializers.py:665 order/models.py:318 -#: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 -#: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 +#: order/serializers.py:287 order/serializers.py:442 part/serializers.py:544 +#: part/serializers.py:976 stock/models.py:484 stock/models.py:1251 #: stock/serializers.py:302 msgid "Quantity must be greater than zero" msgstr "Количество должно быть больше нуля" @@ -1087,7 +1091,7 @@ msgstr "" #: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159 #: stock/serializers.py:311 templates/js/translated/order.js:1258 -#: templates/js/translated/stock.js:267 templates/js/translated/stock.js:455 +#: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459 msgid "Serial Numbers" msgstr "Серийные номера" @@ -1113,16 +1117,16 @@ msgstr "" #: build/serializers.py:366 order/serializers.py:428 order/serializers.py:532 #: stock/serializers.py:322 stock/serializers.py:453 stock/serializers.py:534 -#: stock/serializers.py:915 stock/serializers.py:1148 +#: stock/serializers.py:917 stock/serializers.py:1150 #: stock/templates/stock/item_base.html:390 #: templates/js/translated/barcode.js:436 #: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753 #: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285 #: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305 #: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394 -#: templates/js/translated/part.js:181 templates/js/translated/stock.js:584 -#: templates/js/translated/stock.js:749 templates/js/translated/stock.js:956 -#: templates/js/translated/stock.js:1850 templates/js/translated/stock.js:2509 +#: templates/js/translated/part.js:181 templates/js/translated/stock.js:588 +#: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960 +#: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518 msgid "Location" msgstr "Расположение" @@ -1135,8 +1139,8 @@ msgstr "" #: order/serializers.py:465 stock/templates/stock/item_base.html:423 #: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505 #: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724 -#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1825 -#: templates/js/translated/stock.js:2586 templates/js/translated/stock.js:2718 +#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829 +#: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727 msgid "Status" msgstr "Статус" @@ -1212,8 +1216,8 @@ msgstr "" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:577 build/serializers.py:622 part/models.py:2719 -#: part/models.py:2853 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726 +#: part/models.py:2860 msgid "BOM Item" msgstr "BOM Компонент" @@ -1229,7 +1233,7 @@ msgstr "" msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:651 stock/serializers.py:767 +#: build/serializers.py:651 stock/serializers.py:769 msgid "Item must be in stock" msgstr "Компонент должен быть в наличии" @@ -1367,7 +1371,7 @@ msgstr "" #: report/templates/report/inventree_build_order_base.html:125 #: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741 #: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552 -#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1038 +#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042 msgid "Target Date" msgstr "Целевая дата" @@ -1445,8 +1449,8 @@ msgstr "" #: stock/templates/stock/item_base.html:170 #: templates/js/translated/build.js:1182 #: templates/js/translated/model_renderers.js:124 -#: templates/js/translated/stock.js:1022 templates/js/translated/stock.js:1839 -#: templates/js/translated/stock.js:2725 +#: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843 +#: templates/js/translated/stock.js:2734 #: templates/js/translated/table_filters.js:159 #: templates/js/translated/table_filters.js:250 msgid "Batch" @@ -1506,7 +1510,7 @@ msgstr "" #: build/templates/build/detail.html:187 #: company/templates/company/detail.html:37 #: company/templates/company/detail.html:85 -#: part/templates/part/category.html:177 templates/js/translated/order.js:977 +#: part/templates/part/category.html:183 templates/js/translated/order.js:977 msgid "Order Parts" msgstr "Заказать детали" @@ -1559,12 +1563,12 @@ msgid "Delete outputs" msgstr "" #: build/templates/build/detail.html:267 -#: stock/templates/stock/location.html:197 templates/stock_table.html:27 +#: stock/templates/stock/location.html:202 templates/stock_table.html:27 msgid "Printing Actions" msgstr "Печать" #: build/templates/build/detail.html:271 build/templates/build/detail.html:272 -#: stock/templates/stock/location.html:201 templates/stock_table.html:31 +#: stock/templates/stock/location.html:206 templates/stock_table.html:31 msgid "Print labels" msgstr "" @@ -1841,7 +1845,7 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:951 part/models.py:2412 report/models.py:158 +#: common/models.py:951 part/models.py:2419 report/models.py:158 #: templates/js/translated/table_filters.js:38 #: templates/js/translated/table_filters.js:484 msgid "Template" @@ -1851,7 +1855,7 @@ msgstr "Шаблон" msgid "Parts are templates by default" msgstr "По умолчанию детали являются шаблонами" -#: common/models.py:958 part/models.py:887 templates/js/translated/bom.js:1448 +#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448 #: templates/js/translated/table_filters.js:176 #: templates/js/translated/table_filters.js:447 msgid "Assembly" @@ -1861,7 +1865,7 @@ msgstr "Сборка" msgid "Parts can be assembled from other components by default" msgstr "" -#: common/models.py:965 part/models.py:893 +#: common/models.py:965 part/models.py:900 #: templates/js/translated/table_filters.js:455 msgid "Component" msgstr "Компонент" @@ -1870,7 +1874,7 @@ msgstr "Компонент" msgid "Parts can be used as sub-components by default" msgstr "" -#: common/models.py:972 part/models.py:904 +#: common/models.py:972 part/models.py:911 msgid "Purchaseable" msgstr "" @@ -1878,7 +1882,7 @@ msgstr "" msgid "Parts are purchaseable by default" msgstr "" -#: common/models.py:979 part/models.py:909 +#: common/models.py:979 part/models.py:916 #: templates/js/translated/table_filters.js:476 msgid "Salable" msgstr "Можно продавать" @@ -1887,7 +1891,7 @@ msgstr "Можно продавать" msgid "Parts are salable by default" msgstr "" -#: common/models.py:986 part/models.py:899 +#: common/models.py:986 part/models.py:906 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:108 #: templates/js/translated/table_filters.js:488 @@ -1898,7 +1902,7 @@ msgstr "Отслеживание" msgid "Parts are trackable by default" msgstr "По умолчанию детали являются отслеживаемыми" -#: common/models.py:993 part/models.py:919 +#: common/models.py:993 part/models.py:926 #: part/templates/part/part_base.html:151 #: templates/js/translated/table_filters.js:42 #: templates/js/translated/table_filters.js:492 @@ -1982,608 +1986,632 @@ msgid "Format to display the part name" msgstr "" #: common/models.py:1074 -msgid "Enable label printing" +msgid "Part Category Default Icon" msgstr "" #: common/models.py:1075 -msgid "Enable label printing from the web interface" +msgid "Part category default icon (empty means no icon)" +msgstr "" + +#: common/models.py:1080 +msgid "Enable label printing" msgstr "" #: common/models.py:1081 +msgid "Enable label printing from the web interface" +msgstr "" + +#: common/models.py:1087 msgid "Label Image DPI" msgstr "" -#: common/models.py:1082 +#: common/models.py:1088 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/models.py:1091 +#: common/models.py:1097 msgid "Enable Reports" msgstr "" -#: common/models.py:1092 +#: common/models.py:1098 msgid "Enable generation of reports" msgstr "" -#: common/models.py:1098 templates/stats.html:25 +#: common/models.py:1104 templates/stats.html:25 msgid "Debug Mode" msgstr "Режим отладки" -#: common/models.py:1099 +#: common/models.py:1105 msgid "Generate reports in debug mode (HTML output)" msgstr "" -#: common/models.py:1105 +#: common/models.py:1111 msgid "Page Size" msgstr "" -#: common/models.py:1106 +#: common/models.py:1112 msgid "Default page size for PDF reports" msgstr "" -#: common/models.py:1116 +#: common/models.py:1122 msgid "Enable Test Reports" msgstr "" -#: common/models.py:1117 +#: common/models.py:1123 msgid "Enable generation of test reports" msgstr "" -#: common/models.py:1123 +#: common/models.py:1129 msgid "Attach Test Reports" msgstr "" -#: common/models.py:1124 +#: common/models.py:1130 msgid "When printing a Test Report, attach a copy of the Test Report to the associated Stock Item" msgstr "" -#: common/models.py:1130 +#: common/models.py:1136 msgid "Batch Code Template" msgstr "" -#: common/models.py:1131 +#: common/models.py:1137 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/models.py:1136 +#: common/models.py:1142 msgid "Stock Expiry" msgstr "" -#: common/models.py:1137 +#: common/models.py:1143 msgid "Enable stock expiry functionality" msgstr "" -#: common/models.py:1143 +#: common/models.py:1149 msgid "Sell Expired Stock" msgstr "" -#: common/models.py:1144 +#: common/models.py:1150 msgid "Allow sale of expired stock" msgstr "" -#: common/models.py:1150 +#: common/models.py:1156 msgid "Stock Stale Time" msgstr "" -#: common/models.py:1151 +#: common/models.py:1157 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/models.py:1153 +#: common/models.py:1159 msgid "days" msgstr "" -#: common/models.py:1158 +#: common/models.py:1164 msgid "Build Expired Stock" msgstr "" -#: common/models.py:1159 +#: common/models.py:1165 msgid "Allow building with expired stock" msgstr "" -#: common/models.py:1165 +#: common/models.py:1171 msgid "Stock Ownership Control" msgstr "" -#: common/models.py:1166 +#: common/models.py:1172 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/models.py:1172 -msgid "Build Order Reference Pattern" -msgstr "" - -#: common/models.py:1173 -msgid "Required pattern for generating Build Order reference field" +#: common/models.py:1178 +msgid "Stock Location Default Icon" msgstr "" #: common/models.py:1179 +msgid "Stock location default icon (empty means no icon)" +msgstr "" + +#: common/models.py:1184 +msgid "Build Order Reference Pattern" +msgstr "" + +#: common/models.py:1185 +msgid "Required pattern for generating Build Order reference field" +msgstr "" + +#: common/models.py:1191 msgid "Sales Order Reference Pattern" msgstr "" -#: common/models.py:1180 +#: common/models.py:1192 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/models.py:1186 +#: common/models.py:1198 msgid "Sales Order Default Shipment" msgstr "" -#: common/models.py:1187 +#: common/models.py:1199 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/models.py:1193 +#: common/models.py:1205 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/models.py:1194 +#: common/models.py:1206 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/models.py:1201 +#: common/models.py:1213 msgid "Enable password forgot" msgstr "" -#: common/models.py:1202 +#: common/models.py:1214 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/models.py:1208 +#: common/models.py:1220 msgid "Enable registration" msgstr "" -#: common/models.py:1209 +#: common/models.py:1221 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/models.py:1215 +#: common/models.py:1227 msgid "Enable SSO" msgstr "" -#: common/models.py:1216 +#: common/models.py:1228 msgid "Enable SSO on the login pages" msgstr "" -#: common/models.py:1222 +#: common/models.py:1234 msgid "Email required" msgstr "Необходимо указать EMail" -#: common/models.py:1223 +#: common/models.py:1235 msgid "Require user to supply mail on signup" msgstr "" -#: common/models.py:1229 +#: common/models.py:1241 msgid "Auto-fill SSO users" msgstr "" -#: common/models.py:1230 +#: common/models.py:1242 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/models.py:1236 +#: common/models.py:1248 msgid "Mail twice" msgstr "" -#: common/models.py:1237 +#: common/models.py:1249 msgid "On signup ask users twice for their mail" msgstr "" -#: common/models.py:1243 +#: common/models.py:1255 msgid "Password twice" msgstr "" -#: common/models.py:1244 +#: common/models.py:1256 msgid "On signup ask users twice for their password" msgstr "" -#: common/models.py:1250 +#: common/models.py:1262 msgid "Group on signup" msgstr "" -#: common/models.py:1251 +#: common/models.py:1263 msgid "Group to which new users are assigned on registration" msgstr "" -#: common/models.py:1257 +#: common/models.py:1269 msgid "Enforce MFA" msgstr "" -#: common/models.py:1258 +#: common/models.py:1270 msgid "Users must use multifactor security." msgstr "" -#: common/models.py:1264 +#: common/models.py:1276 msgid "Check plugins on startup" msgstr "" -#: common/models.py:1265 +#: common/models.py:1277 msgid "Check that all plugins are installed on startup - enable in container enviroments" msgstr "" -#: common/models.py:1273 +#: common/models.py:1284 +msgid "Check plugin signatures" +msgstr "" + +#: common/models.py:1285 +msgid "Check and show signatures for plugins" +msgstr "" + +#: common/models.py:1292 msgid "Enable URL integration" msgstr "" -#: common/models.py:1274 +#: common/models.py:1293 msgid "Enable plugins to add URL routes" msgstr "" -#: common/models.py:1281 +#: common/models.py:1300 msgid "Enable navigation integration" msgstr "" -#: common/models.py:1282 +#: common/models.py:1301 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/models.py:1289 +#: common/models.py:1308 msgid "Enable app integration" msgstr "" -#: common/models.py:1290 +#: common/models.py:1309 msgid "Enable plugins to add apps" msgstr "" -#: common/models.py:1297 +#: common/models.py:1316 msgid "Enable schedule integration" msgstr "" -#: common/models.py:1298 +#: common/models.py:1317 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/models.py:1305 +#: common/models.py:1324 msgid "Enable event integration" msgstr "" -#: common/models.py:1306 +#: common/models.py:1325 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:1323 common/models.py:1639 +#: common/models.py:1342 common/models.py:1658 msgid "Settings key (must be unique - case insensitive" msgstr "" -#: common/models.py:1345 +#: common/models.py:1364 msgid "Show subscribed parts" msgstr "Показывать детали, на которые включены уведомления" -#: common/models.py:1346 +#: common/models.py:1365 msgid "Show subscribed parts on the homepage" msgstr "Показывать детали, на которые включены уведомления, на главной странице" -#: common/models.py:1352 +#: common/models.py:1371 msgid "Show subscribed categories" msgstr "Показывать категории, на которые включены уведомления" -#: common/models.py:1353 +#: common/models.py:1372 msgid "Show subscribed part categories on the homepage" msgstr "Показывать категории, на которые включены уведомления, на главной странице" -#: common/models.py:1359 +#: common/models.py:1378 msgid "Show latest parts" msgstr "Показывать последние детали" -#: common/models.py:1360 +#: common/models.py:1379 msgid "Show latest parts on the homepage" msgstr "Показывать последние детали на главной странице" -#: common/models.py:1366 +#: common/models.py:1385 msgid "Recent Part Count" msgstr "" -#: common/models.py:1367 +#: common/models.py:1386 msgid "Number of recent parts to display on index page" msgstr "" -#: common/models.py:1373 +#: common/models.py:1392 msgid "Show unvalidated BOMs" msgstr "Показывать непроверенные BOMы" -#: common/models.py:1374 +#: common/models.py:1393 msgid "Show BOMs that await validation on the homepage" msgstr "Показывать BOMы, ожидающие проверки, на главной странице" -#: common/models.py:1380 +#: common/models.py:1399 msgid "Show recent stock changes" msgstr "Показывать изменившиеся складские запасы" -#: common/models.py:1381 +#: common/models.py:1400 msgid "Show recently changed stock items on the homepage" msgstr "Показывать единицы хранения с недавно изменившимися складскими запасами на главной странице" -#: common/models.py:1387 +#: common/models.py:1406 msgid "Recent Stock Count" msgstr "" -#: common/models.py:1388 +#: common/models.py:1407 msgid "Number of recent stock items to display on index page" msgstr "" -#: common/models.py:1394 +#: common/models.py:1413 msgid "Show low stock" msgstr "Показывать низкие складские запасы" -#: common/models.py:1395 +#: common/models.py:1414 msgid "Show low stock items on the homepage" msgstr "Показывать единицы хранения с низкими складскими запасами на главной странице" -#: common/models.py:1401 +#: common/models.py:1420 msgid "Show depleted stock" msgstr "Показывать закончившиеся детали" -#: common/models.py:1402 +#: common/models.py:1421 msgid "Show depleted stock items on the homepage" msgstr "Показывать закончившиеся на складе единицы хранения на главной странице" -#: common/models.py:1408 +#: common/models.py:1427 msgid "Show needed stock" msgstr "Показывать требуемые детали" -#: common/models.py:1409 +#: common/models.py:1428 msgid "Show stock items needed for builds on the homepage" msgstr "Показывать требуемые для сборки единицы хранения на главной странице" -#: common/models.py:1415 +#: common/models.py:1434 msgid "Show expired stock" msgstr "Показывать просрочку" -#: common/models.py:1416 +#: common/models.py:1435 msgid "Show expired stock items on the homepage" msgstr "Показывать единицы хранения с истёкшим сроком годности на главной странице" -#: common/models.py:1422 +#: common/models.py:1441 msgid "Show stale stock" msgstr "Показывать залежалые" -#: common/models.py:1423 +#: common/models.py:1442 msgid "Show stale stock items on the homepage" msgstr "Показывать залежалые единицы хранения на главной странице" -#: common/models.py:1429 +#: common/models.py:1448 msgid "Show pending builds" msgstr "Показывать незавершённые сборки" -#: common/models.py:1430 +#: common/models.py:1449 msgid "Show pending builds on the homepage" msgstr "Показывать незавершённые сборки на главной странице" -#: common/models.py:1436 +#: common/models.py:1455 msgid "Show overdue builds" msgstr "Показывать просроченные сборки" -#: common/models.py:1437 +#: common/models.py:1456 msgid "Show overdue builds on the homepage" msgstr "Показывать просроченные сборки на главной странице" -#: common/models.py:1443 +#: common/models.py:1462 msgid "Show outstanding POs" msgstr "" -#: common/models.py:1444 +#: common/models.py:1463 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:1450 +#: common/models.py:1469 msgid "Show overdue POs" msgstr "" -#: common/models.py:1451 +#: common/models.py:1470 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:1457 +#: common/models.py:1476 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:1458 +#: common/models.py:1477 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:1464 +#: common/models.py:1483 msgid "Show overdue SOs" msgstr "" -#: common/models.py:1465 +#: common/models.py:1484 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:1471 +#: common/models.py:1490 msgid "Inline label display" msgstr "" -#: common/models.py:1472 +#: common/models.py:1491 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1478 +#: common/models.py:1497 msgid "Inline report display" msgstr "" -#: common/models.py:1479 +#: common/models.py:1498 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1485 +#: common/models.py:1504 msgid "Search Parts" msgstr "" -#: common/models.py:1486 +#: common/models.py:1505 msgid "Display parts in search preview window" msgstr "" -#: common/models.py:1492 +#: common/models.py:1511 msgid "Seach Supplier Parts" msgstr "" -#: common/models.py:1493 +#: common/models.py:1512 msgid "Display supplier parts in search preview window" msgstr "" -#: common/models.py:1499 +#: common/models.py:1518 msgid "Search Manufacturer Parts" msgstr "" -#: common/models.py:1500 +#: common/models.py:1519 msgid "Display manufacturer parts in search preview window" msgstr "" -#: common/models.py:1506 +#: common/models.py:1525 msgid "Hide Inactive Parts" msgstr "" -#: common/models.py:1507 +#: common/models.py:1526 msgid "Excluded inactive parts from search preview window" msgstr "" -#: common/models.py:1513 +#: common/models.py:1532 msgid "Search Categories" msgstr "" -#: common/models.py:1514 +#: common/models.py:1533 msgid "Display part categories in search preview window" msgstr "" -#: common/models.py:1520 +#: common/models.py:1539 msgid "Search Stock" msgstr "" -#: common/models.py:1521 +#: common/models.py:1540 msgid "Display stock items in search preview window" msgstr "" -#: common/models.py:1527 +#: common/models.py:1546 msgid "Hide Unavailable Stock Items" msgstr "" -#: common/models.py:1528 +#: common/models.py:1547 msgid "Exclude stock items which are not available from the search preview window" msgstr "" -#: common/models.py:1534 +#: common/models.py:1553 msgid "Search Locations" msgstr "" -#: common/models.py:1535 +#: common/models.py:1554 msgid "Display stock locations in search preview window" msgstr "" -#: common/models.py:1541 +#: common/models.py:1560 msgid "Search Companies" msgstr "" -#: common/models.py:1542 +#: common/models.py:1561 msgid "Display companies in search preview window" msgstr "" -#: common/models.py:1548 +#: common/models.py:1567 msgid "Search Purchase Orders" msgstr "" -#: common/models.py:1549 +#: common/models.py:1568 msgid "Display purchase orders in search preview window" msgstr "" -#: common/models.py:1555 +#: common/models.py:1574 msgid "Exclude Inactive Purchase Orders" msgstr "" -#: common/models.py:1556 +#: common/models.py:1575 msgid "Exclude inactive purchase orders from search preview window" msgstr "" -#: common/models.py:1562 +#: common/models.py:1581 msgid "Search Sales Orders" msgstr "" -#: common/models.py:1563 +#: common/models.py:1582 msgid "Display sales orders in search preview window" msgstr "" -#: common/models.py:1569 +#: common/models.py:1588 msgid "Exclude Inactive Sales Orders" msgstr "" -#: common/models.py:1570 +#: common/models.py:1589 msgid "Exclude inactive sales orders from search preview window" msgstr "" -#: common/models.py:1576 +#: common/models.py:1595 msgid "Search Preview Results" msgstr "" -#: common/models.py:1577 +#: common/models.py:1596 msgid "Number of results to show in each section of the search preview window" msgstr "" -#: common/models.py:1583 +#: common/models.py:1602 msgid "Show Quantity in Forms" msgstr "" -#: common/models.py:1584 +#: common/models.py:1603 msgid "Display available part quantity in some forms" msgstr "" -#: common/models.py:1590 +#: common/models.py:1609 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:1591 +#: common/models.py:1610 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:1597 +#: common/models.py:1616 msgid "Fixed Navbar" msgstr "" -#: common/models.py:1598 +#: common/models.py:1617 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:1604 +#: common/models.py:1623 msgid "Date Format" msgstr "" -#: common/models.py:1605 +#: common/models.py:1624 msgid "Preferred format for displaying dates" msgstr "" -#: common/models.py:1619 part/templates/part/detail.html:41 +#: common/models.py:1638 part/templates/part/detail.html:41 msgid "Part Scheduling" msgstr "" -#: common/models.py:1620 +#: common/models.py:1639 msgid "Display part scheduling information" msgstr "" -#: common/models.py:1679 +#: common/models.py:1698 msgid "Price break quantity" msgstr "" -#: common/models.py:1686 company/serializers.py:366 +#: common/models.py:1705 company/serializers.py:366 #: company/templates/company/supplier_part.html:284 order/models.py:938 -#: templates/js/translated/part.js:1065 templates/js/translated/part.js:2152 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2161 msgid "Price" msgstr "Цена" -#: common/models.py:1687 +#: common/models.py:1706 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:1847 common/models.py:2025 +#: common/models.py:1866 common/models.py:2044 msgid "Endpoint" msgstr "" -#: common/models.py:1848 +#: common/models.py:1867 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:1857 +#: common/models.py:1876 msgid "Name for this webhook" msgstr "" -#: common/models.py:1862 part/models.py:914 plugin/models.py:99 +#: common/models.py:1881 part/models.py:921 plugin/models.py:100 #: templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:104 #: templates/js/translated/table_filters.js:316 @@ -2591,67 +2619,67 @@ msgstr "" msgid "Active" msgstr "" -#: common/models.py:1863 +#: common/models.py:1882 msgid "Is this webhook active" msgstr "" -#: common/models.py:1877 +#: common/models.py:1896 msgid "Token" msgstr "" -#: common/models.py:1878 +#: common/models.py:1897 msgid "Token for access" msgstr "" -#: common/models.py:1885 +#: common/models.py:1904 msgid "Secret" msgstr "" -#: common/models.py:1886 +#: common/models.py:1905 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:1992 +#: common/models.py:2011 msgid "Message ID" msgstr "" -#: common/models.py:1993 +#: common/models.py:2012 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2001 +#: common/models.py:2020 msgid "Host" msgstr "" -#: common/models.py:2002 +#: common/models.py:2021 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2009 +#: common/models.py:2028 msgid "Header" msgstr "" -#: common/models.py:2010 +#: common/models.py:2029 msgid "Header of this message" msgstr "" -#: common/models.py:2016 +#: common/models.py:2035 msgid "Body" msgstr "" -#: common/models.py:2017 +#: common/models.py:2036 msgid "Body of this message" msgstr "" -#: common/models.py:2026 +#: common/models.py:2045 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2031 +#: common/models.py:2050 msgid "Worked on" msgstr "" -#: common/models.py:2032 +#: common/models.py:2051 msgid "Was the work on this message finished?" msgstr "" @@ -2758,7 +2786,7 @@ msgstr "Контактное лицо" msgid "Link to external company information" msgstr "Ссылка на описание компании" -#: company/models.py:135 part/models.py:808 +#: company/models.py:135 part/models.py:815 msgid "Image" msgstr "Изображение" @@ -2791,8 +2819,8 @@ msgid "Does this company manufacture parts?" msgstr "Является ли компания производителем деталей?" #: company/models.py:148 company/serializers.py:372 -#: company/templates/company/company_base.html:106 part/serializers.py:151 -#: part/serializers.py:182 stock/serializers.py:180 +#: company/templates/company/company_base.html:106 part/serializers.py:153 +#: part/serializers.py:184 stock/serializers.py:180 msgid "Currency" msgstr "Валюта" @@ -2800,7 +2828,7 @@ msgstr "Валюта" msgid "Default currency used for this company" msgstr "Для этой компании используется валюта по умолчанию" -#: company/models.py:248 company/models.py:481 stock/models.py:591 +#: company/models.py:248 company/models.py:481 stock/models.py:598 #: stock/serializers.py:87 stock/templates/stock/item_base.html:148 #: templates/js/translated/bom.js:543 msgid "Base Part" @@ -2832,7 +2860,7 @@ msgstr "Выберите производителя" #: templates/js/translated/company.js:497 #: templates/js/translated/company.js:649 #: templates/js/translated/company.js:937 templates/js/translated/order.js:1971 -#: templates/js/translated/part.js:247 templates/js/translated/part.js:1023 +#: templates/js/translated/part.js:247 templates/js/translated/part.js:1027 msgid "MPN" msgstr "" @@ -2861,9 +2889,9 @@ msgstr "Наименование параметра" #: company/models.py:365 #: report/templates/report/inventree_test_report_base.html:95 -#: stock/models.py:2088 templates/js/translated/company.js:546 -#: templates/js/translated/company.js:764 templates/js/translated/part.js:845 -#: templates/js/translated/stock.js:1356 +#: stock/models.py:2095 templates/js/translated/company.js:546 +#: templates/js/translated/company.js:764 templates/js/translated/part.js:849 +#: templates/js/translated/stock.js:1360 msgid "Value" msgstr "Значение" @@ -2871,10 +2899,10 @@ msgstr "Значение" msgid "Parameter value" msgstr "Значение параметра" -#: company/models.py:372 part/models.py:881 part/models.py:2379 +#: company/models.py:372 part/models.py:888 part/models.py:2386 #: part/templates/part/part_base.html:280 #: templates/InvenTree/settings/settings.html:352 -#: templates/js/translated/company.js:770 templates/js/translated/part.js:851 +#: templates/js/translated/company.js:770 templates/js/translated/part.js:855 msgid "Units" msgstr "Ед.изм" @@ -2894,7 +2922,7 @@ msgstr "" #: templates/js/translated/company.js:268 #: templates/js/translated/company.js:401 #: templates/js/translated/company.js:893 templates/js/translated/order.js:1707 -#: templates/js/translated/part.js:217 templates/js/translated/part.js:991 +#: templates/js/translated/part.js:217 templates/js/translated/part.js:995 #: templates/js/translated/table_filters.js:423 msgid "Supplier" msgstr "Поставщик" @@ -2906,7 +2934,7 @@ msgstr "Выберите поставщика" #: company/models.py:497 company/templates/company/supplier_part.html:118 #: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267 #: templates/js/translated/order.js:1958 templates/js/translated/part.js:228 -#: templates/js/translated/part.js:1009 +#: templates/js/translated/part.js:1013 msgid "SKU" msgstr "" @@ -2927,23 +2955,23 @@ msgid "Supplier part description" msgstr "" #: company/models.py:522 company/templates/company/supplier_part.html:146 -#: part/models.py:2613 part/templates/part/upload_bom.html:59 +#: part/models.py:2620 part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401 msgid "Note" msgstr "Заметка" -#: company/models.py:526 part/models.py:1735 +#: company/models.py:526 part/models.py:1742 msgid "base cost" msgstr "" -#: company/models.py:526 part/models.py:1735 +#: company/models.py:526 part/models.py:1742 msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:528 company/templates/company/supplier_part.html:139 -#: stock/models.py:617 stock/templates/stock/item_base.html:245 -#: templates/js/translated/company.js:969 templates/js/translated/stock.js:1972 +#: stock/models.py:624 stock/templates/stock/item_base.html:245 +#: templates/js/translated/company.js:969 templates/js/translated/stock.js:1976 msgid "Packaging" msgstr "Упаковка" @@ -2951,7 +2979,7 @@ msgstr "Упаковка" msgid "Part packaging" msgstr "" -#: company/models.py:530 part/models.py:1737 +#: company/models.py:530 part/models.py:1744 msgid "multiple" msgstr "" @@ -2964,7 +2992,7 @@ msgstr "" #: templates/email/low_stock_notification.html:18 #: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789 #: templates/js/translated/build.js:2645 templates/js/translated/company.js:979 -#: templates/js/translated/part.js:596 templates/js/translated/part.js:599 +#: templates/js/translated/part.js:600 templates/js/translated/part.js:603 #: templates/js/translated/table_filters.js:186 msgid "Available" msgstr "" @@ -3037,12 +3065,12 @@ msgid "Download image from URL" msgstr "Скачать изображение по ссылке" #: company/templates/company/company_base.html:86 order/models.py:637 -#: order/templates/order/sales_order_base.html:116 stock/models.py:636 -#: stock/models.py:637 stock/serializers.py:809 +#: order/templates/order/sales_order_base.html:116 stock/models.py:643 +#: stock/models.py:644 stock/serializers.py:811 #: stock/templates/stock/item_base.html:401 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:393 templates/js/translated/order.js:2513 -#: templates/js/translated/stock.js:2550 +#: templates/js/translated/stock.js:2559 #: templates/js/translated/table_filters.js:427 msgid "Customer" msgstr "Покупатель" @@ -3083,7 +3111,7 @@ msgstr "Новая деталь поставщика" #: company/templates/company/detail.html:36 #: company/templates/company/detail.html:84 -#: part/templates/part/category.html:176 +#: part/templates/part/category.html:182 msgid "Order parts" msgstr "Заказать детали" @@ -3231,7 +3259,7 @@ msgstr "Параметры" #: company/templates/company/manufacturer_part.html:170 #: part/templates/part/detail.html:186 #: templates/InvenTree/settings/category.html:12 -#: templates/InvenTree/settings/part.html:66 +#: templates/InvenTree/settings/part.html:68 msgid "New Parameter" msgstr "Новый параметр" @@ -3261,10 +3289,10 @@ msgid "Assigned Stock Items" msgstr "" #: company/templates/company/supplier_part.html:7 -#: company/templates/company/supplier_part.html:24 stock/models.py:600 +#: company/templates/company/supplier_part.html:24 stock/models.py:607 #: stock/templates/stock/item_base.html:238 #: templates/js/translated/company.js:909 templates/js/translated/order.js:935 -#: templates/js/translated/stock.js:1929 +#: templates/js/translated/stock.js:1933 msgid "Supplier Part" msgstr "Деталь поставщика" @@ -3308,13 +3336,13 @@ msgid "Supplier Part Stock" msgstr "" #: company/templates/company/supplier_part.html:168 -#: part/templates/part/detail.html:24 stock/templates/stock/location.html:176 +#: part/templates/part/detail.html:24 stock/templates/stock/location.html:181 msgid "Create new stock item" msgstr "Создать единицу хранения" #: company/templates/company/supplier_part.html:169 -#: part/templates/part/detail.html:25 stock/templates/stock/location.html:177 -#: templates/js/translated/stock.js:431 +#: part/templates/part/detail.html:25 stock/templates/stock/location.html:182 +#: templates/js/translated/stock.js:435 msgid "New Stock Item" msgstr "Новая единица хранения" @@ -3330,7 +3358,7 @@ msgstr "Информация о цене" #: company/templates/company/supplier_part.html:212 #: company/templates/company/supplier_part.html:326 -#: part/templates/part/prices.html:276 templates/js/translated/part.js:2224 +#: part/templates/part/prices.html:276 templates/js/translated/part.js:2233 msgid "Add Price Break" msgstr "" @@ -3339,12 +3367,12 @@ msgid "No price break information found" msgstr "" #: company/templates/company/supplier_part.html:252 -#: templates/js/translated/part.js:2234 +#: templates/js/translated/part.js:2243 msgid "Delete Price Break" msgstr "" #: company/templates/company/supplier_part.html:266 -#: templates/js/translated/part.js:2248 +#: templates/js/translated/part.js:2257 msgid "Edit Price Break" msgstr "" @@ -3366,13 +3394,13 @@ msgstr "" #: company/templates/company/supplier_part_navbar.html:15 #: part/templates/part/part_sidebar.html:14 -#: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:19 +#: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:24 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:151 #: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/bom.js:555 templates/js/translated/part.js:747 -#: templates/js/translated/part.js:1295 templates/js/translated/part.js:1456 -#: templates/js/translated/stock.js:955 templates/js/translated/stock.js:1750 +#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751 +#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460 +#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754 #: templates/navbar.html:31 msgid "Stock" msgstr "Склад" @@ -3392,14 +3420,14 @@ msgid "Pricing" msgstr "" #: company/templates/company/supplier_part_sidebar.html:5 -#: part/templates/part/category.html:197 +#: part/templates/part/category.html:203 #: part/templates/part/category_sidebar.html:17 -#: stock/templates/stock/location.html:147 -#: stock/templates/stock/location.html:161 -#: stock/templates/stock/location.html:173 +#: stock/templates/stock/location.html:152 +#: stock/templates/stock/location.html:166 +#: stock/templates/stock/location.html:178 #: stock/templates/stock/location_sidebar.html:7 #: templates/InvenTree/search.html:153 templates/js/translated/search.js:223 -#: templates/js/translated/stock.js:2427 users/models.py:40 +#: templates/js/translated/stock.js:2436 users/models.py:40 msgid "Stock Items" msgstr "Детали на складе" @@ -3656,8 +3684,8 @@ msgstr "" #: stock/templates/stock/item_base.html:184 #: templates/email/overdue_purchase_order.html:15 #: templates/js/translated/order.js:936 templates/js/translated/order.js:1691 -#: templates/js/translated/part.js:968 templates/js/translated/stock.js:1909 -#: templates/js/translated/stock.js:2531 +#: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913 +#: templates/js/translated/stock.js:2540 msgid "Purchase Order" msgstr "Заказ на закупку" @@ -3667,7 +3695,7 @@ msgstr "" #: order/models.py:1009 order/templates/order/order_base.html:169 #: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073 -#: templates/js/translated/part.js:1060 templates/js/translated/part.js:1087 +#: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091 #: templates/js/translated/table_filters.js:338 msgid "Received" msgstr "" @@ -3676,9 +3704,9 @@ msgstr "" msgid "Number of items received" msgstr "" -#: order/models.py:1017 part/templates/part/prices.html:181 stock/models.py:727 +#: order/models.py:1017 part/templates/part/prices.html:181 stock/models.py:734 #: stock/serializers.py:171 stock/templates/stock/item_base.html:191 -#: templates/js/translated/stock.js:1960 +#: templates/js/translated/stock.js:1964 msgid "Purchase Price" msgstr "Закупочная цена" @@ -4066,8 +4094,8 @@ msgstr "Выберите деталь поставщика" #: templates/js/translated/bom.js:77 templates/js/translated/build.js:431 #: templates/js/translated/build.js:583 templates/js/translated/build.js:1974 #: templates/js/translated/order.js:884 templates/js/translated/order.js:1337 -#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:621 -#: templates/js/translated/stock.js:789 +#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625 +#: templates/js/translated/stock.js:793 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "Удалить строку" @@ -4261,8 +4289,8 @@ msgstr "" msgid "This field is required" msgstr "" -#: part/bom.py:127 part/models.py:98 part/models.py:817 -#: part/templates/part/category.html:108 part/templates/part/part_base.html:330 +#: part/bom.py:127 part/models.py:98 part/models.py:824 +#: part/templates/part/category.html:114 part/templates/part/part_base.html:330 msgid "Default Location" msgstr "Место хранения по умолчанию" @@ -4276,9 +4304,9 @@ msgid "Available Stock" msgstr "Доступный запас" #: part/bom.py:130 part/templates/part/part_base.html:207 -#: templates/js/translated/bom.js:947 templates/js/translated/part.js:586 -#: templates/js/translated/part.js:606 templates/js/translated/part.js:1298 -#: templates/js/translated/part.js:1470 templates/js/translated/part.js:1486 +#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590 +#: templates/js/translated/part.js:610 templates/js/translated/part.js:1302 +#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "" @@ -4299,516 +4327,524 @@ msgstr "Ключевые слова по умолчанию" msgid "Default keywords for parts in this category" msgstr "Ключевые слова по умолчанию для деталей этой категории" -#: part/models.py:115 part/models.py:2455 part/templates/part/category.html:15 +#: part/models.py:107 stock/models.py:84 +msgid "Icon" +msgstr "" + +#: part/models.py:108 stock/models.py:85 +msgid "Icon (optional)" +msgstr "" + +#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "Категория детали" -#: part/models.py:116 part/templates/part/category.html:128 +#: part/models.py:123 part/templates/part/category.html:134 #: templates/InvenTree/search.html:95 templates/js/translated/search.js:198 #: users/models.py:37 msgid "Part Categories" msgstr "" -#: part/models.py:337 part/templates/part/cat_link.html:3 -#: part/templates/part/category.html:17 part/templates/part/category.html:133 -#: part/templates/part/category.html:153 +#: part/models.py:344 part/templates/part/cat_link.html:3 +#: part/templates/part/category.html:23 part/templates/part/category.html:139 +#: part/templates/part/category.html:159 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82 #: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:1946 templates/js/translated/search.js:144 +#: templates/js/translated/part.js:1955 templates/js/translated/search.js:144 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "Детали" -#: part/models.py:422 +#: part/models.py:429 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:492 part/models.py:504 +#: part/models.py:499 part/models.py:511 #, python-brace-format msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)" msgstr "" -#: part/models.py:621 +#: part/models.py:628 msgid "Next available serial numbers are" msgstr "" -#: part/models.py:625 +#: part/models.py:632 msgid "Next available serial number is" msgstr "" -#: part/models.py:630 +#: part/models.py:637 msgid "Most recent serial number is" msgstr "" -#: part/models.py:711 +#: part/models.py:718 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:738 part/models.py:2509 +#: part/models.py:745 part/models.py:2516 msgid "Part name" msgstr "Наименование детали" -#: part/models.py:745 +#: part/models.py:752 msgid "Is Template" msgstr "Шаблон" -#: part/models.py:746 +#: part/models.py:753 msgid "Is this part a template part?" msgstr "Эта деталь является шаблоном для других деталей?" -#: part/models.py:756 +#: part/models.py:763 msgid "Is this part a variant of another part?" msgstr "Эта деталь является разновидностью другой детали?" -#: part/models.py:757 +#: part/models.py:764 msgid "Variant Of" msgstr "Разновидность" -#: part/models.py:763 +#: part/models.py:770 msgid "Part description" msgstr "Описание детали" -#: part/models.py:768 part/templates/part/category.html:86 +#: part/models.py:775 part/templates/part/category.html:92 #: part/templates/part/part_base.html:294 msgid "Keywords" msgstr "Ключевые слова" -#: part/models.py:769 +#: part/models.py:776 msgid "Part keywords to improve visibility in search results" msgstr "Ключевые слова для улучшения видимости в результатах поиска" -#: part/models.py:776 part/models.py:2211 part/models.py:2454 +#: part/models.py:783 part/models.py:2218 part/models.py:2461 #: part/templates/part/part_base.html:257 #: templates/InvenTree/settings/settings.html:232 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1438 templates/js/translated/part.js:1664 +#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1668 msgid "Category" msgstr "Категория" -#: part/models.py:777 +#: part/models.py:784 msgid "Part category" msgstr "Категория" -#: part/models.py:782 part/templates/part/part_base.html:266 -#: templates/js/translated/part.js:735 templates/js/translated/part.js:1391 -#: templates/js/translated/stock.js:1722 +#: part/models.py:789 part/templates/part/part_base.html:266 +#: templates/js/translated/part.js:739 templates/js/translated/part.js:1395 +#: templates/js/translated/stock.js:1726 msgid "IPN" msgstr "" -#: part/models.py:783 +#: part/models.py:790 msgid "Internal Part Number" msgstr "Внутренний код детали" -#: part/models.py:789 +#: part/models.py:796 msgid "Part revision or version number" msgstr "Версия детали" -#: part/models.py:790 part/templates/part/part_base.html:273 -#: report/models.py:171 templates/js/translated/part.js:739 +#: part/models.py:797 part/templates/part/part_base.html:273 +#: report/models.py:171 templates/js/translated/part.js:743 msgid "Revision" msgstr "Версия" -#: part/models.py:815 +#: part/models.py:822 msgid "Where is this item normally stored?" msgstr "Где обычно хранится эта деталь?" -#: part/models.py:860 part/templates/part/part_base.html:339 +#: part/models.py:867 part/templates/part/part_base.html:339 msgid "Default Supplier" msgstr "" -#: part/models.py:861 +#: part/models.py:868 msgid "Default supplier part" msgstr "" -#: part/models.py:868 +#: part/models.py:875 msgid "Default Expiry" msgstr "" -#: part/models.py:869 +#: part/models.py:876 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:874 part/templates/part/part_base.html:200 +#: part/models.py:881 part/templates/part/part_base.html:200 msgid "Minimum Stock" msgstr "Минимальный запас" -#: part/models.py:875 +#: part/models.py:882 msgid "Minimum allowed stock level" msgstr "Минимально допустимый складской запас" -#: part/models.py:882 +#: part/models.py:889 msgid "Stock keeping units for this part" msgstr "" -#: part/models.py:888 +#: part/models.py:895 msgid "Can this part be built from other parts?" msgstr "Может ли эта деталь быть создана из других деталей?" -#: part/models.py:894 +#: part/models.py:901 msgid "Can this part be used to build other parts?" msgstr "Может ли эта деталь использоваться для создания других деталей?" -#: part/models.py:900 +#: part/models.py:907 msgid "Does this part have tracking for unique items?" msgstr "Является ли каждый экземпляр этой детали уникальным, обладающим серийным номером?" -#: part/models.py:905 +#: part/models.py:912 msgid "Can this part be purchased from external suppliers?" msgstr "Может ли эта деталь быть закуплена у внешних поставщиков?" -#: part/models.py:910 +#: part/models.py:917 msgid "Can this part be sold to customers?" msgstr "Может ли эта деталь быть продана покупателям?" -#: part/models.py:915 +#: part/models.py:922 msgid "Is this part active?" msgstr "Эта деталь актуальна?" -#: part/models.py:920 +#: part/models.py:927 msgid "Is this a virtual part, such as a software product or license?" msgstr "Эта деталь виртуальная, как программный продукт или лицензия?" -#: part/models.py:922 +#: part/models.py:929 msgid "Part notes" msgstr "" -#: part/models.py:924 +#: part/models.py:931 msgid "BOM checksum" msgstr "" -#: part/models.py:924 +#: part/models.py:931 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:927 +#: part/models.py:934 msgid "BOM checked by" msgstr "" -#: part/models.py:929 +#: part/models.py:936 msgid "BOM checked date" msgstr "" -#: part/models.py:933 +#: part/models.py:940 msgid "Creation User" msgstr "" -#: part/models.py:1737 +#: part/models.py:1744 msgid "Sell multiple" msgstr "" -#: part/models.py:2258 +#: part/models.py:2265 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:2275 +#: part/models.py:2282 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:2295 templates/js/translated/part.js:1997 -#: templates/js/translated/stock.js:1336 +#: part/models.py:2302 templates/js/translated/part.js:2006 +#: templates/js/translated/stock.js:1340 msgid "Test Name" msgstr "" -#: part/models.py:2296 +#: part/models.py:2303 msgid "Enter a name for the test" msgstr "" -#: part/models.py:2301 +#: part/models.py:2308 msgid "Test Description" msgstr "" -#: part/models.py:2302 +#: part/models.py:2309 msgid "Enter description for this test" msgstr "" -#: part/models.py:2307 templates/js/translated/part.js:2006 +#: part/models.py:2314 templates/js/translated/part.js:2015 #: templates/js/translated/table_filters.js:302 msgid "Required" msgstr "" -#: part/models.py:2308 +#: part/models.py:2315 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:2313 templates/js/translated/part.js:2014 +#: part/models.py:2320 templates/js/translated/part.js:2023 msgid "Requires Value" msgstr "" -#: part/models.py:2314 +#: part/models.py:2321 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:2319 templates/js/translated/part.js:2021 +#: part/models.py:2326 templates/js/translated/part.js:2030 msgid "Requires Attachment" msgstr "" -#: part/models.py:2320 +#: part/models.py:2327 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:2328 +#: part/models.py:2335 #, python-brace-format msgid "Illegal character in template name ({c})" msgstr "" -#: part/models.py:2364 +#: part/models.py:2371 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:2372 +#: part/models.py:2379 msgid "Parameter Name" msgstr "" -#: part/models.py:2379 +#: part/models.py:2386 msgid "Parameter Units" msgstr "" -#: part/models.py:2410 +#: part/models.py:2417 msgid "Parent Part" msgstr "Родительская деталь" -#: part/models.py:2412 part/models.py:2460 part/models.py:2461 +#: part/models.py:2419 part/models.py:2467 part/models.py:2468 #: templates/InvenTree/settings/settings.html:227 msgid "Parameter Template" msgstr "Шаблон параметра" -#: part/models.py:2414 +#: part/models.py:2421 msgid "Data" msgstr "" -#: part/models.py:2414 +#: part/models.py:2421 msgid "Parameter Value" msgstr "" -#: part/models.py:2465 templates/InvenTree/settings/settings.html:236 +#: part/models.py:2472 templates/InvenTree/settings/settings.html:236 msgid "Default Value" msgstr "" -#: part/models.py:2466 +#: part/models.py:2473 msgid "Default Parameter Value" msgstr "" -#: part/models.py:2501 +#: part/models.py:2508 msgid "Part ID or part name" msgstr "Артикул или наименование детали" -#: part/models.py:2504 templates/js/translated/model_renderers.js:212 +#: part/models.py:2511 templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "Артикул" -#: part/models.py:2505 +#: part/models.py:2512 msgid "Unique part ID value" msgstr "" -#: part/models.py:2508 +#: part/models.py:2515 msgid "Part Name" msgstr "Наименование детали" -#: part/models.py:2512 +#: part/models.py:2519 msgid "Part IPN" msgstr "IPN" -#: part/models.py:2513 +#: part/models.py:2520 msgid "Part IPN value" msgstr "Значение IPN" -#: part/models.py:2516 +#: part/models.py:2523 msgid "Level" msgstr "" -#: part/models.py:2517 +#: part/models.py:2524 msgid "BOM level" msgstr "" -#: part/models.py:2586 +#: part/models.py:2593 msgid "Select parent part" msgstr "Выберите родительскую деталь" -#: part/models.py:2594 +#: part/models.py:2601 msgid "Sub part" msgstr "" -#: part/models.py:2595 +#: part/models.py:2602 msgid "Select part to be used in BOM" msgstr "Выбрать деталь для использования в BOM" -#: part/models.py:2601 +#: part/models.py:2608 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:2603 part/templates/part/upload_bom.html:58 +#: part/models.py:2610 part/templates/part/upload_bom.html:58 #: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999 #: templates/js/translated/table_filters.js:100 msgid "Optional" msgstr "" -#: part/models.py:2603 +#: part/models.py:2610 msgid "This BOM item is optional" msgstr "" -#: part/models.py:2606 part/templates/part/upload_bom.html:55 +#: part/models.py:2613 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:2607 +#: part/models.py:2614 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:2610 +#: part/models.py:2617 msgid "BOM item reference" msgstr "" -#: part/models.py:2613 +#: part/models.py:2620 msgid "BOM item notes" msgstr "" -#: part/models.py:2615 +#: part/models.py:2622 msgid "Checksum" msgstr "" -#: part/models.py:2615 +#: part/models.py:2622 msgid "BOM line checksum" msgstr "" -#: part/models.py:2619 part/templates/part/upload_bom.html:57 +#: part/models.py:2626 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1016 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:96 msgid "Inherited" msgstr "" -#: part/models.py:2620 +#: part/models.py:2627 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:2625 part/templates/part/upload_bom.html:56 +#: part/models.py:2632 part/templates/part/upload_bom.html:56 #: templates/js/translated/bom.js:1008 msgid "Allow Variants" msgstr "Разрешить разновидности" -#: part/models.py:2626 +#: part/models.py:2633 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:2704 stock/models.py:461 +#: part/models.py:2711 stock/models.py:468 msgid "Quantity must be integer value for trackable parts" msgstr "Для отслеживаемых деталей количество должно быть целым числом" -#: part/models.py:2713 part/models.py:2715 +#: part/models.py:2720 part/models.py:2722 msgid "Sub part must be specified" msgstr "" -#: part/models.py:2820 +#: part/models.py:2827 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:2841 +#: part/models.py:2848 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:2854 +#: part/models.py:2861 msgid "Parent BOM item" msgstr "" -#: part/models.py:2862 +#: part/models.py:2869 msgid "Substitute part" msgstr "" -#: part/models.py:2877 +#: part/models.py:2884 msgid "Part 1" msgstr "Часть 1" -#: part/models.py:2881 +#: part/models.py:2888 msgid "Part 2" msgstr "Часть 2" -#: part/models.py:2881 +#: part/models.py:2888 msgid "Select Related Part" msgstr "" -#: part/models.py:2899 +#: part/models.py:2906 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:2903 +#: part/models.py:2910 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:152 part/serializers.py:183 stock/serializers.py:181 +#: part/serializers.py:154 part/serializers.py:185 stock/serializers.py:181 msgid "Purchase currency of this stock item" msgstr "Валюта покупки этой единицы хранения" -#: part/serializers.py:812 +#: part/serializers.py:814 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:820 +#: part/serializers.py:822 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:821 +#: part/serializers.py:823 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:826 +#: part/serializers.py:828 msgid "Include Inherited" msgstr "" -#: part/serializers.py:827 +#: part/serializers.py:829 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:832 +#: part/serializers.py:834 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:833 +#: part/serializers.py:835 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:838 +#: part/serializers.py:840 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:839 +#: part/serializers.py:841 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:879 +#: part/serializers.py:881 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:880 +#: part/serializers.py:882 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:910 +#: part/serializers.py:912 msgid "No part column specified" msgstr "" -#: part/serializers.py:953 +#: part/serializers.py:955 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:956 +#: part/serializers.py:958 msgid "No matching part found" msgstr "Подходящая деталь не найдена" -#: part/serializers.py:959 +#: part/serializers.py:961 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:968 +#: part/serializers.py:970 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:976 +#: part/serializers.py:978 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:997 +#: part/serializers.py:999 msgid "At least one BOM item is required" msgstr "" @@ -4848,101 +4884,101 @@ msgstr "Действия с BOM" msgid "Delete Items" msgstr "Удалить элементы" -#: part/templates/part/category.html:28 part/templates/part/category.html:32 +#: part/templates/part/category.html:34 part/templates/part/category.html:38 msgid "You are subscribed to notifications for this category" msgstr "Вы подписаны на уведомления для данной категории" -#: part/templates/part/category.html:36 +#: part/templates/part/category.html:42 msgid "Subscribe to notifications for this category" msgstr "Включить уведомления для данной категории" -#: part/templates/part/category.html:42 +#: part/templates/part/category.html:48 msgid "Category Actions" msgstr "Действия с категорией" -#: part/templates/part/category.html:47 +#: part/templates/part/category.html:53 msgid "Edit category" msgstr "Редактировать категорию" -#: part/templates/part/category.html:48 +#: part/templates/part/category.html:54 msgid "Edit Category" msgstr "Редактировать категорию" -#: part/templates/part/category.html:52 +#: part/templates/part/category.html:58 msgid "Delete category" msgstr "Удалить категорию" -#: part/templates/part/category.html:53 +#: part/templates/part/category.html:59 msgid "Delete Category" msgstr "Удалить категорию" -#: part/templates/part/category.html:61 +#: part/templates/part/category.html:67 msgid "Create new part category" msgstr "Создать новую категорию деталей" -#: part/templates/part/category.html:62 +#: part/templates/part/category.html:68 msgid "New Category" msgstr "Новая категория" -#: part/templates/part/category.html:80 part/templates/part/category.html:93 +#: part/templates/part/category.html:86 part/templates/part/category.html:99 msgid "Category Path" msgstr "Путь к категории" -#: part/templates/part/category.html:94 +#: part/templates/part/category.html:100 msgid "Top level part category" msgstr "" -#: part/templates/part/category.html:114 part/templates/part/category.html:222 +#: part/templates/part/category.html:120 part/templates/part/category.html:228 #: part/templates/part/category_sidebar.html:7 msgid "Subcategories" msgstr "Подкатегории" -#: part/templates/part/category.html:119 +#: part/templates/part/category.html:125 msgid "Parts (Including subcategories)" msgstr "Детали (включая подкатегории)" -#: part/templates/part/category.html:157 +#: part/templates/part/category.html:163 msgid "Create new part" msgstr "Создать новую деталь" -#: part/templates/part/category.html:158 templates/js/translated/bom.js:367 +#: part/templates/part/category.html:164 templates/js/translated/bom.js:367 msgid "New Part" msgstr "Новая деталь" -#: part/templates/part/category.html:168 part/templates/part/detail.html:363 +#: part/templates/part/category.html:174 part/templates/part/detail.html:363 #: part/templates/part/detail.html:394 msgid "Options" msgstr "Настройки" -#: part/templates/part/category.html:172 +#: part/templates/part/category.html:178 msgid "Set category" msgstr "Укажите категорию" -#: part/templates/part/category.html:173 +#: part/templates/part/category.html:179 msgid "Set Category" msgstr "Укажите категорию" -#: part/templates/part/category.html:180 part/templates/part/category.html:181 +#: part/templates/part/category.html:186 part/templates/part/category.html:187 msgid "Print Labels" msgstr "" -#: part/templates/part/category.html:206 +#: part/templates/part/category.html:212 msgid "Part Parameters" msgstr "Параметры детали" -#: part/templates/part/category.html:320 +#: part/templates/part/category.html:327 msgid "Create Part Category" msgstr "Создать категорию деталей" -#: part/templates/part/category.html:340 +#: part/templates/part/category.html:347 msgid "Create Part" msgstr "Создать деталь" -#: part/templates/part/category.html:343 +#: part/templates/part/category.html:350 msgid "Create another part after this one" msgstr "Создать ещё одну деталь после этой" -#: part/templates/part/category.html:344 +#: part/templates/part/category.html:351 msgid "Part created successfully" msgstr "Деталь создана успешно" @@ -4950,7 +4986,7 @@ msgstr "Деталь создана успешно" msgid "Import Parts" msgstr "Импортировать детали" -#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:375 +#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:379 msgid "Duplicate Part" msgstr "Дублировать деталь" @@ -5172,19 +5208,19 @@ msgstr "Включить уведомления для данной детали #: part/templates/part/part_base.html:43 #: stock/templates/stock/item_base.html:41 -#: stock/templates/stock/location.html:43 +#: stock/templates/stock/location.html:48 msgid "Barcode actions" msgstr "Действия со штрих-кодом" #: part/templates/part/part_base.html:46 #: stock/templates/stock/item_base.html:45 -#: stock/templates/stock/location.html:45 templates/qr_button.html:1 +#: stock/templates/stock/location.html:50 templates/qr_button.html:1 msgid "Show QR Code" msgstr "" #: part/templates/part/part_base.html:49 #: stock/templates/stock/item_base.html:63 -#: stock/templates/stock/location.html:47 +#: stock/templates/stock/location.html:52 msgid "Print Label" msgstr "" @@ -5194,7 +5230,7 @@ msgstr "" #: part/templates/part/part_base.html:60 #: stock/templates/stock/item_base.html:116 -#: stock/templates/stock/location.html:56 +#: stock/templates/stock/location.html:61 msgid "Stock actions" msgstr "Действия со складом" @@ -5255,7 +5291,7 @@ msgstr "" #: templates/js/translated/company.js:624 #: templates/js/translated/company.js:884 #: templates/js/translated/model_renderers.js:204 -#: templates/js/translated/part.js:650 templates/js/translated/part.js:727 +#: templates/js/translated/part.js:654 templates/js/translated/part.js:731 msgid "Inactive" msgstr "" @@ -5289,9 +5325,9 @@ msgstr "" msgid "Can Build" msgstr "" -#: part/templates/part/part_base.html:238 templates/js/translated/part.js:589 -#: templates/js/translated/part.js:609 templates/js/translated/part.js:1302 -#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490 +#: part/templates/part/part_base.html:238 templates/js/translated/part.js:593 +#: templates/js/translated/part.js:613 templates/js/translated/part.js:1306 +#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1494 msgid "Building" msgstr "" @@ -5464,8 +5500,8 @@ msgstr "" msgid "No sale pice history available for this part." msgstr "" -#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:612 -#: templates/js/translated/part.js:1290 templates/js/translated/part.js:1494 +#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616 +#: templates/js/translated/part.js:1294 templates/js/translated/part.js:1498 msgid "No Stock" msgstr "" @@ -5630,51 +5666,55 @@ msgstr "Включить уведомления по электронной по msgid "Allow sending of emails for event notifications" msgstr "Разрешить отправку уведомлений о событиях по электронной почте" -#: plugin/models.py:32 +#: plugin/models.py:33 msgid "Plugin Metadata" msgstr "" -#: plugin/models.py:33 +#: plugin/models.py:34 msgid "JSON metadata field, for use by external plugins" msgstr "" -#: plugin/models.py:79 +#: plugin/models.py:80 msgid "Plugin Configuration" msgstr "" -#: plugin/models.py:80 +#: plugin/models.py:81 msgid "Plugin Configurations" msgstr "" -#: plugin/models.py:85 +#: plugin/models.py:86 msgid "Key" msgstr "" -#: plugin/models.py:86 +#: plugin/models.py:87 msgid "Key of plugin" msgstr "" -#: plugin/models.py:94 +#: plugin/models.py:95 msgid "PluginName of the plugin" msgstr "" -#: plugin/models.py:100 +#: plugin/models.py:101 msgid "Is the plugin active" msgstr "" -#: plugin/models.py:168 +#: plugin/models.py:158 +msgid "Sample plugin" +msgstr "" + +#: plugin/models.py:186 msgid "Plugin" msgstr "" -#: plugin/models.py:231 +#: plugin/models.py:249 msgid "Method" msgstr "" -#: plugin/plugin.py:228 +#: plugin/plugin.py:251 msgid "No author found" msgstr "Автор не найден" -#: plugin/plugin.py:240 +#: plugin/plugin.py:263 msgid "No date found" msgstr "Дата не найдена" @@ -5746,12 +5786,12 @@ msgstr "" msgid "No valid objects provided to template" msgstr "" -#: report/api.py:216 report/api.py:257 +#: report/api.py:216 report/api.py:252 #, python-brace-format msgid "Template file '{template}' is missing or does not exist" msgstr "" -#: report/api.py:360 +#: report/api.py:355 msgid "Test report" msgstr "" @@ -5852,12 +5892,12 @@ msgid "Stock Item Test Report" msgstr "" #: report/templates/report/inventree_test_report_base.html:79 -#: stock/models.py:641 stock/templates/stock/item_base.html:322 +#: stock/models.py:648 stock/templates/stock/item_base.html:322 #: templates/js/translated/build.js:424 templates/js/translated/build.js:576 #: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673 #: templates/js/translated/model_renderers.js:118 #: templates/js/translated/order.js:118 templates/js/translated/order.js:3297 -#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:486 +#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490 msgid "Serial Number" msgstr "Серийный номер" @@ -5866,19 +5906,19 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report_base.html:93 -#: stock/models.py:2076 +#: stock/models.py:2083 msgid "Test" msgstr "" #: report/templates/report/inventree_test_report_base.html:94 -#: stock/models.py:2082 +#: stock/models.py:2089 msgid "Result" msgstr "" #: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:51 +#: templates/InvenTree/settings/plugin.html:53 #: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2459 +#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468 msgid "Date" msgstr "" @@ -5896,8 +5936,8 @@ msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report_base.html:137 -#: templates/js/translated/stock.js:606 templates/js/translated/stock.js:776 -#: templates/js/translated/stock.js:2708 +#: templates/js/translated/stock.js:610 templates/js/translated/stock.js:780 +#: templates/js/translated/stock.js:2717 msgid "Serial" msgstr "" @@ -5913,241 +5953,241 @@ msgstr "" msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" -#: stock/models.py:82 stock/models.py:732 +#: stock/models.py:89 stock/models.py:739 #: stock/templates/stock/item_base.html:252 msgid "Owner" msgstr "" -#: stock/models.py:83 stock/models.py:733 +#: stock/models.py:90 stock/models.py:740 msgid "Select Owner" msgstr "" -#: stock/models.py:435 +#: stock/models.py:442 msgid "StockItem with this serial number already exists" msgstr "" -#: stock/models.py:467 stock/serializers.py:95 +#: stock/models.py:474 stock/serializers.py:95 msgid "Stock item cannot be created for virtual parts" msgstr "" -#: stock/models.py:484 +#: stock/models.py:491 #, python-brace-format msgid "Part type ('{pf}') must be {pe}" msgstr "" -#: stock/models.py:494 stock/models.py:503 +#: stock/models.py:501 stock/models.py:510 msgid "Quantity must be 1 for item with a serial number" msgstr "" -#: stock/models.py:495 +#: stock/models.py:502 msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:517 +#: stock/models.py:524 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:523 +#: stock/models.py:530 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:537 +#: stock/models.py:544 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:583 +#: stock/models.py:590 msgid "Parent Stock Item" msgstr "Родительская единица хранения" -#: stock/models.py:593 +#: stock/models.py:600 msgid "Base part" msgstr "Базовая деталь" -#: stock/models.py:601 +#: stock/models.py:608 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:608 stock/templates/stock/location.html:17 +#: stock/models.py:615 stock/templates/stock/location.html:17 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" msgstr "Место хранения" -#: stock/models.py:611 +#: stock/models.py:618 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:618 +#: stock/models.py:625 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:624 stock/templates/stock/item_base.html:361 +#: stock/models.py:631 stock/templates/stock/item_base.html:361 msgid "Installed In" msgstr "" -#: stock/models.py:627 +#: stock/models.py:634 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:643 +#: stock/models.py:650 msgid "Serial number for this item" msgstr "" -#: stock/models.py:657 +#: stock/models.py:664 msgid "Batch code for this stock item" msgstr "Код партии для этой единицы хранения" -#: stock/models.py:662 +#: stock/models.py:669 msgid "Stock Quantity" msgstr "" -#: stock/models.py:671 +#: stock/models.py:678 msgid "Source Build" msgstr "Исходная сборка" -#: stock/models.py:673 +#: stock/models.py:680 msgid "Build for this stock item" msgstr "" -#: stock/models.py:684 +#: stock/models.py:691 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:687 +#: stock/models.py:694 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:693 +#: stock/models.py:700 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:699 stock/templates/stock/item_base.html:429 -#: templates/js/translated/stock.js:1879 +#: stock/models.py:706 stock/templates/stock/item_base.html:429 +#: templates/js/translated/stock.js:1883 msgid "Expiry Date" msgstr "" -#: stock/models.py:700 +#: stock/models.py:707 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:713 +#: stock/models.py:720 msgid "Delete on deplete" msgstr "Удалить при обнулении" -#: stock/models.py:713 +#: stock/models.py:720 msgid "Delete this Stock Item when stock is depleted" msgstr "Удалить эту единицу хранения при обнулении складского запаса" -#: stock/models.py:720 stock/templates/stock/item.html:132 +#: stock/models.py:727 stock/templates/stock/item.html:132 msgid "Stock Item Notes" msgstr "Заметки о единице хранения" -#: stock/models.py:728 +#: stock/models.py:735 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:756 +#: stock/models.py:763 msgid "Converted to part" msgstr "" -#: stock/models.py:1235 +#: stock/models.py:1242 msgid "Part is not set as trackable" msgstr "Деталь не является отслеживаемой" -#: stock/models.py:1241 +#: stock/models.py:1248 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1247 +#: stock/models.py:1254 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({n})" msgstr "" -#: stock/models.py:1250 +#: stock/models.py:1257 msgid "Serial numbers must be a list of integers" msgstr "" -#: stock/models.py:1253 +#: stock/models.py:1260 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1260 +#: stock/models.py:1267 #, python-brace-format msgid "Serial numbers already exist: {exists}" msgstr "" -#: stock/models.py:1330 +#: stock/models.py:1337 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1333 +#: stock/models.py:1340 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1336 +#: stock/models.py:1343 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1339 +#: stock/models.py:1346 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1342 +#: stock/models.py:1349 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1345 +#: stock/models.py:1352 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1352 stock/serializers.py:959 +#: stock/models.py:1359 stock/serializers.py:961 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1356 +#: stock/models.py:1363 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1360 +#: stock/models.py:1367 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1364 +#: stock/models.py:1371 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:1533 +#: stock/models.py:1540 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:1994 +#: stock/models.py:2001 msgid "Entry notes" msgstr "" -#: stock/models.py:2052 +#: stock/models.py:2059 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2058 +#: stock/models.py:2065 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2077 +#: stock/models.py:2084 msgid "Test name" msgstr "" -#: stock/models.py:2083 +#: stock/models.py:2090 msgid "Test result" msgstr "" -#: stock/models.py:2089 +#: stock/models.py:2096 msgid "Test output value" msgstr "" -#: stock/models.py:2096 +#: stock/models.py:2103 msgid "Test result attachment" msgstr "" -#: stock/models.py:2102 +#: stock/models.py:2109 msgid "Test notes" msgstr "" @@ -6172,7 +6212,7 @@ msgstr "" msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:323 stock/serializers.py:916 stock/serializers.py:1149 +#: stock/serializers.py:323 stock/serializers.py:918 stock/serializers.py:1151 msgid "Destination stock location" msgstr "" @@ -6220,63 +6260,63 @@ msgstr "" msgid "Destination location for returned item" msgstr "" -#: stock/serializers.py:771 +#: stock/serializers.py:773 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:775 +#: stock/serializers.py:777 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:779 +#: stock/serializers.py:781 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:810 +#: stock/serializers.py:812 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:816 +#: stock/serializers.py:818 msgid "Selected company is not a customer" msgstr "Выбранная компания не является покупателем" -#: stock/serializers.py:824 +#: stock/serializers.py:826 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:834 stock/serializers.py:1065 +#: stock/serializers.py:836 stock/serializers.py:1067 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:923 +#: stock/serializers.py:925 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:928 +#: stock/serializers.py:930 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:929 +#: stock/serializers.py:931 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:934 +#: stock/serializers.py:936 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:935 +#: stock/serializers.py:937 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:945 +#: stock/serializers.py:947 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1027 +#: stock/serializers.py:1029 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1055 +#: stock/serializers.py:1057 msgid "Stock transaction notes" msgstr "" @@ -6313,7 +6353,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "Установленные единицы хранения" -#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2852 +#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2861 msgid "Install Stock Item" msgstr "Установить единицу хранения" @@ -6321,7 +6361,7 @@ msgstr "Установить единицу хранения" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1518 +#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1522 msgid "Add Test Result" msgstr "" @@ -6352,7 +6392,7 @@ msgid "Stock adjustment actions" msgstr "" #: stock/templates/stock/item_base.html:80 -#: stock/templates/stock/location.html:63 templates/stock_table.html:47 +#: stock/templates/stock/location.html:68 templates/stock_table.html:47 msgid "Count stock" msgstr "" @@ -6369,7 +6409,7 @@ msgid "Serialize stock" msgstr "" #: stock/templates/stock/item_base.html:93 -#: stock/templates/stock/location.html:69 templates/stock_table.html:48 +#: stock/templates/stock/location.html:74 templates/stock_table.html:48 msgid "Transfer stock" msgstr "" @@ -6430,7 +6470,7 @@ msgid "You are not in the list of owners of this item. This stock item cannot be msgstr "" #: stock/templates/stock/item_base.html:257 -#: stock/templates/stock/location.html:127 +#: stock/templates/stock/location.html:132 msgid "Read only" msgstr "" @@ -6508,7 +6548,7 @@ msgid "Stale" msgstr "" #: stock/templates/stock/item_base.html:442 -#: templates/js/translated/company.js:985 templates/js/translated/stock.js:1895 +#: templates/js/translated/company.js:985 templates/js/translated/stock.js:1899 msgid "Last Updated" msgstr "" @@ -6552,58 +6592,58 @@ msgstr "" msgid "Select quantity to serialize, and unique serial numbers." msgstr "" -#: stock/templates/stock/location.html:33 +#: stock/templates/stock/location.html:38 msgid "Locate stock location" msgstr "" -#: stock/templates/stock/location.html:49 +#: stock/templates/stock/location.html:54 msgid "Check-in Items" msgstr "" -#: stock/templates/stock/location.html:77 +#: stock/templates/stock/location.html:82 msgid "Location actions" msgstr "Действия с местом хранения" -#: stock/templates/stock/location.html:79 +#: stock/templates/stock/location.html:84 msgid "Edit location" msgstr "Редактировать место хранения" -#: stock/templates/stock/location.html:81 +#: stock/templates/stock/location.html:86 msgid "Delete location" msgstr "Удалить место хранения" -#: stock/templates/stock/location.html:90 +#: stock/templates/stock/location.html:95 msgid "Create new stock location" msgstr "Создать новое место хранения" -#: stock/templates/stock/location.html:91 +#: stock/templates/stock/location.html:96 msgid "New Location" msgstr "Новое место хранения" -#: stock/templates/stock/location.html:109 -#: stock/templates/stock/location.html:115 +#: stock/templates/stock/location.html:114 +#: stock/templates/stock/location.html:120 msgid "Location Path" msgstr "" -#: stock/templates/stock/location.html:116 +#: stock/templates/stock/location.html:121 msgid "Top level stock location" msgstr "" -#: stock/templates/stock/location.html:122 +#: stock/templates/stock/location.html:127 msgid "Location Owner" msgstr "Ответственный за место хранения" -#: stock/templates/stock/location.html:126 +#: stock/templates/stock/location.html:131 msgid "You are not in the list of owners of this location. This stock location cannot be edited." msgstr "" -#: stock/templates/stock/location.html:142 -#: stock/templates/stock/location.html:189 +#: stock/templates/stock/location.html:147 +#: stock/templates/stock/location.html:194 #: stock/templates/stock/location_sidebar.html:5 msgid "Sublocations" msgstr "Места хранения" -#: stock/templates/stock/location.html:156 templates/InvenTree/search.html:165 +#: stock/templates/stock/location.html:161 templates/InvenTree/search.html:165 #: templates/js/translated/search.js:238 users/models.py:39 msgid "Stock Locations" msgstr "Места хранения" @@ -6875,15 +6915,15 @@ msgstr "Открыть в новой вкладке" msgid "Part Settings" msgstr "Настройки деталей" -#: templates/InvenTree/settings/part.html:44 +#: templates/InvenTree/settings/part.html:46 msgid "Part Import" msgstr "" -#: templates/InvenTree/settings/part.html:48 +#: templates/InvenTree/settings/part.html:50 msgid "Import Part" msgstr "" -#: templates/InvenTree/settings/part.html:62 +#: templates/InvenTree/settings/part.html:64 msgid "Part Parameter Templates" msgstr "Шаблон параметра детали" @@ -6895,47 +6935,47 @@ msgstr "Настройки плагинов" msgid "Changing the settings below require you to immediately restart the server. Do not change this while under active usage." msgstr "" -#: templates/InvenTree/settings/plugin.html:34 +#: templates/InvenTree/settings/plugin.html:36 msgid "Plugins" msgstr "" -#: templates/InvenTree/settings/plugin.html:39 +#: templates/InvenTree/settings/plugin.html:41 #: templates/js/translated/plugin.js:16 msgid "Install Plugin" msgstr "" -#: templates/InvenTree/settings/plugin.html:48 templates/navbar.html:137 +#: templates/InvenTree/settings/plugin.html:50 templates/navbar.html:137 #: users/models.py:36 msgid "Admin" msgstr "" -#: templates/InvenTree/settings/plugin.html:50 +#: templates/InvenTree/settings/plugin.html:52 #: templates/InvenTree/settings/plugin_settings.html:28 msgid "Author" msgstr "" -#: templates/InvenTree/settings/plugin.html:52 +#: templates/InvenTree/settings/plugin.html:54 #: templates/InvenTree/settings/plugin_settings.html:43 msgid "Version" msgstr "" -#: templates/InvenTree/settings/plugin.html:74 +#: templates/InvenTree/settings/plugin.html:76 msgid "Sample" msgstr "" -#: templates/InvenTree/settings/plugin.html:99 +#: templates/InvenTree/settings/plugin.html:101 msgid "Inactive plugins" msgstr "" -#: templates/InvenTree/settings/plugin.html:122 +#: templates/InvenTree/settings/plugin.html:124 msgid "Plugin Error Stack" msgstr "" -#: templates/InvenTree/settings/plugin.html:131 +#: templates/InvenTree/settings/plugin.html:133 msgid "Stage" msgstr "" -#: templates/InvenTree/settings/plugin.html:133 +#: templates/InvenTree/settings/plugin.html:135 #: templates/js/translated/notification.js:75 msgid "Message" msgstr "" @@ -6999,11 +7039,11 @@ msgstr "" msgid "Commit Message" msgstr "" -#: templates/InvenTree/settings/plugin_settings.html:117 +#: templates/InvenTree/settings/plugin_settings.html:120 msgid "Sign Status" msgstr "" -#: templates/InvenTree/settings/plugin_settings.html:122 +#: templates/InvenTree/settings/plugin_settings.html:125 msgid "Sign Key" msgstr "" @@ -7828,7 +7868,7 @@ msgstr "" msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:456 templates/js/translated/stock.js:1050 +#: templates/js/translated/barcode.js:456 templates/js/translated/stock.js:1054 msgid "Remove stock item" msgstr "" @@ -8001,7 +8041,7 @@ msgid "Includes variant and substitute stock" msgstr "" #: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822 -#: templates/js/translated/part.js:759 +#: templates/js/translated/part.js:763 msgid "Includes variant stock" msgstr "" @@ -8098,12 +8138,12 @@ msgid "Complete Build Order" msgstr "" #: templates/js/translated/build.js:263 templates/js/translated/stock.js:92 -#: templates/js/translated/stock.js:210 +#: templates/js/translated/stock.js:214 msgid "Next available serial number" msgstr "" #: templates/js/translated/build.js:265 templates/js/translated/stock.js:94 -#: templates/js/translated/stock.js:212 +#: templates/js/translated/stock.js:216 msgid "Latest serial number" msgstr "" @@ -8316,9 +8356,9 @@ msgstr "" msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1383 -#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1682 -#: templates/js/translated/stock.js:2382 +#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387 +#: templates/js/translated/part.js:1899 templates/js/translated/stock.js:1686 +#: templates/js/translated/stock.js:2386 msgid "Select" msgstr "" @@ -8330,7 +8370,7 @@ msgstr "" msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2638 +#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647 msgid "No user information" msgstr "" @@ -8403,34 +8443,34 @@ msgid "No manufacturer parts found" msgstr "Информация о детали производителя не найдена" #: templates/js/translated/company.js:616 -#: templates/js/translated/company.js:876 templates/js/translated/part.js:634 -#: templates/js/translated/part.js:719 +#: templates/js/translated/company.js:876 templates/js/translated/part.js:638 +#: templates/js/translated/part.js:723 msgid "Template part" msgstr "Деталь-шаблон" #: templates/js/translated/company.js:620 -#: templates/js/translated/company.js:880 templates/js/translated/part.js:638 -#: templates/js/translated/part.js:723 +#: templates/js/translated/company.js:880 templates/js/translated/part.js:642 +#: templates/js/translated/part.js:727 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:748 templates/js/translated/part.js:826 +#: templates/js/translated/company.js:748 templates/js/translated/part.js:830 msgid "No parameters found" msgstr "Параметры не найдены" -#: templates/js/translated/company.js:785 templates/js/translated/part.js:868 +#: templates/js/translated/company.js:785 templates/js/translated/part.js:872 msgid "Edit parameter" msgstr "Редактировать параметр" -#: templates/js/translated/company.js:786 templates/js/translated/part.js:869 +#: templates/js/translated/company.js:786 templates/js/translated/part.js:873 msgid "Delete parameter" msgstr "Удалить параметр" -#: templates/js/translated/company.js:805 templates/js/translated/part.js:886 +#: templates/js/translated/company.js:805 templates/js/translated/part.js:890 msgid "Edit Parameter" msgstr "Редактировать параметр" -#: templates/js/translated/company.js:816 templates/js/translated/part.js:898 +#: templates/js/translated/company.js:816 templates/js/translated/part.js:902 msgid "Delete Parameter" msgstr "Удалить параметр" @@ -8555,7 +8595,7 @@ msgid "Labels sent to printer" msgstr "" #: templates/js/translated/label.js:60 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1078 msgid "Select Stock Items" msgstr "" @@ -8865,7 +8905,7 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2140 +#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144 msgid "Stock Status" msgstr "" @@ -8889,7 +8929,7 @@ msgstr "" msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:1672 templates/js/translated/part.js:939 +#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943 msgid "No purchase orders found" msgstr "Заказов на закупку не найдено" @@ -8924,7 +8964,7 @@ msgstr "" #: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203 #: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050 -#: templates/js/translated/part.js:2126 templates/js/translated/part.js:2479 +#: templates/js/translated/part.js:2135 templates/js/translated/part.js:2488 msgid "Unit Price" msgstr "" @@ -8934,11 +8974,11 @@ msgid "Total Price" msgstr "Общая стоимость" #: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600 -#: templates/js/translated/part.js:1046 +#: templates/js/translated/part.js:1050 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1092 +#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096 msgid "Receive line item" msgstr "" @@ -9059,7 +9099,7 @@ msgid "Delete Stock Allocation" msgstr "" #: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398 -#: templates/js/translated/stock.js:1598 +#: templates/js/translated/stock.js:1602 msgid "Shipped to customer" msgstr "" @@ -9183,241 +9223,245 @@ msgstr "" msgid "Parent part category" msgstr "Родительская категория" -#: templates/js/translated/part.js:318 +#: templates/js/translated/part.js:306 templates/js/translated/stock.js:118 +msgid "Icon (optional) - Explore all available icons on" +msgstr "" + +#: templates/js/translated/part.js:322 msgid "Edit Part Category" msgstr "Редактировать категорию" -#: templates/js/translated/part.js:331 +#: templates/js/translated/part.js:335 msgid "Are you sure you want to delete this part category?" msgstr "Вы уверены, что хотите удалить эту категорию?" -#: templates/js/translated/part.js:333 +#: templates/js/translated/part.js:337 msgid "Any child categories will be moved to the parent of this category" msgstr "" -#: templates/js/translated/part.js:334 +#: templates/js/translated/part.js:338 msgid "Any parts in this category will be moved to the parent of this category" msgstr "" -#: templates/js/translated/part.js:339 +#: templates/js/translated/part.js:343 msgid "Delete Part Category" msgstr "Удалить категорию" -#: templates/js/translated/part.js:365 +#: templates/js/translated/part.js:369 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:367 +#: templates/js/translated/part.js:371 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:378 +#: templates/js/translated/part.js:382 msgid "Create Part Variant" msgstr "Создать разновидность детали" -#: templates/js/translated/part.js:430 +#: templates/js/translated/part.js:434 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:431 +#: templates/js/translated/part.js:435 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:445 +#: templates/js/translated/part.js:449 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:447 +#: templates/js/translated/part.js:451 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:448 +#: templates/js/translated/part.js:452 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:449 +#: templates/js/translated/part.js:453 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:456 +#: templates/js/translated/part.js:460 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:492 +#: templates/js/translated/part.js:496 msgid "You are subscribed to notifications for this item" msgstr "Вы подписаны на уведомления для данного элемента" -#: templates/js/translated/part.js:494 +#: templates/js/translated/part.js:498 msgid "You have subscribed to notifications for this item" msgstr "Вы подписались на уведомления для данного элемента" -#: templates/js/translated/part.js:499 +#: templates/js/translated/part.js:503 msgid "Subscribe to notifications for this item" msgstr "Включить уведомления для данного элемента" -#: templates/js/translated/part.js:501 +#: templates/js/translated/part.js:505 msgid "You have unsubscribed to notifications for this item" msgstr "Вы отписались от уведомлений для данного элемента" -#: templates/js/translated/part.js:518 +#: templates/js/translated/part.js:522 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:528 +#: templates/js/translated/part.js:532 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:531 +#: templates/js/translated/part.js:535 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:556 +#: templates/js/translated/part.js:560 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:582 templates/js/translated/part.js:1466 +#: templates/js/translated/part.js:586 templates/js/translated/part.js:1470 #: templates/js/translated/table_filters.js:468 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:592 templates/js/translated/part.js:1478 +#: templates/js/translated/part.js:596 templates/js/translated/part.js:1482 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:626 templates/js/translated/part.js:711 +#: templates/js/translated/part.js:630 templates/js/translated/part.js:715 msgid "Trackable part" msgstr "Отслеживаемая деталь" -#: templates/js/translated/part.js:630 templates/js/translated/part.js:715 +#: templates/js/translated/part.js:634 templates/js/translated/part.js:719 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:642 +#: templates/js/translated/part.js:646 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:646 +#: templates/js/translated/part.js:650 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:774 +#: templates/js/translated/part.js:778 msgid "No variants found" msgstr "Разновидности не найдены" -#: templates/js/translated/part.js:1162 +#: templates/js/translated/part.js:1166 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1186 +#: templates/js/translated/part.js:1190 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:1253 templates/js/translated/part.js:1549 +#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1553 msgid "No parts found" msgstr "Детали не найдены" -#: templates/js/translated/part.js:1292 +#: templates/js/translated/part.js:1296 msgid "Not available" msgstr "" -#: templates/js/translated/part.js:1443 +#: templates/js/translated/part.js:1447 msgid "No category" msgstr "Нет категории" -#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816 -#: templates/js/translated/stock.js:2343 +#: templates/js/translated/part.js:1577 templates/js/translated/part.js:1820 +#: templates/js/translated/stock.js:2347 msgid "Display as list" msgstr "Список" -#: templates/js/translated/part.js:1589 +#: templates/js/translated/part.js:1593 msgid "Display as grid" msgstr "Таблица" -#: templates/js/translated/part.js:1655 +#: templates/js/translated/part.js:1659 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:1660 +#: templates/js/translated/part.js:1664 msgid "Set Part Category" msgstr "Укажите категорию" -#: templates/js/translated/part.js:1665 +#: templates/js/translated/part.js:1669 msgid "Select Part Category" msgstr "" -#: templates/js/translated/part.js:1678 +#: templates/js/translated/part.js:1682 msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2362 +#: templates/js/translated/part.js:1839 templates/js/translated/stock.js:2366 msgid "Display as tree" msgstr "Дерево" -#: templates/js/translated/part.js:1914 +#: templates/js/translated/part.js:1918 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:1925 +#: templates/js/translated/part.js:1934 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:1983 +#: templates/js/translated/part.js:1992 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2034 templates/js/translated/stock.js:1295 +#: templates/js/translated/part.js:2043 templates/js/translated/stock.js:1299 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:2035 templates/js/translated/stock.js:1296 -#: templates/js/translated/stock.js:1556 +#: templates/js/translated/part.js:2044 templates/js/translated/stock.js:1300 +#: templates/js/translated/stock.js:1560 msgid "Delete test result" msgstr "" -#: templates/js/translated/part.js:2041 +#: templates/js/translated/part.js:2050 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2063 +#: templates/js/translated/part.js:2072 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2077 +#: templates/js/translated/part.js:2086 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2102 +#: templates/js/translated/part.js:2111 #, python-brace-format msgid "No ${human_name} information found" msgstr "" -#: templates/js/translated/part.js:2159 +#: templates/js/translated/part.js:2168 #, python-brace-format msgid "Edit ${human_name}" msgstr "" -#: templates/js/translated/part.js:2160 +#: templates/js/translated/part.js:2169 #, python-brace-format msgid "Delete ${human_name}" msgstr "" -#: templates/js/translated/part.js:2274 +#: templates/js/translated/part.js:2283 msgid "Current Stock" msgstr "" -#: templates/js/translated/part.js:2307 +#: templates/js/translated/part.js:2316 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2333 +#: templates/js/translated/part.js:2342 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2403 +#: templates/js/translated/part.js:2412 msgid "Single Price" msgstr "" -#: templates/js/translated/part.js:2422 +#: templates/js/translated/part.js:2431 msgid "Single Price Difference" msgstr "" @@ -9511,376 +9555,376 @@ msgstr "" msgid "Parent stock location" msgstr "" -#: templates/js/translated/stock.js:140 +#: templates/js/translated/stock.js:144 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:155 +#: templates/js/translated/stock.js:159 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:169 +#: templates/js/translated/stock.js:173 msgid "Are you sure you want to delete this stock location?" msgstr "Вы уверены, что хотите удалить место хранения?" -#: templates/js/translated/stock.js:171 +#: templates/js/translated/stock.js:175 msgid "Any child locations will be moved to the parent of this location" msgstr "" -#: templates/js/translated/stock.js:172 +#: templates/js/translated/stock.js:176 msgid "Any stock items in this location will be moved to the parent of this location" msgstr "" -#: templates/js/translated/stock.js:178 +#: templates/js/translated/stock.js:182 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:223 +#: templates/js/translated/stock.js:227 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:262 +#: templates/js/translated/stock.js:266 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:268 +#: templates/js/translated/stock.js:272 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:333 +#: templates/js/translated/stock.js:337 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:353 +#: templates/js/translated/stock.js:357 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:369 +#: templates/js/translated/stock.js:373 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:374 +#: templates/js/translated/stock.js:378 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:395 +#: templates/js/translated/stock.js:399 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:445 +#: templates/js/translated/stock.js:449 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:458 +#: templates/js/translated/stock.js:462 msgid "Created multiple stock items" msgstr "Создано несколько единиц хранения" -#: templates/js/translated/stock.js:483 +#: templates/js/translated/stock.js:487 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:487 templates/js/translated/stock.js:488 +#: templates/js/translated/stock.js:491 templates/js/translated/stock.js:492 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:504 +#: templates/js/translated/stock.js:508 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:524 +#: templates/js/translated/stock.js:528 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:533 +#: templates/js/translated/stock.js:537 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:656 +#: templates/js/translated/stock.js:660 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:657 +#: templates/js/translated/stock.js:661 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:734 +#: templates/js/translated/stock.js:738 msgid "Warning: Merge operation cannot be reversed" msgstr "Предупреждение: Операция объединения не может быть отменена" -#: templates/js/translated/stock.js:735 +#: templates/js/translated/stock.js:739 msgid "Some information will be lost when merging stock items" msgstr "Следующие данные будут потеряны в процессе объединения" -#: templates/js/translated/stock.js:737 +#: templates/js/translated/stock.js:741 msgid "Stock transaction history will be deleted for merged items" msgstr "История складских перемещений будет удалена для объединённых элементов" -#: templates/js/translated/stock.js:738 +#: templates/js/translated/stock.js:742 msgid "Supplier part information will be deleted for merged items" msgstr "Информация о деталях поставщика будет удалена для объединённых элементов" -#: templates/js/translated/stock.js:824 +#: templates/js/translated/stock.js:828 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:825 +#: templates/js/translated/stock.js:829 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:920 +#: templates/js/translated/stock.js:924 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:921 +#: templates/js/translated/stock.js:925 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:927 +#: templates/js/translated/stock.js:931 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:928 +#: templates/js/translated/stock.js:932 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:932 +#: templates/js/translated/stock.js:936 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:933 +#: templates/js/translated/stock.js:937 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:937 +#: templates/js/translated/stock.js:941 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:938 users/models.py:216 +#: templates/js/translated/stock.js:942 users/models.py:216 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:942 +#: templates/js/translated/stock.js:946 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1035 +#: templates/js/translated/stock.js:1039 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1035 +#: templates/js/translated/stock.js:1039 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1075 +#: templates/js/translated/stock.js:1079 msgid "You must select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1098 +#: templates/js/translated/stock.js:1102 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1234 +#: templates/js/translated/stock.js:1238 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1236 +#: templates/js/translated/stock.js:1240 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1241 +#: templates/js/translated/stock.js:1245 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1288 +#: templates/js/translated/stock.js:1292 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1291 +#: templates/js/translated/stock.js:1295 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1317 +#: templates/js/translated/stock.js:1321 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1374 +#: templates/js/translated/stock.js:1378 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1539 +#: templates/js/translated/stock.js:1543 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1561 +#: templates/js/translated/stock.js:1565 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1590 +#: templates/js/translated/stock.js:1594 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1594 +#: templates/js/translated/stock.js:1598 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1602 +#: templates/js/translated/stock.js:1606 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1608 +#: templates/js/translated/stock.js:1612 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1775 +#: templates/js/translated/stock.js:1779 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:1780 +#: templates/js/translated/stock.js:1784 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:1783 +#: templates/js/translated/stock.js:1787 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:1786 +#: templates/js/translated/stock.js:1790 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:1788 +#: templates/js/translated/stock.js:1792 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:1790 +#: templates/js/translated/stock.js:1794 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:1793 +#: templates/js/translated/stock.js:1797 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:1797 +#: templates/js/translated/stock.js:1801 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:1799 +#: templates/js/translated/stock.js:1803 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:1806 +#: templates/js/translated/stock.js:1810 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:1808 +#: templates/js/translated/stock.js:1812 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:1810 +#: templates/js/translated/stock.js:1814 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:1814 +#: templates/js/translated/stock.js:1818 #: templates/js/translated/table_filters.js:196 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:1865 +#: templates/js/translated/stock.js:1869 msgid "Stocktake" msgstr "" -#: templates/js/translated/stock.js:1944 +#: templates/js/translated/stock.js:1948 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:1982 +#: templates/js/translated/stock.js:1986 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2155 +#: templates/js/translated/stock.js:2159 msgid "Set Stock Status" msgstr "" -#: templates/js/translated/stock.js:2169 +#: templates/js/translated/stock.js:2173 msgid "Select Status Code" msgstr "" -#: templates/js/translated/stock.js:2170 +#: templates/js/translated/stock.js:2174 msgid "Status code must be selected" msgstr "" -#: templates/js/translated/stock.js:2400 +#: templates/js/translated/stock.js:2404 msgid "Load Subloactions" msgstr "" -#: templates/js/translated/stock.js:2484 +#: templates/js/translated/stock.js:2493 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2500 +#: templates/js/translated/stock.js:2509 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2522 +#: templates/js/translated/stock.js:2531 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2541 +#: templates/js/translated/stock.js:2550 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2560 +#: templates/js/translated/stock.js:2569 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2578 +#: templates/js/translated/stock.js:2587 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:2601 +#: templates/js/translated/stock.js:2610 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:2609 +#: templates/js/translated/stock.js:2618 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:2685 +#: templates/js/translated/stock.js:2694 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:2736 templates/js/translated/stock.js:2772 +#: templates/js/translated/stock.js:2745 templates/js/translated/stock.js:2781 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:2785 +#: templates/js/translated/stock.js:2794 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:2806 +#: templates/js/translated/stock.js:2815 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:2807 +#: templates/js/translated/stock.js:2816 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:2809 +#: templates/js/translated/stock.js:2818 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:2810 +#: templates/js/translated/stock.js:2819 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:2811 +#: templates/js/translated/stock.js:2820 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:2812 +#: templates/js/translated/stock.js:2821 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:2825 +#: templates/js/translated/stock.js:2834 msgid "Select part to install" msgstr "" diff --git a/InvenTree/locale/sv/LC_MESSAGES/django.po b/InvenTree/locale/sv/LC_MESSAGES/django.po index 1c8c38700e..dd7fbfcfc6 100644 --- a/InvenTree/locale/sv/LC_MESSAGES/django.po +++ b/InvenTree/locale/sv/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-11 02:47+0000\n" -"PO-Revision-Date: 2022-08-11 13:49\n" +"POT-Creation-Date: 2022-08-16 11:53+0000\n" +"PO-Revision-Date: 2022-08-16 21:35\n" "Last-Translator: \n" "Language-Team: Swedish\n" "Language: sv_SE\n" @@ -36,15 +36,15 @@ msgstr "Ange datum" #: order/templates/order/so_sidebar.html:17 #: part/templates/part/part_sidebar.html:59 #: report/templates/report/inventree_build_order_base.html:172 -#: stock/models.py:1993 stock/models.py:2101 stock/serializers.py:329 -#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:823 -#: stock/serializers.py:922 stock/serializers.py:1054 +#: stock/models.py:2000 stock/models.py:2108 stock/serializers.py:329 +#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825 +#: stock/serializers.py:924 stock/serializers.py:1056 #: stock/templates/stock/stock_sidebar.html:25 #: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101 #: templates/js/translated/company.js:964 templates/js/translated/order.js:2104 #: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753 #: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102 -#: templates/js/translated/stock.js:1370 templates/js/translated/stock.js:1976 +#: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980 msgid "Notes" msgstr "Anteeckningar" @@ -163,6 +163,10 @@ msgstr "Inga serienummer hittades" msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "" +#: InvenTree/mixins.py:71 +msgid "Remove HTML tags from this value" +msgstr "" + #: InvenTree/models.py:236 msgid "Improperly formatted pattern" msgstr "" @@ -195,7 +199,7 @@ msgstr "Saknad fil" msgid "Missing external link" msgstr "Extern länk saknas" -#: InvenTree/models.py:395 stock/models.py:2095 +#: InvenTree/models.py:395 stock/models.py:2102 #: templates/js/translated/attachment.js:103 #: templates/js/translated/attachment.js:241 msgid "Attachment" @@ -207,16 +211,16 @@ msgstr "Välj fil att bifoga" #: InvenTree/models.py:402 company/models.py:124 company/models.py:276 #: company/models.py:510 order/models.py:84 order/models.py:1245 -#: part/models.py:795 +#: part/models.py:802 #: report/templates/report/inventree_build_order_base.html:164 #: templates/js/translated/company.js:656 #: templates/js/translated/company.js:948 templates/js/translated/order.js:2742 -#: templates/js/translated/part.js:1510 +#: templates/js/translated/part.js:1514 msgid "Link" msgstr "Länk" -#: InvenTree/models.py:403 build/models.py:296 part/models.py:796 -#: stock/models.py:651 +#: InvenTree/models.py:403 build/models.py:296 part/models.py:803 +#: stock/models.py:658 msgid "Link to external URL" msgstr "Länk till extern URL" @@ -229,12 +233,12 @@ msgstr "Kommentar" msgid "File comment" msgstr "Fil kommentar" -#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1646 -#: common/models.py:1647 common/models.py:1870 common/models.py:1871 -#: common/models.py:2133 common/models.py:2134 part/models.py:2193 -#: part/models.py:2213 plugin/models.py:238 plugin/models.py:239 +#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665 +#: common/models.py:1666 common/models.py:1889 common/models.py:1890 +#: common/models.py:2152 common/models.py:2153 part/models.py:2200 +#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2632 +#: templates/js/translated/stock.js:2641 msgid "User" msgstr "Användare" @@ -271,19 +275,19 @@ msgstr "Fel vid namnbyte av fil" msgid "Invalid choice" msgstr "Ogiltigt val" -#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1856 -#: company/models.py:358 label/models.py:101 part/models.py:739 -#: part/models.py:2371 plugin/models.py:93 report/models.py:152 +#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875 +#: company/models.py:358 label/models.py:101 part/models.py:746 +#: part/models.py:2378 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 -#: templates/InvenTree/settings/plugin.html:49 -#: templates/InvenTree/settings/plugin.html:132 +#: templates/InvenTree/settings/plugin.html:51 +#: templates/InvenTree/settings/plugin.html:134 #: templates/InvenTree/settings/plugin_settings.html:23 #: templates/InvenTree/settings/settings.html:347 #: templates/js/translated/company.js:545 #: templates/js/translated/company.js:758 #: templates/js/translated/notification.js:71 -#: templates/js/translated/part.js:684 templates/js/translated/part.js:836 -#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2388 +#: templates/js/translated/part.js:688 templates/js/translated/part.js:840 +#: templates/js/translated/part.js:1906 templates/js/translated/stock.js:2392 msgid "Name" msgstr "Namn" @@ -292,21 +296,21 @@ msgstr "Namn" #: company/models.py:516 company/templates/company/company_base.html:71 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:87 label/models.py:108 -#: order/models.py:82 part/models.py:762 part/templates/part/category.html:74 +#: order/models.py:82 part/models.py:769 part/templates/part/category.html:80 #: part/templates/part/part_base.html:167 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 -#: stock/templates/stock/location.html:103 +#: stock/templates/stock/location.html:108 #: templates/InvenTree/settings/plugin_settings.html:33 #: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848 #: templates/js/translated/build.js:2471 templates/js/translated/company.js:409 #: templates/js/translated/company.js:667 #: templates/js/translated/company.js:959 templates/js/translated/order.js:1720 #: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531 -#: templates/js/translated/part.js:743 templates/js/translated/part.js:1149 -#: templates/js/translated/part.js:1424 templates/js/translated/part.js:1933 -#: templates/js/translated/part.js:2002 templates/js/translated/stock.js:1739 -#: templates/js/translated/stock.js:2415 templates/js/translated/stock.js:2469 +#: templates/js/translated/part.js:747 templates/js/translated/part.js:1153 +#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1942 +#: templates/js/translated/part.js:2011 templates/js/translated/stock.js:1743 +#: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478 msgid "Description" msgstr "Beskrivning" @@ -319,7 +323,7 @@ msgid "parent" msgstr "överordnad" #: InvenTree/models.py:560 InvenTree/models.py:561 -#: templates/js/translated/part.js:1939 templates/js/translated/stock.js:2421 +#: templates/js/translated/part.js:1948 templates/js/translated/stock.js:2430 msgid "Path" msgstr "" @@ -331,7 +335,7 @@ msgstr "Serverfel" msgid "An error has been logged by the server." msgstr "Ett fel har loggats av servern." -#: InvenTree/serializers.py:55 part/models.py:2692 +#: InvenTree/serializers.py:55 part/models.py:2699 msgid "Must be a valid number" msgstr "Måste vara ett giltigt nummer" @@ -398,99 +402,99 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/settings.py:609 +#: InvenTree/settings.py:607 msgid "Czech" msgstr "Tjeckiska" -#: InvenTree/settings.py:610 +#: InvenTree/settings.py:608 msgid "German" msgstr "Tyska" -#: InvenTree/settings.py:611 +#: InvenTree/settings.py:609 msgid "Greek" msgstr "Grekiska" -#: InvenTree/settings.py:612 +#: InvenTree/settings.py:610 msgid "English" msgstr "Engelska" -#: InvenTree/settings.py:613 +#: InvenTree/settings.py:611 msgid "Spanish" msgstr "Spanska" -#: InvenTree/settings.py:614 +#: InvenTree/settings.py:612 msgid "Spanish (Mexican)" msgstr "Spanska (Mexikanska)" -#: InvenTree/settings.py:615 +#: InvenTree/settings.py:613 msgid "Farsi / Persian" msgstr "Farsi / Persiska" -#: InvenTree/settings.py:616 +#: InvenTree/settings.py:614 msgid "French" msgstr "Franska" -#: InvenTree/settings.py:617 +#: InvenTree/settings.py:615 msgid "Hebrew" msgstr "Hebreiska" -#: InvenTree/settings.py:618 +#: InvenTree/settings.py:616 msgid "Hungarian" msgstr "Ungerska" -#: InvenTree/settings.py:619 +#: InvenTree/settings.py:617 msgid "Italian" msgstr "Italienska" -#: InvenTree/settings.py:620 +#: InvenTree/settings.py:618 msgid "Japanese" msgstr "Japanska" -#: InvenTree/settings.py:621 +#: InvenTree/settings.py:619 msgid "Korean" msgstr "Koreanska" -#: InvenTree/settings.py:622 +#: InvenTree/settings.py:620 msgid "Dutch" msgstr "Nederländska" -#: InvenTree/settings.py:623 +#: InvenTree/settings.py:621 msgid "Norwegian" msgstr "Norska" -#: InvenTree/settings.py:624 +#: InvenTree/settings.py:622 msgid "Polish" msgstr "Polska" -#: InvenTree/settings.py:625 +#: InvenTree/settings.py:623 msgid "Portuguese" msgstr "Portugisiska" -#: InvenTree/settings.py:626 +#: InvenTree/settings.py:624 msgid "Portuguese (Brazilian)" msgstr "Portugisiska (brasiliansk)" -#: InvenTree/settings.py:627 +#: InvenTree/settings.py:625 msgid "Russian" msgstr "Ryska" -#: InvenTree/settings.py:628 +#: InvenTree/settings.py:626 msgid "Swedish" msgstr "Svenska" -#: InvenTree/settings.py:629 +#: InvenTree/settings.py:627 msgid "Thai" msgstr "Thailändska" -#: InvenTree/settings.py:630 +#: InvenTree/settings.py:628 msgid "Turkish" msgstr "Turkiska" -#: InvenTree/settings.py:631 +#: InvenTree/settings.py:629 msgid "Vietnamese" msgstr "Vietnamesiska" -#: InvenTree/settings.py:632 +#: InvenTree/settings.py:630 msgid "Chinese" msgstr "Kinesiska" @@ -621,7 +625,7 @@ msgstr "" msgid "Split child item" msgstr "" -#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2080 +#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2084 msgid "Merged stock items" msgstr "Sammanfogade lagerposter" @@ -743,7 +747,7 @@ msgid "Build Order Reference" msgstr "Byggorderreferens" #: build/models.py:166 order/models.py:240 order/models.py:623 -#: order/models.py:904 part/models.py:2610 +#: order/models.py:904 part/models.py:2617 #: part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 @@ -770,10 +774,10 @@ msgstr "" #: build/models.py:191 build/templates/build/build_base.html:77 #: build/templates/build/detail.html:29 company/models.py:670 #: order/models.py:1001 order/models.py:1112 order/models.py:1113 -#: part/models.py:336 part/models.py:2139 part/models.py:2154 -#: part/models.py:2173 part/models.py:2191 part/models.py:2290 -#: part/models.py:2410 part/models.py:2500 part/models.py:2585 -#: part/models.py:2861 part/serializers.py:811 +#: part/models.py:343 part/models.py:2146 part/models.py:2161 +#: part/models.py:2180 part/models.py:2198 part/models.py:2297 +#: part/models.py:2417 part/models.py:2507 part/models.py:2592 +#: part/models.py:2868 part/serializers.py:813 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -796,11 +800,11 @@ msgstr "" #: templates/js/translated/order.js:934 templates/js/translated/order.js:1387 #: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885 #: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507 -#: templates/js/translated/part.js:1134 templates/js/translated/part.js:1206 -#: templates/js/translated/part.js:1402 templates/js/translated/stock.js:582 -#: templates/js/translated/stock.js:747 templates/js/translated/stock.js:954 -#: templates/js/translated/stock.js:1696 templates/js/translated/stock.js:2495 -#: templates/js/translated/stock.js:2690 templates/js/translated/stock.js:2824 +#: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210 +#: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586 +#: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958 +#: templates/js/translated/stock.js:1700 templates/js/translated/stock.js:2504 +#: templates/js/translated/stock.js:2699 templates/js/translated/stock.js:2833 msgid "Part" msgstr "Del" @@ -858,7 +862,7 @@ msgid "Build status code" msgstr "" #: build/models.py:251 build/serializers.py:225 order/serializers.py:447 -#: stock/models.py:655 templates/js/translated/order.js:1247 +#: stock/models.py:662 templates/js/translated/order.js:1247 msgid "Batch Code" msgstr "" @@ -866,7 +870,7 @@ msgstr "" msgid "Batch code for this build output" msgstr "" -#: build/models.py:258 order/models.py:86 part/models.py:931 +#: build/models.py:258 order/models.py:86 part/models.py:938 #: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544 msgid "Creation Date" msgstr "Skapad" @@ -899,7 +903,7 @@ msgstr "Användare som utfärdade denna byggorder" #: build/models.py:289 build/templates/build/build_base.html:190 #: build/templates/build/detail.html:115 order/models.py:100 #: order/templates/order/order_base.html:176 -#: order/templates/order/sales_order_base.html:183 part/models.py:935 +#: order/templates/order/sales_order_base.html:183 part/models.py:942 #: report/templates/report/inventree_build_order_base.html:158 #: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754 msgid "Responsible" @@ -912,7 +916,7 @@ msgstr "Användare som ansvarar för denna byggorder" #: build/models.py:295 build/templates/build/detail.html:101 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:153 -#: part/templates/part/part_base.html:346 stock/models.py:649 +#: part/templates/part/part_base.html:346 stock/models.py:656 #: stock/templates/stock/item_base.html:205 msgid "External Link" msgstr "Extern länk" @@ -978,8 +982,8 @@ msgid "Build to allocate parts" msgstr "" #: build/models.py:1345 build/serializers.py:645 order/serializers.py:1015 -#: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 -#: stock/serializers.py:880 stock/templates/stock/item_base.html:10 +#: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:756 +#: stock/serializers.py:882 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:199 #: templates/js/translated/build.js:741 templates/js/translated/build.js:746 @@ -987,8 +991,8 @@ msgstr "" #: templates/js/translated/order.js:104 templates/js/translated/order.js:2886 #: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193 #: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380 -#: templates/js/translated/stock.js:583 templates/js/translated/stock.js:748 -#: templates/js/translated/stock.js:2568 +#: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752 +#: templates/js/translated/stock.js:2577 msgid "Stock Item" msgstr "Artikel i lager" @@ -998,11 +1002,11 @@ msgstr "" #: build/models.py:1358 build/serializers.py:193 #: build/templates/build/build_base.html:82 -#: build/templates/build/detail.html:34 common/models.py:1678 +#: build/templates/build/detail.html:34 common/models.py:1697 #: company/templates/company/supplier_part.html:279 order/models.py:897 #: order/models.py:1423 order/serializers.py:1155 #: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40 -#: part/models.py:2601 part/templates/part/detail.html:937 +#: part/models.py:2608 part/templates/part/detail.html:937 #: part/templates/part/detail.html:1023 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 @@ -1025,11 +1029,11 @@ msgstr "" #: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207 #: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386 #: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037 -#: templates/js/translated/part.js:1034 templates/js/translated/part.js:2147 -#: templates/js/translated/part.js:2378 templates/js/translated/part.js:2412 -#: templates/js/translated/part.js:2490 templates/js/translated/stock.js:454 -#: templates/js/translated/stock.js:608 templates/js/translated/stock.js:778 -#: templates/js/translated/stock.js:2617 templates/js/translated/stock.js:2702 +#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2156 +#: templates/js/translated/part.js:2387 templates/js/translated/part.js:2421 +#: templates/js/translated/part.js:2499 templates/js/translated/stock.js:458 +#: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782 +#: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711 msgid "Quantity" msgstr "Antal" @@ -1071,8 +1075,8 @@ msgid "Enter quantity for build output" msgstr "" #: build/serializers.py:208 build/serializers.py:665 order/models.py:318 -#: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 -#: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 +#: order/serializers.py:287 order/serializers.py:442 part/serializers.py:544 +#: part/serializers.py:976 stock/models.py:484 stock/models.py:1251 #: stock/serializers.py:302 msgid "Quantity must be greater than zero" msgstr "" @@ -1087,7 +1091,7 @@ msgstr "" #: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159 #: stock/serializers.py:311 templates/js/translated/order.js:1258 -#: templates/js/translated/stock.js:267 templates/js/translated/stock.js:455 +#: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459 msgid "Serial Numbers" msgstr "Serienummer" @@ -1113,16 +1117,16 @@ msgstr "" #: build/serializers.py:366 order/serializers.py:428 order/serializers.py:532 #: stock/serializers.py:322 stock/serializers.py:453 stock/serializers.py:534 -#: stock/serializers.py:915 stock/serializers.py:1148 +#: stock/serializers.py:917 stock/serializers.py:1150 #: stock/templates/stock/item_base.html:390 #: templates/js/translated/barcode.js:436 #: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753 #: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285 #: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305 #: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394 -#: templates/js/translated/part.js:181 templates/js/translated/stock.js:584 -#: templates/js/translated/stock.js:749 templates/js/translated/stock.js:956 -#: templates/js/translated/stock.js:1850 templates/js/translated/stock.js:2509 +#: templates/js/translated/part.js:181 templates/js/translated/stock.js:588 +#: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960 +#: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518 msgid "Location" msgstr "Plats" @@ -1135,8 +1139,8 @@ msgstr "" #: order/serializers.py:465 stock/templates/stock/item_base.html:423 #: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505 #: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724 -#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1825 -#: templates/js/translated/stock.js:2586 templates/js/translated/stock.js:2718 +#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829 +#: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727 msgid "Status" msgstr "Status" @@ -1212,8 +1216,8 @@ msgstr "" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:577 build/serializers.py:622 part/models.py:2719 -#: part/models.py:2853 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726 +#: part/models.py:2860 msgid "BOM Item" msgstr "" @@ -1229,7 +1233,7 @@ msgstr "" msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:651 stock/serializers.py:767 +#: build/serializers.py:651 stock/serializers.py:769 msgid "Item must be in stock" msgstr "" @@ -1367,7 +1371,7 @@ msgstr "" #: report/templates/report/inventree_build_order_base.html:125 #: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741 #: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552 -#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1038 +#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042 msgid "Target Date" msgstr "Måldatum" @@ -1445,8 +1449,8 @@ msgstr "" #: stock/templates/stock/item_base.html:170 #: templates/js/translated/build.js:1182 #: templates/js/translated/model_renderers.js:124 -#: templates/js/translated/stock.js:1022 templates/js/translated/stock.js:1839 -#: templates/js/translated/stock.js:2725 +#: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843 +#: templates/js/translated/stock.js:2734 #: templates/js/translated/table_filters.js:159 #: templates/js/translated/table_filters.js:250 msgid "Batch" @@ -1506,7 +1510,7 @@ msgstr "Beställ obligatoriska delar" #: build/templates/build/detail.html:187 #: company/templates/company/detail.html:37 #: company/templates/company/detail.html:85 -#: part/templates/part/category.html:177 templates/js/translated/order.js:977 +#: part/templates/part/category.html:183 templates/js/translated/order.js:977 msgid "Order Parts" msgstr "Beställ delar" @@ -1559,12 +1563,12 @@ msgid "Delete outputs" msgstr "" #: build/templates/build/detail.html:267 -#: stock/templates/stock/location.html:197 templates/stock_table.html:27 +#: stock/templates/stock/location.html:202 templates/stock_table.html:27 msgid "Printing Actions" msgstr "" #: build/templates/build/detail.html:271 build/templates/build/detail.html:272 -#: stock/templates/stock/location.html:201 templates/stock_table.html:31 +#: stock/templates/stock/location.html:206 templates/stock_table.html:31 msgid "Print labels" msgstr "Skriv ut etiketter" @@ -1841,7 +1845,7 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:951 part/models.py:2412 report/models.py:158 +#: common/models.py:951 part/models.py:2419 report/models.py:158 #: templates/js/translated/table_filters.js:38 #: templates/js/translated/table_filters.js:484 msgid "Template" @@ -1851,7 +1855,7 @@ msgstr "" msgid "Parts are templates by default" msgstr "" -#: common/models.py:958 part/models.py:887 templates/js/translated/bom.js:1448 +#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448 #: templates/js/translated/table_filters.js:176 #: templates/js/translated/table_filters.js:447 msgid "Assembly" @@ -1861,7 +1865,7 @@ msgstr "" msgid "Parts can be assembled from other components by default" msgstr "" -#: common/models.py:965 part/models.py:893 +#: common/models.py:965 part/models.py:900 #: templates/js/translated/table_filters.js:455 msgid "Component" msgstr "" @@ -1870,7 +1874,7 @@ msgstr "" msgid "Parts can be used as sub-components by default" msgstr "" -#: common/models.py:972 part/models.py:904 +#: common/models.py:972 part/models.py:911 msgid "Purchaseable" msgstr "" @@ -1878,7 +1882,7 @@ msgstr "" msgid "Parts are purchaseable by default" msgstr "" -#: common/models.py:979 part/models.py:909 +#: common/models.py:979 part/models.py:916 #: templates/js/translated/table_filters.js:476 msgid "Salable" msgstr "" @@ -1887,7 +1891,7 @@ msgstr "" msgid "Parts are salable by default" msgstr "" -#: common/models.py:986 part/models.py:899 +#: common/models.py:986 part/models.py:906 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:108 #: templates/js/translated/table_filters.js:488 @@ -1898,7 +1902,7 @@ msgstr "" msgid "Parts are trackable by default" msgstr "" -#: common/models.py:993 part/models.py:919 +#: common/models.py:993 part/models.py:926 #: part/templates/part/part_base.html:151 #: templates/js/translated/table_filters.js:42 #: templates/js/translated/table_filters.js:492 @@ -1982,608 +1986,632 @@ msgid "Format to display the part name" msgstr "Formatera för att visa artikelnamnet" #: common/models.py:1074 +msgid "Part Category Default Icon" +msgstr "" + +#: common/models.py:1075 +msgid "Part category default icon (empty means no icon)" +msgstr "" + +#: common/models.py:1080 msgid "Enable label printing" msgstr "Aktivera etikettutskrift" -#: common/models.py:1075 +#: common/models.py:1081 msgid "Enable label printing from the web interface" msgstr "Aktivera etikettutskrift från webbgränssnittet" -#: common/models.py:1081 +#: common/models.py:1087 msgid "Label Image DPI" msgstr "Etikettbild DPI" -#: common/models.py:1082 +#: common/models.py:1088 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/models.py:1091 +#: common/models.py:1097 msgid "Enable Reports" msgstr "Aktivera rapporter" -#: common/models.py:1092 +#: common/models.py:1098 msgid "Enable generation of reports" msgstr "Aktivera generering av rapporter" -#: common/models.py:1098 templates/stats.html:25 +#: common/models.py:1104 templates/stats.html:25 msgid "Debug Mode" msgstr "Debugläge" -#: common/models.py:1099 +#: common/models.py:1105 msgid "Generate reports in debug mode (HTML output)" msgstr "" -#: common/models.py:1105 +#: common/models.py:1111 msgid "Page Size" msgstr "Sidstorlek" -#: common/models.py:1106 +#: common/models.py:1112 msgid "Default page size for PDF reports" msgstr "Standard sidstorlek för PDF-rapporter" -#: common/models.py:1116 +#: common/models.py:1122 msgid "Enable Test Reports" msgstr "Aktivera testrapporter" -#: common/models.py:1117 +#: common/models.py:1123 msgid "Enable generation of test reports" msgstr "" -#: common/models.py:1123 +#: common/models.py:1129 msgid "Attach Test Reports" msgstr "" -#: common/models.py:1124 +#: common/models.py:1130 msgid "When printing a Test Report, attach a copy of the Test Report to the associated Stock Item" msgstr "" -#: common/models.py:1130 +#: common/models.py:1136 msgid "Batch Code Template" msgstr "" -#: common/models.py:1131 +#: common/models.py:1137 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/models.py:1136 +#: common/models.py:1142 msgid "Stock Expiry" msgstr "" -#: common/models.py:1137 +#: common/models.py:1143 msgid "Enable stock expiry functionality" msgstr "" -#: common/models.py:1143 +#: common/models.py:1149 msgid "Sell Expired Stock" msgstr "" -#: common/models.py:1144 +#: common/models.py:1150 msgid "Allow sale of expired stock" msgstr "" -#: common/models.py:1150 +#: common/models.py:1156 msgid "Stock Stale Time" msgstr "" -#: common/models.py:1151 +#: common/models.py:1157 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/models.py:1153 +#: common/models.py:1159 msgid "days" msgstr "" -#: common/models.py:1158 +#: common/models.py:1164 msgid "Build Expired Stock" msgstr "" -#: common/models.py:1159 +#: common/models.py:1165 msgid "Allow building with expired stock" msgstr "" -#: common/models.py:1165 +#: common/models.py:1171 msgid "Stock Ownership Control" msgstr "" -#: common/models.py:1166 +#: common/models.py:1172 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/models.py:1172 -msgid "Build Order Reference Pattern" -msgstr "" - -#: common/models.py:1173 -msgid "Required pattern for generating Build Order reference field" +#: common/models.py:1178 +msgid "Stock Location Default Icon" msgstr "" #: common/models.py:1179 +msgid "Stock location default icon (empty means no icon)" +msgstr "" + +#: common/models.py:1184 +msgid "Build Order Reference Pattern" +msgstr "" + +#: common/models.py:1185 +msgid "Required pattern for generating Build Order reference field" +msgstr "" + +#: common/models.py:1191 msgid "Sales Order Reference Pattern" msgstr "" -#: common/models.py:1180 +#: common/models.py:1192 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/models.py:1186 +#: common/models.py:1198 msgid "Sales Order Default Shipment" msgstr "" -#: common/models.py:1187 +#: common/models.py:1199 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/models.py:1193 +#: common/models.py:1205 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/models.py:1194 +#: common/models.py:1206 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/models.py:1201 +#: common/models.py:1213 msgid "Enable password forgot" msgstr "" -#: common/models.py:1202 +#: common/models.py:1214 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/models.py:1208 +#: common/models.py:1220 msgid "Enable registration" msgstr "" -#: common/models.py:1209 +#: common/models.py:1221 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/models.py:1215 +#: common/models.py:1227 msgid "Enable SSO" msgstr "" -#: common/models.py:1216 +#: common/models.py:1228 msgid "Enable SSO on the login pages" msgstr "" -#: common/models.py:1222 +#: common/models.py:1234 msgid "Email required" msgstr "" -#: common/models.py:1223 +#: common/models.py:1235 msgid "Require user to supply mail on signup" msgstr "" -#: common/models.py:1229 +#: common/models.py:1241 msgid "Auto-fill SSO users" msgstr "" -#: common/models.py:1230 +#: common/models.py:1242 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/models.py:1236 +#: common/models.py:1248 msgid "Mail twice" msgstr "" -#: common/models.py:1237 +#: common/models.py:1249 msgid "On signup ask users twice for their mail" msgstr "" -#: common/models.py:1243 +#: common/models.py:1255 msgid "Password twice" msgstr "" -#: common/models.py:1244 +#: common/models.py:1256 msgid "On signup ask users twice for their password" msgstr "" -#: common/models.py:1250 +#: common/models.py:1262 msgid "Group on signup" msgstr "" -#: common/models.py:1251 +#: common/models.py:1263 msgid "Group to which new users are assigned on registration" msgstr "" -#: common/models.py:1257 +#: common/models.py:1269 msgid "Enforce MFA" msgstr "" -#: common/models.py:1258 +#: common/models.py:1270 msgid "Users must use multifactor security." msgstr "" -#: common/models.py:1264 +#: common/models.py:1276 msgid "Check plugins on startup" msgstr "" -#: common/models.py:1265 +#: common/models.py:1277 msgid "Check that all plugins are installed on startup - enable in container enviroments" msgstr "" -#: common/models.py:1273 +#: common/models.py:1284 +msgid "Check plugin signatures" +msgstr "" + +#: common/models.py:1285 +msgid "Check and show signatures for plugins" +msgstr "" + +#: common/models.py:1292 msgid "Enable URL integration" msgstr "" -#: common/models.py:1274 +#: common/models.py:1293 msgid "Enable plugins to add URL routes" msgstr "" -#: common/models.py:1281 +#: common/models.py:1300 msgid "Enable navigation integration" msgstr "" -#: common/models.py:1282 +#: common/models.py:1301 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/models.py:1289 +#: common/models.py:1308 msgid "Enable app integration" msgstr "" -#: common/models.py:1290 +#: common/models.py:1309 msgid "Enable plugins to add apps" msgstr "" -#: common/models.py:1297 +#: common/models.py:1316 msgid "Enable schedule integration" msgstr "" -#: common/models.py:1298 +#: common/models.py:1317 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/models.py:1305 +#: common/models.py:1324 msgid "Enable event integration" msgstr "" -#: common/models.py:1306 +#: common/models.py:1325 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:1323 common/models.py:1639 +#: common/models.py:1342 common/models.py:1658 msgid "Settings key (must be unique - case insensitive" msgstr "" -#: common/models.py:1345 +#: common/models.py:1364 msgid "Show subscribed parts" msgstr "" -#: common/models.py:1346 +#: common/models.py:1365 msgid "Show subscribed parts on the homepage" msgstr "" -#: common/models.py:1352 +#: common/models.py:1371 msgid "Show subscribed categories" msgstr "" -#: common/models.py:1353 +#: common/models.py:1372 msgid "Show subscribed part categories on the homepage" msgstr "" -#: common/models.py:1359 +#: common/models.py:1378 msgid "Show latest parts" msgstr "" -#: common/models.py:1360 +#: common/models.py:1379 msgid "Show latest parts on the homepage" msgstr "" -#: common/models.py:1366 +#: common/models.py:1385 msgid "Recent Part Count" msgstr "" -#: common/models.py:1367 +#: common/models.py:1386 msgid "Number of recent parts to display on index page" msgstr "" -#: common/models.py:1373 +#: common/models.py:1392 msgid "Show unvalidated BOMs" msgstr "" -#: common/models.py:1374 +#: common/models.py:1393 msgid "Show BOMs that await validation on the homepage" msgstr "" -#: common/models.py:1380 +#: common/models.py:1399 msgid "Show recent stock changes" msgstr "" -#: common/models.py:1381 +#: common/models.py:1400 msgid "Show recently changed stock items on the homepage" msgstr "" -#: common/models.py:1387 +#: common/models.py:1406 msgid "Recent Stock Count" msgstr "" -#: common/models.py:1388 +#: common/models.py:1407 msgid "Number of recent stock items to display on index page" msgstr "" -#: common/models.py:1394 +#: common/models.py:1413 msgid "Show low stock" msgstr "" -#: common/models.py:1395 +#: common/models.py:1414 msgid "Show low stock items on the homepage" msgstr "" -#: common/models.py:1401 +#: common/models.py:1420 msgid "Show depleted stock" msgstr "" -#: common/models.py:1402 +#: common/models.py:1421 msgid "Show depleted stock items on the homepage" msgstr "" -#: common/models.py:1408 +#: common/models.py:1427 msgid "Show needed stock" msgstr "" -#: common/models.py:1409 +#: common/models.py:1428 msgid "Show stock items needed for builds on the homepage" msgstr "" -#: common/models.py:1415 +#: common/models.py:1434 msgid "Show expired stock" msgstr "" -#: common/models.py:1416 +#: common/models.py:1435 msgid "Show expired stock items on the homepage" msgstr "" -#: common/models.py:1422 +#: common/models.py:1441 msgid "Show stale stock" msgstr "" -#: common/models.py:1423 +#: common/models.py:1442 msgid "Show stale stock items on the homepage" msgstr "" -#: common/models.py:1429 +#: common/models.py:1448 msgid "Show pending builds" msgstr "" -#: common/models.py:1430 +#: common/models.py:1449 msgid "Show pending builds on the homepage" msgstr "" -#: common/models.py:1436 +#: common/models.py:1455 msgid "Show overdue builds" msgstr "" -#: common/models.py:1437 +#: common/models.py:1456 msgid "Show overdue builds on the homepage" msgstr "" -#: common/models.py:1443 +#: common/models.py:1462 msgid "Show outstanding POs" msgstr "" -#: common/models.py:1444 +#: common/models.py:1463 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:1450 +#: common/models.py:1469 msgid "Show overdue POs" msgstr "" -#: common/models.py:1451 +#: common/models.py:1470 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:1457 +#: common/models.py:1476 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:1458 +#: common/models.py:1477 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:1464 +#: common/models.py:1483 msgid "Show overdue SOs" msgstr "" -#: common/models.py:1465 +#: common/models.py:1484 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:1471 +#: common/models.py:1490 msgid "Inline label display" msgstr "" -#: common/models.py:1472 +#: common/models.py:1491 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1478 +#: common/models.py:1497 msgid "Inline report display" msgstr "" -#: common/models.py:1479 +#: common/models.py:1498 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1485 +#: common/models.py:1504 msgid "Search Parts" msgstr "" -#: common/models.py:1486 +#: common/models.py:1505 msgid "Display parts in search preview window" msgstr "" -#: common/models.py:1492 +#: common/models.py:1511 msgid "Seach Supplier Parts" msgstr "" -#: common/models.py:1493 +#: common/models.py:1512 msgid "Display supplier parts in search preview window" msgstr "" -#: common/models.py:1499 +#: common/models.py:1518 msgid "Search Manufacturer Parts" msgstr "" -#: common/models.py:1500 +#: common/models.py:1519 msgid "Display manufacturer parts in search preview window" msgstr "" -#: common/models.py:1506 +#: common/models.py:1525 msgid "Hide Inactive Parts" msgstr "" -#: common/models.py:1507 +#: common/models.py:1526 msgid "Excluded inactive parts from search preview window" msgstr "" -#: common/models.py:1513 +#: common/models.py:1532 msgid "Search Categories" msgstr "" -#: common/models.py:1514 +#: common/models.py:1533 msgid "Display part categories in search preview window" msgstr "" -#: common/models.py:1520 +#: common/models.py:1539 msgid "Search Stock" msgstr "" -#: common/models.py:1521 +#: common/models.py:1540 msgid "Display stock items in search preview window" msgstr "" -#: common/models.py:1527 +#: common/models.py:1546 msgid "Hide Unavailable Stock Items" msgstr "" -#: common/models.py:1528 +#: common/models.py:1547 msgid "Exclude stock items which are not available from the search preview window" msgstr "" -#: common/models.py:1534 +#: common/models.py:1553 msgid "Search Locations" msgstr "" -#: common/models.py:1535 +#: common/models.py:1554 msgid "Display stock locations in search preview window" msgstr "" -#: common/models.py:1541 +#: common/models.py:1560 msgid "Search Companies" msgstr "" -#: common/models.py:1542 +#: common/models.py:1561 msgid "Display companies in search preview window" msgstr "" -#: common/models.py:1548 +#: common/models.py:1567 msgid "Search Purchase Orders" msgstr "" -#: common/models.py:1549 +#: common/models.py:1568 msgid "Display purchase orders in search preview window" msgstr "" -#: common/models.py:1555 +#: common/models.py:1574 msgid "Exclude Inactive Purchase Orders" msgstr "" -#: common/models.py:1556 +#: common/models.py:1575 msgid "Exclude inactive purchase orders from search preview window" msgstr "" -#: common/models.py:1562 +#: common/models.py:1581 msgid "Search Sales Orders" msgstr "" -#: common/models.py:1563 +#: common/models.py:1582 msgid "Display sales orders in search preview window" msgstr "" -#: common/models.py:1569 +#: common/models.py:1588 msgid "Exclude Inactive Sales Orders" msgstr "" -#: common/models.py:1570 +#: common/models.py:1589 msgid "Exclude inactive sales orders from search preview window" msgstr "" -#: common/models.py:1576 +#: common/models.py:1595 msgid "Search Preview Results" msgstr "" -#: common/models.py:1577 +#: common/models.py:1596 msgid "Number of results to show in each section of the search preview window" msgstr "" -#: common/models.py:1583 +#: common/models.py:1602 msgid "Show Quantity in Forms" msgstr "" -#: common/models.py:1584 +#: common/models.py:1603 msgid "Display available part quantity in some forms" msgstr "" -#: common/models.py:1590 +#: common/models.py:1609 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:1591 +#: common/models.py:1610 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:1597 +#: common/models.py:1616 msgid "Fixed Navbar" msgstr "" -#: common/models.py:1598 +#: common/models.py:1617 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:1604 +#: common/models.py:1623 msgid "Date Format" msgstr "" -#: common/models.py:1605 +#: common/models.py:1624 msgid "Preferred format for displaying dates" msgstr "" -#: common/models.py:1619 part/templates/part/detail.html:41 +#: common/models.py:1638 part/templates/part/detail.html:41 msgid "Part Scheduling" msgstr "" -#: common/models.py:1620 +#: common/models.py:1639 msgid "Display part scheduling information" msgstr "" -#: common/models.py:1679 +#: common/models.py:1698 msgid "Price break quantity" msgstr "" -#: common/models.py:1686 company/serializers.py:366 +#: common/models.py:1705 company/serializers.py:366 #: company/templates/company/supplier_part.html:284 order/models.py:938 -#: templates/js/translated/part.js:1065 templates/js/translated/part.js:2152 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2161 msgid "Price" msgstr "" -#: common/models.py:1687 +#: common/models.py:1706 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:1847 common/models.py:2025 +#: common/models.py:1866 common/models.py:2044 msgid "Endpoint" msgstr "" -#: common/models.py:1848 +#: common/models.py:1867 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:1857 +#: common/models.py:1876 msgid "Name for this webhook" msgstr "" -#: common/models.py:1862 part/models.py:914 plugin/models.py:99 +#: common/models.py:1881 part/models.py:921 plugin/models.py:100 #: templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:104 #: templates/js/translated/table_filters.js:316 @@ -2591,67 +2619,67 @@ msgstr "" msgid "Active" msgstr "" -#: common/models.py:1863 +#: common/models.py:1882 msgid "Is this webhook active" msgstr "" -#: common/models.py:1877 +#: common/models.py:1896 msgid "Token" msgstr "" -#: common/models.py:1878 +#: common/models.py:1897 msgid "Token for access" msgstr "" -#: common/models.py:1885 +#: common/models.py:1904 msgid "Secret" msgstr "" -#: common/models.py:1886 +#: common/models.py:1905 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:1992 +#: common/models.py:2011 msgid "Message ID" msgstr "" -#: common/models.py:1993 +#: common/models.py:2012 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2001 +#: common/models.py:2020 msgid "Host" msgstr "" -#: common/models.py:2002 +#: common/models.py:2021 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2009 +#: common/models.py:2028 msgid "Header" msgstr "" -#: common/models.py:2010 +#: common/models.py:2029 msgid "Header of this message" msgstr "" -#: common/models.py:2016 +#: common/models.py:2035 msgid "Body" msgstr "" -#: common/models.py:2017 +#: common/models.py:2036 msgid "Body of this message" msgstr "" -#: common/models.py:2026 +#: common/models.py:2045 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2031 +#: common/models.py:2050 msgid "Worked on" msgstr "" -#: common/models.py:2032 +#: common/models.py:2051 msgid "Was the work on this message finished?" msgstr "" @@ -2758,7 +2786,7 @@ msgstr "" msgid "Link to external company information" msgstr "" -#: company/models.py:135 part/models.py:808 +#: company/models.py:135 part/models.py:815 msgid "Image" msgstr "" @@ -2791,8 +2819,8 @@ msgid "Does this company manufacture parts?" msgstr "" #: company/models.py:148 company/serializers.py:372 -#: company/templates/company/company_base.html:106 part/serializers.py:151 -#: part/serializers.py:182 stock/serializers.py:180 +#: company/templates/company/company_base.html:106 part/serializers.py:153 +#: part/serializers.py:184 stock/serializers.py:180 msgid "Currency" msgstr "" @@ -2800,7 +2828,7 @@ msgstr "" msgid "Default currency used for this company" msgstr "" -#: company/models.py:248 company/models.py:481 stock/models.py:591 +#: company/models.py:248 company/models.py:481 stock/models.py:598 #: stock/serializers.py:87 stock/templates/stock/item_base.html:148 #: templates/js/translated/bom.js:543 msgid "Base Part" @@ -2832,7 +2860,7 @@ msgstr "" #: templates/js/translated/company.js:497 #: templates/js/translated/company.js:649 #: templates/js/translated/company.js:937 templates/js/translated/order.js:1971 -#: templates/js/translated/part.js:247 templates/js/translated/part.js:1023 +#: templates/js/translated/part.js:247 templates/js/translated/part.js:1027 msgid "MPN" msgstr "" @@ -2861,9 +2889,9 @@ msgstr "" #: company/models.py:365 #: report/templates/report/inventree_test_report_base.html:95 -#: stock/models.py:2088 templates/js/translated/company.js:546 -#: templates/js/translated/company.js:764 templates/js/translated/part.js:845 -#: templates/js/translated/stock.js:1356 +#: stock/models.py:2095 templates/js/translated/company.js:546 +#: templates/js/translated/company.js:764 templates/js/translated/part.js:849 +#: templates/js/translated/stock.js:1360 msgid "Value" msgstr "" @@ -2871,10 +2899,10 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:372 part/models.py:881 part/models.py:2379 +#: company/models.py:372 part/models.py:888 part/models.py:2386 #: part/templates/part/part_base.html:280 #: templates/InvenTree/settings/settings.html:352 -#: templates/js/translated/company.js:770 templates/js/translated/part.js:851 +#: templates/js/translated/company.js:770 templates/js/translated/part.js:855 msgid "Units" msgstr "" @@ -2894,7 +2922,7 @@ msgstr "" #: templates/js/translated/company.js:268 #: templates/js/translated/company.js:401 #: templates/js/translated/company.js:893 templates/js/translated/order.js:1707 -#: templates/js/translated/part.js:217 templates/js/translated/part.js:991 +#: templates/js/translated/part.js:217 templates/js/translated/part.js:995 #: templates/js/translated/table_filters.js:423 msgid "Supplier" msgstr "" @@ -2906,7 +2934,7 @@ msgstr "" #: company/models.py:497 company/templates/company/supplier_part.html:118 #: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267 #: templates/js/translated/order.js:1958 templates/js/translated/part.js:228 -#: templates/js/translated/part.js:1009 +#: templates/js/translated/part.js:1013 msgid "SKU" msgstr "" @@ -2927,23 +2955,23 @@ msgid "Supplier part description" msgstr "" #: company/models.py:522 company/templates/company/supplier_part.html:146 -#: part/models.py:2613 part/templates/part/upload_bom.html:59 +#: part/models.py:2620 part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401 msgid "Note" msgstr "" -#: company/models.py:526 part/models.py:1735 +#: company/models.py:526 part/models.py:1742 msgid "base cost" msgstr "" -#: company/models.py:526 part/models.py:1735 +#: company/models.py:526 part/models.py:1742 msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:528 company/templates/company/supplier_part.html:139 -#: stock/models.py:617 stock/templates/stock/item_base.html:245 -#: templates/js/translated/company.js:969 templates/js/translated/stock.js:1972 +#: stock/models.py:624 stock/templates/stock/item_base.html:245 +#: templates/js/translated/company.js:969 templates/js/translated/stock.js:1976 msgid "Packaging" msgstr "" @@ -2951,7 +2979,7 @@ msgstr "" msgid "Part packaging" msgstr "" -#: company/models.py:530 part/models.py:1737 +#: company/models.py:530 part/models.py:1744 msgid "multiple" msgstr "" @@ -2964,7 +2992,7 @@ msgstr "" #: templates/email/low_stock_notification.html:18 #: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789 #: templates/js/translated/build.js:2645 templates/js/translated/company.js:979 -#: templates/js/translated/part.js:596 templates/js/translated/part.js:599 +#: templates/js/translated/part.js:600 templates/js/translated/part.js:603 #: templates/js/translated/table_filters.js:186 msgid "Available" msgstr "" @@ -3037,12 +3065,12 @@ msgid "Download image from URL" msgstr "" #: company/templates/company/company_base.html:86 order/models.py:637 -#: order/templates/order/sales_order_base.html:116 stock/models.py:636 -#: stock/models.py:637 stock/serializers.py:809 +#: order/templates/order/sales_order_base.html:116 stock/models.py:643 +#: stock/models.py:644 stock/serializers.py:811 #: stock/templates/stock/item_base.html:401 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:393 templates/js/translated/order.js:2513 -#: templates/js/translated/stock.js:2550 +#: templates/js/translated/stock.js:2559 #: templates/js/translated/table_filters.js:427 msgid "Customer" msgstr "" @@ -3083,7 +3111,7 @@ msgstr "" #: company/templates/company/detail.html:36 #: company/templates/company/detail.html:84 -#: part/templates/part/category.html:176 +#: part/templates/part/category.html:182 msgid "Order parts" msgstr "" @@ -3231,7 +3259,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:170 #: part/templates/part/detail.html:186 #: templates/InvenTree/settings/category.html:12 -#: templates/InvenTree/settings/part.html:66 +#: templates/InvenTree/settings/part.html:68 msgid "New Parameter" msgstr "" @@ -3261,10 +3289,10 @@ msgid "Assigned Stock Items" msgstr "" #: company/templates/company/supplier_part.html:7 -#: company/templates/company/supplier_part.html:24 stock/models.py:600 +#: company/templates/company/supplier_part.html:24 stock/models.py:607 #: stock/templates/stock/item_base.html:238 #: templates/js/translated/company.js:909 templates/js/translated/order.js:935 -#: templates/js/translated/stock.js:1929 +#: templates/js/translated/stock.js:1933 msgid "Supplier Part" msgstr "" @@ -3308,13 +3336,13 @@ msgid "Supplier Part Stock" msgstr "" #: company/templates/company/supplier_part.html:168 -#: part/templates/part/detail.html:24 stock/templates/stock/location.html:176 +#: part/templates/part/detail.html:24 stock/templates/stock/location.html:181 msgid "Create new stock item" msgstr "" #: company/templates/company/supplier_part.html:169 -#: part/templates/part/detail.html:25 stock/templates/stock/location.html:177 -#: templates/js/translated/stock.js:431 +#: part/templates/part/detail.html:25 stock/templates/stock/location.html:182 +#: templates/js/translated/stock.js:435 msgid "New Stock Item" msgstr "" @@ -3330,7 +3358,7 @@ msgstr "" #: company/templates/company/supplier_part.html:212 #: company/templates/company/supplier_part.html:326 -#: part/templates/part/prices.html:276 templates/js/translated/part.js:2224 +#: part/templates/part/prices.html:276 templates/js/translated/part.js:2233 msgid "Add Price Break" msgstr "" @@ -3339,12 +3367,12 @@ msgid "No price break information found" msgstr "" #: company/templates/company/supplier_part.html:252 -#: templates/js/translated/part.js:2234 +#: templates/js/translated/part.js:2243 msgid "Delete Price Break" msgstr "" #: company/templates/company/supplier_part.html:266 -#: templates/js/translated/part.js:2248 +#: templates/js/translated/part.js:2257 msgid "Edit Price Break" msgstr "" @@ -3366,13 +3394,13 @@ msgstr "" #: company/templates/company/supplier_part_navbar.html:15 #: part/templates/part/part_sidebar.html:14 -#: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:19 +#: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:24 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:151 #: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/bom.js:555 templates/js/translated/part.js:747 -#: templates/js/translated/part.js:1295 templates/js/translated/part.js:1456 -#: templates/js/translated/stock.js:955 templates/js/translated/stock.js:1750 +#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751 +#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460 +#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754 #: templates/navbar.html:31 msgid "Stock" msgstr "" @@ -3392,14 +3420,14 @@ msgid "Pricing" msgstr "" #: company/templates/company/supplier_part_sidebar.html:5 -#: part/templates/part/category.html:197 +#: part/templates/part/category.html:203 #: part/templates/part/category_sidebar.html:17 -#: stock/templates/stock/location.html:147 -#: stock/templates/stock/location.html:161 -#: stock/templates/stock/location.html:173 +#: stock/templates/stock/location.html:152 +#: stock/templates/stock/location.html:166 +#: stock/templates/stock/location.html:178 #: stock/templates/stock/location_sidebar.html:7 #: templates/InvenTree/search.html:153 templates/js/translated/search.js:223 -#: templates/js/translated/stock.js:2427 users/models.py:40 +#: templates/js/translated/stock.js:2436 users/models.py:40 msgid "Stock Items" msgstr "" @@ -3656,8 +3684,8 @@ msgstr "" #: stock/templates/stock/item_base.html:184 #: templates/email/overdue_purchase_order.html:15 #: templates/js/translated/order.js:936 templates/js/translated/order.js:1691 -#: templates/js/translated/part.js:968 templates/js/translated/stock.js:1909 -#: templates/js/translated/stock.js:2531 +#: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913 +#: templates/js/translated/stock.js:2540 msgid "Purchase Order" msgstr "" @@ -3667,7 +3695,7 @@ msgstr "" #: order/models.py:1009 order/templates/order/order_base.html:169 #: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073 -#: templates/js/translated/part.js:1060 templates/js/translated/part.js:1087 +#: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091 #: templates/js/translated/table_filters.js:338 msgid "Received" msgstr "" @@ -3676,9 +3704,9 @@ msgstr "" msgid "Number of items received" msgstr "" -#: order/models.py:1017 part/templates/part/prices.html:181 stock/models.py:727 +#: order/models.py:1017 part/templates/part/prices.html:181 stock/models.py:734 #: stock/serializers.py:171 stock/templates/stock/item_base.html:191 -#: templates/js/translated/stock.js:1960 +#: templates/js/translated/stock.js:1964 msgid "Purchase Price" msgstr "" @@ -4066,8 +4094,8 @@ msgstr "" #: templates/js/translated/bom.js:77 templates/js/translated/build.js:431 #: templates/js/translated/build.js:583 templates/js/translated/build.js:1974 #: templates/js/translated/order.js:884 templates/js/translated/order.js:1337 -#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:621 -#: templates/js/translated/stock.js:789 +#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625 +#: templates/js/translated/stock.js:793 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "" @@ -4261,8 +4289,8 @@ msgstr "" msgid "This field is required" msgstr "" -#: part/bom.py:127 part/models.py:98 part/models.py:817 -#: part/templates/part/category.html:108 part/templates/part/part_base.html:330 +#: part/bom.py:127 part/models.py:98 part/models.py:824 +#: part/templates/part/category.html:114 part/templates/part/part_base.html:330 msgid "Default Location" msgstr "" @@ -4276,9 +4304,9 @@ msgid "Available Stock" msgstr "" #: part/bom.py:130 part/templates/part/part_base.html:207 -#: templates/js/translated/bom.js:947 templates/js/translated/part.js:586 -#: templates/js/translated/part.js:606 templates/js/translated/part.js:1298 -#: templates/js/translated/part.js:1470 templates/js/translated/part.js:1486 +#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590 +#: templates/js/translated/part.js:610 templates/js/translated/part.js:1302 +#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "" @@ -4299,516 +4327,524 @@ msgstr "" msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:115 part/models.py:2455 part/templates/part/category.html:15 +#: part/models.py:107 stock/models.py:84 +msgid "Icon" +msgstr "" + +#: part/models.py:108 stock/models.py:85 +msgid "Icon (optional)" +msgstr "" + +#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" -#: part/models.py:116 part/templates/part/category.html:128 +#: part/models.py:123 part/templates/part/category.html:134 #: templates/InvenTree/search.html:95 templates/js/translated/search.js:198 #: users/models.py:37 msgid "Part Categories" msgstr "" -#: part/models.py:337 part/templates/part/cat_link.html:3 -#: part/templates/part/category.html:17 part/templates/part/category.html:133 -#: part/templates/part/category.html:153 +#: part/models.py:344 part/templates/part/cat_link.html:3 +#: part/templates/part/category.html:23 part/templates/part/category.html:139 +#: part/templates/part/category.html:159 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82 #: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:1946 templates/js/translated/search.js:144 +#: templates/js/translated/part.js:1955 templates/js/translated/search.js:144 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "" -#: part/models.py:422 +#: part/models.py:429 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:492 part/models.py:504 +#: part/models.py:499 part/models.py:511 #, python-brace-format msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)" msgstr "" -#: part/models.py:621 +#: part/models.py:628 msgid "Next available serial numbers are" msgstr "" -#: part/models.py:625 +#: part/models.py:632 msgid "Next available serial number is" msgstr "" -#: part/models.py:630 +#: part/models.py:637 msgid "Most recent serial number is" msgstr "" -#: part/models.py:711 +#: part/models.py:718 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:738 part/models.py:2509 +#: part/models.py:745 part/models.py:2516 msgid "Part name" msgstr "" -#: part/models.py:745 +#: part/models.py:752 msgid "Is Template" msgstr "" -#: part/models.py:746 +#: part/models.py:753 msgid "Is this part a template part?" msgstr "" -#: part/models.py:756 +#: part/models.py:763 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:757 +#: part/models.py:764 msgid "Variant Of" msgstr "" -#: part/models.py:763 +#: part/models.py:770 msgid "Part description" msgstr "" -#: part/models.py:768 part/templates/part/category.html:86 +#: part/models.py:775 part/templates/part/category.html:92 #: part/templates/part/part_base.html:294 msgid "Keywords" msgstr "" -#: part/models.py:769 +#: part/models.py:776 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:776 part/models.py:2211 part/models.py:2454 +#: part/models.py:783 part/models.py:2218 part/models.py:2461 #: part/templates/part/part_base.html:257 #: templates/InvenTree/settings/settings.html:232 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1438 templates/js/translated/part.js:1664 +#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1668 msgid "Category" msgstr "" -#: part/models.py:777 +#: part/models.py:784 msgid "Part category" msgstr "" -#: part/models.py:782 part/templates/part/part_base.html:266 -#: templates/js/translated/part.js:735 templates/js/translated/part.js:1391 -#: templates/js/translated/stock.js:1722 +#: part/models.py:789 part/templates/part/part_base.html:266 +#: templates/js/translated/part.js:739 templates/js/translated/part.js:1395 +#: templates/js/translated/stock.js:1726 msgid "IPN" msgstr "" -#: part/models.py:783 +#: part/models.py:790 msgid "Internal Part Number" msgstr "" -#: part/models.py:789 +#: part/models.py:796 msgid "Part revision or version number" msgstr "" -#: part/models.py:790 part/templates/part/part_base.html:273 -#: report/models.py:171 templates/js/translated/part.js:739 +#: part/models.py:797 part/templates/part/part_base.html:273 +#: report/models.py:171 templates/js/translated/part.js:743 msgid "Revision" msgstr "" -#: part/models.py:815 +#: part/models.py:822 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:860 part/templates/part/part_base.html:339 +#: part/models.py:867 part/templates/part/part_base.html:339 msgid "Default Supplier" msgstr "" -#: part/models.py:861 +#: part/models.py:868 msgid "Default supplier part" msgstr "" -#: part/models.py:868 +#: part/models.py:875 msgid "Default Expiry" msgstr "" -#: part/models.py:869 +#: part/models.py:876 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:874 part/templates/part/part_base.html:200 +#: part/models.py:881 part/templates/part/part_base.html:200 msgid "Minimum Stock" msgstr "" -#: part/models.py:875 +#: part/models.py:882 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:882 +#: part/models.py:889 msgid "Stock keeping units for this part" msgstr "" -#: part/models.py:888 +#: part/models.py:895 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:894 +#: part/models.py:901 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:900 +#: part/models.py:907 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:905 +#: part/models.py:912 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:910 +#: part/models.py:917 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:915 +#: part/models.py:922 msgid "Is this part active?" msgstr "" -#: part/models.py:920 +#: part/models.py:927 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:922 +#: part/models.py:929 msgid "Part notes" msgstr "" -#: part/models.py:924 +#: part/models.py:931 msgid "BOM checksum" msgstr "" -#: part/models.py:924 +#: part/models.py:931 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:927 +#: part/models.py:934 msgid "BOM checked by" msgstr "" -#: part/models.py:929 +#: part/models.py:936 msgid "BOM checked date" msgstr "" -#: part/models.py:933 +#: part/models.py:940 msgid "Creation User" msgstr "" -#: part/models.py:1737 +#: part/models.py:1744 msgid "Sell multiple" msgstr "" -#: part/models.py:2258 +#: part/models.py:2265 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:2275 +#: part/models.py:2282 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:2295 templates/js/translated/part.js:1997 -#: templates/js/translated/stock.js:1336 +#: part/models.py:2302 templates/js/translated/part.js:2006 +#: templates/js/translated/stock.js:1340 msgid "Test Name" msgstr "" -#: part/models.py:2296 +#: part/models.py:2303 msgid "Enter a name for the test" msgstr "" -#: part/models.py:2301 +#: part/models.py:2308 msgid "Test Description" msgstr "" -#: part/models.py:2302 +#: part/models.py:2309 msgid "Enter description for this test" msgstr "" -#: part/models.py:2307 templates/js/translated/part.js:2006 +#: part/models.py:2314 templates/js/translated/part.js:2015 #: templates/js/translated/table_filters.js:302 msgid "Required" msgstr "" -#: part/models.py:2308 +#: part/models.py:2315 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:2313 templates/js/translated/part.js:2014 +#: part/models.py:2320 templates/js/translated/part.js:2023 msgid "Requires Value" msgstr "" -#: part/models.py:2314 +#: part/models.py:2321 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:2319 templates/js/translated/part.js:2021 +#: part/models.py:2326 templates/js/translated/part.js:2030 msgid "Requires Attachment" msgstr "" -#: part/models.py:2320 +#: part/models.py:2327 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:2328 +#: part/models.py:2335 #, python-brace-format msgid "Illegal character in template name ({c})" msgstr "" -#: part/models.py:2364 +#: part/models.py:2371 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:2372 +#: part/models.py:2379 msgid "Parameter Name" msgstr "" -#: part/models.py:2379 +#: part/models.py:2386 msgid "Parameter Units" msgstr "" -#: part/models.py:2410 +#: part/models.py:2417 msgid "Parent Part" msgstr "" -#: part/models.py:2412 part/models.py:2460 part/models.py:2461 +#: part/models.py:2419 part/models.py:2467 part/models.py:2468 #: templates/InvenTree/settings/settings.html:227 msgid "Parameter Template" msgstr "" -#: part/models.py:2414 +#: part/models.py:2421 msgid "Data" msgstr "" -#: part/models.py:2414 +#: part/models.py:2421 msgid "Parameter Value" msgstr "" -#: part/models.py:2465 templates/InvenTree/settings/settings.html:236 +#: part/models.py:2472 templates/InvenTree/settings/settings.html:236 msgid "Default Value" msgstr "" -#: part/models.py:2466 +#: part/models.py:2473 msgid "Default Parameter Value" msgstr "" -#: part/models.py:2501 +#: part/models.py:2508 msgid "Part ID or part name" msgstr "" -#: part/models.py:2504 templates/js/translated/model_renderers.js:212 +#: part/models.py:2511 templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "" -#: part/models.py:2505 +#: part/models.py:2512 msgid "Unique part ID value" msgstr "" -#: part/models.py:2508 +#: part/models.py:2515 msgid "Part Name" msgstr "" -#: part/models.py:2512 +#: part/models.py:2519 msgid "Part IPN" msgstr "" -#: part/models.py:2513 +#: part/models.py:2520 msgid "Part IPN value" msgstr "" -#: part/models.py:2516 +#: part/models.py:2523 msgid "Level" msgstr "" -#: part/models.py:2517 +#: part/models.py:2524 msgid "BOM level" msgstr "" -#: part/models.py:2586 +#: part/models.py:2593 msgid "Select parent part" msgstr "" -#: part/models.py:2594 +#: part/models.py:2601 msgid "Sub part" msgstr "" -#: part/models.py:2595 +#: part/models.py:2602 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:2601 +#: part/models.py:2608 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:2603 part/templates/part/upload_bom.html:58 +#: part/models.py:2610 part/templates/part/upload_bom.html:58 #: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999 #: templates/js/translated/table_filters.js:100 msgid "Optional" msgstr "" -#: part/models.py:2603 +#: part/models.py:2610 msgid "This BOM item is optional" msgstr "" -#: part/models.py:2606 part/templates/part/upload_bom.html:55 +#: part/models.py:2613 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:2607 +#: part/models.py:2614 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:2610 +#: part/models.py:2617 msgid "BOM item reference" msgstr "" -#: part/models.py:2613 +#: part/models.py:2620 msgid "BOM item notes" msgstr "" -#: part/models.py:2615 +#: part/models.py:2622 msgid "Checksum" msgstr "" -#: part/models.py:2615 +#: part/models.py:2622 msgid "BOM line checksum" msgstr "" -#: part/models.py:2619 part/templates/part/upload_bom.html:57 +#: part/models.py:2626 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1016 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:96 msgid "Inherited" msgstr "" -#: part/models.py:2620 +#: part/models.py:2627 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:2625 part/templates/part/upload_bom.html:56 +#: part/models.py:2632 part/templates/part/upload_bom.html:56 #: templates/js/translated/bom.js:1008 msgid "Allow Variants" msgstr "" -#: part/models.py:2626 +#: part/models.py:2633 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:2704 stock/models.py:461 +#: part/models.py:2711 stock/models.py:468 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:2713 part/models.py:2715 +#: part/models.py:2720 part/models.py:2722 msgid "Sub part must be specified" msgstr "" -#: part/models.py:2820 +#: part/models.py:2827 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:2841 +#: part/models.py:2848 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:2854 +#: part/models.py:2861 msgid "Parent BOM item" msgstr "" -#: part/models.py:2862 +#: part/models.py:2869 msgid "Substitute part" msgstr "" -#: part/models.py:2877 +#: part/models.py:2884 msgid "Part 1" msgstr "" -#: part/models.py:2881 +#: part/models.py:2888 msgid "Part 2" msgstr "" -#: part/models.py:2881 +#: part/models.py:2888 msgid "Select Related Part" msgstr "" -#: part/models.py:2899 +#: part/models.py:2906 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:2903 +#: part/models.py:2910 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:152 part/serializers.py:183 stock/serializers.py:181 +#: part/serializers.py:154 part/serializers.py:185 stock/serializers.py:181 msgid "Purchase currency of this stock item" msgstr "" -#: part/serializers.py:812 +#: part/serializers.py:814 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:820 +#: part/serializers.py:822 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:821 +#: part/serializers.py:823 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:826 +#: part/serializers.py:828 msgid "Include Inherited" msgstr "" -#: part/serializers.py:827 +#: part/serializers.py:829 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:832 +#: part/serializers.py:834 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:833 +#: part/serializers.py:835 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:838 +#: part/serializers.py:840 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:839 +#: part/serializers.py:841 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:879 +#: part/serializers.py:881 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:880 +#: part/serializers.py:882 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:910 +#: part/serializers.py:912 msgid "No part column specified" msgstr "" -#: part/serializers.py:953 +#: part/serializers.py:955 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:956 +#: part/serializers.py:958 msgid "No matching part found" msgstr "" -#: part/serializers.py:959 +#: part/serializers.py:961 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:968 +#: part/serializers.py:970 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:976 +#: part/serializers.py:978 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:997 +#: part/serializers.py:999 msgid "At least one BOM item is required" msgstr "" @@ -4848,101 +4884,101 @@ msgstr "" msgid "Delete Items" msgstr "" -#: part/templates/part/category.html:28 part/templates/part/category.html:32 +#: part/templates/part/category.html:34 part/templates/part/category.html:38 msgid "You are subscribed to notifications for this category" msgstr "" -#: part/templates/part/category.html:36 +#: part/templates/part/category.html:42 msgid "Subscribe to notifications for this category" msgstr "" -#: part/templates/part/category.html:42 +#: part/templates/part/category.html:48 msgid "Category Actions" msgstr "" -#: part/templates/part/category.html:47 +#: part/templates/part/category.html:53 msgid "Edit category" msgstr "" -#: part/templates/part/category.html:48 +#: part/templates/part/category.html:54 msgid "Edit Category" msgstr "" -#: part/templates/part/category.html:52 +#: part/templates/part/category.html:58 msgid "Delete category" msgstr "" -#: part/templates/part/category.html:53 +#: part/templates/part/category.html:59 msgid "Delete Category" msgstr "" -#: part/templates/part/category.html:61 +#: part/templates/part/category.html:67 msgid "Create new part category" msgstr "" -#: part/templates/part/category.html:62 +#: part/templates/part/category.html:68 msgid "New Category" msgstr "" -#: part/templates/part/category.html:80 part/templates/part/category.html:93 +#: part/templates/part/category.html:86 part/templates/part/category.html:99 msgid "Category Path" msgstr "" -#: part/templates/part/category.html:94 +#: part/templates/part/category.html:100 msgid "Top level part category" msgstr "" -#: part/templates/part/category.html:114 part/templates/part/category.html:222 +#: part/templates/part/category.html:120 part/templates/part/category.html:228 #: part/templates/part/category_sidebar.html:7 msgid "Subcategories" msgstr "" -#: part/templates/part/category.html:119 +#: part/templates/part/category.html:125 msgid "Parts (Including subcategories)" msgstr "" -#: part/templates/part/category.html:157 +#: part/templates/part/category.html:163 msgid "Create new part" msgstr "" -#: part/templates/part/category.html:158 templates/js/translated/bom.js:367 +#: part/templates/part/category.html:164 templates/js/translated/bom.js:367 msgid "New Part" msgstr "" -#: part/templates/part/category.html:168 part/templates/part/detail.html:363 +#: part/templates/part/category.html:174 part/templates/part/detail.html:363 #: part/templates/part/detail.html:394 msgid "Options" msgstr "" -#: part/templates/part/category.html:172 +#: part/templates/part/category.html:178 msgid "Set category" msgstr "" -#: part/templates/part/category.html:173 +#: part/templates/part/category.html:179 msgid "Set Category" msgstr "" -#: part/templates/part/category.html:180 part/templates/part/category.html:181 +#: part/templates/part/category.html:186 part/templates/part/category.html:187 msgid "Print Labels" msgstr "" -#: part/templates/part/category.html:206 +#: part/templates/part/category.html:212 msgid "Part Parameters" msgstr "" -#: part/templates/part/category.html:320 +#: part/templates/part/category.html:327 msgid "Create Part Category" msgstr "" -#: part/templates/part/category.html:340 +#: part/templates/part/category.html:347 msgid "Create Part" msgstr "" -#: part/templates/part/category.html:343 +#: part/templates/part/category.html:350 msgid "Create another part after this one" msgstr "" -#: part/templates/part/category.html:344 +#: part/templates/part/category.html:351 msgid "Part created successfully" msgstr "" @@ -4950,7 +4986,7 @@ msgstr "" msgid "Import Parts" msgstr "" -#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:375 +#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:379 msgid "Duplicate Part" msgstr "" @@ -5172,19 +5208,19 @@ msgstr "" #: part/templates/part/part_base.html:43 #: stock/templates/stock/item_base.html:41 -#: stock/templates/stock/location.html:43 +#: stock/templates/stock/location.html:48 msgid "Barcode actions" msgstr "" #: part/templates/part/part_base.html:46 #: stock/templates/stock/item_base.html:45 -#: stock/templates/stock/location.html:45 templates/qr_button.html:1 +#: stock/templates/stock/location.html:50 templates/qr_button.html:1 msgid "Show QR Code" msgstr "" #: part/templates/part/part_base.html:49 #: stock/templates/stock/item_base.html:63 -#: stock/templates/stock/location.html:47 +#: stock/templates/stock/location.html:52 msgid "Print Label" msgstr "" @@ -5194,7 +5230,7 @@ msgstr "" #: part/templates/part/part_base.html:60 #: stock/templates/stock/item_base.html:116 -#: stock/templates/stock/location.html:56 +#: stock/templates/stock/location.html:61 msgid "Stock actions" msgstr "" @@ -5255,7 +5291,7 @@ msgstr "" #: templates/js/translated/company.js:624 #: templates/js/translated/company.js:884 #: templates/js/translated/model_renderers.js:204 -#: templates/js/translated/part.js:650 templates/js/translated/part.js:727 +#: templates/js/translated/part.js:654 templates/js/translated/part.js:731 msgid "Inactive" msgstr "" @@ -5289,9 +5325,9 @@ msgstr "" msgid "Can Build" msgstr "" -#: part/templates/part/part_base.html:238 templates/js/translated/part.js:589 -#: templates/js/translated/part.js:609 templates/js/translated/part.js:1302 -#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490 +#: part/templates/part/part_base.html:238 templates/js/translated/part.js:593 +#: templates/js/translated/part.js:613 templates/js/translated/part.js:1306 +#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1494 msgid "Building" msgstr "" @@ -5464,8 +5500,8 @@ msgstr "" msgid "No sale pice history available for this part." msgstr "" -#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:612 -#: templates/js/translated/part.js:1290 templates/js/translated/part.js:1494 +#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616 +#: templates/js/translated/part.js:1294 templates/js/translated/part.js:1498 msgid "No Stock" msgstr "" @@ -5630,51 +5666,55 @@ msgstr "" msgid "Allow sending of emails for event notifications" msgstr "" -#: plugin/models.py:32 +#: plugin/models.py:33 msgid "Plugin Metadata" msgstr "" -#: plugin/models.py:33 +#: plugin/models.py:34 msgid "JSON metadata field, for use by external plugins" msgstr "" -#: plugin/models.py:79 +#: plugin/models.py:80 msgid "Plugin Configuration" msgstr "" -#: plugin/models.py:80 +#: plugin/models.py:81 msgid "Plugin Configurations" msgstr "" -#: plugin/models.py:85 +#: plugin/models.py:86 msgid "Key" msgstr "" -#: plugin/models.py:86 +#: plugin/models.py:87 msgid "Key of plugin" msgstr "" -#: plugin/models.py:94 +#: plugin/models.py:95 msgid "PluginName of the plugin" msgstr "" -#: plugin/models.py:100 +#: plugin/models.py:101 msgid "Is the plugin active" msgstr "" -#: plugin/models.py:168 +#: plugin/models.py:158 +msgid "Sample plugin" +msgstr "" + +#: plugin/models.py:186 msgid "Plugin" msgstr "" -#: plugin/models.py:231 +#: plugin/models.py:249 msgid "Method" msgstr "" -#: plugin/plugin.py:228 +#: plugin/plugin.py:251 msgid "No author found" msgstr "" -#: plugin/plugin.py:240 +#: plugin/plugin.py:263 msgid "No date found" msgstr "" @@ -5746,12 +5786,12 @@ msgstr "" msgid "No valid objects provided to template" msgstr "" -#: report/api.py:216 report/api.py:257 +#: report/api.py:216 report/api.py:252 #, python-brace-format msgid "Template file '{template}' is missing or does not exist" msgstr "" -#: report/api.py:360 +#: report/api.py:355 msgid "Test report" msgstr "" @@ -5852,12 +5892,12 @@ msgid "Stock Item Test Report" msgstr "" #: report/templates/report/inventree_test_report_base.html:79 -#: stock/models.py:641 stock/templates/stock/item_base.html:322 +#: stock/models.py:648 stock/templates/stock/item_base.html:322 #: templates/js/translated/build.js:424 templates/js/translated/build.js:576 #: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673 #: templates/js/translated/model_renderers.js:118 #: templates/js/translated/order.js:118 templates/js/translated/order.js:3297 -#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:486 +#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490 msgid "Serial Number" msgstr "" @@ -5866,19 +5906,19 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report_base.html:93 -#: stock/models.py:2076 +#: stock/models.py:2083 msgid "Test" msgstr "" #: report/templates/report/inventree_test_report_base.html:94 -#: stock/models.py:2082 +#: stock/models.py:2089 msgid "Result" msgstr "" #: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:51 +#: templates/InvenTree/settings/plugin.html:53 #: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2459 +#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468 msgid "Date" msgstr "" @@ -5896,8 +5936,8 @@ msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report_base.html:137 -#: templates/js/translated/stock.js:606 templates/js/translated/stock.js:776 -#: templates/js/translated/stock.js:2708 +#: templates/js/translated/stock.js:610 templates/js/translated/stock.js:780 +#: templates/js/translated/stock.js:2717 msgid "Serial" msgstr "" @@ -5913,241 +5953,241 @@ msgstr "" msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" -#: stock/models.py:82 stock/models.py:732 +#: stock/models.py:89 stock/models.py:739 #: stock/templates/stock/item_base.html:252 msgid "Owner" msgstr "" -#: stock/models.py:83 stock/models.py:733 +#: stock/models.py:90 stock/models.py:740 msgid "Select Owner" msgstr "" -#: stock/models.py:435 +#: stock/models.py:442 msgid "StockItem with this serial number already exists" msgstr "" -#: stock/models.py:467 stock/serializers.py:95 +#: stock/models.py:474 stock/serializers.py:95 msgid "Stock item cannot be created for virtual parts" msgstr "" -#: stock/models.py:484 +#: stock/models.py:491 #, python-brace-format msgid "Part type ('{pf}') must be {pe}" msgstr "" -#: stock/models.py:494 stock/models.py:503 +#: stock/models.py:501 stock/models.py:510 msgid "Quantity must be 1 for item with a serial number" msgstr "" -#: stock/models.py:495 +#: stock/models.py:502 msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:517 +#: stock/models.py:524 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:523 +#: stock/models.py:530 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:537 +#: stock/models.py:544 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:583 +#: stock/models.py:590 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:593 +#: stock/models.py:600 msgid "Base part" msgstr "" -#: stock/models.py:601 +#: stock/models.py:608 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:608 stock/templates/stock/location.html:17 +#: stock/models.py:615 stock/templates/stock/location.html:17 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" msgstr "" -#: stock/models.py:611 +#: stock/models.py:618 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:618 +#: stock/models.py:625 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:624 stock/templates/stock/item_base.html:361 +#: stock/models.py:631 stock/templates/stock/item_base.html:361 msgid "Installed In" msgstr "" -#: stock/models.py:627 +#: stock/models.py:634 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:643 +#: stock/models.py:650 msgid "Serial number for this item" msgstr "" -#: stock/models.py:657 +#: stock/models.py:664 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:662 +#: stock/models.py:669 msgid "Stock Quantity" msgstr "" -#: stock/models.py:671 +#: stock/models.py:678 msgid "Source Build" msgstr "" -#: stock/models.py:673 +#: stock/models.py:680 msgid "Build for this stock item" msgstr "" -#: stock/models.py:684 +#: stock/models.py:691 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:687 +#: stock/models.py:694 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:693 +#: stock/models.py:700 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:699 stock/templates/stock/item_base.html:429 -#: templates/js/translated/stock.js:1879 +#: stock/models.py:706 stock/templates/stock/item_base.html:429 +#: templates/js/translated/stock.js:1883 msgid "Expiry Date" msgstr "" -#: stock/models.py:700 +#: stock/models.py:707 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:713 +#: stock/models.py:720 msgid "Delete on deplete" msgstr "" -#: stock/models.py:713 +#: stock/models.py:720 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:720 stock/templates/stock/item.html:132 +#: stock/models.py:727 stock/templates/stock/item.html:132 msgid "Stock Item Notes" msgstr "" -#: stock/models.py:728 +#: stock/models.py:735 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:756 +#: stock/models.py:763 msgid "Converted to part" msgstr "" -#: stock/models.py:1235 +#: stock/models.py:1242 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1241 +#: stock/models.py:1248 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1247 +#: stock/models.py:1254 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({n})" msgstr "" -#: stock/models.py:1250 +#: stock/models.py:1257 msgid "Serial numbers must be a list of integers" msgstr "" -#: stock/models.py:1253 +#: stock/models.py:1260 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1260 +#: stock/models.py:1267 #, python-brace-format msgid "Serial numbers already exist: {exists}" msgstr "" -#: stock/models.py:1330 +#: stock/models.py:1337 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1333 +#: stock/models.py:1340 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1336 +#: stock/models.py:1343 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1339 +#: stock/models.py:1346 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1342 +#: stock/models.py:1349 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1345 +#: stock/models.py:1352 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1352 stock/serializers.py:959 +#: stock/models.py:1359 stock/serializers.py:961 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1356 +#: stock/models.py:1363 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1360 +#: stock/models.py:1367 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1364 +#: stock/models.py:1371 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:1533 +#: stock/models.py:1540 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:1994 +#: stock/models.py:2001 msgid "Entry notes" msgstr "" -#: stock/models.py:2052 +#: stock/models.py:2059 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2058 +#: stock/models.py:2065 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2077 +#: stock/models.py:2084 msgid "Test name" msgstr "" -#: stock/models.py:2083 +#: stock/models.py:2090 msgid "Test result" msgstr "" -#: stock/models.py:2089 +#: stock/models.py:2096 msgid "Test output value" msgstr "" -#: stock/models.py:2096 +#: stock/models.py:2103 msgid "Test result attachment" msgstr "" -#: stock/models.py:2102 +#: stock/models.py:2109 msgid "Test notes" msgstr "" @@ -6172,7 +6212,7 @@ msgstr "" msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:323 stock/serializers.py:916 stock/serializers.py:1149 +#: stock/serializers.py:323 stock/serializers.py:918 stock/serializers.py:1151 msgid "Destination stock location" msgstr "" @@ -6220,63 +6260,63 @@ msgstr "" msgid "Destination location for returned item" msgstr "" -#: stock/serializers.py:771 +#: stock/serializers.py:773 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:775 +#: stock/serializers.py:777 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:779 +#: stock/serializers.py:781 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:810 +#: stock/serializers.py:812 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:816 +#: stock/serializers.py:818 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:824 +#: stock/serializers.py:826 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:834 stock/serializers.py:1065 +#: stock/serializers.py:836 stock/serializers.py:1067 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:923 +#: stock/serializers.py:925 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:928 +#: stock/serializers.py:930 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:929 +#: stock/serializers.py:931 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:934 +#: stock/serializers.py:936 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:935 +#: stock/serializers.py:937 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:945 +#: stock/serializers.py:947 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1027 +#: stock/serializers.py:1029 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1055 +#: stock/serializers.py:1057 msgid "Stock transaction notes" msgstr "" @@ -6313,7 +6353,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2852 +#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2861 msgid "Install Stock Item" msgstr "" @@ -6321,7 +6361,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1518 +#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1522 msgid "Add Test Result" msgstr "" @@ -6352,7 +6392,7 @@ msgid "Stock adjustment actions" msgstr "" #: stock/templates/stock/item_base.html:80 -#: stock/templates/stock/location.html:63 templates/stock_table.html:47 +#: stock/templates/stock/location.html:68 templates/stock_table.html:47 msgid "Count stock" msgstr "" @@ -6369,7 +6409,7 @@ msgid "Serialize stock" msgstr "" #: stock/templates/stock/item_base.html:93 -#: stock/templates/stock/location.html:69 templates/stock_table.html:48 +#: stock/templates/stock/location.html:74 templates/stock_table.html:48 msgid "Transfer stock" msgstr "" @@ -6430,7 +6470,7 @@ msgid "You are not in the list of owners of this item. This stock item cannot be msgstr "" #: stock/templates/stock/item_base.html:257 -#: stock/templates/stock/location.html:127 +#: stock/templates/stock/location.html:132 msgid "Read only" msgstr "" @@ -6508,7 +6548,7 @@ msgid "Stale" msgstr "" #: stock/templates/stock/item_base.html:442 -#: templates/js/translated/company.js:985 templates/js/translated/stock.js:1895 +#: templates/js/translated/company.js:985 templates/js/translated/stock.js:1899 msgid "Last Updated" msgstr "" @@ -6552,58 +6592,58 @@ msgstr "" msgid "Select quantity to serialize, and unique serial numbers." msgstr "" -#: stock/templates/stock/location.html:33 +#: stock/templates/stock/location.html:38 msgid "Locate stock location" msgstr "" -#: stock/templates/stock/location.html:49 +#: stock/templates/stock/location.html:54 msgid "Check-in Items" msgstr "" -#: stock/templates/stock/location.html:77 +#: stock/templates/stock/location.html:82 msgid "Location actions" msgstr "" -#: stock/templates/stock/location.html:79 +#: stock/templates/stock/location.html:84 msgid "Edit location" msgstr "" -#: stock/templates/stock/location.html:81 +#: stock/templates/stock/location.html:86 msgid "Delete location" msgstr "" -#: stock/templates/stock/location.html:90 +#: stock/templates/stock/location.html:95 msgid "Create new stock location" msgstr "" -#: stock/templates/stock/location.html:91 +#: stock/templates/stock/location.html:96 msgid "New Location" msgstr "" -#: stock/templates/stock/location.html:109 -#: stock/templates/stock/location.html:115 +#: stock/templates/stock/location.html:114 +#: stock/templates/stock/location.html:120 msgid "Location Path" msgstr "" -#: stock/templates/stock/location.html:116 +#: stock/templates/stock/location.html:121 msgid "Top level stock location" msgstr "" -#: stock/templates/stock/location.html:122 +#: stock/templates/stock/location.html:127 msgid "Location Owner" msgstr "" -#: stock/templates/stock/location.html:126 +#: stock/templates/stock/location.html:131 msgid "You are not in the list of owners of this location. This stock location cannot be edited." msgstr "" -#: stock/templates/stock/location.html:142 -#: stock/templates/stock/location.html:189 +#: stock/templates/stock/location.html:147 +#: stock/templates/stock/location.html:194 #: stock/templates/stock/location_sidebar.html:5 msgid "Sublocations" msgstr "" -#: stock/templates/stock/location.html:156 templates/InvenTree/search.html:165 +#: stock/templates/stock/location.html:161 templates/InvenTree/search.html:165 #: templates/js/translated/search.js:238 users/models.py:39 msgid "Stock Locations" msgstr "" @@ -6875,15 +6915,15 @@ msgstr "" msgid "Part Settings" msgstr "" -#: templates/InvenTree/settings/part.html:44 +#: templates/InvenTree/settings/part.html:46 msgid "Part Import" msgstr "" -#: templates/InvenTree/settings/part.html:48 +#: templates/InvenTree/settings/part.html:50 msgid "Import Part" msgstr "" -#: templates/InvenTree/settings/part.html:62 +#: templates/InvenTree/settings/part.html:64 msgid "Part Parameter Templates" msgstr "" @@ -6895,47 +6935,47 @@ msgstr "" msgid "Changing the settings below require you to immediately restart the server. Do not change this while under active usage." msgstr "" -#: templates/InvenTree/settings/plugin.html:34 +#: templates/InvenTree/settings/plugin.html:36 msgid "Plugins" msgstr "" -#: templates/InvenTree/settings/plugin.html:39 +#: templates/InvenTree/settings/plugin.html:41 #: templates/js/translated/plugin.js:16 msgid "Install Plugin" msgstr "" -#: templates/InvenTree/settings/plugin.html:48 templates/navbar.html:137 +#: templates/InvenTree/settings/plugin.html:50 templates/navbar.html:137 #: users/models.py:36 msgid "Admin" msgstr "" -#: templates/InvenTree/settings/plugin.html:50 +#: templates/InvenTree/settings/plugin.html:52 #: templates/InvenTree/settings/plugin_settings.html:28 msgid "Author" msgstr "" -#: templates/InvenTree/settings/plugin.html:52 +#: templates/InvenTree/settings/plugin.html:54 #: templates/InvenTree/settings/plugin_settings.html:43 msgid "Version" msgstr "" -#: templates/InvenTree/settings/plugin.html:74 +#: templates/InvenTree/settings/plugin.html:76 msgid "Sample" msgstr "" -#: templates/InvenTree/settings/plugin.html:99 +#: templates/InvenTree/settings/plugin.html:101 msgid "Inactive plugins" msgstr "" -#: templates/InvenTree/settings/plugin.html:122 +#: templates/InvenTree/settings/plugin.html:124 msgid "Plugin Error Stack" msgstr "" -#: templates/InvenTree/settings/plugin.html:131 +#: templates/InvenTree/settings/plugin.html:133 msgid "Stage" msgstr "" -#: templates/InvenTree/settings/plugin.html:133 +#: templates/InvenTree/settings/plugin.html:135 #: templates/js/translated/notification.js:75 msgid "Message" msgstr "" @@ -6999,11 +7039,11 @@ msgstr "" msgid "Commit Message" msgstr "" -#: templates/InvenTree/settings/plugin_settings.html:117 +#: templates/InvenTree/settings/plugin_settings.html:120 msgid "Sign Status" msgstr "" -#: templates/InvenTree/settings/plugin_settings.html:122 +#: templates/InvenTree/settings/plugin_settings.html:125 msgid "Sign Key" msgstr "" @@ -7828,7 +7868,7 @@ msgstr "" msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:456 templates/js/translated/stock.js:1050 +#: templates/js/translated/barcode.js:456 templates/js/translated/stock.js:1054 msgid "Remove stock item" msgstr "" @@ -8001,7 +8041,7 @@ msgid "Includes variant and substitute stock" msgstr "" #: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822 -#: templates/js/translated/part.js:759 +#: templates/js/translated/part.js:763 msgid "Includes variant stock" msgstr "" @@ -8098,12 +8138,12 @@ msgid "Complete Build Order" msgstr "" #: templates/js/translated/build.js:263 templates/js/translated/stock.js:92 -#: templates/js/translated/stock.js:210 +#: templates/js/translated/stock.js:214 msgid "Next available serial number" msgstr "" #: templates/js/translated/build.js:265 templates/js/translated/stock.js:94 -#: templates/js/translated/stock.js:212 +#: templates/js/translated/stock.js:216 msgid "Latest serial number" msgstr "" @@ -8316,9 +8356,9 @@ msgstr "" msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1383 -#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1682 -#: templates/js/translated/stock.js:2382 +#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387 +#: templates/js/translated/part.js:1899 templates/js/translated/stock.js:1686 +#: templates/js/translated/stock.js:2386 msgid "Select" msgstr "" @@ -8330,7 +8370,7 @@ msgstr "" msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2638 +#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647 msgid "No user information" msgstr "" @@ -8403,34 +8443,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:616 -#: templates/js/translated/company.js:876 templates/js/translated/part.js:634 -#: templates/js/translated/part.js:719 +#: templates/js/translated/company.js:876 templates/js/translated/part.js:638 +#: templates/js/translated/part.js:723 msgid "Template part" msgstr "" #: templates/js/translated/company.js:620 -#: templates/js/translated/company.js:880 templates/js/translated/part.js:638 -#: templates/js/translated/part.js:723 +#: templates/js/translated/company.js:880 templates/js/translated/part.js:642 +#: templates/js/translated/part.js:727 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:748 templates/js/translated/part.js:826 +#: templates/js/translated/company.js:748 templates/js/translated/part.js:830 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:785 templates/js/translated/part.js:868 +#: templates/js/translated/company.js:785 templates/js/translated/part.js:872 msgid "Edit parameter" msgstr "" -#: templates/js/translated/company.js:786 templates/js/translated/part.js:869 +#: templates/js/translated/company.js:786 templates/js/translated/part.js:873 msgid "Delete parameter" msgstr "" -#: templates/js/translated/company.js:805 templates/js/translated/part.js:886 +#: templates/js/translated/company.js:805 templates/js/translated/part.js:890 msgid "Edit Parameter" msgstr "" -#: templates/js/translated/company.js:816 templates/js/translated/part.js:898 +#: templates/js/translated/company.js:816 templates/js/translated/part.js:902 msgid "Delete Parameter" msgstr "" @@ -8555,7 +8595,7 @@ msgid "Labels sent to printer" msgstr "" #: templates/js/translated/label.js:60 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1078 msgid "Select Stock Items" msgstr "" @@ -8865,7 +8905,7 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2140 +#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144 msgid "Stock Status" msgstr "" @@ -8889,7 +8929,7 @@ msgstr "" msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:1672 templates/js/translated/part.js:939 +#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943 msgid "No purchase orders found" msgstr "" @@ -8924,7 +8964,7 @@ msgstr "" #: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203 #: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050 -#: templates/js/translated/part.js:2126 templates/js/translated/part.js:2479 +#: templates/js/translated/part.js:2135 templates/js/translated/part.js:2488 msgid "Unit Price" msgstr "" @@ -8934,11 +8974,11 @@ msgid "Total Price" msgstr "" #: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600 -#: templates/js/translated/part.js:1046 +#: templates/js/translated/part.js:1050 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1092 +#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096 msgid "Receive line item" msgstr "" @@ -9059,7 +9099,7 @@ msgid "Delete Stock Allocation" msgstr "" #: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398 -#: templates/js/translated/stock.js:1598 +#: templates/js/translated/stock.js:1602 msgid "Shipped to customer" msgstr "" @@ -9183,241 +9223,245 @@ msgstr "" msgid "Parent part category" msgstr "" -#: templates/js/translated/part.js:318 +#: templates/js/translated/part.js:306 templates/js/translated/stock.js:118 +msgid "Icon (optional) - Explore all available icons on" +msgstr "" + +#: templates/js/translated/part.js:322 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:331 +#: templates/js/translated/part.js:335 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:333 +#: templates/js/translated/part.js:337 msgid "Any child categories will be moved to the parent of this category" msgstr "" -#: templates/js/translated/part.js:334 +#: templates/js/translated/part.js:338 msgid "Any parts in this category will be moved to the parent of this category" msgstr "" -#: templates/js/translated/part.js:339 +#: templates/js/translated/part.js:343 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:365 +#: templates/js/translated/part.js:369 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:367 +#: templates/js/translated/part.js:371 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:378 +#: templates/js/translated/part.js:382 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:430 +#: templates/js/translated/part.js:434 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:431 +#: templates/js/translated/part.js:435 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:445 +#: templates/js/translated/part.js:449 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:447 +#: templates/js/translated/part.js:451 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:448 +#: templates/js/translated/part.js:452 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:449 +#: templates/js/translated/part.js:453 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:456 +#: templates/js/translated/part.js:460 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:492 +#: templates/js/translated/part.js:496 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:494 +#: templates/js/translated/part.js:498 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:499 +#: templates/js/translated/part.js:503 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:501 +#: templates/js/translated/part.js:505 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:518 +#: templates/js/translated/part.js:522 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:528 +#: templates/js/translated/part.js:532 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:531 +#: templates/js/translated/part.js:535 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:556 +#: templates/js/translated/part.js:560 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:582 templates/js/translated/part.js:1466 +#: templates/js/translated/part.js:586 templates/js/translated/part.js:1470 #: templates/js/translated/table_filters.js:468 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:592 templates/js/translated/part.js:1478 +#: templates/js/translated/part.js:596 templates/js/translated/part.js:1482 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:626 templates/js/translated/part.js:711 +#: templates/js/translated/part.js:630 templates/js/translated/part.js:715 msgid "Trackable part" msgstr "" -#: templates/js/translated/part.js:630 templates/js/translated/part.js:715 +#: templates/js/translated/part.js:634 templates/js/translated/part.js:719 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:642 +#: templates/js/translated/part.js:646 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:646 +#: templates/js/translated/part.js:650 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:774 +#: templates/js/translated/part.js:778 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1162 +#: templates/js/translated/part.js:1166 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1186 +#: templates/js/translated/part.js:1190 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:1253 templates/js/translated/part.js:1549 +#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1553 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:1292 +#: templates/js/translated/part.js:1296 msgid "Not available" msgstr "" -#: templates/js/translated/part.js:1443 +#: templates/js/translated/part.js:1447 msgid "No category" msgstr "" -#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816 -#: templates/js/translated/stock.js:2343 +#: templates/js/translated/part.js:1577 templates/js/translated/part.js:1820 +#: templates/js/translated/stock.js:2347 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:1589 +#: templates/js/translated/part.js:1593 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:1655 +#: templates/js/translated/part.js:1659 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:1660 +#: templates/js/translated/part.js:1664 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:1665 +#: templates/js/translated/part.js:1669 msgid "Select Part Category" msgstr "" -#: templates/js/translated/part.js:1678 +#: templates/js/translated/part.js:1682 msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2362 +#: templates/js/translated/part.js:1839 templates/js/translated/stock.js:2366 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:1914 +#: templates/js/translated/part.js:1918 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:1925 +#: templates/js/translated/part.js:1934 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:1983 +#: templates/js/translated/part.js:1992 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2034 templates/js/translated/stock.js:1295 +#: templates/js/translated/part.js:2043 templates/js/translated/stock.js:1299 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:2035 templates/js/translated/stock.js:1296 -#: templates/js/translated/stock.js:1556 +#: templates/js/translated/part.js:2044 templates/js/translated/stock.js:1300 +#: templates/js/translated/stock.js:1560 msgid "Delete test result" msgstr "" -#: templates/js/translated/part.js:2041 +#: templates/js/translated/part.js:2050 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2063 +#: templates/js/translated/part.js:2072 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2077 +#: templates/js/translated/part.js:2086 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2102 +#: templates/js/translated/part.js:2111 #, python-brace-format msgid "No ${human_name} information found" msgstr "" -#: templates/js/translated/part.js:2159 +#: templates/js/translated/part.js:2168 #, python-brace-format msgid "Edit ${human_name}" msgstr "" -#: templates/js/translated/part.js:2160 +#: templates/js/translated/part.js:2169 #, python-brace-format msgid "Delete ${human_name}" msgstr "" -#: templates/js/translated/part.js:2274 +#: templates/js/translated/part.js:2283 msgid "Current Stock" msgstr "" -#: templates/js/translated/part.js:2307 +#: templates/js/translated/part.js:2316 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2333 +#: templates/js/translated/part.js:2342 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2403 +#: templates/js/translated/part.js:2412 msgid "Single Price" msgstr "" -#: templates/js/translated/part.js:2422 +#: templates/js/translated/part.js:2431 msgid "Single Price Difference" msgstr "" @@ -9511,376 +9555,376 @@ msgstr "" msgid "Parent stock location" msgstr "" -#: templates/js/translated/stock.js:140 +#: templates/js/translated/stock.js:144 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:155 +#: templates/js/translated/stock.js:159 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:169 +#: templates/js/translated/stock.js:173 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:171 +#: templates/js/translated/stock.js:175 msgid "Any child locations will be moved to the parent of this location" msgstr "" -#: templates/js/translated/stock.js:172 +#: templates/js/translated/stock.js:176 msgid "Any stock items in this location will be moved to the parent of this location" msgstr "" -#: templates/js/translated/stock.js:178 +#: templates/js/translated/stock.js:182 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:223 +#: templates/js/translated/stock.js:227 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:262 +#: templates/js/translated/stock.js:266 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:268 +#: templates/js/translated/stock.js:272 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:333 +#: templates/js/translated/stock.js:337 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:353 +#: templates/js/translated/stock.js:357 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:369 +#: templates/js/translated/stock.js:373 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:374 +#: templates/js/translated/stock.js:378 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:395 +#: templates/js/translated/stock.js:399 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:445 +#: templates/js/translated/stock.js:449 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:458 +#: templates/js/translated/stock.js:462 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:483 +#: templates/js/translated/stock.js:487 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:487 templates/js/translated/stock.js:488 +#: templates/js/translated/stock.js:491 templates/js/translated/stock.js:492 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:504 +#: templates/js/translated/stock.js:508 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:524 +#: templates/js/translated/stock.js:528 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:533 +#: templates/js/translated/stock.js:537 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:656 +#: templates/js/translated/stock.js:660 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:657 +#: templates/js/translated/stock.js:661 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:734 +#: templates/js/translated/stock.js:738 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:735 +#: templates/js/translated/stock.js:739 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:737 +#: templates/js/translated/stock.js:741 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:738 +#: templates/js/translated/stock.js:742 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:824 +#: templates/js/translated/stock.js:828 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:825 +#: templates/js/translated/stock.js:829 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:920 +#: templates/js/translated/stock.js:924 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:921 +#: templates/js/translated/stock.js:925 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:927 +#: templates/js/translated/stock.js:931 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:928 +#: templates/js/translated/stock.js:932 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:932 +#: templates/js/translated/stock.js:936 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:933 +#: templates/js/translated/stock.js:937 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:937 +#: templates/js/translated/stock.js:941 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:938 users/models.py:216 +#: templates/js/translated/stock.js:942 users/models.py:216 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:942 +#: templates/js/translated/stock.js:946 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1035 +#: templates/js/translated/stock.js:1039 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1035 +#: templates/js/translated/stock.js:1039 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1075 +#: templates/js/translated/stock.js:1079 msgid "You must select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1098 +#: templates/js/translated/stock.js:1102 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1234 +#: templates/js/translated/stock.js:1238 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1236 +#: templates/js/translated/stock.js:1240 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1241 +#: templates/js/translated/stock.js:1245 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1288 +#: templates/js/translated/stock.js:1292 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1291 +#: templates/js/translated/stock.js:1295 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1317 +#: templates/js/translated/stock.js:1321 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1374 +#: templates/js/translated/stock.js:1378 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1539 +#: templates/js/translated/stock.js:1543 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1561 +#: templates/js/translated/stock.js:1565 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1590 +#: templates/js/translated/stock.js:1594 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1594 +#: templates/js/translated/stock.js:1598 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1602 +#: templates/js/translated/stock.js:1606 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1608 +#: templates/js/translated/stock.js:1612 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1775 +#: templates/js/translated/stock.js:1779 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:1780 +#: templates/js/translated/stock.js:1784 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:1783 +#: templates/js/translated/stock.js:1787 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:1786 +#: templates/js/translated/stock.js:1790 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:1788 +#: templates/js/translated/stock.js:1792 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:1790 +#: templates/js/translated/stock.js:1794 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:1793 +#: templates/js/translated/stock.js:1797 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:1797 +#: templates/js/translated/stock.js:1801 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:1799 +#: templates/js/translated/stock.js:1803 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:1806 +#: templates/js/translated/stock.js:1810 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:1808 +#: templates/js/translated/stock.js:1812 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:1810 +#: templates/js/translated/stock.js:1814 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:1814 +#: templates/js/translated/stock.js:1818 #: templates/js/translated/table_filters.js:196 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:1865 +#: templates/js/translated/stock.js:1869 msgid "Stocktake" msgstr "" -#: templates/js/translated/stock.js:1944 +#: templates/js/translated/stock.js:1948 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:1982 +#: templates/js/translated/stock.js:1986 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2155 +#: templates/js/translated/stock.js:2159 msgid "Set Stock Status" msgstr "" -#: templates/js/translated/stock.js:2169 +#: templates/js/translated/stock.js:2173 msgid "Select Status Code" msgstr "" -#: templates/js/translated/stock.js:2170 +#: templates/js/translated/stock.js:2174 msgid "Status code must be selected" msgstr "" -#: templates/js/translated/stock.js:2400 +#: templates/js/translated/stock.js:2404 msgid "Load Subloactions" msgstr "" -#: templates/js/translated/stock.js:2484 +#: templates/js/translated/stock.js:2493 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2500 +#: templates/js/translated/stock.js:2509 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2522 +#: templates/js/translated/stock.js:2531 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2541 +#: templates/js/translated/stock.js:2550 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2560 +#: templates/js/translated/stock.js:2569 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2578 +#: templates/js/translated/stock.js:2587 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:2601 +#: templates/js/translated/stock.js:2610 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:2609 +#: templates/js/translated/stock.js:2618 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:2685 +#: templates/js/translated/stock.js:2694 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:2736 templates/js/translated/stock.js:2772 +#: templates/js/translated/stock.js:2745 templates/js/translated/stock.js:2781 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:2785 +#: templates/js/translated/stock.js:2794 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:2806 +#: templates/js/translated/stock.js:2815 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:2807 +#: templates/js/translated/stock.js:2816 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:2809 +#: templates/js/translated/stock.js:2818 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:2810 +#: templates/js/translated/stock.js:2819 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:2811 +#: templates/js/translated/stock.js:2820 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:2812 +#: templates/js/translated/stock.js:2821 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:2825 +#: templates/js/translated/stock.js:2834 msgid "Select part to install" msgstr "" diff --git a/InvenTree/locale/th/LC_MESSAGES/django.po b/InvenTree/locale/th/LC_MESSAGES/django.po index 15ed01d3e4..888242433d 100644 --- a/InvenTree/locale/th/LC_MESSAGES/django.po +++ b/InvenTree/locale/th/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-11 02:47+0000\n" -"PO-Revision-Date: 2022-08-11 13:49\n" +"POT-Creation-Date: 2022-08-16 11:53+0000\n" +"PO-Revision-Date: 2022-08-16 21:36\n" "Last-Translator: \n" "Language-Team: Thai\n" "Language: th_TH\n" @@ -36,15 +36,15 @@ msgstr "" #: order/templates/order/so_sidebar.html:17 #: part/templates/part/part_sidebar.html:59 #: report/templates/report/inventree_build_order_base.html:172 -#: stock/models.py:1993 stock/models.py:2101 stock/serializers.py:329 -#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:823 -#: stock/serializers.py:922 stock/serializers.py:1054 +#: stock/models.py:2000 stock/models.py:2108 stock/serializers.py:329 +#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825 +#: stock/serializers.py:924 stock/serializers.py:1056 #: stock/templates/stock/stock_sidebar.html:25 #: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101 #: templates/js/translated/company.js:964 templates/js/translated/order.js:2104 #: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753 #: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102 -#: templates/js/translated/stock.js:1370 templates/js/translated/stock.js:1976 +#: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980 msgid "Notes" msgstr "" @@ -163,6 +163,10 @@ msgstr "" msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "" +#: InvenTree/mixins.py:71 +msgid "Remove HTML tags from this value" +msgstr "" + #: InvenTree/models.py:236 msgid "Improperly formatted pattern" msgstr "" @@ -195,7 +199,7 @@ msgstr "" msgid "Missing external link" msgstr "" -#: InvenTree/models.py:395 stock/models.py:2095 +#: InvenTree/models.py:395 stock/models.py:2102 #: templates/js/translated/attachment.js:103 #: templates/js/translated/attachment.js:241 msgid "Attachment" @@ -207,16 +211,16 @@ msgstr "" #: InvenTree/models.py:402 company/models.py:124 company/models.py:276 #: company/models.py:510 order/models.py:84 order/models.py:1245 -#: part/models.py:795 +#: part/models.py:802 #: report/templates/report/inventree_build_order_base.html:164 #: templates/js/translated/company.js:656 #: templates/js/translated/company.js:948 templates/js/translated/order.js:2742 -#: templates/js/translated/part.js:1510 +#: templates/js/translated/part.js:1514 msgid "Link" msgstr "" -#: InvenTree/models.py:403 build/models.py:296 part/models.py:796 -#: stock/models.py:651 +#: InvenTree/models.py:403 build/models.py:296 part/models.py:803 +#: stock/models.py:658 msgid "Link to external URL" msgstr "" @@ -229,12 +233,12 @@ msgstr "" msgid "File comment" msgstr "" -#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1646 -#: common/models.py:1647 common/models.py:1870 common/models.py:1871 -#: common/models.py:2133 common/models.py:2134 part/models.py:2193 -#: part/models.py:2213 plugin/models.py:238 plugin/models.py:239 +#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665 +#: common/models.py:1666 common/models.py:1889 common/models.py:1890 +#: common/models.py:2152 common/models.py:2153 part/models.py:2200 +#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2632 +#: templates/js/translated/stock.js:2641 msgid "User" msgstr "" @@ -271,19 +275,19 @@ msgstr "" msgid "Invalid choice" msgstr "" -#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1856 -#: company/models.py:358 label/models.py:101 part/models.py:739 -#: part/models.py:2371 plugin/models.py:93 report/models.py:152 +#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875 +#: company/models.py:358 label/models.py:101 part/models.py:746 +#: part/models.py:2378 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 -#: templates/InvenTree/settings/plugin.html:49 -#: templates/InvenTree/settings/plugin.html:132 +#: templates/InvenTree/settings/plugin.html:51 +#: templates/InvenTree/settings/plugin.html:134 #: templates/InvenTree/settings/plugin_settings.html:23 #: templates/InvenTree/settings/settings.html:347 #: templates/js/translated/company.js:545 #: templates/js/translated/company.js:758 #: templates/js/translated/notification.js:71 -#: templates/js/translated/part.js:684 templates/js/translated/part.js:836 -#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2388 +#: templates/js/translated/part.js:688 templates/js/translated/part.js:840 +#: templates/js/translated/part.js:1906 templates/js/translated/stock.js:2392 msgid "Name" msgstr "" @@ -292,21 +296,21 @@ msgstr "" #: company/models.py:516 company/templates/company/company_base.html:71 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:87 label/models.py:108 -#: order/models.py:82 part/models.py:762 part/templates/part/category.html:74 +#: order/models.py:82 part/models.py:769 part/templates/part/category.html:80 #: part/templates/part/part_base.html:167 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 -#: stock/templates/stock/location.html:103 +#: stock/templates/stock/location.html:108 #: templates/InvenTree/settings/plugin_settings.html:33 #: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848 #: templates/js/translated/build.js:2471 templates/js/translated/company.js:409 #: templates/js/translated/company.js:667 #: templates/js/translated/company.js:959 templates/js/translated/order.js:1720 #: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531 -#: templates/js/translated/part.js:743 templates/js/translated/part.js:1149 -#: templates/js/translated/part.js:1424 templates/js/translated/part.js:1933 -#: templates/js/translated/part.js:2002 templates/js/translated/stock.js:1739 -#: templates/js/translated/stock.js:2415 templates/js/translated/stock.js:2469 +#: templates/js/translated/part.js:747 templates/js/translated/part.js:1153 +#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1942 +#: templates/js/translated/part.js:2011 templates/js/translated/stock.js:1743 +#: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478 msgid "Description" msgstr "" @@ -319,7 +323,7 @@ msgid "parent" msgstr "" #: InvenTree/models.py:560 InvenTree/models.py:561 -#: templates/js/translated/part.js:1939 templates/js/translated/stock.js:2421 +#: templates/js/translated/part.js:1948 templates/js/translated/stock.js:2430 msgid "Path" msgstr "" @@ -331,7 +335,7 @@ msgstr "" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:55 part/models.py:2692 +#: InvenTree/serializers.py:55 part/models.py:2699 msgid "Must be a valid number" msgstr "" @@ -398,99 +402,99 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/settings.py:609 +#: InvenTree/settings.py:607 msgid "Czech" msgstr "" -#: InvenTree/settings.py:610 +#: InvenTree/settings.py:608 msgid "German" msgstr "" -#: InvenTree/settings.py:611 +#: InvenTree/settings.py:609 msgid "Greek" msgstr "" -#: InvenTree/settings.py:612 +#: InvenTree/settings.py:610 msgid "English" msgstr "" -#: InvenTree/settings.py:613 +#: InvenTree/settings.py:611 msgid "Spanish" msgstr "" -#: InvenTree/settings.py:614 +#: InvenTree/settings.py:612 msgid "Spanish (Mexican)" msgstr "" -#: InvenTree/settings.py:615 +#: InvenTree/settings.py:613 msgid "Farsi / Persian" msgstr "" -#: InvenTree/settings.py:616 +#: InvenTree/settings.py:614 msgid "French" msgstr "" -#: InvenTree/settings.py:617 +#: InvenTree/settings.py:615 msgid "Hebrew" msgstr "" -#: InvenTree/settings.py:618 +#: InvenTree/settings.py:616 msgid "Hungarian" msgstr "" -#: InvenTree/settings.py:619 +#: InvenTree/settings.py:617 msgid "Italian" msgstr "" -#: InvenTree/settings.py:620 +#: InvenTree/settings.py:618 msgid "Japanese" msgstr "" -#: InvenTree/settings.py:621 +#: InvenTree/settings.py:619 msgid "Korean" msgstr "" -#: InvenTree/settings.py:622 +#: InvenTree/settings.py:620 msgid "Dutch" msgstr "" -#: InvenTree/settings.py:623 +#: InvenTree/settings.py:621 msgid "Norwegian" msgstr "" -#: InvenTree/settings.py:624 +#: InvenTree/settings.py:622 msgid "Polish" msgstr "" -#: InvenTree/settings.py:625 +#: InvenTree/settings.py:623 msgid "Portuguese" msgstr "" -#: InvenTree/settings.py:626 +#: InvenTree/settings.py:624 msgid "Portuguese (Brazilian)" msgstr "" -#: InvenTree/settings.py:627 +#: InvenTree/settings.py:625 msgid "Russian" msgstr "" -#: InvenTree/settings.py:628 +#: InvenTree/settings.py:626 msgid "Swedish" msgstr "" -#: InvenTree/settings.py:629 +#: InvenTree/settings.py:627 msgid "Thai" msgstr "" -#: InvenTree/settings.py:630 +#: InvenTree/settings.py:628 msgid "Turkish" msgstr "" -#: InvenTree/settings.py:631 +#: InvenTree/settings.py:629 msgid "Vietnamese" msgstr "" -#: InvenTree/settings.py:632 +#: InvenTree/settings.py:630 msgid "Chinese" msgstr "" @@ -621,7 +625,7 @@ msgstr "" msgid "Split child item" msgstr "" -#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2080 +#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2084 msgid "Merged stock items" msgstr "" @@ -743,7 +747,7 @@ msgid "Build Order Reference" msgstr "" #: build/models.py:166 order/models.py:240 order/models.py:623 -#: order/models.py:904 part/models.py:2610 +#: order/models.py:904 part/models.py:2617 #: part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 @@ -770,10 +774,10 @@ msgstr "" #: build/models.py:191 build/templates/build/build_base.html:77 #: build/templates/build/detail.html:29 company/models.py:670 #: order/models.py:1001 order/models.py:1112 order/models.py:1113 -#: part/models.py:336 part/models.py:2139 part/models.py:2154 -#: part/models.py:2173 part/models.py:2191 part/models.py:2290 -#: part/models.py:2410 part/models.py:2500 part/models.py:2585 -#: part/models.py:2861 part/serializers.py:811 +#: part/models.py:343 part/models.py:2146 part/models.py:2161 +#: part/models.py:2180 part/models.py:2198 part/models.py:2297 +#: part/models.py:2417 part/models.py:2507 part/models.py:2592 +#: part/models.py:2868 part/serializers.py:813 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -796,11 +800,11 @@ msgstr "" #: templates/js/translated/order.js:934 templates/js/translated/order.js:1387 #: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885 #: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507 -#: templates/js/translated/part.js:1134 templates/js/translated/part.js:1206 -#: templates/js/translated/part.js:1402 templates/js/translated/stock.js:582 -#: templates/js/translated/stock.js:747 templates/js/translated/stock.js:954 -#: templates/js/translated/stock.js:1696 templates/js/translated/stock.js:2495 -#: templates/js/translated/stock.js:2690 templates/js/translated/stock.js:2824 +#: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210 +#: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586 +#: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958 +#: templates/js/translated/stock.js:1700 templates/js/translated/stock.js:2504 +#: templates/js/translated/stock.js:2699 templates/js/translated/stock.js:2833 msgid "Part" msgstr "" @@ -858,7 +862,7 @@ msgid "Build status code" msgstr "" #: build/models.py:251 build/serializers.py:225 order/serializers.py:447 -#: stock/models.py:655 templates/js/translated/order.js:1247 +#: stock/models.py:662 templates/js/translated/order.js:1247 msgid "Batch Code" msgstr "" @@ -866,7 +870,7 @@ msgstr "" msgid "Batch code for this build output" msgstr "" -#: build/models.py:258 order/models.py:86 part/models.py:931 +#: build/models.py:258 order/models.py:86 part/models.py:938 #: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544 msgid "Creation Date" msgstr "" @@ -899,7 +903,7 @@ msgstr "" #: build/models.py:289 build/templates/build/build_base.html:190 #: build/templates/build/detail.html:115 order/models.py:100 #: order/templates/order/order_base.html:176 -#: order/templates/order/sales_order_base.html:183 part/models.py:935 +#: order/templates/order/sales_order_base.html:183 part/models.py:942 #: report/templates/report/inventree_build_order_base.html:158 #: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754 msgid "Responsible" @@ -912,7 +916,7 @@ msgstr "" #: build/models.py:295 build/templates/build/detail.html:101 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:153 -#: part/templates/part/part_base.html:346 stock/models.py:649 +#: part/templates/part/part_base.html:346 stock/models.py:656 #: stock/templates/stock/item_base.html:205 msgid "External Link" msgstr "" @@ -978,8 +982,8 @@ msgid "Build to allocate parts" msgstr "" #: build/models.py:1345 build/serializers.py:645 order/serializers.py:1015 -#: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 -#: stock/serializers.py:880 stock/templates/stock/item_base.html:10 +#: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:756 +#: stock/serializers.py:882 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:199 #: templates/js/translated/build.js:741 templates/js/translated/build.js:746 @@ -987,8 +991,8 @@ msgstr "" #: templates/js/translated/order.js:104 templates/js/translated/order.js:2886 #: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193 #: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380 -#: templates/js/translated/stock.js:583 templates/js/translated/stock.js:748 -#: templates/js/translated/stock.js:2568 +#: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752 +#: templates/js/translated/stock.js:2577 msgid "Stock Item" msgstr "" @@ -998,11 +1002,11 @@ msgstr "" #: build/models.py:1358 build/serializers.py:193 #: build/templates/build/build_base.html:82 -#: build/templates/build/detail.html:34 common/models.py:1678 +#: build/templates/build/detail.html:34 common/models.py:1697 #: company/templates/company/supplier_part.html:279 order/models.py:897 #: order/models.py:1423 order/serializers.py:1155 #: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40 -#: part/models.py:2601 part/templates/part/detail.html:937 +#: part/models.py:2608 part/templates/part/detail.html:937 #: part/templates/part/detail.html:1023 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 @@ -1025,11 +1029,11 @@ msgstr "" #: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207 #: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386 #: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037 -#: templates/js/translated/part.js:1034 templates/js/translated/part.js:2147 -#: templates/js/translated/part.js:2378 templates/js/translated/part.js:2412 -#: templates/js/translated/part.js:2490 templates/js/translated/stock.js:454 -#: templates/js/translated/stock.js:608 templates/js/translated/stock.js:778 -#: templates/js/translated/stock.js:2617 templates/js/translated/stock.js:2702 +#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2156 +#: templates/js/translated/part.js:2387 templates/js/translated/part.js:2421 +#: templates/js/translated/part.js:2499 templates/js/translated/stock.js:458 +#: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782 +#: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711 msgid "Quantity" msgstr "" @@ -1071,8 +1075,8 @@ msgid "Enter quantity for build output" msgstr "" #: build/serializers.py:208 build/serializers.py:665 order/models.py:318 -#: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 -#: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 +#: order/serializers.py:287 order/serializers.py:442 part/serializers.py:544 +#: part/serializers.py:976 stock/models.py:484 stock/models.py:1251 #: stock/serializers.py:302 msgid "Quantity must be greater than zero" msgstr "" @@ -1087,7 +1091,7 @@ msgstr "" #: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159 #: stock/serializers.py:311 templates/js/translated/order.js:1258 -#: templates/js/translated/stock.js:267 templates/js/translated/stock.js:455 +#: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459 msgid "Serial Numbers" msgstr "" @@ -1113,16 +1117,16 @@ msgstr "" #: build/serializers.py:366 order/serializers.py:428 order/serializers.py:532 #: stock/serializers.py:322 stock/serializers.py:453 stock/serializers.py:534 -#: stock/serializers.py:915 stock/serializers.py:1148 +#: stock/serializers.py:917 stock/serializers.py:1150 #: stock/templates/stock/item_base.html:390 #: templates/js/translated/barcode.js:436 #: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753 #: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285 #: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305 #: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394 -#: templates/js/translated/part.js:181 templates/js/translated/stock.js:584 -#: templates/js/translated/stock.js:749 templates/js/translated/stock.js:956 -#: templates/js/translated/stock.js:1850 templates/js/translated/stock.js:2509 +#: templates/js/translated/part.js:181 templates/js/translated/stock.js:588 +#: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960 +#: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518 msgid "Location" msgstr "" @@ -1135,8 +1139,8 @@ msgstr "" #: order/serializers.py:465 stock/templates/stock/item_base.html:423 #: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505 #: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724 -#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1825 -#: templates/js/translated/stock.js:2586 templates/js/translated/stock.js:2718 +#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829 +#: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727 msgid "Status" msgstr "" @@ -1212,8 +1216,8 @@ msgstr "" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:577 build/serializers.py:622 part/models.py:2719 -#: part/models.py:2853 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726 +#: part/models.py:2860 msgid "BOM Item" msgstr "" @@ -1229,7 +1233,7 @@ msgstr "" msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:651 stock/serializers.py:767 +#: build/serializers.py:651 stock/serializers.py:769 msgid "Item must be in stock" msgstr "" @@ -1367,7 +1371,7 @@ msgstr "" #: report/templates/report/inventree_build_order_base.html:125 #: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741 #: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552 -#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1038 +#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042 msgid "Target Date" msgstr "" @@ -1445,8 +1449,8 @@ msgstr "" #: stock/templates/stock/item_base.html:170 #: templates/js/translated/build.js:1182 #: templates/js/translated/model_renderers.js:124 -#: templates/js/translated/stock.js:1022 templates/js/translated/stock.js:1839 -#: templates/js/translated/stock.js:2725 +#: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843 +#: templates/js/translated/stock.js:2734 #: templates/js/translated/table_filters.js:159 #: templates/js/translated/table_filters.js:250 msgid "Batch" @@ -1506,7 +1510,7 @@ msgstr "" #: build/templates/build/detail.html:187 #: company/templates/company/detail.html:37 #: company/templates/company/detail.html:85 -#: part/templates/part/category.html:177 templates/js/translated/order.js:977 +#: part/templates/part/category.html:183 templates/js/translated/order.js:977 msgid "Order Parts" msgstr "" @@ -1559,12 +1563,12 @@ msgid "Delete outputs" msgstr "" #: build/templates/build/detail.html:267 -#: stock/templates/stock/location.html:197 templates/stock_table.html:27 +#: stock/templates/stock/location.html:202 templates/stock_table.html:27 msgid "Printing Actions" msgstr "" #: build/templates/build/detail.html:271 build/templates/build/detail.html:272 -#: stock/templates/stock/location.html:201 templates/stock_table.html:31 +#: stock/templates/stock/location.html:206 templates/stock_table.html:31 msgid "Print labels" msgstr "" @@ -1841,7 +1845,7 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:951 part/models.py:2412 report/models.py:158 +#: common/models.py:951 part/models.py:2419 report/models.py:158 #: templates/js/translated/table_filters.js:38 #: templates/js/translated/table_filters.js:484 msgid "Template" @@ -1851,7 +1855,7 @@ msgstr "" msgid "Parts are templates by default" msgstr "" -#: common/models.py:958 part/models.py:887 templates/js/translated/bom.js:1448 +#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448 #: templates/js/translated/table_filters.js:176 #: templates/js/translated/table_filters.js:447 msgid "Assembly" @@ -1861,7 +1865,7 @@ msgstr "" msgid "Parts can be assembled from other components by default" msgstr "" -#: common/models.py:965 part/models.py:893 +#: common/models.py:965 part/models.py:900 #: templates/js/translated/table_filters.js:455 msgid "Component" msgstr "" @@ -1870,7 +1874,7 @@ msgstr "" msgid "Parts can be used as sub-components by default" msgstr "" -#: common/models.py:972 part/models.py:904 +#: common/models.py:972 part/models.py:911 msgid "Purchaseable" msgstr "" @@ -1878,7 +1882,7 @@ msgstr "" msgid "Parts are purchaseable by default" msgstr "" -#: common/models.py:979 part/models.py:909 +#: common/models.py:979 part/models.py:916 #: templates/js/translated/table_filters.js:476 msgid "Salable" msgstr "" @@ -1887,7 +1891,7 @@ msgstr "" msgid "Parts are salable by default" msgstr "" -#: common/models.py:986 part/models.py:899 +#: common/models.py:986 part/models.py:906 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:108 #: templates/js/translated/table_filters.js:488 @@ -1898,7 +1902,7 @@ msgstr "" msgid "Parts are trackable by default" msgstr "" -#: common/models.py:993 part/models.py:919 +#: common/models.py:993 part/models.py:926 #: part/templates/part/part_base.html:151 #: templates/js/translated/table_filters.js:42 #: templates/js/translated/table_filters.js:492 @@ -1982,608 +1986,632 @@ msgid "Format to display the part name" msgstr "" #: common/models.py:1074 -msgid "Enable label printing" +msgid "Part Category Default Icon" msgstr "" #: common/models.py:1075 -msgid "Enable label printing from the web interface" +msgid "Part category default icon (empty means no icon)" +msgstr "" + +#: common/models.py:1080 +msgid "Enable label printing" msgstr "" #: common/models.py:1081 +msgid "Enable label printing from the web interface" +msgstr "" + +#: common/models.py:1087 msgid "Label Image DPI" msgstr "" -#: common/models.py:1082 +#: common/models.py:1088 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/models.py:1091 +#: common/models.py:1097 msgid "Enable Reports" msgstr "" -#: common/models.py:1092 +#: common/models.py:1098 msgid "Enable generation of reports" msgstr "" -#: common/models.py:1098 templates/stats.html:25 +#: common/models.py:1104 templates/stats.html:25 msgid "Debug Mode" msgstr "" -#: common/models.py:1099 +#: common/models.py:1105 msgid "Generate reports in debug mode (HTML output)" msgstr "" -#: common/models.py:1105 +#: common/models.py:1111 msgid "Page Size" msgstr "" -#: common/models.py:1106 +#: common/models.py:1112 msgid "Default page size for PDF reports" msgstr "" -#: common/models.py:1116 +#: common/models.py:1122 msgid "Enable Test Reports" msgstr "" -#: common/models.py:1117 +#: common/models.py:1123 msgid "Enable generation of test reports" msgstr "" -#: common/models.py:1123 +#: common/models.py:1129 msgid "Attach Test Reports" msgstr "" -#: common/models.py:1124 +#: common/models.py:1130 msgid "When printing a Test Report, attach a copy of the Test Report to the associated Stock Item" msgstr "" -#: common/models.py:1130 +#: common/models.py:1136 msgid "Batch Code Template" msgstr "" -#: common/models.py:1131 +#: common/models.py:1137 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/models.py:1136 +#: common/models.py:1142 msgid "Stock Expiry" msgstr "" -#: common/models.py:1137 +#: common/models.py:1143 msgid "Enable stock expiry functionality" msgstr "" -#: common/models.py:1143 +#: common/models.py:1149 msgid "Sell Expired Stock" msgstr "" -#: common/models.py:1144 +#: common/models.py:1150 msgid "Allow sale of expired stock" msgstr "" -#: common/models.py:1150 +#: common/models.py:1156 msgid "Stock Stale Time" msgstr "" -#: common/models.py:1151 +#: common/models.py:1157 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/models.py:1153 +#: common/models.py:1159 msgid "days" msgstr "" -#: common/models.py:1158 +#: common/models.py:1164 msgid "Build Expired Stock" msgstr "" -#: common/models.py:1159 +#: common/models.py:1165 msgid "Allow building with expired stock" msgstr "" -#: common/models.py:1165 +#: common/models.py:1171 msgid "Stock Ownership Control" msgstr "" -#: common/models.py:1166 +#: common/models.py:1172 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/models.py:1172 -msgid "Build Order Reference Pattern" -msgstr "" - -#: common/models.py:1173 -msgid "Required pattern for generating Build Order reference field" +#: common/models.py:1178 +msgid "Stock Location Default Icon" msgstr "" #: common/models.py:1179 +msgid "Stock location default icon (empty means no icon)" +msgstr "" + +#: common/models.py:1184 +msgid "Build Order Reference Pattern" +msgstr "" + +#: common/models.py:1185 +msgid "Required pattern for generating Build Order reference field" +msgstr "" + +#: common/models.py:1191 msgid "Sales Order Reference Pattern" msgstr "" -#: common/models.py:1180 +#: common/models.py:1192 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/models.py:1186 +#: common/models.py:1198 msgid "Sales Order Default Shipment" msgstr "" -#: common/models.py:1187 +#: common/models.py:1199 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/models.py:1193 +#: common/models.py:1205 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/models.py:1194 +#: common/models.py:1206 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/models.py:1201 +#: common/models.py:1213 msgid "Enable password forgot" msgstr "" -#: common/models.py:1202 +#: common/models.py:1214 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/models.py:1208 +#: common/models.py:1220 msgid "Enable registration" msgstr "" -#: common/models.py:1209 +#: common/models.py:1221 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/models.py:1215 +#: common/models.py:1227 msgid "Enable SSO" msgstr "" -#: common/models.py:1216 +#: common/models.py:1228 msgid "Enable SSO on the login pages" msgstr "" -#: common/models.py:1222 +#: common/models.py:1234 msgid "Email required" msgstr "" -#: common/models.py:1223 +#: common/models.py:1235 msgid "Require user to supply mail on signup" msgstr "" -#: common/models.py:1229 +#: common/models.py:1241 msgid "Auto-fill SSO users" msgstr "" -#: common/models.py:1230 +#: common/models.py:1242 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/models.py:1236 +#: common/models.py:1248 msgid "Mail twice" msgstr "" -#: common/models.py:1237 +#: common/models.py:1249 msgid "On signup ask users twice for their mail" msgstr "" -#: common/models.py:1243 +#: common/models.py:1255 msgid "Password twice" msgstr "" -#: common/models.py:1244 +#: common/models.py:1256 msgid "On signup ask users twice for their password" msgstr "" -#: common/models.py:1250 +#: common/models.py:1262 msgid "Group on signup" msgstr "" -#: common/models.py:1251 +#: common/models.py:1263 msgid "Group to which new users are assigned on registration" msgstr "" -#: common/models.py:1257 +#: common/models.py:1269 msgid "Enforce MFA" msgstr "" -#: common/models.py:1258 +#: common/models.py:1270 msgid "Users must use multifactor security." msgstr "" -#: common/models.py:1264 +#: common/models.py:1276 msgid "Check plugins on startup" msgstr "" -#: common/models.py:1265 +#: common/models.py:1277 msgid "Check that all plugins are installed on startup - enable in container enviroments" msgstr "" -#: common/models.py:1273 +#: common/models.py:1284 +msgid "Check plugin signatures" +msgstr "" + +#: common/models.py:1285 +msgid "Check and show signatures for plugins" +msgstr "" + +#: common/models.py:1292 msgid "Enable URL integration" msgstr "" -#: common/models.py:1274 +#: common/models.py:1293 msgid "Enable plugins to add URL routes" msgstr "" -#: common/models.py:1281 +#: common/models.py:1300 msgid "Enable navigation integration" msgstr "" -#: common/models.py:1282 +#: common/models.py:1301 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/models.py:1289 +#: common/models.py:1308 msgid "Enable app integration" msgstr "" -#: common/models.py:1290 +#: common/models.py:1309 msgid "Enable plugins to add apps" msgstr "" -#: common/models.py:1297 +#: common/models.py:1316 msgid "Enable schedule integration" msgstr "" -#: common/models.py:1298 +#: common/models.py:1317 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/models.py:1305 +#: common/models.py:1324 msgid "Enable event integration" msgstr "" -#: common/models.py:1306 +#: common/models.py:1325 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:1323 common/models.py:1639 +#: common/models.py:1342 common/models.py:1658 msgid "Settings key (must be unique - case insensitive" msgstr "" -#: common/models.py:1345 +#: common/models.py:1364 msgid "Show subscribed parts" msgstr "" -#: common/models.py:1346 +#: common/models.py:1365 msgid "Show subscribed parts on the homepage" msgstr "" -#: common/models.py:1352 +#: common/models.py:1371 msgid "Show subscribed categories" msgstr "" -#: common/models.py:1353 +#: common/models.py:1372 msgid "Show subscribed part categories on the homepage" msgstr "" -#: common/models.py:1359 +#: common/models.py:1378 msgid "Show latest parts" msgstr "" -#: common/models.py:1360 +#: common/models.py:1379 msgid "Show latest parts on the homepage" msgstr "" -#: common/models.py:1366 +#: common/models.py:1385 msgid "Recent Part Count" msgstr "" -#: common/models.py:1367 +#: common/models.py:1386 msgid "Number of recent parts to display on index page" msgstr "" -#: common/models.py:1373 +#: common/models.py:1392 msgid "Show unvalidated BOMs" msgstr "" -#: common/models.py:1374 +#: common/models.py:1393 msgid "Show BOMs that await validation on the homepage" msgstr "" -#: common/models.py:1380 +#: common/models.py:1399 msgid "Show recent stock changes" msgstr "" -#: common/models.py:1381 +#: common/models.py:1400 msgid "Show recently changed stock items on the homepage" msgstr "" -#: common/models.py:1387 +#: common/models.py:1406 msgid "Recent Stock Count" msgstr "" -#: common/models.py:1388 +#: common/models.py:1407 msgid "Number of recent stock items to display on index page" msgstr "" -#: common/models.py:1394 +#: common/models.py:1413 msgid "Show low stock" msgstr "" -#: common/models.py:1395 +#: common/models.py:1414 msgid "Show low stock items on the homepage" msgstr "" -#: common/models.py:1401 +#: common/models.py:1420 msgid "Show depleted stock" msgstr "" -#: common/models.py:1402 +#: common/models.py:1421 msgid "Show depleted stock items on the homepage" msgstr "" -#: common/models.py:1408 +#: common/models.py:1427 msgid "Show needed stock" msgstr "" -#: common/models.py:1409 +#: common/models.py:1428 msgid "Show stock items needed for builds on the homepage" msgstr "" -#: common/models.py:1415 +#: common/models.py:1434 msgid "Show expired stock" msgstr "" -#: common/models.py:1416 +#: common/models.py:1435 msgid "Show expired stock items on the homepage" msgstr "" -#: common/models.py:1422 +#: common/models.py:1441 msgid "Show stale stock" msgstr "" -#: common/models.py:1423 +#: common/models.py:1442 msgid "Show stale stock items on the homepage" msgstr "" -#: common/models.py:1429 +#: common/models.py:1448 msgid "Show pending builds" msgstr "" -#: common/models.py:1430 +#: common/models.py:1449 msgid "Show pending builds on the homepage" msgstr "" -#: common/models.py:1436 +#: common/models.py:1455 msgid "Show overdue builds" msgstr "" -#: common/models.py:1437 +#: common/models.py:1456 msgid "Show overdue builds on the homepage" msgstr "" -#: common/models.py:1443 +#: common/models.py:1462 msgid "Show outstanding POs" msgstr "" -#: common/models.py:1444 +#: common/models.py:1463 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:1450 +#: common/models.py:1469 msgid "Show overdue POs" msgstr "" -#: common/models.py:1451 +#: common/models.py:1470 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:1457 +#: common/models.py:1476 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:1458 +#: common/models.py:1477 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:1464 +#: common/models.py:1483 msgid "Show overdue SOs" msgstr "" -#: common/models.py:1465 +#: common/models.py:1484 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:1471 +#: common/models.py:1490 msgid "Inline label display" msgstr "" -#: common/models.py:1472 +#: common/models.py:1491 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1478 +#: common/models.py:1497 msgid "Inline report display" msgstr "" -#: common/models.py:1479 +#: common/models.py:1498 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1485 +#: common/models.py:1504 msgid "Search Parts" msgstr "" -#: common/models.py:1486 +#: common/models.py:1505 msgid "Display parts in search preview window" msgstr "" -#: common/models.py:1492 +#: common/models.py:1511 msgid "Seach Supplier Parts" msgstr "" -#: common/models.py:1493 +#: common/models.py:1512 msgid "Display supplier parts in search preview window" msgstr "" -#: common/models.py:1499 +#: common/models.py:1518 msgid "Search Manufacturer Parts" msgstr "" -#: common/models.py:1500 +#: common/models.py:1519 msgid "Display manufacturer parts in search preview window" msgstr "" -#: common/models.py:1506 +#: common/models.py:1525 msgid "Hide Inactive Parts" msgstr "" -#: common/models.py:1507 +#: common/models.py:1526 msgid "Excluded inactive parts from search preview window" msgstr "" -#: common/models.py:1513 +#: common/models.py:1532 msgid "Search Categories" msgstr "" -#: common/models.py:1514 +#: common/models.py:1533 msgid "Display part categories in search preview window" msgstr "" -#: common/models.py:1520 +#: common/models.py:1539 msgid "Search Stock" msgstr "" -#: common/models.py:1521 +#: common/models.py:1540 msgid "Display stock items in search preview window" msgstr "" -#: common/models.py:1527 +#: common/models.py:1546 msgid "Hide Unavailable Stock Items" msgstr "" -#: common/models.py:1528 +#: common/models.py:1547 msgid "Exclude stock items which are not available from the search preview window" msgstr "" -#: common/models.py:1534 +#: common/models.py:1553 msgid "Search Locations" msgstr "" -#: common/models.py:1535 +#: common/models.py:1554 msgid "Display stock locations in search preview window" msgstr "" -#: common/models.py:1541 +#: common/models.py:1560 msgid "Search Companies" msgstr "" -#: common/models.py:1542 +#: common/models.py:1561 msgid "Display companies in search preview window" msgstr "" -#: common/models.py:1548 +#: common/models.py:1567 msgid "Search Purchase Orders" msgstr "" -#: common/models.py:1549 +#: common/models.py:1568 msgid "Display purchase orders in search preview window" msgstr "" -#: common/models.py:1555 +#: common/models.py:1574 msgid "Exclude Inactive Purchase Orders" msgstr "" -#: common/models.py:1556 +#: common/models.py:1575 msgid "Exclude inactive purchase orders from search preview window" msgstr "" -#: common/models.py:1562 +#: common/models.py:1581 msgid "Search Sales Orders" msgstr "" -#: common/models.py:1563 +#: common/models.py:1582 msgid "Display sales orders in search preview window" msgstr "" -#: common/models.py:1569 +#: common/models.py:1588 msgid "Exclude Inactive Sales Orders" msgstr "" -#: common/models.py:1570 +#: common/models.py:1589 msgid "Exclude inactive sales orders from search preview window" msgstr "" -#: common/models.py:1576 +#: common/models.py:1595 msgid "Search Preview Results" msgstr "" -#: common/models.py:1577 +#: common/models.py:1596 msgid "Number of results to show in each section of the search preview window" msgstr "" -#: common/models.py:1583 +#: common/models.py:1602 msgid "Show Quantity in Forms" msgstr "" -#: common/models.py:1584 +#: common/models.py:1603 msgid "Display available part quantity in some forms" msgstr "" -#: common/models.py:1590 +#: common/models.py:1609 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:1591 +#: common/models.py:1610 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:1597 +#: common/models.py:1616 msgid "Fixed Navbar" msgstr "" -#: common/models.py:1598 +#: common/models.py:1617 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:1604 +#: common/models.py:1623 msgid "Date Format" msgstr "" -#: common/models.py:1605 +#: common/models.py:1624 msgid "Preferred format for displaying dates" msgstr "" -#: common/models.py:1619 part/templates/part/detail.html:41 +#: common/models.py:1638 part/templates/part/detail.html:41 msgid "Part Scheduling" msgstr "" -#: common/models.py:1620 +#: common/models.py:1639 msgid "Display part scheduling information" msgstr "" -#: common/models.py:1679 +#: common/models.py:1698 msgid "Price break quantity" msgstr "" -#: common/models.py:1686 company/serializers.py:366 +#: common/models.py:1705 company/serializers.py:366 #: company/templates/company/supplier_part.html:284 order/models.py:938 -#: templates/js/translated/part.js:1065 templates/js/translated/part.js:2152 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2161 msgid "Price" msgstr "" -#: common/models.py:1687 +#: common/models.py:1706 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:1847 common/models.py:2025 +#: common/models.py:1866 common/models.py:2044 msgid "Endpoint" msgstr "" -#: common/models.py:1848 +#: common/models.py:1867 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:1857 +#: common/models.py:1876 msgid "Name for this webhook" msgstr "" -#: common/models.py:1862 part/models.py:914 plugin/models.py:99 +#: common/models.py:1881 part/models.py:921 plugin/models.py:100 #: templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:104 #: templates/js/translated/table_filters.js:316 @@ -2591,67 +2619,67 @@ msgstr "" msgid "Active" msgstr "" -#: common/models.py:1863 +#: common/models.py:1882 msgid "Is this webhook active" msgstr "" -#: common/models.py:1877 +#: common/models.py:1896 msgid "Token" msgstr "" -#: common/models.py:1878 +#: common/models.py:1897 msgid "Token for access" msgstr "" -#: common/models.py:1885 +#: common/models.py:1904 msgid "Secret" msgstr "" -#: common/models.py:1886 +#: common/models.py:1905 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:1992 +#: common/models.py:2011 msgid "Message ID" msgstr "" -#: common/models.py:1993 +#: common/models.py:2012 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2001 +#: common/models.py:2020 msgid "Host" msgstr "" -#: common/models.py:2002 +#: common/models.py:2021 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2009 +#: common/models.py:2028 msgid "Header" msgstr "" -#: common/models.py:2010 +#: common/models.py:2029 msgid "Header of this message" msgstr "" -#: common/models.py:2016 +#: common/models.py:2035 msgid "Body" msgstr "" -#: common/models.py:2017 +#: common/models.py:2036 msgid "Body of this message" msgstr "" -#: common/models.py:2026 +#: common/models.py:2045 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2031 +#: common/models.py:2050 msgid "Worked on" msgstr "" -#: common/models.py:2032 +#: common/models.py:2051 msgid "Was the work on this message finished?" msgstr "" @@ -2758,7 +2786,7 @@ msgstr "" msgid "Link to external company information" msgstr "" -#: company/models.py:135 part/models.py:808 +#: company/models.py:135 part/models.py:815 msgid "Image" msgstr "" @@ -2791,8 +2819,8 @@ msgid "Does this company manufacture parts?" msgstr "" #: company/models.py:148 company/serializers.py:372 -#: company/templates/company/company_base.html:106 part/serializers.py:151 -#: part/serializers.py:182 stock/serializers.py:180 +#: company/templates/company/company_base.html:106 part/serializers.py:153 +#: part/serializers.py:184 stock/serializers.py:180 msgid "Currency" msgstr "" @@ -2800,7 +2828,7 @@ msgstr "" msgid "Default currency used for this company" msgstr "" -#: company/models.py:248 company/models.py:481 stock/models.py:591 +#: company/models.py:248 company/models.py:481 stock/models.py:598 #: stock/serializers.py:87 stock/templates/stock/item_base.html:148 #: templates/js/translated/bom.js:543 msgid "Base Part" @@ -2832,7 +2860,7 @@ msgstr "" #: templates/js/translated/company.js:497 #: templates/js/translated/company.js:649 #: templates/js/translated/company.js:937 templates/js/translated/order.js:1971 -#: templates/js/translated/part.js:247 templates/js/translated/part.js:1023 +#: templates/js/translated/part.js:247 templates/js/translated/part.js:1027 msgid "MPN" msgstr "" @@ -2861,9 +2889,9 @@ msgstr "" #: company/models.py:365 #: report/templates/report/inventree_test_report_base.html:95 -#: stock/models.py:2088 templates/js/translated/company.js:546 -#: templates/js/translated/company.js:764 templates/js/translated/part.js:845 -#: templates/js/translated/stock.js:1356 +#: stock/models.py:2095 templates/js/translated/company.js:546 +#: templates/js/translated/company.js:764 templates/js/translated/part.js:849 +#: templates/js/translated/stock.js:1360 msgid "Value" msgstr "" @@ -2871,10 +2899,10 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:372 part/models.py:881 part/models.py:2379 +#: company/models.py:372 part/models.py:888 part/models.py:2386 #: part/templates/part/part_base.html:280 #: templates/InvenTree/settings/settings.html:352 -#: templates/js/translated/company.js:770 templates/js/translated/part.js:851 +#: templates/js/translated/company.js:770 templates/js/translated/part.js:855 msgid "Units" msgstr "" @@ -2894,7 +2922,7 @@ msgstr "" #: templates/js/translated/company.js:268 #: templates/js/translated/company.js:401 #: templates/js/translated/company.js:893 templates/js/translated/order.js:1707 -#: templates/js/translated/part.js:217 templates/js/translated/part.js:991 +#: templates/js/translated/part.js:217 templates/js/translated/part.js:995 #: templates/js/translated/table_filters.js:423 msgid "Supplier" msgstr "" @@ -2906,7 +2934,7 @@ msgstr "" #: company/models.py:497 company/templates/company/supplier_part.html:118 #: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267 #: templates/js/translated/order.js:1958 templates/js/translated/part.js:228 -#: templates/js/translated/part.js:1009 +#: templates/js/translated/part.js:1013 msgid "SKU" msgstr "" @@ -2927,23 +2955,23 @@ msgid "Supplier part description" msgstr "" #: company/models.py:522 company/templates/company/supplier_part.html:146 -#: part/models.py:2613 part/templates/part/upload_bom.html:59 +#: part/models.py:2620 part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401 msgid "Note" msgstr "" -#: company/models.py:526 part/models.py:1735 +#: company/models.py:526 part/models.py:1742 msgid "base cost" msgstr "" -#: company/models.py:526 part/models.py:1735 +#: company/models.py:526 part/models.py:1742 msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:528 company/templates/company/supplier_part.html:139 -#: stock/models.py:617 stock/templates/stock/item_base.html:245 -#: templates/js/translated/company.js:969 templates/js/translated/stock.js:1972 +#: stock/models.py:624 stock/templates/stock/item_base.html:245 +#: templates/js/translated/company.js:969 templates/js/translated/stock.js:1976 msgid "Packaging" msgstr "" @@ -2951,7 +2979,7 @@ msgstr "" msgid "Part packaging" msgstr "" -#: company/models.py:530 part/models.py:1737 +#: company/models.py:530 part/models.py:1744 msgid "multiple" msgstr "" @@ -2964,7 +2992,7 @@ msgstr "" #: templates/email/low_stock_notification.html:18 #: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789 #: templates/js/translated/build.js:2645 templates/js/translated/company.js:979 -#: templates/js/translated/part.js:596 templates/js/translated/part.js:599 +#: templates/js/translated/part.js:600 templates/js/translated/part.js:603 #: templates/js/translated/table_filters.js:186 msgid "Available" msgstr "" @@ -3037,12 +3065,12 @@ msgid "Download image from URL" msgstr "" #: company/templates/company/company_base.html:86 order/models.py:637 -#: order/templates/order/sales_order_base.html:116 stock/models.py:636 -#: stock/models.py:637 stock/serializers.py:809 +#: order/templates/order/sales_order_base.html:116 stock/models.py:643 +#: stock/models.py:644 stock/serializers.py:811 #: stock/templates/stock/item_base.html:401 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:393 templates/js/translated/order.js:2513 -#: templates/js/translated/stock.js:2550 +#: templates/js/translated/stock.js:2559 #: templates/js/translated/table_filters.js:427 msgid "Customer" msgstr "" @@ -3083,7 +3111,7 @@ msgstr "" #: company/templates/company/detail.html:36 #: company/templates/company/detail.html:84 -#: part/templates/part/category.html:176 +#: part/templates/part/category.html:182 msgid "Order parts" msgstr "" @@ -3231,7 +3259,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:170 #: part/templates/part/detail.html:186 #: templates/InvenTree/settings/category.html:12 -#: templates/InvenTree/settings/part.html:66 +#: templates/InvenTree/settings/part.html:68 msgid "New Parameter" msgstr "" @@ -3261,10 +3289,10 @@ msgid "Assigned Stock Items" msgstr "" #: company/templates/company/supplier_part.html:7 -#: company/templates/company/supplier_part.html:24 stock/models.py:600 +#: company/templates/company/supplier_part.html:24 stock/models.py:607 #: stock/templates/stock/item_base.html:238 #: templates/js/translated/company.js:909 templates/js/translated/order.js:935 -#: templates/js/translated/stock.js:1929 +#: templates/js/translated/stock.js:1933 msgid "Supplier Part" msgstr "" @@ -3308,13 +3336,13 @@ msgid "Supplier Part Stock" msgstr "" #: company/templates/company/supplier_part.html:168 -#: part/templates/part/detail.html:24 stock/templates/stock/location.html:176 +#: part/templates/part/detail.html:24 stock/templates/stock/location.html:181 msgid "Create new stock item" msgstr "" #: company/templates/company/supplier_part.html:169 -#: part/templates/part/detail.html:25 stock/templates/stock/location.html:177 -#: templates/js/translated/stock.js:431 +#: part/templates/part/detail.html:25 stock/templates/stock/location.html:182 +#: templates/js/translated/stock.js:435 msgid "New Stock Item" msgstr "" @@ -3330,7 +3358,7 @@ msgstr "" #: company/templates/company/supplier_part.html:212 #: company/templates/company/supplier_part.html:326 -#: part/templates/part/prices.html:276 templates/js/translated/part.js:2224 +#: part/templates/part/prices.html:276 templates/js/translated/part.js:2233 msgid "Add Price Break" msgstr "" @@ -3339,12 +3367,12 @@ msgid "No price break information found" msgstr "" #: company/templates/company/supplier_part.html:252 -#: templates/js/translated/part.js:2234 +#: templates/js/translated/part.js:2243 msgid "Delete Price Break" msgstr "" #: company/templates/company/supplier_part.html:266 -#: templates/js/translated/part.js:2248 +#: templates/js/translated/part.js:2257 msgid "Edit Price Break" msgstr "" @@ -3366,13 +3394,13 @@ msgstr "" #: company/templates/company/supplier_part_navbar.html:15 #: part/templates/part/part_sidebar.html:14 -#: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:19 +#: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:24 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:151 #: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/bom.js:555 templates/js/translated/part.js:747 -#: templates/js/translated/part.js:1295 templates/js/translated/part.js:1456 -#: templates/js/translated/stock.js:955 templates/js/translated/stock.js:1750 +#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751 +#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460 +#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754 #: templates/navbar.html:31 msgid "Stock" msgstr "" @@ -3392,14 +3420,14 @@ msgid "Pricing" msgstr "" #: company/templates/company/supplier_part_sidebar.html:5 -#: part/templates/part/category.html:197 +#: part/templates/part/category.html:203 #: part/templates/part/category_sidebar.html:17 -#: stock/templates/stock/location.html:147 -#: stock/templates/stock/location.html:161 -#: stock/templates/stock/location.html:173 +#: stock/templates/stock/location.html:152 +#: stock/templates/stock/location.html:166 +#: stock/templates/stock/location.html:178 #: stock/templates/stock/location_sidebar.html:7 #: templates/InvenTree/search.html:153 templates/js/translated/search.js:223 -#: templates/js/translated/stock.js:2427 users/models.py:40 +#: templates/js/translated/stock.js:2436 users/models.py:40 msgid "Stock Items" msgstr "" @@ -3656,8 +3684,8 @@ msgstr "" #: stock/templates/stock/item_base.html:184 #: templates/email/overdue_purchase_order.html:15 #: templates/js/translated/order.js:936 templates/js/translated/order.js:1691 -#: templates/js/translated/part.js:968 templates/js/translated/stock.js:1909 -#: templates/js/translated/stock.js:2531 +#: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913 +#: templates/js/translated/stock.js:2540 msgid "Purchase Order" msgstr "" @@ -3667,7 +3695,7 @@ msgstr "" #: order/models.py:1009 order/templates/order/order_base.html:169 #: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073 -#: templates/js/translated/part.js:1060 templates/js/translated/part.js:1087 +#: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091 #: templates/js/translated/table_filters.js:338 msgid "Received" msgstr "" @@ -3676,9 +3704,9 @@ msgstr "" msgid "Number of items received" msgstr "" -#: order/models.py:1017 part/templates/part/prices.html:181 stock/models.py:727 +#: order/models.py:1017 part/templates/part/prices.html:181 stock/models.py:734 #: stock/serializers.py:171 stock/templates/stock/item_base.html:191 -#: templates/js/translated/stock.js:1960 +#: templates/js/translated/stock.js:1964 msgid "Purchase Price" msgstr "" @@ -4066,8 +4094,8 @@ msgstr "" #: templates/js/translated/bom.js:77 templates/js/translated/build.js:431 #: templates/js/translated/build.js:583 templates/js/translated/build.js:1974 #: templates/js/translated/order.js:884 templates/js/translated/order.js:1337 -#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:621 -#: templates/js/translated/stock.js:789 +#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625 +#: templates/js/translated/stock.js:793 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "" @@ -4261,8 +4289,8 @@ msgstr "" msgid "This field is required" msgstr "" -#: part/bom.py:127 part/models.py:98 part/models.py:817 -#: part/templates/part/category.html:108 part/templates/part/part_base.html:330 +#: part/bom.py:127 part/models.py:98 part/models.py:824 +#: part/templates/part/category.html:114 part/templates/part/part_base.html:330 msgid "Default Location" msgstr "" @@ -4276,9 +4304,9 @@ msgid "Available Stock" msgstr "" #: part/bom.py:130 part/templates/part/part_base.html:207 -#: templates/js/translated/bom.js:947 templates/js/translated/part.js:586 -#: templates/js/translated/part.js:606 templates/js/translated/part.js:1298 -#: templates/js/translated/part.js:1470 templates/js/translated/part.js:1486 +#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590 +#: templates/js/translated/part.js:610 templates/js/translated/part.js:1302 +#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "" @@ -4299,516 +4327,524 @@ msgstr "" msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:115 part/models.py:2455 part/templates/part/category.html:15 +#: part/models.py:107 stock/models.py:84 +msgid "Icon" +msgstr "" + +#: part/models.py:108 stock/models.py:85 +msgid "Icon (optional)" +msgstr "" + +#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" -#: part/models.py:116 part/templates/part/category.html:128 +#: part/models.py:123 part/templates/part/category.html:134 #: templates/InvenTree/search.html:95 templates/js/translated/search.js:198 #: users/models.py:37 msgid "Part Categories" msgstr "" -#: part/models.py:337 part/templates/part/cat_link.html:3 -#: part/templates/part/category.html:17 part/templates/part/category.html:133 -#: part/templates/part/category.html:153 +#: part/models.py:344 part/templates/part/cat_link.html:3 +#: part/templates/part/category.html:23 part/templates/part/category.html:139 +#: part/templates/part/category.html:159 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82 #: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:1946 templates/js/translated/search.js:144 +#: templates/js/translated/part.js:1955 templates/js/translated/search.js:144 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "" -#: part/models.py:422 +#: part/models.py:429 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:492 part/models.py:504 +#: part/models.py:499 part/models.py:511 #, python-brace-format msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)" msgstr "" -#: part/models.py:621 +#: part/models.py:628 msgid "Next available serial numbers are" msgstr "" -#: part/models.py:625 +#: part/models.py:632 msgid "Next available serial number is" msgstr "" -#: part/models.py:630 +#: part/models.py:637 msgid "Most recent serial number is" msgstr "" -#: part/models.py:711 +#: part/models.py:718 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:738 part/models.py:2509 +#: part/models.py:745 part/models.py:2516 msgid "Part name" msgstr "" -#: part/models.py:745 +#: part/models.py:752 msgid "Is Template" msgstr "" -#: part/models.py:746 +#: part/models.py:753 msgid "Is this part a template part?" msgstr "" -#: part/models.py:756 +#: part/models.py:763 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:757 +#: part/models.py:764 msgid "Variant Of" msgstr "" -#: part/models.py:763 +#: part/models.py:770 msgid "Part description" msgstr "" -#: part/models.py:768 part/templates/part/category.html:86 +#: part/models.py:775 part/templates/part/category.html:92 #: part/templates/part/part_base.html:294 msgid "Keywords" msgstr "" -#: part/models.py:769 +#: part/models.py:776 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:776 part/models.py:2211 part/models.py:2454 +#: part/models.py:783 part/models.py:2218 part/models.py:2461 #: part/templates/part/part_base.html:257 #: templates/InvenTree/settings/settings.html:232 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1438 templates/js/translated/part.js:1664 +#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1668 msgid "Category" msgstr "" -#: part/models.py:777 +#: part/models.py:784 msgid "Part category" msgstr "" -#: part/models.py:782 part/templates/part/part_base.html:266 -#: templates/js/translated/part.js:735 templates/js/translated/part.js:1391 -#: templates/js/translated/stock.js:1722 +#: part/models.py:789 part/templates/part/part_base.html:266 +#: templates/js/translated/part.js:739 templates/js/translated/part.js:1395 +#: templates/js/translated/stock.js:1726 msgid "IPN" msgstr "" -#: part/models.py:783 +#: part/models.py:790 msgid "Internal Part Number" msgstr "" -#: part/models.py:789 +#: part/models.py:796 msgid "Part revision or version number" msgstr "" -#: part/models.py:790 part/templates/part/part_base.html:273 -#: report/models.py:171 templates/js/translated/part.js:739 +#: part/models.py:797 part/templates/part/part_base.html:273 +#: report/models.py:171 templates/js/translated/part.js:743 msgid "Revision" msgstr "" -#: part/models.py:815 +#: part/models.py:822 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:860 part/templates/part/part_base.html:339 +#: part/models.py:867 part/templates/part/part_base.html:339 msgid "Default Supplier" msgstr "" -#: part/models.py:861 +#: part/models.py:868 msgid "Default supplier part" msgstr "" -#: part/models.py:868 +#: part/models.py:875 msgid "Default Expiry" msgstr "" -#: part/models.py:869 +#: part/models.py:876 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:874 part/templates/part/part_base.html:200 +#: part/models.py:881 part/templates/part/part_base.html:200 msgid "Minimum Stock" msgstr "" -#: part/models.py:875 +#: part/models.py:882 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:882 +#: part/models.py:889 msgid "Stock keeping units for this part" msgstr "" -#: part/models.py:888 +#: part/models.py:895 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:894 +#: part/models.py:901 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:900 +#: part/models.py:907 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:905 +#: part/models.py:912 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:910 +#: part/models.py:917 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:915 +#: part/models.py:922 msgid "Is this part active?" msgstr "" -#: part/models.py:920 +#: part/models.py:927 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:922 +#: part/models.py:929 msgid "Part notes" msgstr "" -#: part/models.py:924 +#: part/models.py:931 msgid "BOM checksum" msgstr "" -#: part/models.py:924 +#: part/models.py:931 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:927 +#: part/models.py:934 msgid "BOM checked by" msgstr "" -#: part/models.py:929 +#: part/models.py:936 msgid "BOM checked date" msgstr "" -#: part/models.py:933 +#: part/models.py:940 msgid "Creation User" msgstr "" -#: part/models.py:1737 +#: part/models.py:1744 msgid "Sell multiple" msgstr "" -#: part/models.py:2258 +#: part/models.py:2265 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:2275 +#: part/models.py:2282 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:2295 templates/js/translated/part.js:1997 -#: templates/js/translated/stock.js:1336 +#: part/models.py:2302 templates/js/translated/part.js:2006 +#: templates/js/translated/stock.js:1340 msgid "Test Name" msgstr "" -#: part/models.py:2296 +#: part/models.py:2303 msgid "Enter a name for the test" msgstr "" -#: part/models.py:2301 +#: part/models.py:2308 msgid "Test Description" msgstr "" -#: part/models.py:2302 +#: part/models.py:2309 msgid "Enter description for this test" msgstr "" -#: part/models.py:2307 templates/js/translated/part.js:2006 +#: part/models.py:2314 templates/js/translated/part.js:2015 #: templates/js/translated/table_filters.js:302 msgid "Required" msgstr "" -#: part/models.py:2308 +#: part/models.py:2315 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:2313 templates/js/translated/part.js:2014 +#: part/models.py:2320 templates/js/translated/part.js:2023 msgid "Requires Value" msgstr "" -#: part/models.py:2314 +#: part/models.py:2321 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:2319 templates/js/translated/part.js:2021 +#: part/models.py:2326 templates/js/translated/part.js:2030 msgid "Requires Attachment" msgstr "" -#: part/models.py:2320 +#: part/models.py:2327 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:2328 +#: part/models.py:2335 #, python-brace-format msgid "Illegal character in template name ({c})" msgstr "" -#: part/models.py:2364 +#: part/models.py:2371 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:2372 +#: part/models.py:2379 msgid "Parameter Name" msgstr "" -#: part/models.py:2379 +#: part/models.py:2386 msgid "Parameter Units" msgstr "" -#: part/models.py:2410 +#: part/models.py:2417 msgid "Parent Part" msgstr "" -#: part/models.py:2412 part/models.py:2460 part/models.py:2461 +#: part/models.py:2419 part/models.py:2467 part/models.py:2468 #: templates/InvenTree/settings/settings.html:227 msgid "Parameter Template" msgstr "" -#: part/models.py:2414 +#: part/models.py:2421 msgid "Data" msgstr "" -#: part/models.py:2414 +#: part/models.py:2421 msgid "Parameter Value" msgstr "" -#: part/models.py:2465 templates/InvenTree/settings/settings.html:236 +#: part/models.py:2472 templates/InvenTree/settings/settings.html:236 msgid "Default Value" msgstr "" -#: part/models.py:2466 +#: part/models.py:2473 msgid "Default Parameter Value" msgstr "" -#: part/models.py:2501 +#: part/models.py:2508 msgid "Part ID or part name" msgstr "" -#: part/models.py:2504 templates/js/translated/model_renderers.js:212 +#: part/models.py:2511 templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "" -#: part/models.py:2505 +#: part/models.py:2512 msgid "Unique part ID value" msgstr "" -#: part/models.py:2508 +#: part/models.py:2515 msgid "Part Name" msgstr "" -#: part/models.py:2512 +#: part/models.py:2519 msgid "Part IPN" msgstr "" -#: part/models.py:2513 +#: part/models.py:2520 msgid "Part IPN value" msgstr "" -#: part/models.py:2516 +#: part/models.py:2523 msgid "Level" msgstr "" -#: part/models.py:2517 +#: part/models.py:2524 msgid "BOM level" msgstr "" -#: part/models.py:2586 +#: part/models.py:2593 msgid "Select parent part" msgstr "" -#: part/models.py:2594 +#: part/models.py:2601 msgid "Sub part" msgstr "" -#: part/models.py:2595 +#: part/models.py:2602 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:2601 +#: part/models.py:2608 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:2603 part/templates/part/upload_bom.html:58 +#: part/models.py:2610 part/templates/part/upload_bom.html:58 #: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999 #: templates/js/translated/table_filters.js:100 msgid "Optional" msgstr "" -#: part/models.py:2603 +#: part/models.py:2610 msgid "This BOM item is optional" msgstr "" -#: part/models.py:2606 part/templates/part/upload_bom.html:55 +#: part/models.py:2613 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:2607 +#: part/models.py:2614 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:2610 +#: part/models.py:2617 msgid "BOM item reference" msgstr "" -#: part/models.py:2613 +#: part/models.py:2620 msgid "BOM item notes" msgstr "" -#: part/models.py:2615 +#: part/models.py:2622 msgid "Checksum" msgstr "" -#: part/models.py:2615 +#: part/models.py:2622 msgid "BOM line checksum" msgstr "" -#: part/models.py:2619 part/templates/part/upload_bom.html:57 +#: part/models.py:2626 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1016 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:96 msgid "Inherited" msgstr "" -#: part/models.py:2620 +#: part/models.py:2627 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:2625 part/templates/part/upload_bom.html:56 +#: part/models.py:2632 part/templates/part/upload_bom.html:56 #: templates/js/translated/bom.js:1008 msgid "Allow Variants" msgstr "" -#: part/models.py:2626 +#: part/models.py:2633 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:2704 stock/models.py:461 +#: part/models.py:2711 stock/models.py:468 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:2713 part/models.py:2715 +#: part/models.py:2720 part/models.py:2722 msgid "Sub part must be specified" msgstr "" -#: part/models.py:2820 +#: part/models.py:2827 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:2841 +#: part/models.py:2848 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:2854 +#: part/models.py:2861 msgid "Parent BOM item" msgstr "" -#: part/models.py:2862 +#: part/models.py:2869 msgid "Substitute part" msgstr "" -#: part/models.py:2877 +#: part/models.py:2884 msgid "Part 1" msgstr "" -#: part/models.py:2881 +#: part/models.py:2888 msgid "Part 2" msgstr "" -#: part/models.py:2881 +#: part/models.py:2888 msgid "Select Related Part" msgstr "" -#: part/models.py:2899 +#: part/models.py:2906 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:2903 +#: part/models.py:2910 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:152 part/serializers.py:183 stock/serializers.py:181 +#: part/serializers.py:154 part/serializers.py:185 stock/serializers.py:181 msgid "Purchase currency of this stock item" msgstr "" -#: part/serializers.py:812 +#: part/serializers.py:814 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:820 +#: part/serializers.py:822 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:821 +#: part/serializers.py:823 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:826 +#: part/serializers.py:828 msgid "Include Inherited" msgstr "" -#: part/serializers.py:827 +#: part/serializers.py:829 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:832 +#: part/serializers.py:834 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:833 +#: part/serializers.py:835 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:838 +#: part/serializers.py:840 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:839 +#: part/serializers.py:841 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:879 +#: part/serializers.py:881 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:880 +#: part/serializers.py:882 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:910 +#: part/serializers.py:912 msgid "No part column specified" msgstr "" -#: part/serializers.py:953 +#: part/serializers.py:955 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:956 +#: part/serializers.py:958 msgid "No matching part found" msgstr "" -#: part/serializers.py:959 +#: part/serializers.py:961 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:968 +#: part/serializers.py:970 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:976 +#: part/serializers.py:978 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:997 +#: part/serializers.py:999 msgid "At least one BOM item is required" msgstr "" @@ -4848,101 +4884,101 @@ msgstr "" msgid "Delete Items" msgstr "" -#: part/templates/part/category.html:28 part/templates/part/category.html:32 +#: part/templates/part/category.html:34 part/templates/part/category.html:38 msgid "You are subscribed to notifications for this category" msgstr "" -#: part/templates/part/category.html:36 +#: part/templates/part/category.html:42 msgid "Subscribe to notifications for this category" msgstr "" -#: part/templates/part/category.html:42 +#: part/templates/part/category.html:48 msgid "Category Actions" msgstr "" -#: part/templates/part/category.html:47 +#: part/templates/part/category.html:53 msgid "Edit category" msgstr "" -#: part/templates/part/category.html:48 +#: part/templates/part/category.html:54 msgid "Edit Category" msgstr "" -#: part/templates/part/category.html:52 +#: part/templates/part/category.html:58 msgid "Delete category" msgstr "" -#: part/templates/part/category.html:53 +#: part/templates/part/category.html:59 msgid "Delete Category" msgstr "" -#: part/templates/part/category.html:61 +#: part/templates/part/category.html:67 msgid "Create new part category" msgstr "" -#: part/templates/part/category.html:62 +#: part/templates/part/category.html:68 msgid "New Category" msgstr "" -#: part/templates/part/category.html:80 part/templates/part/category.html:93 +#: part/templates/part/category.html:86 part/templates/part/category.html:99 msgid "Category Path" msgstr "" -#: part/templates/part/category.html:94 +#: part/templates/part/category.html:100 msgid "Top level part category" msgstr "" -#: part/templates/part/category.html:114 part/templates/part/category.html:222 +#: part/templates/part/category.html:120 part/templates/part/category.html:228 #: part/templates/part/category_sidebar.html:7 msgid "Subcategories" msgstr "" -#: part/templates/part/category.html:119 +#: part/templates/part/category.html:125 msgid "Parts (Including subcategories)" msgstr "" -#: part/templates/part/category.html:157 +#: part/templates/part/category.html:163 msgid "Create new part" msgstr "" -#: part/templates/part/category.html:158 templates/js/translated/bom.js:367 +#: part/templates/part/category.html:164 templates/js/translated/bom.js:367 msgid "New Part" msgstr "" -#: part/templates/part/category.html:168 part/templates/part/detail.html:363 +#: part/templates/part/category.html:174 part/templates/part/detail.html:363 #: part/templates/part/detail.html:394 msgid "Options" msgstr "" -#: part/templates/part/category.html:172 +#: part/templates/part/category.html:178 msgid "Set category" msgstr "" -#: part/templates/part/category.html:173 +#: part/templates/part/category.html:179 msgid "Set Category" msgstr "" -#: part/templates/part/category.html:180 part/templates/part/category.html:181 +#: part/templates/part/category.html:186 part/templates/part/category.html:187 msgid "Print Labels" msgstr "" -#: part/templates/part/category.html:206 +#: part/templates/part/category.html:212 msgid "Part Parameters" msgstr "" -#: part/templates/part/category.html:320 +#: part/templates/part/category.html:327 msgid "Create Part Category" msgstr "" -#: part/templates/part/category.html:340 +#: part/templates/part/category.html:347 msgid "Create Part" msgstr "" -#: part/templates/part/category.html:343 +#: part/templates/part/category.html:350 msgid "Create another part after this one" msgstr "" -#: part/templates/part/category.html:344 +#: part/templates/part/category.html:351 msgid "Part created successfully" msgstr "" @@ -4950,7 +4986,7 @@ msgstr "" msgid "Import Parts" msgstr "" -#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:375 +#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:379 msgid "Duplicate Part" msgstr "" @@ -5172,19 +5208,19 @@ msgstr "" #: part/templates/part/part_base.html:43 #: stock/templates/stock/item_base.html:41 -#: stock/templates/stock/location.html:43 +#: stock/templates/stock/location.html:48 msgid "Barcode actions" msgstr "" #: part/templates/part/part_base.html:46 #: stock/templates/stock/item_base.html:45 -#: stock/templates/stock/location.html:45 templates/qr_button.html:1 +#: stock/templates/stock/location.html:50 templates/qr_button.html:1 msgid "Show QR Code" msgstr "" #: part/templates/part/part_base.html:49 #: stock/templates/stock/item_base.html:63 -#: stock/templates/stock/location.html:47 +#: stock/templates/stock/location.html:52 msgid "Print Label" msgstr "" @@ -5194,7 +5230,7 @@ msgstr "" #: part/templates/part/part_base.html:60 #: stock/templates/stock/item_base.html:116 -#: stock/templates/stock/location.html:56 +#: stock/templates/stock/location.html:61 msgid "Stock actions" msgstr "" @@ -5255,7 +5291,7 @@ msgstr "" #: templates/js/translated/company.js:624 #: templates/js/translated/company.js:884 #: templates/js/translated/model_renderers.js:204 -#: templates/js/translated/part.js:650 templates/js/translated/part.js:727 +#: templates/js/translated/part.js:654 templates/js/translated/part.js:731 msgid "Inactive" msgstr "" @@ -5289,9 +5325,9 @@ msgstr "" msgid "Can Build" msgstr "" -#: part/templates/part/part_base.html:238 templates/js/translated/part.js:589 -#: templates/js/translated/part.js:609 templates/js/translated/part.js:1302 -#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490 +#: part/templates/part/part_base.html:238 templates/js/translated/part.js:593 +#: templates/js/translated/part.js:613 templates/js/translated/part.js:1306 +#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1494 msgid "Building" msgstr "" @@ -5464,8 +5500,8 @@ msgstr "" msgid "No sale pice history available for this part." msgstr "" -#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:612 -#: templates/js/translated/part.js:1290 templates/js/translated/part.js:1494 +#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616 +#: templates/js/translated/part.js:1294 templates/js/translated/part.js:1498 msgid "No Stock" msgstr "" @@ -5630,51 +5666,55 @@ msgstr "" msgid "Allow sending of emails for event notifications" msgstr "" -#: plugin/models.py:32 +#: plugin/models.py:33 msgid "Plugin Metadata" msgstr "" -#: plugin/models.py:33 +#: plugin/models.py:34 msgid "JSON metadata field, for use by external plugins" msgstr "" -#: plugin/models.py:79 +#: plugin/models.py:80 msgid "Plugin Configuration" msgstr "" -#: plugin/models.py:80 +#: plugin/models.py:81 msgid "Plugin Configurations" msgstr "" -#: plugin/models.py:85 +#: plugin/models.py:86 msgid "Key" msgstr "" -#: plugin/models.py:86 +#: plugin/models.py:87 msgid "Key of plugin" msgstr "" -#: plugin/models.py:94 +#: plugin/models.py:95 msgid "PluginName of the plugin" msgstr "" -#: plugin/models.py:100 +#: plugin/models.py:101 msgid "Is the plugin active" msgstr "" -#: plugin/models.py:168 +#: plugin/models.py:158 +msgid "Sample plugin" +msgstr "" + +#: plugin/models.py:186 msgid "Plugin" msgstr "" -#: plugin/models.py:231 +#: plugin/models.py:249 msgid "Method" msgstr "" -#: plugin/plugin.py:228 +#: plugin/plugin.py:251 msgid "No author found" msgstr "" -#: plugin/plugin.py:240 +#: plugin/plugin.py:263 msgid "No date found" msgstr "" @@ -5746,12 +5786,12 @@ msgstr "" msgid "No valid objects provided to template" msgstr "" -#: report/api.py:216 report/api.py:257 +#: report/api.py:216 report/api.py:252 #, python-brace-format msgid "Template file '{template}' is missing or does not exist" msgstr "" -#: report/api.py:360 +#: report/api.py:355 msgid "Test report" msgstr "" @@ -5852,12 +5892,12 @@ msgid "Stock Item Test Report" msgstr "" #: report/templates/report/inventree_test_report_base.html:79 -#: stock/models.py:641 stock/templates/stock/item_base.html:322 +#: stock/models.py:648 stock/templates/stock/item_base.html:322 #: templates/js/translated/build.js:424 templates/js/translated/build.js:576 #: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673 #: templates/js/translated/model_renderers.js:118 #: templates/js/translated/order.js:118 templates/js/translated/order.js:3297 -#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:486 +#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490 msgid "Serial Number" msgstr "" @@ -5866,19 +5906,19 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report_base.html:93 -#: stock/models.py:2076 +#: stock/models.py:2083 msgid "Test" msgstr "" #: report/templates/report/inventree_test_report_base.html:94 -#: stock/models.py:2082 +#: stock/models.py:2089 msgid "Result" msgstr "" #: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:51 +#: templates/InvenTree/settings/plugin.html:53 #: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2459 +#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468 msgid "Date" msgstr "" @@ -5896,8 +5936,8 @@ msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report_base.html:137 -#: templates/js/translated/stock.js:606 templates/js/translated/stock.js:776 -#: templates/js/translated/stock.js:2708 +#: templates/js/translated/stock.js:610 templates/js/translated/stock.js:780 +#: templates/js/translated/stock.js:2717 msgid "Serial" msgstr "" @@ -5913,241 +5953,241 @@ msgstr "" msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" -#: stock/models.py:82 stock/models.py:732 +#: stock/models.py:89 stock/models.py:739 #: stock/templates/stock/item_base.html:252 msgid "Owner" msgstr "" -#: stock/models.py:83 stock/models.py:733 +#: stock/models.py:90 stock/models.py:740 msgid "Select Owner" msgstr "" -#: stock/models.py:435 +#: stock/models.py:442 msgid "StockItem with this serial number already exists" msgstr "" -#: stock/models.py:467 stock/serializers.py:95 +#: stock/models.py:474 stock/serializers.py:95 msgid "Stock item cannot be created for virtual parts" msgstr "" -#: stock/models.py:484 +#: stock/models.py:491 #, python-brace-format msgid "Part type ('{pf}') must be {pe}" msgstr "" -#: stock/models.py:494 stock/models.py:503 +#: stock/models.py:501 stock/models.py:510 msgid "Quantity must be 1 for item with a serial number" msgstr "" -#: stock/models.py:495 +#: stock/models.py:502 msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:517 +#: stock/models.py:524 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:523 +#: stock/models.py:530 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:537 +#: stock/models.py:544 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:583 +#: stock/models.py:590 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:593 +#: stock/models.py:600 msgid "Base part" msgstr "" -#: stock/models.py:601 +#: stock/models.py:608 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:608 stock/templates/stock/location.html:17 +#: stock/models.py:615 stock/templates/stock/location.html:17 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" msgstr "" -#: stock/models.py:611 +#: stock/models.py:618 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:618 +#: stock/models.py:625 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:624 stock/templates/stock/item_base.html:361 +#: stock/models.py:631 stock/templates/stock/item_base.html:361 msgid "Installed In" msgstr "" -#: stock/models.py:627 +#: stock/models.py:634 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:643 +#: stock/models.py:650 msgid "Serial number for this item" msgstr "" -#: stock/models.py:657 +#: stock/models.py:664 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:662 +#: stock/models.py:669 msgid "Stock Quantity" msgstr "" -#: stock/models.py:671 +#: stock/models.py:678 msgid "Source Build" msgstr "" -#: stock/models.py:673 +#: stock/models.py:680 msgid "Build for this stock item" msgstr "" -#: stock/models.py:684 +#: stock/models.py:691 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:687 +#: stock/models.py:694 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:693 +#: stock/models.py:700 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:699 stock/templates/stock/item_base.html:429 -#: templates/js/translated/stock.js:1879 +#: stock/models.py:706 stock/templates/stock/item_base.html:429 +#: templates/js/translated/stock.js:1883 msgid "Expiry Date" msgstr "" -#: stock/models.py:700 +#: stock/models.py:707 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:713 +#: stock/models.py:720 msgid "Delete on deplete" msgstr "" -#: stock/models.py:713 +#: stock/models.py:720 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:720 stock/templates/stock/item.html:132 +#: stock/models.py:727 stock/templates/stock/item.html:132 msgid "Stock Item Notes" msgstr "" -#: stock/models.py:728 +#: stock/models.py:735 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:756 +#: stock/models.py:763 msgid "Converted to part" msgstr "" -#: stock/models.py:1235 +#: stock/models.py:1242 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1241 +#: stock/models.py:1248 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1247 +#: stock/models.py:1254 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({n})" msgstr "" -#: stock/models.py:1250 +#: stock/models.py:1257 msgid "Serial numbers must be a list of integers" msgstr "" -#: stock/models.py:1253 +#: stock/models.py:1260 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1260 +#: stock/models.py:1267 #, python-brace-format msgid "Serial numbers already exist: {exists}" msgstr "" -#: stock/models.py:1330 +#: stock/models.py:1337 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1333 +#: stock/models.py:1340 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1336 +#: stock/models.py:1343 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1339 +#: stock/models.py:1346 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1342 +#: stock/models.py:1349 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1345 +#: stock/models.py:1352 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1352 stock/serializers.py:959 +#: stock/models.py:1359 stock/serializers.py:961 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1356 +#: stock/models.py:1363 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1360 +#: stock/models.py:1367 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1364 +#: stock/models.py:1371 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:1533 +#: stock/models.py:1540 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:1994 +#: stock/models.py:2001 msgid "Entry notes" msgstr "" -#: stock/models.py:2052 +#: stock/models.py:2059 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2058 +#: stock/models.py:2065 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2077 +#: stock/models.py:2084 msgid "Test name" msgstr "" -#: stock/models.py:2083 +#: stock/models.py:2090 msgid "Test result" msgstr "" -#: stock/models.py:2089 +#: stock/models.py:2096 msgid "Test output value" msgstr "" -#: stock/models.py:2096 +#: stock/models.py:2103 msgid "Test result attachment" msgstr "" -#: stock/models.py:2102 +#: stock/models.py:2109 msgid "Test notes" msgstr "" @@ -6172,7 +6212,7 @@ msgstr "" msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:323 stock/serializers.py:916 stock/serializers.py:1149 +#: stock/serializers.py:323 stock/serializers.py:918 stock/serializers.py:1151 msgid "Destination stock location" msgstr "" @@ -6220,63 +6260,63 @@ msgstr "" msgid "Destination location for returned item" msgstr "" -#: stock/serializers.py:771 +#: stock/serializers.py:773 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:775 +#: stock/serializers.py:777 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:779 +#: stock/serializers.py:781 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:810 +#: stock/serializers.py:812 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:816 +#: stock/serializers.py:818 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:824 +#: stock/serializers.py:826 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:834 stock/serializers.py:1065 +#: stock/serializers.py:836 stock/serializers.py:1067 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:923 +#: stock/serializers.py:925 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:928 +#: stock/serializers.py:930 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:929 +#: stock/serializers.py:931 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:934 +#: stock/serializers.py:936 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:935 +#: stock/serializers.py:937 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:945 +#: stock/serializers.py:947 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1027 +#: stock/serializers.py:1029 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1055 +#: stock/serializers.py:1057 msgid "Stock transaction notes" msgstr "" @@ -6313,7 +6353,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2852 +#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2861 msgid "Install Stock Item" msgstr "" @@ -6321,7 +6361,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1518 +#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1522 msgid "Add Test Result" msgstr "" @@ -6352,7 +6392,7 @@ msgid "Stock adjustment actions" msgstr "" #: stock/templates/stock/item_base.html:80 -#: stock/templates/stock/location.html:63 templates/stock_table.html:47 +#: stock/templates/stock/location.html:68 templates/stock_table.html:47 msgid "Count stock" msgstr "" @@ -6369,7 +6409,7 @@ msgid "Serialize stock" msgstr "" #: stock/templates/stock/item_base.html:93 -#: stock/templates/stock/location.html:69 templates/stock_table.html:48 +#: stock/templates/stock/location.html:74 templates/stock_table.html:48 msgid "Transfer stock" msgstr "" @@ -6430,7 +6470,7 @@ msgid "You are not in the list of owners of this item. This stock item cannot be msgstr "" #: stock/templates/stock/item_base.html:257 -#: stock/templates/stock/location.html:127 +#: stock/templates/stock/location.html:132 msgid "Read only" msgstr "" @@ -6508,7 +6548,7 @@ msgid "Stale" msgstr "" #: stock/templates/stock/item_base.html:442 -#: templates/js/translated/company.js:985 templates/js/translated/stock.js:1895 +#: templates/js/translated/company.js:985 templates/js/translated/stock.js:1899 msgid "Last Updated" msgstr "" @@ -6552,58 +6592,58 @@ msgstr "" msgid "Select quantity to serialize, and unique serial numbers." msgstr "" -#: stock/templates/stock/location.html:33 +#: stock/templates/stock/location.html:38 msgid "Locate stock location" msgstr "" -#: stock/templates/stock/location.html:49 +#: stock/templates/stock/location.html:54 msgid "Check-in Items" msgstr "" -#: stock/templates/stock/location.html:77 +#: stock/templates/stock/location.html:82 msgid "Location actions" msgstr "" -#: stock/templates/stock/location.html:79 +#: stock/templates/stock/location.html:84 msgid "Edit location" msgstr "" -#: stock/templates/stock/location.html:81 +#: stock/templates/stock/location.html:86 msgid "Delete location" msgstr "" -#: stock/templates/stock/location.html:90 +#: stock/templates/stock/location.html:95 msgid "Create new stock location" msgstr "" -#: stock/templates/stock/location.html:91 +#: stock/templates/stock/location.html:96 msgid "New Location" msgstr "" -#: stock/templates/stock/location.html:109 -#: stock/templates/stock/location.html:115 +#: stock/templates/stock/location.html:114 +#: stock/templates/stock/location.html:120 msgid "Location Path" msgstr "" -#: stock/templates/stock/location.html:116 +#: stock/templates/stock/location.html:121 msgid "Top level stock location" msgstr "" -#: stock/templates/stock/location.html:122 +#: stock/templates/stock/location.html:127 msgid "Location Owner" msgstr "" -#: stock/templates/stock/location.html:126 +#: stock/templates/stock/location.html:131 msgid "You are not in the list of owners of this location. This stock location cannot be edited." msgstr "" -#: stock/templates/stock/location.html:142 -#: stock/templates/stock/location.html:189 +#: stock/templates/stock/location.html:147 +#: stock/templates/stock/location.html:194 #: stock/templates/stock/location_sidebar.html:5 msgid "Sublocations" msgstr "" -#: stock/templates/stock/location.html:156 templates/InvenTree/search.html:165 +#: stock/templates/stock/location.html:161 templates/InvenTree/search.html:165 #: templates/js/translated/search.js:238 users/models.py:39 msgid "Stock Locations" msgstr "" @@ -6875,15 +6915,15 @@ msgstr "" msgid "Part Settings" msgstr "" -#: templates/InvenTree/settings/part.html:44 +#: templates/InvenTree/settings/part.html:46 msgid "Part Import" msgstr "" -#: templates/InvenTree/settings/part.html:48 +#: templates/InvenTree/settings/part.html:50 msgid "Import Part" msgstr "" -#: templates/InvenTree/settings/part.html:62 +#: templates/InvenTree/settings/part.html:64 msgid "Part Parameter Templates" msgstr "" @@ -6895,47 +6935,47 @@ msgstr "" msgid "Changing the settings below require you to immediately restart the server. Do not change this while under active usage." msgstr "" -#: templates/InvenTree/settings/plugin.html:34 +#: templates/InvenTree/settings/plugin.html:36 msgid "Plugins" msgstr "" -#: templates/InvenTree/settings/plugin.html:39 +#: templates/InvenTree/settings/plugin.html:41 #: templates/js/translated/plugin.js:16 msgid "Install Plugin" msgstr "" -#: templates/InvenTree/settings/plugin.html:48 templates/navbar.html:137 +#: templates/InvenTree/settings/plugin.html:50 templates/navbar.html:137 #: users/models.py:36 msgid "Admin" msgstr "" -#: templates/InvenTree/settings/plugin.html:50 +#: templates/InvenTree/settings/plugin.html:52 #: templates/InvenTree/settings/plugin_settings.html:28 msgid "Author" msgstr "" -#: templates/InvenTree/settings/plugin.html:52 +#: templates/InvenTree/settings/plugin.html:54 #: templates/InvenTree/settings/plugin_settings.html:43 msgid "Version" msgstr "" -#: templates/InvenTree/settings/plugin.html:74 +#: templates/InvenTree/settings/plugin.html:76 msgid "Sample" msgstr "" -#: templates/InvenTree/settings/plugin.html:99 +#: templates/InvenTree/settings/plugin.html:101 msgid "Inactive plugins" msgstr "" -#: templates/InvenTree/settings/plugin.html:122 +#: templates/InvenTree/settings/plugin.html:124 msgid "Plugin Error Stack" msgstr "" -#: templates/InvenTree/settings/plugin.html:131 +#: templates/InvenTree/settings/plugin.html:133 msgid "Stage" msgstr "" -#: templates/InvenTree/settings/plugin.html:133 +#: templates/InvenTree/settings/plugin.html:135 #: templates/js/translated/notification.js:75 msgid "Message" msgstr "" @@ -6999,11 +7039,11 @@ msgstr "" msgid "Commit Message" msgstr "" -#: templates/InvenTree/settings/plugin_settings.html:117 +#: templates/InvenTree/settings/plugin_settings.html:120 msgid "Sign Status" msgstr "" -#: templates/InvenTree/settings/plugin_settings.html:122 +#: templates/InvenTree/settings/plugin_settings.html:125 msgid "Sign Key" msgstr "" @@ -7828,7 +7868,7 @@ msgstr "" msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:456 templates/js/translated/stock.js:1050 +#: templates/js/translated/barcode.js:456 templates/js/translated/stock.js:1054 msgid "Remove stock item" msgstr "" @@ -8001,7 +8041,7 @@ msgid "Includes variant and substitute stock" msgstr "" #: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822 -#: templates/js/translated/part.js:759 +#: templates/js/translated/part.js:763 msgid "Includes variant stock" msgstr "" @@ -8098,12 +8138,12 @@ msgid "Complete Build Order" msgstr "" #: templates/js/translated/build.js:263 templates/js/translated/stock.js:92 -#: templates/js/translated/stock.js:210 +#: templates/js/translated/stock.js:214 msgid "Next available serial number" msgstr "" #: templates/js/translated/build.js:265 templates/js/translated/stock.js:94 -#: templates/js/translated/stock.js:212 +#: templates/js/translated/stock.js:216 msgid "Latest serial number" msgstr "" @@ -8316,9 +8356,9 @@ msgstr "" msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1383 -#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1682 -#: templates/js/translated/stock.js:2382 +#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387 +#: templates/js/translated/part.js:1899 templates/js/translated/stock.js:1686 +#: templates/js/translated/stock.js:2386 msgid "Select" msgstr "" @@ -8330,7 +8370,7 @@ msgstr "" msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2638 +#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647 msgid "No user information" msgstr "" @@ -8403,34 +8443,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:616 -#: templates/js/translated/company.js:876 templates/js/translated/part.js:634 -#: templates/js/translated/part.js:719 +#: templates/js/translated/company.js:876 templates/js/translated/part.js:638 +#: templates/js/translated/part.js:723 msgid "Template part" msgstr "" #: templates/js/translated/company.js:620 -#: templates/js/translated/company.js:880 templates/js/translated/part.js:638 -#: templates/js/translated/part.js:723 +#: templates/js/translated/company.js:880 templates/js/translated/part.js:642 +#: templates/js/translated/part.js:727 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:748 templates/js/translated/part.js:826 +#: templates/js/translated/company.js:748 templates/js/translated/part.js:830 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:785 templates/js/translated/part.js:868 +#: templates/js/translated/company.js:785 templates/js/translated/part.js:872 msgid "Edit parameter" msgstr "" -#: templates/js/translated/company.js:786 templates/js/translated/part.js:869 +#: templates/js/translated/company.js:786 templates/js/translated/part.js:873 msgid "Delete parameter" msgstr "" -#: templates/js/translated/company.js:805 templates/js/translated/part.js:886 +#: templates/js/translated/company.js:805 templates/js/translated/part.js:890 msgid "Edit Parameter" msgstr "" -#: templates/js/translated/company.js:816 templates/js/translated/part.js:898 +#: templates/js/translated/company.js:816 templates/js/translated/part.js:902 msgid "Delete Parameter" msgstr "" @@ -8555,7 +8595,7 @@ msgid "Labels sent to printer" msgstr "" #: templates/js/translated/label.js:60 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1078 msgid "Select Stock Items" msgstr "" @@ -8865,7 +8905,7 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2140 +#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144 msgid "Stock Status" msgstr "" @@ -8889,7 +8929,7 @@ msgstr "" msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:1672 templates/js/translated/part.js:939 +#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943 msgid "No purchase orders found" msgstr "" @@ -8924,7 +8964,7 @@ msgstr "" #: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203 #: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050 -#: templates/js/translated/part.js:2126 templates/js/translated/part.js:2479 +#: templates/js/translated/part.js:2135 templates/js/translated/part.js:2488 msgid "Unit Price" msgstr "" @@ -8934,11 +8974,11 @@ msgid "Total Price" msgstr "" #: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600 -#: templates/js/translated/part.js:1046 +#: templates/js/translated/part.js:1050 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1092 +#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096 msgid "Receive line item" msgstr "" @@ -9059,7 +9099,7 @@ msgid "Delete Stock Allocation" msgstr "" #: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398 -#: templates/js/translated/stock.js:1598 +#: templates/js/translated/stock.js:1602 msgid "Shipped to customer" msgstr "" @@ -9183,241 +9223,245 @@ msgstr "" msgid "Parent part category" msgstr "" -#: templates/js/translated/part.js:318 +#: templates/js/translated/part.js:306 templates/js/translated/stock.js:118 +msgid "Icon (optional) - Explore all available icons on" +msgstr "" + +#: templates/js/translated/part.js:322 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:331 +#: templates/js/translated/part.js:335 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:333 +#: templates/js/translated/part.js:337 msgid "Any child categories will be moved to the parent of this category" msgstr "" -#: templates/js/translated/part.js:334 +#: templates/js/translated/part.js:338 msgid "Any parts in this category will be moved to the parent of this category" msgstr "" -#: templates/js/translated/part.js:339 +#: templates/js/translated/part.js:343 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:365 +#: templates/js/translated/part.js:369 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:367 +#: templates/js/translated/part.js:371 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:378 +#: templates/js/translated/part.js:382 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:430 +#: templates/js/translated/part.js:434 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:431 +#: templates/js/translated/part.js:435 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:445 +#: templates/js/translated/part.js:449 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:447 +#: templates/js/translated/part.js:451 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:448 +#: templates/js/translated/part.js:452 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:449 +#: templates/js/translated/part.js:453 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:456 +#: templates/js/translated/part.js:460 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:492 +#: templates/js/translated/part.js:496 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:494 +#: templates/js/translated/part.js:498 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:499 +#: templates/js/translated/part.js:503 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:501 +#: templates/js/translated/part.js:505 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:518 +#: templates/js/translated/part.js:522 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:528 +#: templates/js/translated/part.js:532 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:531 +#: templates/js/translated/part.js:535 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:556 +#: templates/js/translated/part.js:560 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:582 templates/js/translated/part.js:1466 +#: templates/js/translated/part.js:586 templates/js/translated/part.js:1470 #: templates/js/translated/table_filters.js:468 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:592 templates/js/translated/part.js:1478 +#: templates/js/translated/part.js:596 templates/js/translated/part.js:1482 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:626 templates/js/translated/part.js:711 +#: templates/js/translated/part.js:630 templates/js/translated/part.js:715 msgid "Trackable part" msgstr "" -#: templates/js/translated/part.js:630 templates/js/translated/part.js:715 +#: templates/js/translated/part.js:634 templates/js/translated/part.js:719 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:642 +#: templates/js/translated/part.js:646 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:646 +#: templates/js/translated/part.js:650 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:774 +#: templates/js/translated/part.js:778 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1162 +#: templates/js/translated/part.js:1166 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1186 +#: templates/js/translated/part.js:1190 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:1253 templates/js/translated/part.js:1549 +#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1553 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:1292 +#: templates/js/translated/part.js:1296 msgid "Not available" msgstr "" -#: templates/js/translated/part.js:1443 +#: templates/js/translated/part.js:1447 msgid "No category" msgstr "" -#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816 -#: templates/js/translated/stock.js:2343 +#: templates/js/translated/part.js:1577 templates/js/translated/part.js:1820 +#: templates/js/translated/stock.js:2347 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:1589 +#: templates/js/translated/part.js:1593 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:1655 +#: templates/js/translated/part.js:1659 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:1660 +#: templates/js/translated/part.js:1664 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:1665 +#: templates/js/translated/part.js:1669 msgid "Select Part Category" msgstr "" -#: templates/js/translated/part.js:1678 +#: templates/js/translated/part.js:1682 msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2362 +#: templates/js/translated/part.js:1839 templates/js/translated/stock.js:2366 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:1914 +#: templates/js/translated/part.js:1918 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:1925 +#: templates/js/translated/part.js:1934 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:1983 +#: templates/js/translated/part.js:1992 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2034 templates/js/translated/stock.js:1295 +#: templates/js/translated/part.js:2043 templates/js/translated/stock.js:1299 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:2035 templates/js/translated/stock.js:1296 -#: templates/js/translated/stock.js:1556 +#: templates/js/translated/part.js:2044 templates/js/translated/stock.js:1300 +#: templates/js/translated/stock.js:1560 msgid "Delete test result" msgstr "" -#: templates/js/translated/part.js:2041 +#: templates/js/translated/part.js:2050 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2063 +#: templates/js/translated/part.js:2072 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2077 +#: templates/js/translated/part.js:2086 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2102 +#: templates/js/translated/part.js:2111 #, python-brace-format msgid "No ${human_name} information found" msgstr "" -#: templates/js/translated/part.js:2159 +#: templates/js/translated/part.js:2168 #, python-brace-format msgid "Edit ${human_name}" msgstr "" -#: templates/js/translated/part.js:2160 +#: templates/js/translated/part.js:2169 #, python-brace-format msgid "Delete ${human_name}" msgstr "" -#: templates/js/translated/part.js:2274 +#: templates/js/translated/part.js:2283 msgid "Current Stock" msgstr "" -#: templates/js/translated/part.js:2307 +#: templates/js/translated/part.js:2316 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2333 +#: templates/js/translated/part.js:2342 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2403 +#: templates/js/translated/part.js:2412 msgid "Single Price" msgstr "" -#: templates/js/translated/part.js:2422 +#: templates/js/translated/part.js:2431 msgid "Single Price Difference" msgstr "" @@ -9511,376 +9555,376 @@ msgstr "" msgid "Parent stock location" msgstr "" -#: templates/js/translated/stock.js:140 +#: templates/js/translated/stock.js:144 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:155 +#: templates/js/translated/stock.js:159 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:169 +#: templates/js/translated/stock.js:173 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:171 +#: templates/js/translated/stock.js:175 msgid "Any child locations will be moved to the parent of this location" msgstr "" -#: templates/js/translated/stock.js:172 +#: templates/js/translated/stock.js:176 msgid "Any stock items in this location will be moved to the parent of this location" msgstr "" -#: templates/js/translated/stock.js:178 +#: templates/js/translated/stock.js:182 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:223 +#: templates/js/translated/stock.js:227 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:262 +#: templates/js/translated/stock.js:266 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:268 +#: templates/js/translated/stock.js:272 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:333 +#: templates/js/translated/stock.js:337 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:353 +#: templates/js/translated/stock.js:357 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:369 +#: templates/js/translated/stock.js:373 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:374 +#: templates/js/translated/stock.js:378 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:395 +#: templates/js/translated/stock.js:399 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:445 +#: templates/js/translated/stock.js:449 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:458 +#: templates/js/translated/stock.js:462 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:483 +#: templates/js/translated/stock.js:487 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:487 templates/js/translated/stock.js:488 +#: templates/js/translated/stock.js:491 templates/js/translated/stock.js:492 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:504 +#: templates/js/translated/stock.js:508 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:524 +#: templates/js/translated/stock.js:528 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:533 +#: templates/js/translated/stock.js:537 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:656 +#: templates/js/translated/stock.js:660 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:657 +#: templates/js/translated/stock.js:661 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:734 +#: templates/js/translated/stock.js:738 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:735 +#: templates/js/translated/stock.js:739 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:737 +#: templates/js/translated/stock.js:741 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:738 +#: templates/js/translated/stock.js:742 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:824 +#: templates/js/translated/stock.js:828 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:825 +#: templates/js/translated/stock.js:829 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:920 +#: templates/js/translated/stock.js:924 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:921 +#: templates/js/translated/stock.js:925 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:927 +#: templates/js/translated/stock.js:931 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:928 +#: templates/js/translated/stock.js:932 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:932 +#: templates/js/translated/stock.js:936 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:933 +#: templates/js/translated/stock.js:937 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:937 +#: templates/js/translated/stock.js:941 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:938 users/models.py:216 +#: templates/js/translated/stock.js:942 users/models.py:216 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:942 +#: templates/js/translated/stock.js:946 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1035 +#: templates/js/translated/stock.js:1039 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1035 +#: templates/js/translated/stock.js:1039 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1075 +#: templates/js/translated/stock.js:1079 msgid "You must select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1098 +#: templates/js/translated/stock.js:1102 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1234 +#: templates/js/translated/stock.js:1238 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1236 +#: templates/js/translated/stock.js:1240 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1241 +#: templates/js/translated/stock.js:1245 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1288 +#: templates/js/translated/stock.js:1292 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1291 +#: templates/js/translated/stock.js:1295 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1317 +#: templates/js/translated/stock.js:1321 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1374 +#: templates/js/translated/stock.js:1378 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1539 +#: templates/js/translated/stock.js:1543 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1561 +#: templates/js/translated/stock.js:1565 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1590 +#: templates/js/translated/stock.js:1594 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1594 +#: templates/js/translated/stock.js:1598 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1602 +#: templates/js/translated/stock.js:1606 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1608 +#: templates/js/translated/stock.js:1612 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1775 +#: templates/js/translated/stock.js:1779 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:1780 +#: templates/js/translated/stock.js:1784 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:1783 +#: templates/js/translated/stock.js:1787 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:1786 +#: templates/js/translated/stock.js:1790 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:1788 +#: templates/js/translated/stock.js:1792 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:1790 +#: templates/js/translated/stock.js:1794 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:1793 +#: templates/js/translated/stock.js:1797 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:1797 +#: templates/js/translated/stock.js:1801 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:1799 +#: templates/js/translated/stock.js:1803 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:1806 +#: templates/js/translated/stock.js:1810 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:1808 +#: templates/js/translated/stock.js:1812 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:1810 +#: templates/js/translated/stock.js:1814 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:1814 +#: templates/js/translated/stock.js:1818 #: templates/js/translated/table_filters.js:196 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:1865 +#: templates/js/translated/stock.js:1869 msgid "Stocktake" msgstr "" -#: templates/js/translated/stock.js:1944 +#: templates/js/translated/stock.js:1948 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:1982 +#: templates/js/translated/stock.js:1986 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2155 +#: templates/js/translated/stock.js:2159 msgid "Set Stock Status" msgstr "" -#: templates/js/translated/stock.js:2169 +#: templates/js/translated/stock.js:2173 msgid "Select Status Code" msgstr "" -#: templates/js/translated/stock.js:2170 +#: templates/js/translated/stock.js:2174 msgid "Status code must be selected" msgstr "" -#: templates/js/translated/stock.js:2400 +#: templates/js/translated/stock.js:2404 msgid "Load Subloactions" msgstr "" -#: templates/js/translated/stock.js:2484 +#: templates/js/translated/stock.js:2493 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2500 +#: templates/js/translated/stock.js:2509 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2522 +#: templates/js/translated/stock.js:2531 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2541 +#: templates/js/translated/stock.js:2550 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2560 +#: templates/js/translated/stock.js:2569 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2578 +#: templates/js/translated/stock.js:2587 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:2601 +#: templates/js/translated/stock.js:2610 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:2609 +#: templates/js/translated/stock.js:2618 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:2685 +#: templates/js/translated/stock.js:2694 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:2736 templates/js/translated/stock.js:2772 +#: templates/js/translated/stock.js:2745 templates/js/translated/stock.js:2781 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:2785 +#: templates/js/translated/stock.js:2794 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:2806 +#: templates/js/translated/stock.js:2815 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:2807 +#: templates/js/translated/stock.js:2816 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:2809 +#: templates/js/translated/stock.js:2818 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:2810 +#: templates/js/translated/stock.js:2819 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:2811 +#: templates/js/translated/stock.js:2820 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:2812 +#: templates/js/translated/stock.js:2821 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:2825 +#: templates/js/translated/stock.js:2834 msgid "Select part to install" msgstr "" diff --git a/InvenTree/locale/tr/LC_MESSAGES/django.po b/InvenTree/locale/tr/LC_MESSAGES/django.po index 1fe17eff29..cd48c0460a 100644 --- a/InvenTree/locale/tr/LC_MESSAGES/django.po +++ b/InvenTree/locale/tr/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-11 02:47+0000\n" -"PO-Revision-Date: 2022-08-11 13:49\n" +"POT-Creation-Date: 2022-08-16 11:53+0000\n" +"PO-Revision-Date: 2022-08-16 21:35\n" "Last-Translator: \n" "Language-Team: Turkish\n" "Language: tr_TR\n" @@ -36,15 +36,15 @@ msgstr "Tarih giriniz" #: order/templates/order/so_sidebar.html:17 #: part/templates/part/part_sidebar.html:59 #: report/templates/report/inventree_build_order_base.html:172 -#: stock/models.py:1993 stock/models.py:2101 stock/serializers.py:329 -#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:823 -#: stock/serializers.py:922 stock/serializers.py:1054 +#: stock/models.py:2000 stock/models.py:2108 stock/serializers.py:329 +#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825 +#: stock/serializers.py:924 stock/serializers.py:1056 #: stock/templates/stock/stock_sidebar.html:25 #: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101 #: templates/js/translated/company.js:964 templates/js/translated/order.js:2104 #: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753 #: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102 -#: templates/js/translated/stock.js:1370 templates/js/translated/stock.js:1976 +#: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980 msgid "Notes" msgstr "Notlar" @@ -163,6 +163,10 @@ msgstr "Seri numarası bulunamadı" msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "" +#: InvenTree/mixins.py:71 +msgid "Remove HTML tags from this value" +msgstr "" + #: InvenTree/models.py:236 msgid "Improperly formatted pattern" msgstr "" @@ -195,7 +199,7 @@ msgstr "Eksik dosya" msgid "Missing external link" msgstr "Bozuk dış bağlantı" -#: InvenTree/models.py:395 stock/models.py:2095 +#: InvenTree/models.py:395 stock/models.py:2102 #: templates/js/translated/attachment.js:103 #: templates/js/translated/attachment.js:241 msgid "Attachment" @@ -207,16 +211,16 @@ msgstr "Eklenecek dosyayı seç" #: InvenTree/models.py:402 company/models.py:124 company/models.py:276 #: company/models.py:510 order/models.py:84 order/models.py:1245 -#: part/models.py:795 +#: part/models.py:802 #: report/templates/report/inventree_build_order_base.html:164 #: templates/js/translated/company.js:656 #: templates/js/translated/company.js:948 templates/js/translated/order.js:2742 -#: templates/js/translated/part.js:1510 +#: templates/js/translated/part.js:1514 msgid "Link" msgstr "Bağlantı" -#: InvenTree/models.py:403 build/models.py:296 part/models.py:796 -#: stock/models.py:651 +#: InvenTree/models.py:403 build/models.py:296 part/models.py:803 +#: stock/models.py:658 msgid "Link to external URL" msgstr "Harici URL'ye bağlantı" @@ -229,12 +233,12 @@ msgstr "Yorum" msgid "File comment" msgstr "Dosya yorumu" -#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1646 -#: common/models.py:1647 common/models.py:1870 common/models.py:1871 -#: common/models.py:2133 common/models.py:2134 part/models.py:2193 -#: part/models.py:2213 plugin/models.py:238 plugin/models.py:239 +#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665 +#: common/models.py:1666 common/models.py:1889 common/models.py:1890 +#: common/models.py:2152 common/models.py:2153 part/models.py:2200 +#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2632 +#: templates/js/translated/stock.js:2641 msgid "User" msgstr "Kullanıcı" @@ -271,19 +275,19 @@ msgstr "Dosya adı değiştirilirken hata" msgid "Invalid choice" msgstr "Geçersiz seçim" -#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1856 -#: company/models.py:358 label/models.py:101 part/models.py:739 -#: part/models.py:2371 plugin/models.py:93 report/models.py:152 +#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875 +#: company/models.py:358 label/models.py:101 part/models.py:746 +#: part/models.py:2378 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 -#: templates/InvenTree/settings/plugin.html:49 -#: templates/InvenTree/settings/plugin.html:132 +#: templates/InvenTree/settings/plugin.html:51 +#: templates/InvenTree/settings/plugin.html:134 #: templates/InvenTree/settings/plugin_settings.html:23 #: templates/InvenTree/settings/settings.html:347 #: templates/js/translated/company.js:545 #: templates/js/translated/company.js:758 #: templates/js/translated/notification.js:71 -#: templates/js/translated/part.js:684 templates/js/translated/part.js:836 -#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2388 +#: templates/js/translated/part.js:688 templates/js/translated/part.js:840 +#: templates/js/translated/part.js:1906 templates/js/translated/stock.js:2392 msgid "Name" msgstr "Adı" @@ -292,21 +296,21 @@ msgstr "Adı" #: company/models.py:516 company/templates/company/company_base.html:71 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:87 label/models.py:108 -#: order/models.py:82 part/models.py:762 part/templates/part/category.html:74 +#: order/models.py:82 part/models.py:769 part/templates/part/category.html:80 #: part/templates/part/part_base.html:167 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 -#: stock/templates/stock/location.html:103 +#: stock/templates/stock/location.html:108 #: templates/InvenTree/settings/plugin_settings.html:33 #: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848 #: templates/js/translated/build.js:2471 templates/js/translated/company.js:409 #: templates/js/translated/company.js:667 #: templates/js/translated/company.js:959 templates/js/translated/order.js:1720 #: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531 -#: templates/js/translated/part.js:743 templates/js/translated/part.js:1149 -#: templates/js/translated/part.js:1424 templates/js/translated/part.js:1933 -#: templates/js/translated/part.js:2002 templates/js/translated/stock.js:1739 -#: templates/js/translated/stock.js:2415 templates/js/translated/stock.js:2469 +#: templates/js/translated/part.js:747 templates/js/translated/part.js:1153 +#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1942 +#: templates/js/translated/part.js:2011 templates/js/translated/stock.js:1743 +#: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478 msgid "Description" msgstr "Açıklama" @@ -319,7 +323,7 @@ msgid "parent" msgstr "üst" #: InvenTree/models.py:560 InvenTree/models.py:561 -#: templates/js/translated/part.js:1939 templates/js/translated/stock.js:2421 +#: templates/js/translated/part.js:1948 templates/js/translated/stock.js:2430 msgid "Path" msgstr "" @@ -331,7 +335,7 @@ msgstr "" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:55 part/models.py:2692 +#: InvenTree/serializers.py:55 part/models.py:2699 msgid "Must be a valid number" msgstr "Geçerli bir numara olmalı" @@ -398,99 +402,99 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/settings.py:609 +#: InvenTree/settings.py:607 msgid "Czech" msgstr "" -#: InvenTree/settings.py:610 +#: InvenTree/settings.py:608 msgid "German" msgstr "Almanca" -#: InvenTree/settings.py:611 +#: InvenTree/settings.py:609 msgid "Greek" msgstr "Yunanca" -#: InvenTree/settings.py:612 +#: InvenTree/settings.py:610 msgid "English" msgstr "İngilizce" -#: InvenTree/settings.py:613 +#: InvenTree/settings.py:611 msgid "Spanish" msgstr "İspanyolca" -#: InvenTree/settings.py:614 +#: InvenTree/settings.py:612 msgid "Spanish (Mexican)" msgstr "İspanyolca(Meksika)" -#: InvenTree/settings.py:615 +#: InvenTree/settings.py:613 msgid "Farsi / Persian" msgstr "" -#: InvenTree/settings.py:616 +#: InvenTree/settings.py:614 msgid "French" msgstr "Fransızca" -#: InvenTree/settings.py:617 +#: InvenTree/settings.py:615 msgid "Hebrew" msgstr "İbranice" -#: InvenTree/settings.py:618 +#: InvenTree/settings.py:616 msgid "Hungarian" msgstr "Macarca" -#: InvenTree/settings.py:619 +#: InvenTree/settings.py:617 msgid "Italian" msgstr "İtalyanca" -#: InvenTree/settings.py:620 +#: InvenTree/settings.py:618 msgid "Japanese" msgstr "Japonca" -#: InvenTree/settings.py:621 +#: InvenTree/settings.py:619 msgid "Korean" msgstr "Korece" -#: InvenTree/settings.py:622 +#: InvenTree/settings.py:620 msgid "Dutch" msgstr "Flemenkçe" -#: InvenTree/settings.py:623 +#: InvenTree/settings.py:621 msgid "Norwegian" msgstr "Norveççe" -#: InvenTree/settings.py:624 +#: InvenTree/settings.py:622 msgid "Polish" msgstr "Polonyaca" -#: InvenTree/settings.py:625 +#: InvenTree/settings.py:623 msgid "Portuguese" msgstr "" -#: InvenTree/settings.py:626 +#: InvenTree/settings.py:624 msgid "Portuguese (Brazilian)" msgstr "" -#: InvenTree/settings.py:627 +#: InvenTree/settings.py:625 msgid "Russian" msgstr "Rusça" -#: InvenTree/settings.py:628 +#: InvenTree/settings.py:626 msgid "Swedish" msgstr "İsveççe" -#: InvenTree/settings.py:629 +#: InvenTree/settings.py:627 msgid "Thai" msgstr "Tay dili" -#: InvenTree/settings.py:630 +#: InvenTree/settings.py:628 msgid "Turkish" msgstr "Türkçe" -#: InvenTree/settings.py:631 +#: InvenTree/settings.py:629 msgid "Vietnamese" msgstr "Vietnamca" -#: InvenTree/settings.py:632 +#: InvenTree/settings.py:630 msgid "Chinese" msgstr "Çince" @@ -621,7 +625,7 @@ msgstr "Üst ögeden ayır" msgid "Split child item" msgstr "Alt ögeyi ayır" -#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2080 +#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2084 msgid "Merged stock items" msgstr "Stok parçalarını birleştir" @@ -743,7 +747,7 @@ msgid "Build Order Reference" msgstr "Yapım İşi Emri Referansı" #: build/models.py:166 order/models.py:240 order/models.py:623 -#: order/models.py:904 part/models.py:2610 +#: order/models.py:904 part/models.py:2617 #: part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 @@ -770,10 +774,10 @@ msgstr "Bu yapım işinin tahsis edildiği yapım işi emri" #: build/models.py:191 build/templates/build/build_base.html:77 #: build/templates/build/detail.html:29 company/models.py:670 #: order/models.py:1001 order/models.py:1112 order/models.py:1113 -#: part/models.py:336 part/models.py:2139 part/models.py:2154 -#: part/models.py:2173 part/models.py:2191 part/models.py:2290 -#: part/models.py:2410 part/models.py:2500 part/models.py:2585 -#: part/models.py:2861 part/serializers.py:811 +#: part/models.py:343 part/models.py:2146 part/models.py:2161 +#: part/models.py:2180 part/models.py:2198 part/models.py:2297 +#: part/models.py:2417 part/models.py:2507 part/models.py:2592 +#: part/models.py:2868 part/serializers.py:813 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -796,11 +800,11 @@ msgstr "Bu yapım işinin tahsis edildiği yapım işi emri" #: templates/js/translated/order.js:934 templates/js/translated/order.js:1387 #: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885 #: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507 -#: templates/js/translated/part.js:1134 templates/js/translated/part.js:1206 -#: templates/js/translated/part.js:1402 templates/js/translated/stock.js:582 -#: templates/js/translated/stock.js:747 templates/js/translated/stock.js:954 -#: templates/js/translated/stock.js:1696 templates/js/translated/stock.js:2495 -#: templates/js/translated/stock.js:2690 templates/js/translated/stock.js:2824 +#: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210 +#: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586 +#: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958 +#: templates/js/translated/stock.js:1700 templates/js/translated/stock.js:2504 +#: templates/js/translated/stock.js:2699 templates/js/translated/stock.js:2833 msgid "Part" msgstr "Parça" @@ -858,7 +862,7 @@ msgid "Build status code" msgstr "Yapım işi durum kodu" #: build/models.py:251 build/serializers.py:225 order/serializers.py:447 -#: stock/models.py:655 templates/js/translated/order.js:1247 +#: stock/models.py:662 templates/js/translated/order.js:1247 msgid "Batch Code" msgstr "Sıra numarası" @@ -866,7 +870,7 @@ msgstr "Sıra numarası" msgid "Batch code for this build output" msgstr "Yapım işi çıktısı için sıra numarası" -#: build/models.py:258 order/models.py:86 part/models.py:931 +#: build/models.py:258 order/models.py:86 part/models.py:938 #: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544 msgid "Creation Date" msgstr "Oluşturulma tarihi" @@ -899,7 +903,7 @@ msgstr "Bu yapım işi emrini veren kullanıcı" #: build/models.py:289 build/templates/build/build_base.html:190 #: build/templates/build/detail.html:115 order/models.py:100 #: order/templates/order/order_base.html:176 -#: order/templates/order/sales_order_base.html:183 part/models.py:935 +#: order/templates/order/sales_order_base.html:183 part/models.py:942 #: report/templates/report/inventree_build_order_base.html:158 #: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754 msgid "Responsible" @@ -912,7 +916,7 @@ msgstr "Bu yapım işi emrinden sorumlu kullanıcı" #: build/models.py:295 build/templates/build/detail.html:101 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:153 -#: part/templates/part/part_base.html:346 stock/models.py:649 +#: part/templates/part/part_base.html:346 stock/models.py:656 #: stock/templates/stock/item_base.html:205 msgid "External Link" msgstr "Harici Bağlantı" @@ -978,8 +982,8 @@ msgid "Build to allocate parts" msgstr "Yapım işi için tahsis edilen parçalar" #: build/models.py:1345 build/serializers.py:645 order/serializers.py:1015 -#: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 -#: stock/serializers.py:880 stock/templates/stock/item_base.html:10 +#: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:756 +#: stock/serializers.py:882 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:199 #: templates/js/translated/build.js:741 templates/js/translated/build.js:746 @@ -987,8 +991,8 @@ msgstr "Yapım işi için tahsis edilen parçalar" #: templates/js/translated/order.js:104 templates/js/translated/order.js:2886 #: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193 #: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380 -#: templates/js/translated/stock.js:583 templates/js/translated/stock.js:748 -#: templates/js/translated/stock.js:2568 +#: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752 +#: templates/js/translated/stock.js:2577 msgid "Stock Item" msgstr "Stok Kalemi" @@ -998,11 +1002,11 @@ msgstr "Kaynak stok kalemi" #: build/models.py:1358 build/serializers.py:193 #: build/templates/build/build_base.html:82 -#: build/templates/build/detail.html:34 common/models.py:1678 +#: build/templates/build/detail.html:34 common/models.py:1697 #: company/templates/company/supplier_part.html:279 order/models.py:897 #: order/models.py:1423 order/serializers.py:1155 #: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40 -#: part/models.py:2601 part/templates/part/detail.html:937 +#: part/models.py:2608 part/templates/part/detail.html:937 #: part/templates/part/detail.html:1023 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 @@ -1025,11 +1029,11 @@ msgstr "Kaynak stok kalemi" #: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207 #: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386 #: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037 -#: templates/js/translated/part.js:1034 templates/js/translated/part.js:2147 -#: templates/js/translated/part.js:2378 templates/js/translated/part.js:2412 -#: templates/js/translated/part.js:2490 templates/js/translated/stock.js:454 -#: templates/js/translated/stock.js:608 templates/js/translated/stock.js:778 -#: templates/js/translated/stock.js:2617 templates/js/translated/stock.js:2702 +#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2156 +#: templates/js/translated/part.js:2387 templates/js/translated/part.js:2421 +#: templates/js/translated/part.js:2499 templates/js/translated/stock.js:458 +#: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782 +#: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711 msgid "Quantity" msgstr "Miktar" @@ -1071,8 +1075,8 @@ msgid "Enter quantity for build output" msgstr "Yapım işi çıktısı için miktarını girin" #: build/serializers.py:208 build/serializers.py:665 order/models.py:318 -#: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 -#: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 +#: order/serializers.py:287 order/serializers.py:442 part/serializers.py:544 +#: part/serializers.py:976 stock/models.py:484 stock/models.py:1251 #: stock/serializers.py:302 msgid "Quantity must be greater than zero" msgstr "" @@ -1087,7 +1091,7 @@ msgstr "" #: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159 #: stock/serializers.py:311 templates/js/translated/order.js:1258 -#: templates/js/translated/stock.js:267 templates/js/translated/stock.js:455 +#: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459 msgid "Serial Numbers" msgstr "Seri Numaraları" @@ -1113,16 +1117,16 @@ msgstr "" #: build/serializers.py:366 order/serializers.py:428 order/serializers.py:532 #: stock/serializers.py:322 stock/serializers.py:453 stock/serializers.py:534 -#: stock/serializers.py:915 stock/serializers.py:1148 +#: stock/serializers.py:917 stock/serializers.py:1150 #: stock/templates/stock/item_base.html:390 #: templates/js/translated/barcode.js:436 #: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753 #: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285 #: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305 #: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394 -#: templates/js/translated/part.js:181 templates/js/translated/stock.js:584 -#: templates/js/translated/stock.js:749 templates/js/translated/stock.js:956 -#: templates/js/translated/stock.js:1850 templates/js/translated/stock.js:2509 +#: templates/js/translated/part.js:181 templates/js/translated/stock.js:588 +#: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960 +#: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518 msgid "Location" msgstr "Konum" @@ -1135,8 +1139,8 @@ msgstr "" #: order/serializers.py:465 stock/templates/stock/item_base.html:423 #: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505 #: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724 -#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1825 -#: templates/js/translated/stock.js:2586 templates/js/translated/stock.js:2718 +#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829 +#: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727 msgid "Status" msgstr "Durum" @@ -1212,8 +1216,8 @@ msgstr "Gerekli yapım işi miktarı tamamlanmadı" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:577 build/serializers.py:622 part/models.py:2719 -#: part/models.py:2853 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726 +#: part/models.py:2860 msgid "BOM Item" msgstr "" @@ -1229,7 +1233,7 @@ msgstr "" msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:651 stock/serializers.py:767 +#: build/serializers.py:651 stock/serializers.py:769 msgid "Item must be in stock" msgstr "" @@ -1367,7 +1371,7 @@ msgstr "Stok, yapım işi emri için tamamen tahsis edilemedi" #: report/templates/report/inventree_build_order_base.html:125 #: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741 #: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552 -#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1038 +#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042 msgid "Target Date" msgstr "Hedeflenen tarih" @@ -1445,8 +1449,8 @@ msgstr "" #: stock/templates/stock/item_base.html:170 #: templates/js/translated/build.js:1182 #: templates/js/translated/model_renderers.js:124 -#: templates/js/translated/stock.js:1022 templates/js/translated/stock.js:1839 -#: templates/js/translated/stock.js:2725 +#: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843 +#: templates/js/translated/stock.js:2734 #: templates/js/translated/table_filters.js:159 #: templates/js/translated/table_filters.js:250 msgid "Batch" @@ -1506,7 +1510,7 @@ msgstr "Gerekli parçaları sipariş edin" #: build/templates/build/detail.html:187 #: company/templates/company/detail.html:37 #: company/templates/company/detail.html:85 -#: part/templates/part/category.html:177 templates/js/translated/order.js:977 +#: part/templates/part/category.html:183 templates/js/translated/order.js:977 msgid "Order Parts" msgstr "Parça Siparişi" @@ -1559,12 +1563,12 @@ msgid "Delete outputs" msgstr "" #: build/templates/build/detail.html:267 -#: stock/templates/stock/location.html:197 templates/stock_table.html:27 +#: stock/templates/stock/location.html:202 templates/stock_table.html:27 msgid "Printing Actions" msgstr "Yazdırma İşlemleri" #: build/templates/build/detail.html:271 build/templates/build/detail.html:272 -#: stock/templates/stock/location.html:201 templates/stock_table.html:31 +#: stock/templates/stock/location.html:206 templates/stock_table.html:31 msgid "Print labels" msgstr "Etiketleri yazdır" @@ -1841,7 +1845,7 @@ msgstr "Kategori Paremetre Sablonu Kopyala" msgid "Copy category parameter templates when creating a part" msgstr "Parça oluştururken kategori parametre şablonlarını kopyala" -#: common/models.py:951 part/models.py:2412 report/models.py:158 +#: common/models.py:951 part/models.py:2419 report/models.py:158 #: templates/js/translated/table_filters.js:38 #: templates/js/translated/table_filters.js:484 msgid "Template" @@ -1851,7 +1855,7 @@ msgstr "Şablon" msgid "Parts are templates by default" msgstr "Parçaları varsayılan olan şablondur" -#: common/models.py:958 part/models.py:887 templates/js/translated/bom.js:1448 +#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448 #: templates/js/translated/table_filters.js:176 #: templates/js/translated/table_filters.js:447 msgid "Assembly" @@ -1861,7 +1865,7 @@ msgstr "Montaj" msgid "Parts can be assembled from other components by default" msgstr "Parçalar varsayılan olarak başka bileşenlerden monte edilebilir" -#: common/models.py:965 part/models.py:893 +#: common/models.py:965 part/models.py:900 #: templates/js/translated/table_filters.js:455 msgid "Component" msgstr "Bileşen" @@ -1870,7 +1874,7 @@ msgstr "Bileşen" msgid "Parts can be used as sub-components by default" msgstr "Parçalar varsayılan olarak alt bileşen olarak kullanılabilir" -#: common/models.py:972 part/models.py:904 +#: common/models.py:972 part/models.py:911 msgid "Purchaseable" msgstr "Satın Alınabilir" @@ -1878,7 +1882,7 @@ msgstr "Satın Alınabilir" msgid "Parts are purchaseable by default" msgstr "Parçalar varsayılan olarak satın alınabilir" -#: common/models.py:979 part/models.py:909 +#: common/models.py:979 part/models.py:916 #: templates/js/translated/table_filters.js:476 msgid "Salable" msgstr "Satılabilir" @@ -1887,7 +1891,7 @@ msgstr "Satılabilir" msgid "Parts are salable by default" msgstr "Parçalar varsayılan olarak satılabilir" -#: common/models.py:986 part/models.py:899 +#: common/models.py:986 part/models.py:906 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:108 #: templates/js/translated/table_filters.js:488 @@ -1898,7 +1902,7 @@ msgstr "Takip Edilebilir" msgid "Parts are trackable by default" msgstr "Parçalar varsayılan olarak takip edilebilir" -#: common/models.py:993 part/models.py:919 +#: common/models.py:993 part/models.py:926 #: part/templates/part/part_base.html:151 #: templates/js/translated/table_filters.js:42 #: templates/js/translated/table_filters.js:492 @@ -1982,608 +1986,632 @@ msgid "Format to display the part name" msgstr "" #: common/models.py:1074 -msgid "Enable label printing" +msgid "Part Category Default Icon" msgstr "" #: common/models.py:1075 -msgid "Enable label printing from the web interface" +msgid "Part category default icon (empty means no icon)" +msgstr "" + +#: common/models.py:1080 +msgid "Enable label printing" msgstr "" #: common/models.py:1081 +msgid "Enable label printing from the web interface" +msgstr "" + +#: common/models.py:1087 msgid "Label Image DPI" msgstr "" -#: common/models.py:1082 +#: common/models.py:1088 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/models.py:1091 +#: common/models.py:1097 msgid "Enable Reports" msgstr "" -#: common/models.py:1092 +#: common/models.py:1098 msgid "Enable generation of reports" msgstr "" -#: common/models.py:1098 templates/stats.html:25 +#: common/models.py:1104 templates/stats.html:25 msgid "Debug Mode" msgstr "Hata Ayıklama Modu" -#: common/models.py:1099 +#: common/models.py:1105 msgid "Generate reports in debug mode (HTML output)" msgstr "Raporları hata ayıklama modunda üret (HTML çıktısı)" -#: common/models.py:1105 +#: common/models.py:1111 msgid "Page Size" msgstr "Sayfa Boyutu" -#: common/models.py:1106 +#: common/models.py:1112 msgid "Default page size for PDF reports" msgstr "PDF raporlar için varsayılan sayfa boyutu" -#: common/models.py:1116 +#: common/models.py:1122 msgid "Enable Test Reports" msgstr "" -#: common/models.py:1117 +#: common/models.py:1123 msgid "Enable generation of test reports" msgstr "" -#: common/models.py:1123 +#: common/models.py:1129 msgid "Attach Test Reports" msgstr "" -#: common/models.py:1124 +#: common/models.py:1130 msgid "When printing a Test Report, attach a copy of the Test Report to the associated Stock Item" msgstr "" -#: common/models.py:1130 +#: common/models.py:1136 msgid "Batch Code Template" msgstr "" -#: common/models.py:1131 +#: common/models.py:1137 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/models.py:1136 +#: common/models.py:1142 msgid "Stock Expiry" msgstr "" -#: common/models.py:1137 +#: common/models.py:1143 msgid "Enable stock expiry functionality" msgstr "" -#: common/models.py:1143 +#: common/models.py:1149 msgid "Sell Expired Stock" msgstr "" -#: common/models.py:1144 +#: common/models.py:1150 msgid "Allow sale of expired stock" msgstr "" -#: common/models.py:1150 +#: common/models.py:1156 msgid "Stock Stale Time" msgstr "" -#: common/models.py:1151 +#: common/models.py:1157 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/models.py:1153 +#: common/models.py:1159 msgid "days" msgstr "günler" -#: common/models.py:1158 +#: common/models.py:1164 msgid "Build Expired Stock" msgstr "" -#: common/models.py:1159 +#: common/models.py:1165 msgid "Allow building with expired stock" msgstr "" -#: common/models.py:1165 +#: common/models.py:1171 msgid "Stock Ownership Control" msgstr "" -#: common/models.py:1166 +#: common/models.py:1172 msgid "Enable ownership control over stock locations and items" msgstr "Stok konumu ve ögeler üzerinde sahiplik kontrolünü etkinleştirin" -#: common/models.py:1172 -msgid "Build Order Reference Pattern" -msgstr "" - -#: common/models.py:1173 -msgid "Required pattern for generating Build Order reference field" +#: common/models.py:1178 +msgid "Stock Location Default Icon" msgstr "" #: common/models.py:1179 +msgid "Stock location default icon (empty means no icon)" +msgstr "" + +#: common/models.py:1184 +msgid "Build Order Reference Pattern" +msgstr "" + +#: common/models.py:1185 +msgid "Required pattern for generating Build Order reference field" +msgstr "" + +#: common/models.py:1191 msgid "Sales Order Reference Pattern" msgstr "" -#: common/models.py:1180 +#: common/models.py:1192 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/models.py:1186 +#: common/models.py:1198 msgid "Sales Order Default Shipment" msgstr "" -#: common/models.py:1187 +#: common/models.py:1199 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/models.py:1193 +#: common/models.py:1205 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/models.py:1194 +#: common/models.py:1206 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/models.py:1201 +#: common/models.py:1213 msgid "Enable password forgot" msgstr "" -#: common/models.py:1202 +#: common/models.py:1214 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/models.py:1208 +#: common/models.py:1220 msgid "Enable registration" msgstr "" -#: common/models.py:1209 +#: common/models.py:1221 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/models.py:1215 +#: common/models.py:1227 msgid "Enable SSO" msgstr "" -#: common/models.py:1216 +#: common/models.py:1228 msgid "Enable SSO on the login pages" msgstr "" -#: common/models.py:1222 +#: common/models.py:1234 msgid "Email required" msgstr "" -#: common/models.py:1223 +#: common/models.py:1235 msgid "Require user to supply mail on signup" msgstr "" -#: common/models.py:1229 +#: common/models.py:1241 msgid "Auto-fill SSO users" msgstr "" -#: common/models.py:1230 +#: common/models.py:1242 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/models.py:1236 +#: common/models.py:1248 msgid "Mail twice" msgstr "" -#: common/models.py:1237 +#: common/models.py:1249 msgid "On signup ask users twice for their mail" msgstr "" -#: common/models.py:1243 +#: common/models.py:1255 msgid "Password twice" msgstr "" -#: common/models.py:1244 +#: common/models.py:1256 msgid "On signup ask users twice for their password" msgstr "" -#: common/models.py:1250 +#: common/models.py:1262 msgid "Group on signup" msgstr "" -#: common/models.py:1251 +#: common/models.py:1263 msgid "Group to which new users are assigned on registration" msgstr "" -#: common/models.py:1257 +#: common/models.py:1269 msgid "Enforce MFA" msgstr "" -#: common/models.py:1258 +#: common/models.py:1270 msgid "Users must use multifactor security." msgstr "" -#: common/models.py:1264 +#: common/models.py:1276 msgid "Check plugins on startup" msgstr "" -#: common/models.py:1265 +#: common/models.py:1277 msgid "Check that all plugins are installed on startup - enable in container enviroments" msgstr "" -#: common/models.py:1273 +#: common/models.py:1284 +msgid "Check plugin signatures" +msgstr "" + +#: common/models.py:1285 +msgid "Check and show signatures for plugins" +msgstr "" + +#: common/models.py:1292 msgid "Enable URL integration" msgstr "" -#: common/models.py:1274 +#: common/models.py:1293 msgid "Enable plugins to add URL routes" msgstr "" -#: common/models.py:1281 +#: common/models.py:1300 msgid "Enable navigation integration" msgstr "" -#: common/models.py:1282 +#: common/models.py:1301 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/models.py:1289 +#: common/models.py:1308 msgid "Enable app integration" msgstr "" -#: common/models.py:1290 +#: common/models.py:1309 msgid "Enable plugins to add apps" msgstr "" -#: common/models.py:1297 +#: common/models.py:1316 msgid "Enable schedule integration" msgstr "" -#: common/models.py:1298 +#: common/models.py:1317 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/models.py:1305 +#: common/models.py:1324 msgid "Enable event integration" msgstr "" -#: common/models.py:1306 +#: common/models.py:1325 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:1323 common/models.py:1639 +#: common/models.py:1342 common/models.py:1658 msgid "Settings key (must be unique - case insensitive" msgstr "" -#: common/models.py:1345 +#: common/models.py:1364 msgid "Show subscribed parts" msgstr "" -#: common/models.py:1346 +#: common/models.py:1365 msgid "Show subscribed parts on the homepage" msgstr "" -#: common/models.py:1352 +#: common/models.py:1371 msgid "Show subscribed categories" msgstr "" -#: common/models.py:1353 +#: common/models.py:1372 msgid "Show subscribed part categories on the homepage" msgstr "" -#: common/models.py:1359 +#: common/models.py:1378 msgid "Show latest parts" msgstr "" -#: common/models.py:1360 +#: common/models.py:1379 msgid "Show latest parts on the homepage" msgstr "" -#: common/models.py:1366 +#: common/models.py:1385 msgid "Recent Part Count" msgstr "" -#: common/models.py:1367 +#: common/models.py:1386 msgid "Number of recent parts to display on index page" msgstr "" -#: common/models.py:1373 +#: common/models.py:1392 msgid "Show unvalidated BOMs" msgstr "" -#: common/models.py:1374 +#: common/models.py:1393 msgid "Show BOMs that await validation on the homepage" msgstr "" -#: common/models.py:1380 +#: common/models.py:1399 msgid "Show recent stock changes" msgstr "" -#: common/models.py:1381 +#: common/models.py:1400 msgid "Show recently changed stock items on the homepage" msgstr "" -#: common/models.py:1387 +#: common/models.py:1406 msgid "Recent Stock Count" msgstr "" -#: common/models.py:1388 +#: common/models.py:1407 msgid "Number of recent stock items to display on index page" msgstr "" -#: common/models.py:1394 +#: common/models.py:1413 msgid "Show low stock" msgstr "" -#: common/models.py:1395 +#: common/models.py:1414 msgid "Show low stock items on the homepage" msgstr "" -#: common/models.py:1401 +#: common/models.py:1420 msgid "Show depleted stock" msgstr "" -#: common/models.py:1402 +#: common/models.py:1421 msgid "Show depleted stock items on the homepage" msgstr "" -#: common/models.py:1408 +#: common/models.py:1427 msgid "Show needed stock" msgstr "" -#: common/models.py:1409 +#: common/models.py:1428 msgid "Show stock items needed for builds on the homepage" msgstr "" -#: common/models.py:1415 +#: common/models.py:1434 msgid "Show expired stock" msgstr "" -#: common/models.py:1416 +#: common/models.py:1435 msgid "Show expired stock items on the homepage" msgstr "" -#: common/models.py:1422 +#: common/models.py:1441 msgid "Show stale stock" msgstr "" -#: common/models.py:1423 +#: common/models.py:1442 msgid "Show stale stock items on the homepage" msgstr "" -#: common/models.py:1429 +#: common/models.py:1448 msgid "Show pending builds" msgstr "" -#: common/models.py:1430 +#: common/models.py:1449 msgid "Show pending builds on the homepage" msgstr "" -#: common/models.py:1436 +#: common/models.py:1455 msgid "Show overdue builds" msgstr "" -#: common/models.py:1437 +#: common/models.py:1456 msgid "Show overdue builds on the homepage" msgstr "" -#: common/models.py:1443 +#: common/models.py:1462 msgid "Show outstanding POs" msgstr "" -#: common/models.py:1444 +#: common/models.py:1463 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:1450 +#: common/models.py:1469 msgid "Show overdue POs" msgstr "" -#: common/models.py:1451 +#: common/models.py:1470 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:1457 +#: common/models.py:1476 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:1458 +#: common/models.py:1477 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:1464 +#: common/models.py:1483 msgid "Show overdue SOs" msgstr "" -#: common/models.py:1465 +#: common/models.py:1484 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:1471 +#: common/models.py:1490 msgid "Inline label display" msgstr "" -#: common/models.py:1472 +#: common/models.py:1491 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1478 +#: common/models.py:1497 msgid "Inline report display" msgstr "" -#: common/models.py:1479 +#: common/models.py:1498 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1485 +#: common/models.py:1504 msgid "Search Parts" msgstr "" -#: common/models.py:1486 +#: common/models.py:1505 msgid "Display parts in search preview window" msgstr "" -#: common/models.py:1492 +#: common/models.py:1511 msgid "Seach Supplier Parts" msgstr "" -#: common/models.py:1493 +#: common/models.py:1512 msgid "Display supplier parts in search preview window" msgstr "" -#: common/models.py:1499 +#: common/models.py:1518 msgid "Search Manufacturer Parts" msgstr "" -#: common/models.py:1500 +#: common/models.py:1519 msgid "Display manufacturer parts in search preview window" msgstr "" -#: common/models.py:1506 +#: common/models.py:1525 msgid "Hide Inactive Parts" msgstr "" -#: common/models.py:1507 +#: common/models.py:1526 msgid "Excluded inactive parts from search preview window" msgstr "" -#: common/models.py:1513 +#: common/models.py:1532 msgid "Search Categories" msgstr "" -#: common/models.py:1514 +#: common/models.py:1533 msgid "Display part categories in search preview window" msgstr "" -#: common/models.py:1520 +#: common/models.py:1539 msgid "Search Stock" msgstr "" -#: common/models.py:1521 +#: common/models.py:1540 msgid "Display stock items in search preview window" msgstr "" -#: common/models.py:1527 +#: common/models.py:1546 msgid "Hide Unavailable Stock Items" msgstr "" -#: common/models.py:1528 +#: common/models.py:1547 msgid "Exclude stock items which are not available from the search preview window" msgstr "" -#: common/models.py:1534 +#: common/models.py:1553 msgid "Search Locations" msgstr "" -#: common/models.py:1535 +#: common/models.py:1554 msgid "Display stock locations in search preview window" msgstr "" -#: common/models.py:1541 +#: common/models.py:1560 msgid "Search Companies" msgstr "" -#: common/models.py:1542 +#: common/models.py:1561 msgid "Display companies in search preview window" msgstr "" -#: common/models.py:1548 +#: common/models.py:1567 msgid "Search Purchase Orders" msgstr "" -#: common/models.py:1549 +#: common/models.py:1568 msgid "Display purchase orders in search preview window" msgstr "" -#: common/models.py:1555 +#: common/models.py:1574 msgid "Exclude Inactive Purchase Orders" msgstr "" -#: common/models.py:1556 +#: common/models.py:1575 msgid "Exclude inactive purchase orders from search preview window" msgstr "" -#: common/models.py:1562 +#: common/models.py:1581 msgid "Search Sales Orders" msgstr "" -#: common/models.py:1563 +#: common/models.py:1582 msgid "Display sales orders in search preview window" msgstr "" -#: common/models.py:1569 +#: common/models.py:1588 msgid "Exclude Inactive Sales Orders" msgstr "" -#: common/models.py:1570 +#: common/models.py:1589 msgid "Exclude inactive sales orders from search preview window" msgstr "" -#: common/models.py:1576 +#: common/models.py:1595 msgid "Search Preview Results" msgstr "" -#: common/models.py:1577 +#: common/models.py:1596 msgid "Number of results to show in each section of the search preview window" msgstr "" -#: common/models.py:1583 +#: common/models.py:1602 msgid "Show Quantity in Forms" msgstr "Formlarda Miktarı Göster" -#: common/models.py:1584 +#: common/models.py:1603 msgid "Display available part quantity in some forms" msgstr "" -#: common/models.py:1590 +#: common/models.py:1609 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:1591 +#: common/models.py:1610 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:1597 +#: common/models.py:1616 msgid "Fixed Navbar" msgstr "" -#: common/models.py:1598 +#: common/models.py:1617 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:1604 +#: common/models.py:1623 msgid "Date Format" msgstr "" -#: common/models.py:1605 +#: common/models.py:1624 msgid "Preferred format for displaying dates" msgstr "" -#: common/models.py:1619 part/templates/part/detail.html:41 +#: common/models.py:1638 part/templates/part/detail.html:41 msgid "Part Scheduling" msgstr "" -#: common/models.py:1620 +#: common/models.py:1639 msgid "Display part scheduling information" msgstr "" -#: common/models.py:1679 +#: common/models.py:1698 msgid "Price break quantity" msgstr "" -#: common/models.py:1686 company/serializers.py:366 +#: common/models.py:1705 company/serializers.py:366 #: company/templates/company/supplier_part.html:284 order/models.py:938 -#: templates/js/translated/part.js:1065 templates/js/translated/part.js:2152 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2161 msgid "Price" msgstr "Fiyat" -#: common/models.py:1687 +#: common/models.py:1706 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:1847 common/models.py:2025 +#: common/models.py:1866 common/models.py:2044 msgid "Endpoint" msgstr "" -#: common/models.py:1848 +#: common/models.py:1867 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:1857 +#: common/models.py:1876 msgid "Name for this webhook" msgstr "" -#: common/models.py:1862 part/models.py:914 plugin/models.py:99 +#: common/models.py:1881 part/models.py:921 plugin/models.py:100 #: templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:104 #: templates/js/translated/table_filters.js:316 @@ -2591,67 +2619,67 @@ msgstr "" msgid "Active" msgstr "Aktif" -#: common/models.py:1863 +#: common/models.py:1882 msgid "Is this webhook active" msgstr "" -#: common/models.py:1877 +#: common/models.py:1896 msgid "Token" msgstr "" -#: common/models.py:1878 +#: common/models.py:1897 msgid "Token for access" msgstr "" -#: common/models.py:1885 +#: common/models.py:1904 msgid "Secret" msgstr "" -#: common/models.py:1886 +#: common/models.py:1905 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:1992 +#: common/models.py:2011 msgid "Message ID" msgstr "" -#: common/models.py:1993 +#: common/models.py:2012 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2001 +#: common/models.py:2020 msgid "Host" msgstr "" -#: common/models.py:2002 +#: common/models.py:2021 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2009 +#: common/models.py:2028 msgid "Header" msgstr "" -#: common/models.py:2010 +#: common/models.py:2029 msgid "Header of this message" msgstr "" -#: common/models.py:2016 +#: common/models.py:2035 msgid "Body" msgstr "" -#: common/models.py:2017 +#: common/models.py:2036 msgid "Body of this message" msgstr "" -#: common/models.py:2026 +#: common/models.py:2045 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2031 +#: common/models.py:2050 msgid "Worked on" msgstr "" -#: common/models.py:2032 +#: common/models.py:2051 msgid "Was the work on this message finished?" msgstr "" @@ -2758,7 +2786,7 @@ msgstr "" msgid "Link to external company information" msgstr "" -#: company/models.py:135 part/models.py:808 +#: company/models.py:135 part/models.py:815 msgid "Image" msgstr "Resim" @@ -2791,8 +2819,8 @@ msgid "Does this company manufacture parts?" msgstr "Bu şirket üretim yapıyor mu?" #: company/models.py:148 company/serializers.py:372 -#: company/templates/company/company_base.html:106 part/serializers.py:151 -#: part/serializers.py:182 stock/serializers.py:180 +#: company/templates/company/company_base.html:106 part/serializers.py:153 +#: part/serializers.py:184 stock/serializers.py:180 msgid "Currency" msgstr "Para birimi" @@ -2800,7 +2828,7 @@ msgstr "Para birimi" msgid "Default currency used for this company" msgstr "Bu şirket için varsayılan para birimi" -#: company/models.py:248 company/models.py:481 stock/models.py:591 +#: company/models.py:248 company/models.py:481 stock/models.py:598 #: stock/serializers.py:87 stock/templates/stock/item_base.html:148 #: templates/js/translated/bom.js:543 msgid "Base Part" @@ -2832,7 +2860,7 @@ msgstr "Üretici seçin" #: templates/js/translated/company.js:497 #: templates/js/translated/company.js:649 #: templates/js/translated/company.js:937 templates/js/translated/order.js:1971 -#: templates/js/translated/part.js:247 templates/js/translated/part.js:1023 +#: templates/js/translated/part.js:247 templates/js/translated/part.js:1027 msgid "MPN" msgstr "ÜPN" @@ -2861,9 +2889,9 @@ msgstr "Parametre adı" #: company/models.py:365 #: report/templates/report/inventree_test_report_base.html:95 -#: stock/models.py:2088 templates/js/translated/company.js:546 -#: templates/js/translated/company.js:764 templates/js/translated/part.js:845 -#: templates/js/translated/stock.js:1356 +#: stock/models.py:2095 templates/js/translated/company.js:546 +#: templates/js/translated/company.js:764 templates/js/translated/part.js:849 +#: templates/js/translated/stock.js:1360 msgid "Value" msgstr "Değer" @@ -2871,10 +2899,10 @@ msgstr "Değer" msgid "Parameter value" msgstr "Parametre değeri" -#: company/models.py:372 part/models.py:881 part/models.py:2379 +#: company/models.py:372 part/models.py:888 part/models.py:2386 #: part/templates/part/part_base.html:280 #: templates/InvenTree/settings/settings.html:352 -#: templates/js/translated/company.js:770 templates/js/translated/part.js:851 +#: templates/js/translated/company.js:770 templates/js/translated/part.js:855 msgid "Units" msgstr "" @@ -2894,7 +2922,7 @@ msgstr "" #: templates/js/translated/company.js:268 #: templates/js/translated/company.js:401 #: templates/js/translated/company.js:893 templates/js/translated/order.js:1707 -#: templates/js/translated/part.js:217 templates/js/translated/part.js:991 +#: templates/js/translated/part.js:217 templates/js/translated/part.js:995 #: templates/js/translated/table_filters.js:423 msgid "Supplier" msgstr "Tedarikçi" @@ -2906,7 +2934,7 @@ msgstr "Tedarikçi seçin" #: company/models.py:497 company/templates/company/supplier_part.html:118 #: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267 #: templates/js/translated/order.js:1958 templates/js/translated/part.js:228 -#: templates/js/translated/part.js:1009 +#: templates/js/translated/part.js:1013 msgid "SKU" msgstr "" @@ -2927,23 +2955,23 @@ msgid "Supplier part description" msgstr "" #: company/models.py:522 company/templates/company/supplier_part.html:146 -#: part/models.py:2613 part/templates/part/upload_bom.html:59 +#: part/models.py:2620 part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401 msgid "Note" msgstr "Not" -#: company/models.py:526 part/models.py:1735 +#: company/models.py:526 part/models.py:1742 msgid "base cost" msgstr "temel maliyet" -#: company/models.py:526 part/models.py:1735 +#: company/models.py:526 part/models.py:1742 msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:528 company/templates/company/supplier_part.html:139 -#: stock/models.py:617 stock/templates/stock/item_base.html:245 -#: templates/js/translated/company.js:969 templates/js/translated/stock.js:1972 +#: stock/models.py:624 stock/templates/stock/item_base.html:245 +#: templates/js/translated/company.js:969 templates/js/translated/stock.js:1976 msgid "Packaging" msgstr "Paketleme" @@ -2951,7 +2979,7 @@ msgstr "Paketleme" msgid "Part packaging" msgstr "" -#: company/models.py:530 part/models.py:1737 +#: company/models.py:530 part/models.py:1744 msgid "multiple" msgstr "çoklu" @@ -2964,7 +2992,7 @@ msgstr "" #: templates/email/low_stock_notification.html:18 #: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789 #: templates/js/translated/build.js:2645 templates/js/translated/company.js:979 -#: templates/js/translated/part.js:596 templates/js/translated/part.js:599 +#: templates/js/translated/part.js:600 templates/js/translated/part.js:603 #: templates/js/translated/table_filters.js:186 msgid "Available" msgstr "Mevcut" @@ -3037,12 +3065,12 @@ msgid "Download image from URL" msgstr "" #: company/templates/company/company_base.html:86 order/models.py:637 -#: order/templates/order/sales_order_base.html:116 stock/models.py:636 -#: stock/models.py:637 stock/serializers.py:809 +#: order/templates/order/sales_order_base.html:116 stock/models.py:643 +#: stock/models.py:644 stock/serializers.py:811 #: stock/templates/stock/item_base.html:401 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:393 templates/js/translated/order.js:2513 -#: templates/js/translated/stock.js:2550 +#: templates/js/translated/stock.js:2559 #: templates/js/translated/table_filters.js:427 msgid "Customer" msgstr "Müşteri" @@ -3083,7 +3111,7 @@ msgstr "Yeni Tedarikçi Parçası" #: company/templates/company/detail.html:36 #: company/templates/company/detail.html:84 -#: part/templates/part/category.html:176 +#: part/templates/part/category.html:182 msgid "Order parts" msgstr "" @@ -3231,7 +3259,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:170 #: part/templates/part/detail.html:186 #: templates/InvenTree/settings/category.html:12 -#: templates/InvenTree/settings/part.html:66 +#: templates/InvenTree/settings/part.html:68 msgid "New Parameter" msgstr "" @@ -3261,10 +3289,10 @@ msgid "Assigned Stock Items" msgstr "" #: company/templates/company/supplier_part.html:7 -#: company/templates/company/supplier_part.html:24 stock/models.py:600 +#: company/templates/company/supplier_part.html:24 stock/models.py:607 #: stock/templates/stock/item_base.html:238 #: templates/js/translated/company.js:909 templates/js/translated/order.js:935 -#: templates/js/translated/stock.js:1929 +#: templates/js/translated/stock.js:1933 msgid "Supplier Part" msgstr "Tedarikçi Parçası" @@ -3308,13 +3336,13 @@ msgid "Supplier Part Stock" msgstr "Tedarikçi Parça Stoku" #: company/templates/company/supplier_part.html:168 -#: part/templates/part/detail.html:24 stock/templates/stock/location.html:176 +#: part/templates/part/detail.html:24 stock/templates/stock/location.html:181 msgid "Create new stock item" msgstr "" #: company/templates/company/supplier_part.html:169 -#: part/templates/part/detail.html:25 stock/templates/stock/location.html:177 -#: templates/js/translated/stock.js:431 +#: part/templates/part/detail.html:25 stock/templates/stock/location.html:182 +#: templates/js/translated/stock.js:435 msgid "New Stock Item" msgstr "" @@ -3330,7 +3358,7 @@ msgstr "Fiyat Bilgisi" #: company/templates/company/supplier_part.html:212 #: company/templates/company/supplier_part.html:326 -#: part/templates/part/prices.html:276 templates/js/translated/part.js:2224 +#: part/templates/part/prices.html:276 templates/js/translated/part.js:2233 msgid "Add Price Break" msgstr "" @@ -3339,12 +3367,12 @@ msgid "No price break information found" msgstr "" #: company/templates/company/supplier_part.html:252 -#: templates/js/translated/part.js:2234 +#: templates/js/translated/part.js:2243 msgid "Delete Price Break" msgstr "" #: company/templates/company/supplier_part.html:266 -#: templates/js/translated/part.js:2248 +#: templates/js/translated/part.js:2257 msgid "Edit Price Break" msgstr "" @@ -3366,13 +3394,13 @@ msgstr "" #: company/templates/company/supplier_part_navbar.html:15 #: part/templates/part/part_sidebar.html:14 -#: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:19 +#: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:24 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:151 #: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/bom.js:555 templates/js/translated/part.js:747 -#: templates/js/translated/part.js:1295 templates/js/translated/part.js:1456 -#: templates/js/translated/stock.js:955 templates/js/translated/stock.js:1750 +#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751 +#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460 +#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754 #: templates/navbar.html:31 msgid "Stock" msgstr "Stok" @@ -3392,14 +3420,14 @@ msgid "Pricing" msgstr "Fiyatlandırma" #: company/templates/company/supplier_part_sidebar.html:5 -#: part/templates/part/category.html:197 +#: part/templates/part/category.html:203 #: part/templates/part/category_sidebar.html:17 -#: stock/templates/stock/location.html:147 -#: stock/templates/stock/location.html:161 -#: stock/templates/stock/location.html:173 +#: stock/templates/stock/location.html:152 +#: stock/templates/stock/location.html:166 +#: stock/templates/stock/location.html:178 #: stock/templates/stock/location_sidebar.html:7 #: templates/InvenTree/search.html:153 templates/js/translated/search.js:223 -#: templates/js/translated/stock.js:2427 users/models.py:40 +#: templates/js/translated/stock.js:2436 users/models.py:40 msgid "Stock Items" msgstr "Stok Kalemleri" @@ -3656,8 +3684,8 @@ msgstr "" #: stock/templates/stock/item_base.html:184 #: templates/email/overdue_purchase_order.html:15 #: templates/js/translated/order.js:936 templates/js/translated/order.js:1691 -#: templates/js/translated/part.js:968 templates/js/translated/stock.js:1909 -#: templates/js/translated/stock.js:2531 +#: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913 +#: templates/js/translated/stock.js:2540 msgid "Purchase Order" msgstr "" @@ -3667,7 +3695,7 @@ msgstr "" #: order/models.py:1009 order/templates/order/order_base.html:169 #: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073 -#: templates/js/translated/part.js:1060 templates/js/translated/part.js:1087 +#: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091 #: templates/js/translated/table_filters.js:338 msgid "Received" msgstr "" @@ -3676,9 +3704,9 @@ msgstr "" msgid "Number of items received" msgstr "" -#: order/models.py:1017 part/templates/part/prices.html:181 stock/models.py:727 +#: order/models.py:1017 part/templates/part/prices.html:181 stock/models.py:734 #: stock/serializers.py:171 stock/templates/stock/item_base.html:191 -#: templates/js/translated/stock.js:1960 +#: templates/js/translated/stock.js:1964 msgid "Purchase Price" msgstr "" @@ -4066,8 +4094,8 @@ msgstr "Tedarikçi Parçası Seçin" #: templates/js/translated/bom.js:77 templates/js/translated/build.js:431 #: templates/js/translated/build.js:583 templates/js/translated/build.js:1974 #: templates/js/translated/order.js:884 templates/js/translated/order.js:1337 -#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:621 -#: templates/js/translated/stock.js:789 +#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625 +#: templates/js/translated/stock.js:793 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "" @@ -4261,8 +4289,8 @@ msgstr "" msgid "This field is required" msgstr "" -#: part/bom.py:127 part/models.py:98 part/models.py:817 -#: part/templates/part/category.html:108 part/templates/part/part_base.html:330 +#: part/bom.py:127 part/models.py:98 part/models.py:824 +#: part/templates/part/category.html:114 part/templates/part/part_base.html:330 msgid "Default Location" msgstr "Varsayılan Konum" @@ -4276,9 +4304,9 @@ msgid "Available Stock" msgstr "" #: part/bom.py:130 part/templates/part/part_base.html:207 -#: templates/js/translated/bom.js:947 templates/js/translated/part.js:586 -#: templates/js/translated/part.js:606 templates/js/translated/part.js:1298 -#: templates/js/translated/part.js:1470 templates/js/translated/part.js:1486 +#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590 +#: templates/js/translated/part.js:610 templates/js/translated/part.js:1302 +#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "" @@ -4299,516 +4327,524 @@ msgstr "" msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:115 part/models.py:2455 part/templates/part/category.html:15 +#: part/models.py:107 stock/models.py:84 +msgid "Icon" +msgstr "" + +#: part/models.py:108 stock/models.py:85 +msgid "Icon (optional)" +msgstr "" + +#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" -#: part/models.py:116 part/templates/part/category.html:128 +#: part/models.py:123 part/templates/part/category.html:134 #: templates/InvenTree/search.html:95 templates/js/translated/search.js:198 #: users/models.py:37 msgid "Part Categories" msgstr "Parça Kategorileri" -#: part/models.py:337 part/templates/part/cat_link.html:3 -#: part/templates/part/category.html:17 part/templates/part/category.html:133 -#: part/templates/part/category.html:153 +#: part/models.py:344 part/templates/part/cat_link.html:3 +#: part/templates/part/category.html:23 part/templates/part/category.html:139 +#: part/templates/part/category.html:159 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82 #: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:1946 templates/js/translated/search.js:144 +#: templates/js/translated/part.js:1955 templates/js/translated/search.js:144 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "Parçalar" -#: part/models.py:422 +#: part/models.py:429 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:492 part/models.py:504 +#: part/models.py:499 part/models.py:511 #, python-brace-format msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)" msgstr "" -#: part/models.py:621 +#: part/models.py:628 msgid "Next available serial numbers are" msgstr "Sonraki kullanılabilir seri numaraları" -#: part/models.py:625 +#: part/models.py:632 msgid "Next available serial number is" msgstr "Sonraki müsait seri numarası" -#: part/models.py:630 +#: part/models.py:637 msgid "Most recent serial number is" msgstr "En son seri numarası" -#: part/models.py:711 +#: part/models.py:718 msgid "Duplicate IPN not allowed in part settings" msgstr "Yinelenen DPN'ye parça ayarlarında izin verilmiyor" -#: part/models.py:738 part/models.py:2509 +#: part/models.py:745 part/models.py:2516 msgid "Part name" msgstr "Parça adı" -#: part/models.py:745 +#: part/models.py:752 msgid "Is Template" msgstr "Şablon Mu" -#: part/models.py:746 +#: part/models.py:753 msgid "Is this part a template part?" msgstr "Bu parça bir şablon parçası mı?" -#: part/models.py:756 +#: part/models.py:763 msgid "Is this part a variant of another part?" msgstr "Bu parça başka bir parçanın çeşidi mi?" -#: part/models.py:757 +#: part/models.py:764 msgid "Variant Of" msgstr "Çeşidi" -#: part/models.py:763 +#: part/models.py:770 msgid "Part description" msgstr "Parça açıklaması" -#: part/models.py:768 part/templates/part/category.html:86 +#: part/models.py:775 part/templates/part/category.html:92 #: part/templates/part/part_base.html:294 msgid "Keywords" msgstr "Anahtar kelimeler" -#: part/models.py:769 +#: part/models.py:776 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:776 part/models.py:2211 part/models.py:2454 +#: part/models.py:783 part/models.py:2218 part/models.py:2461 #: part/templates/part/part_base.html:257 #: templates/InvenTree/settings/settings.html:232 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1438 templates/js/translated/part.js:1664 +#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1668 msgid "Category" msgstr "" -#: part/models.py:777 +#: part/models.py:784 msgid "Part category" msgstr "" -#: part/models.py:782 part/templates/part/part_base.html:266 -#: templates/js/translated/part.js:735 templates/js/translated/part.js:1391 -#: templates/js/translated/stock.js:1722 +#: part/models.py:789 part/templates/part/part_base.html:266 +#: templates/js/translated/part.js:739 templates/js/translated/part.js:1395 +#: templates/js/translated/stock.js:1726 msgid "IPN" msgstr "DPN" -#: part/models.py:783 +#: part/models.py:790 msgid "Internal Part Number" msgstr "" -#: part/models.py:789 +#: part/models.py:796 msgid "Part revision or version number" msgstr "Parça revizyon veya versiyon numarası" -#: part/models.py:790 part/templates/part/part_base.html:273 -#: report/models.py:171 templates/js/translated/part.js:739 +#: part/models.py:797 part/templates/part/part_base.html:273 +#: report/models.py:171 templates/js/translated/part.js:743 msgid "Revision" msgstr "Revizyon" -#: part/models.py:815 +#: part/models.py:822 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:860 part/templates/part/part_base.html:339 +#: part/models.py:867 part/templates/part/part_base.html:339 msgid "Default Supplier" msgstr "Varsayılan Tedarikçi" -#: part/models.py:861 +#: part/models.py:868 msgid "Default supplier part" msgstr "Varsayılan tedarikçi parçası" -#: part/models.py:868 +#: part/models.py:875 msgid "Default Expiry" msgstr "" -#: part/models.py:869 +#: part/models.py:876 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:874 part/templates/part/part_base.html:200 +#: part/models.py:881 part/templates/part/part_base.html:200 msgid "Minimum Stock" msgstr "Minimum Stok" -#: part/models.py:875 +#: part/models.py:882 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:882 +#: part/models.py:889 msgid "Stock keeping units for this part" msgstr "" -#: part/models.py:888 +#: part/models.py:895 msgid "Can this part be built from other parts?" msgstr "Bu parça diğer parçalardan yapılabilir mi?" -#: part/models.py:894 +#: part/models.py:901 msgid "Can this part be used to build other parts?" msgstr "Bu parça diğer parçaların yapımında kullanılabilir mi?" -#: part/models.py:900 +#: part/models.py:907 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:905 +#: part/models.py:912 msgid "Can this part be purchased from external suppliers?" msgstr "Bu parça dış tedarikçilerden satın alınabilir mi?" -#: part/models.py:910 +#: part/models.py:917 msgid "Can this part be sold to customers?" msgstr "Bu parça müşterilere satılabilir mi?" -#: part/models.py:915 +#: part/models.py:922 msgid "Is this part active?" msgstr "Bu parça aktif mi?" -#: part/models.py:920 +#: part/models.py:927 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:922 +#: part/models.py:929 msgid "Part notes" msgstr "" -#: part/models.py:924 +#: part/models.py:931 msgid "BOM checksum" msgstr "" -#: part/models.py:924 +#: part/models.py:931 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:927 +#: part/models.py:934 msgid "BOM checked by" msgstr "" -#: part/models.py:929 +#: part/models.py:936 msgid "BOM checked date" msgstr "" -#: part/models.py:933 +#: part/models.py:940 msgid "Creation User" msgstr "Oluşturan Kullanıcı" -#: part/models.py:1737 +#: part/models.py:1744 msgid "Sell multiple" msgstr "" -#: part/models.py:2258 +#: part/models.py:2265 msgid "Test templates can only be created for trackable parts" msgstr "Test şablonları sadece takip edilebilir paçalar için oluşturulabilir" -#: part/models.py:2275 +#: part/models.py:2282 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:2295 templates/js/translated/part.js:1997 -#: templates/js/translated/stock.js:1336 +#: part/models.py:2302 templates/js/translated/part.js:2006 +#: templates/js/translated/stock.js:1340 msgid "Test Name" msgstr "Test Adı" -#: part/models.py:2296 +#: part/models.py:2303 msgid "Enter a name for the test" msgstr "" -#: part/models.py:2301 +#: part/models.py:2308 msgid "Test Description" msgstr "Test Açıklaması" -#: part/models.py:2302 +#: part/models.py:2309 msgid "Enter description for this test" msgstr "" -#: part/models.py:2307 templates/js/translated/part.js:2006 +#: part/models.py:2314 templates/js/translated/part.js:2015 #: templates/js/translated/table_filters.js:302 msgid "Required" msgstr "Gerekli" -#: part/models.py:2308 +#: part/models.py:2315 msgid "Is this test required to pass?" msgstr "Testi geçmesi için bu gerekli mi?" -#: part/models.py:2313 templates/js/translated/part.js:2014 +#: part/models.py:2320 templates/js/translated/part.js:2023 msgid "Requires Value" msgstr "" -#: part/models.py:2314 +#: part/models.py:2321 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:2319 templates/js/translated/part.js:2021 +#: part/models.py:2326 templates/js/translated/part.js:2030 msgid "Requires Attachment" msgstr "" -#: part/models.py:2320 +#: part/models.py:2327 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:2328 +#: part/models.py:2335 #, python-brace-format msgid "Illegal character in template name ({c})" msgstr "" -#: part/models.py:2364 +#: part/models.py:2371 msgid "Parameter template name must be unique" msgstr "Parametre şablon adı benzersiz olmalıdır" -#: part/models.py:2372 +#: part/models.py:2379 msgid "Parameter Name" msgstr "" -#: part/models.py:2379 +#: part/models.py:2386 msgid "Parameter Units" msgstr "" -#: part/models.py:2410 +#: part/models.py:2417 msgid "Parent Part" msgstr "" -#: part/models.py:2412 part/models.py:2460 part/models.py:2461 +#: part/models.py:2419 part/models.py:2467 part/models.py:2468 #: templates/InvenTree/settings/settings.html:227 msgid "Parameter Template" msgstr "Parametre Şablonu" -#: part/models.py:2414 +#: part/models.py:2421 msgid "Data" msgstr "" -#: part/models.py:2414 +#: part/models.py:2421 msgid "Parameter Value" msgstr "" -#: part/models.py:2465 templates/InvenTree/settings/settings.html:236 +#: part/models.py:2472 templates/InvenTree/settings/settings.html:236 msgid "Default Value" msgstr "" -#: part/models.py:2466 +#: part/models.py:2473 msgid "Default Parameter Value" msgstr "" -#: part/models.py:2501 +#: part/models.py:2508 msgid "Part ID or part name" msgstr "" -#: part/models.py:2504 templates/js/translated/model_renderers.js:212 +#: part/models.py:2511 templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "" -#: part/models.py:2505 +#: part/models.py:2512 msgid "Unique part ID value" msgstr "" -#: part/models.py:2508 +#: part/models.py:2515 msgid "Part Name" msgstr "" -#: part/models.py:2512 +#: part/models.py:2519 msgid "Part IPN" msgstr "" -#: part/models.py:2513 +#: part/models.py:2520 msgid "Part IPN value" msgstr "" -#: part/models.py:2516 +#: part/models.py:2523 msgid "Level" msgstr "" -#: part/models.py:2517 +#: part/models.py:2524 msgid "BOM level" msgstr "" -#: part/models.py:2586 +#: part/models.py:2593 msgid "Select parent part" msgstr "" -#: part/models.py:2594 +#: part/models.py:2601 msgid "Sub part" msgstr "" -#: part/models.py:2595 +#: part/models.py:2602 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:2601 +#: part/models.py:2608 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:2603 part/templates/part/upload_bom.html:58 +#: part/models.py:2610 part/templates/part/upload_bom.html:58 #: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999 #: templates/js/translated/table_filters.js:100 msgid "Optional" msgstr "" -#: part/models.py:2603 +#: part/models.py:2610 msgid "This BOM item is optional" msgstr "" -#: part/models.py:2606 part/templates/part/upload_bom.html:55 +#: part/models.py:2613 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:2607 +#: part/models.py:2614 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:2610 +#: part/models.py:2617 msgid "BOM item reference" msgstr "" -#: part/models.py:2613 +#: part/models.py:2620 msgid "BOM item notes" msgstr "" -#: part/models.py:2615 +#: part/models.py:2622 msgid "Checksum" msgstr "" -#: part/models.py:2615 +#: part/models.py:2622 msgid "BOM line checksum" msgstr "" -#: part/models.py:2619 part/templates/part/upload_bom.html:57 +#: part/models.py:2626 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1016 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:96 msgid "Inherited" msgstr "" -#: part/models.py:2620 +#: part/models.py:2627 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "Bu malzeme listesi, çeşit parçalar listesini kalıtsalıdır" -#: part/models.py:2625 part/templates/part/upload_bom.html:56 +#: part/models.py:2632 part/templates/part/upload_bom.html:56 #: templates/js/translated/bom.js:1008 msgid "Allow Variants" msgstr "Çeşide İzin Ver" -#: part/models.py:2626 +#: part/models.py:2633 msgid "Stock items for variant parts can be used for this BOM item" msgstr "Çeşit parçaların stok kalemleri bu malzeme listesinde kullanılabilir" -#: part/models.py:2704 stock/models.py:461 +#: part/models.py:2711 stock/models.py:468 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:2713 part/models.py:2715 +#: part/models.py:2720 part/models.py:2722 msgid "Sub part must be specified" msgstr "" -#: part/models.py:2820 +#: part/models.py:2827 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:2841 +#: part/models.py:2848 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:2854 +#: part/models.py:2861 msgid "Parent BOM item" msgstr "" -#: part/models.py:2862 +#: part/models.py:2869 msgid "Substitute part" msgstr "" -#: part/models.py:2877 +#: part/models.py:2884 msgid "Part 1" msgstr "" -#: part/models.py:2881 +#: part/models.py:2888 msgid "Part 2" msgstr "" -#: part/models.py:2881 +#: part/models.py:2888 msgid "Select Related Part" msgstr "" -#: part/models.py:2899 +#: part/models.py:2906 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:2903 +#: part/models.py:2910 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:152 part/serializers.py:183 stock/serializers.py:181 +#: part/serializers.py:154 part/serializers.py:185 stock/serializers.py:181 msgid "Purchase currency of this stock item" msgstr "" -#: part/serializers.py:812 +#: part/serializers.py:814 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:820 +#: part/serializers.py:822 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:821 +#: part/serializers.py:823 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:826 +#: part/serializers.py:828 msgid "Include Inherited" msgstr "" -#: part/serializers.py:827 +#: part/serializers.py:829 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:832 +#: part/serializers.py:834 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:833 +#: part/serializers.py:835 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:838 +#: part/serializers.py:840 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:839 +#: part/serializers.py:841 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:879 +#: part/serializers.py:881 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:880 +#: part/serializers.py:882 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:910 +#: part/serializers.py:912 msgid "No part column specified" msgstr "" -#: part/serializers.py:953 +#: part/serializers.py:955 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:956 +#: part/serializers.py:958 msgid "No matching part found" msgstr "" -#: part/serializers.py:959 +#: part/serializers.py:961 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:968 +#: part/serializers.py:970 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:976 +#: part/serializers.py:978 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:997 +#: part/serializers.py:999 msgid "At least one BOM item is required" msgstr "" @@ -4848,101 +4884,101 @@ msgstr "" msgid "Delete Items" msgstr "" -#: part/templates/part/category.html:28 part/templates/part/category.html:32 +#: part/templates/part/category.html:34 part/templates/part/category.html:38 msgid "You are subscribed to notifications for this category" msgstr "" -#: part/templates/part/category.html:36 +#: part/templates/part/category.html:42 msgid "Subscribe to notifications for this category" msgstr "" -#: part/templates/part/category.html:42 +#: part/templates/part/category.html:48 msgid "Category Actions" msgstr "" -#: part/templates/part/category.html:47 +#: part/templates/part/category.html:53 msgid "Edit category" msgstr "" -#: part/templates/part/category.html:48 +#: part/templates/part/category.html:54 msgid "Edit Category" msgstr "" -#: part/templates/part/category.html:52 +#: part/templates/part/category.html:58 msgid "Delete category" msgstr "" -#: part/templates/part/category.html:53 +#: part/templates/part/category.html:59 msgid "Delete Category" msgstr "" -#: part/templates/part/category.html:61 +#: part/templates/part/category.html:67 msgid "Create new part category" msgstr "" -#: part/templates/part/category.html:62 +#: part/templates/part/category.html:68 msgid "New Category" msgstr "" -#: part/templates/part/category.html:80 part/templates/part/category.html:93 +#: part/templates/part/category.html:86 part/templates/part/category.html:99 msgid "Category Path" msgstr "" -#: part/templates/part/category.html:94 +#: part/templates/part/category.html:100 msgid "Top level part category" msgstr "" -#: part/templates/part/category.html:114 part/templates/part/category.html:222 +#: part/templates/part/category.html:120 part/templates/part/category.html:228 #: part/templates/part/category_sidebar.html:7 msgid "Subcategories" msgstr "Alt kategoriler" -#: part/templates/part/category.html:119 +#: part/templates/part/category.html:125 msgid "Parts (Including subcategories)" msgstr "Parçalar (Alt kategoriler dahil)" -#: part/templates/part/category.html:157 +#: part/templates/part/category.html:163 msgid "Create new part" msgstr "" -#: part/templates/part/category.html:158 templates/js/translated/bom.js:367 +#: part/templates/part/category.html:164 templates/js/translated/bom.js:367 msgid "New Part" msgstr "" -#: part/templates/part/category.html:168 part/templates/part/detail.html:363 +#: part/templates/part/category.html:174 part/templates/part/detail.html:363 #: part/templates/part/detail.html:394 msgid "Options" msgstr "" -#: part/templates/part/category.html:172 +#: part/templates/part/category.html:178 msgid "Set category" msgstr "Kategori ayarla" -#: part/templates/part/category.html:173 +#: part/templates/part/category.html:179 msgid "Set Category" msgstr "Kategori Ayarla" -#: part/templates/part/category.html:180 part/templates/part/category.html:181 +#: part/templates/part/category.html:186 part/templates/part/category.html:187 msgid "Print Labels" msgstr "" -#: part/templates/part/category.html:206 +#: part/templates/part/category.html:212 msgid "Part Parameters" msgstr "" -#: part/templates/part/category.html:320 +#: part/templates/part/category.html:327 msgid "Create Part Category" msgstr "" -#: part/templates/part/category.html:340 +#: part/templates/part/category.html:347 msgid "Create Part" msgstr "" -#: part/templates/part/category.html:343 +#: part/templates/part/category.html:350 msgid "Create another part after this one" msgstr "" -#: part/templates/part/category.html:344 +#: part/templates/part/category.html:351 msgid "Part created successfully" msgstr "" @@ -4950,7 +4986,7 @@ msgstr "" msgid "Import Parts" msgstr "" -#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:375 +#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:379 msgid "Duplicate Part" msgstr "" @@ -5172,19 +5208,19 @@ msgstr "" #: part/templates/part/part_base.html:43 #: stock/templates/stock/item_base.html:41 -#: stock/templates/stock/location.html:43 +#: stock/templates/stock/location.html:48 msgid "Barcode actions" msgstr "Barkod işlemleri" #: part/templates/part/part_base.html:46 #: stock/templates/stock/item_base.html:45 -#: stock/templates/stock/location.html:45 templates/qr_button.html:1 +#: stock/templates/stock/location.html:50 templates/qr_button.html:1 msgid "Show QR Code" msgstr "" #: part/templates/part/part_base.html:49 #: stock/templates/stock/item_base.html:63 -#: stock/templates/stock/location.html:47 +#: stock/templates/stock/location.html:52 msgid "Print Label" msgstr "Etiket Yazdır" @@ -5194,7 +5230,7 @@ msgstr "" #: part/templates/part/part_base.html:60 #: stock/templates/stock/item_base.html:116 -#: stock/templates/stock/location.html:56 +#: stock/templates/stock/location.html:61 msgid "Stock actions" msgstr "Stok işlemleri" @@ -5255,7 +5291,7 @@ msgstr "" #: templates/js/translated/company.js:624 #: templates/js/translated/company.js:884 #: templates/js/translated/model_renderers.js:204 -#: templates/js/translated/part.js:650 templates/js/translated/part.js:727 +#: templates/js/translated/part.js:654 templates/js/translated/part.js:731 msgid "Inactive" msgstr "Pasif" @@ -5289,9 +5325,9 @@ msgstr "" msgid "Can Build" msgstr "" -#: part/templates/part/part_base.html:238 templates/js/translated/part.js:589 -#: templates/js/translated/part.js:609 templates/js/translated/part.js:1302 -#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490 +#: part/templates/part/part_base.html:238 templates/js/translated/part.js:593 +#: templates/js/translated/part.js:613 templates/js/translated/part.js:1306 +#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1494 msgid "Building" msgstr "" @@ -5464,8 +5500,8 @@ msgstr "" msgid "No sale pice history available for this part." msgstr "" -#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:612 -#: templates/js/translated/part.js:1290 templates/js/translated/part.js:1494 +#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616 +#: templates/js/translated/part.js:1294 templates/js/translated/part.js:1498 msgid "No Stock" msgstr "Stok Yok" @@ -5630,51 +5666,55 @@ msgstr "" msgid "Allow sending of emails for event notifications" msgstr "" -#: plugin/models.py:32 +#: plugin/models.py:33 msgid "Plugin Metadata" msgstr "" -#: plugin/models.py:33 +#: plugin/models.py:34 msgid "JSON metadata field, for use by external plugins" msgstr "" -#: plugin/models.py:79 +#: plugin/models.py:80 msgid "Plugin Configuration" msgstr "" -#: plugin/models.py:80 +#: plugin/models.py:81 msgid "Plugin Configurations" msgstr "" -#: plugin/models.py:85 +#: plugin/models.py:86 msgid "Key" msgstr "" -#: plugin/models.py:86 +#: plugin/models.py:87 msgid "Key of plugin" msgstr "" -#: plugin/models.py:94 +#: plugin/models.py:95 msgid "PluginName of the plugin" msgstr "" -#: plugin/models.py:100 +#: plugin/models.py:101 msgid "Is the plugin active" msgstr "" -#: plugin/models.py:168 +#: plugin/models.py:158 +msgid "Sample plugin" +msgstr "" + +#: plugin/models.py:186 msgid "Plugin" msgstr "" -#: plugin/models.py:231 +#: plugin/models.py:249 msgid "Method" msgstr "" -#: plugin/plugin.py:228 +#: plugin/plugin.py:251 msgid "No author found" msgstr "" -#: plugin/plugin.py:240 +#: plugin/plugin.py:263 msgid "No date found" msgstr "" @@ -5746,12 +5786,12 @@ msgstr "" msgid "No valid objects provided to template" msgstr "Şablon için geçerli bir nesne sağlanmadı" -#: report/api.py:216 report/api.py:257 +#: report/api.py:216 report/api.py:252 #, python-brace-format msgid "Template file '{template}' is missing or does not exist" msgstr "" -#: report/api.py:360 +#: report/api.py:355 msgid "Test report" msgstr "" @@ -5852,12 +5892,12 @@ msgid "Stock Item Test Report" msgstr "" #: report/templates/report/inventree_test_report_base.html:79 -#: stock/models.py:641 stock/templates/stock/item_base.html:322 +#: stock/models.py:648 stock/templates/stock/item_base.html:322 #: templates/js/translated/build.js:424 templates/js/translated/build.js:576 #: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673 #: templates/js/translated/model_renderers.js:118 #: templates/js/translated/order.js:118 templates/js/translated/order.js:3297 -#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:486 +#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490 msgid "Serial Number" msgstr "Seri Numara" @@ -5866,19 +5906,19 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report_base.html:93 -#: stock/models.py:2076 +#: stock/models.py:2083 msgid "Test" msgstr "" #: report/templates/report/inventree_test_report_base.html:94 -#: stock/models.py:2082 +#: stock/models.py:2089 msgid "Result" msgstr "" #: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:51 +#: templates/InvenTree/settings/plugin.html:53 #: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2459 +#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468 msgid "Date" msgstr "" @@ -5896,8 +5936,8 @@ msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report_base.html:137 -#: templates/js/translated/stock.js:606 templates/js/translated/stock.js:776 -#: templates/js/translated/stock.js:2708 +#: templates/js/translated/stock.js:610 templates/js/translated/stock.js:780 +#: templates/js/translated/stock.js:2717 msgid "Serial" msgstr "Seri No" @@ -5913,241 +5953,241 @@ msgstr "" msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" -#: stock/models.py:82 stock/models.py:732 +#: stock/models.py:89 stock/models.py:739 #: stock/templates/stock/item_base.html:252 msgid "Owner" msgstr "" -#: stock/models.py:83 stock/models.py:733 +#: stock/models.py:90 stock/models.py:740 msgid "Select Owner" msgstr "" -#: stock/models.py:435 +#: stock/models.py:442 msgid "StockItem with this serial number already exists" msgstr "Bu seri numarasına sahip stok kalemi zaten var" -#: stock/models.py:467 stock/serializers.py:95 +#: stock/models.py:474 stock/serializers.py:95 msgid "Stock item cannot be created for virtual parts" msgstr "" -#: stock/models.py:484 +#: stock/models.py:491 #, python-brace-format msgid "Part type ('{pf}') must be {pe}" msgstr "" -#: stock/models.py:494 stock/models.py:503 +#: stock/models.py:501 stock/models.py:510 msgid "Quantity must be 1 for item with a serial number" msgstr "Seri numarası olan ögenin miktarı bir olmalı" -#: stock/models.py:495 +#: stock/models.py:502 msgid "Serial number cannot be set if quantity greater than 1" msgstr "Miktar birden büyük ise seri numarası ayarlanamaz" -#: stock/models.py:517 +#: stock/models.py:524 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:523 +#: stock/models.py:530 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:537 +#: stock/models.py:544 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:583 +#: stock/models.py:590 msgid "Parent Stock Item" msgstr "Üst Stok Kalemi" -#: stock/models.py:593 +#: stock/models.py:600 msgid "Base part" msgstr "" -#: stock/models.py:601 +#: stock/models.py:608 msgid "Select a matching supplier part for this stock item" msgstr "Bu stok kalemi için tedarikçi parçası seçin" -#: stock/models.py:608 stock/templates/stock/location.html:17 +#: stock/models.py:615 stock/templates/stock/location.html:17 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" msgstr "Stok Konumu" -#: stock/models.py:611 +#: stock/models.py:618 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:618 +#: stock/models.py:625 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:624 stock/templates/stock/item_base.html:361 +#: stock/models.py:631 stock/templates/stock/item_base.html:361 msgid "Installed In" msgstr "" -#: stock/models.py:627 +#: stock/models.py:634 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:643 +#: stock/models.py:650 msgid "Serial number for this item" msgstr "Bu öge için seri numarası" -#: stock/models.py:657 +#: stock/models.py:664 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:662 +#: stock/models.py:669 msgid "Stock Quantity" msgstr "" -#: stock/models.py:671 +#: stock/models.py:678 msgid "Source Build" msgstr "" -#: stock/models.py:673 +#: stock/models.py:680 msgid "Build for this stock item" msgstr "" -#: stock/models.py:684 +#: stock/models.py:691 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:687 +#: stock/models.py:694 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:693 +#: stock/models.py:700 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:699 stock/templates/stock/item_base.html:429 -#: templates/js/translated/stock.js:1879 +#: stock/models.py:706 stock/templates/stock/item_base.html:429 +#: templates/js/translated/stock.js:1883 msgid "Expiry Date" msgstr "" -#: stock/models.py:700 +#: stock/models.py:707 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:713 +#: stock/models.py:720 msgid "Delete on deplete" msgstr "" -#: stock/models.py:713 +#: stock/models.py:720 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:720 stock/templates/stock/item.html:132 +#: stock/models.py:727 stock/templates/stock/item.html:132 msgid "Stock Item Notes" msgstr "" -#: stock/models.py:728 +#: stock/models.py:735 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:756 +#: stock/models.py:763 msgid "Converted to part" msgstr "" -#: stock/models.py:1235 +#: stock/models.py:1242 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1241 +#: stock/models.py:1248 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1247 +#: stock/models.py:1254 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({n})" msgstr "" -#: stock/models.py:1250 +#: stock/models.py:1257 msgid "Serial numbers must be a list of integers" msgstr "Seri numaraları tam sayı listesi olmalı" -#: stock/models.py:1253 +#: stock/models.py:1260 msgid "Quantity does not match serial numbers" msgstr "Miktar seri numaları ile eşleşmiyor" -#: stock/models.py:1260 +#: stock/models.py:1267 #, python-brace-format msgid "Serial numbers already exist: {exists}" msgstr "Seri numaraları zaten mevcut: {exists}" -#: stock/models.py:1330 +#: stock/models.py:1337 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1333 +#: stock/models.py:1340 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1336 +#: stock/models.py:1343 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1339 +#: stock/models.py:1346 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1342 +#: stock/models.py:1349 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1345 +#: stock/models.py:1352 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1352 stock/serializers.py:959 +#: stock/models.py:1359 stock/serializers.py:961 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1356 +#: stock/models.py:1363 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1360 +#: stock/models.py:1367 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1364 +#: stock/models.py:1371 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:1533 +#: stock/models.py:1540 msgid "StockItem cannot be moved as it is not in stock" msgstr "Stok kalemi stokta olmadığı için taşınamaz" -#: stock/models.py:1994 +#: stock/models.py:2001 msgid "Entry notes" msgstr "" -#: stock/models.py:2052 +#: stock/models.py:2059 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2058 +#: stock/models.py:2065 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2077 +#: stock/models.py:2084 msgid "Test name" msgstr "" -#: stock/models.py:2083 +#: stock/models.py:2090 msgid "Test result" msgstr "" -#: stock/models.py:2089 +#: stock/models.py:2096 msgid "Test output value" msgstr "" -#: stock/models.py:2096 +#: stock/models.py:2103 msgid "Test result attachment" msgstr "" -#: stock/models.py:2102 +#: stock/models.py:2109 msgid "Test notes" msgstr "" @@ -6172,7 +6212,7 @@ msgstr "" msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:323 stock/serializers.py:916 stock/serializers.py:1149 +#: stock/serializers.py:323 stock/serializers.py:918 stock/serializers.py:1151 msgid "Destination stock location" msgstr "" @@ -6220,63 +6260,63 @@ msgstr "" msgid "Destination location for returned item" msgstr "" -#: stock/serializers.py:771 +#: stock/serializers.py:773 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:775 +#: stock/serializers.py:777 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:779 +#: stock/serializers.py:781 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:810 +#: stock/serializers.py:812 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:816 +#: stock/serializers.py:818 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:824 +#: stock/serializers.py:826 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:834 stock/serializers.py:1065 +#: stock/serializers.py:836 stock/serializers.py:1067 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:923 +#: stock/serializers.py:925 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:928 +#: stock/serializers.py:930 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:929 +#: stock/serializers.py:931 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:934 +#: stock/serializers.py:936 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:935 +#: stock/serializers.py:937 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:945 +#: stock/serializers.py:947 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1027 +#: stock/serializers.py:1029 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1055 +#: stock/serializers.py:1057 msgid "Stock transaction notes" msgstr "" @@ -6313,7 +6353,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2852 +#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2861 msgid "Install Stock Item" msgstr "" @@ -6321,7 +6361,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1518 +#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1522 msgid "Add Test Result" msgstr "" @@ -6352,7 +6392,7 @@ msgid "Stock adjustment actions" msgstr "Stok ayarlama işlemleri" #: stock/templates/stock/item_base.html:80 -#: stock/templates/stock/location.html:63 templates/stock_table.html:47 +#: stock/templates/stock/location.html:68 templates/stock_table.html:47 msgid "Count stock" msgstr "" @@ -6369,7 +6409,7 @@ msgid "Serialize stock" msgstr "Stoku seri numarala" #: stock/templates/stock/item_base.html:93 -#: stock/templates/stock/location.html:69 templates/stock_table.html:48 +#: stock/templates/stock/location.html:74 templates/stock_table.html:48 msgid "Transfer stock" msgstr "" @@ -6430,7 +6470,7 @@ msgid "You are not in the list of owners of this item. This stock item cannot be msgstr "" #: stock/templates/stock/item_base.html:257 -#: stock/templates/stock/location.html:127 +#: stock/templates/stock/location.html:132 msgid "Read only" msgstr "" @@ -6508,7 +6548,7 @@ msgid "Stale" msgstr "" #: stock/templates/stock/item_base.html:442 -#: templates/js/translated/company.js:985 templates/js/translated/stock.js:1895 +#: templates/js/translated/company.js:985 templates/js/translated/stock.js:1899 msgid "Last Updated" msgstr "" @@ -6552,58 +6592,58 @@ msgstr "Bu stok kalemi için seri numaralandırılmış ögeler oluştur." msgid "Select quantity to serialize, and unique serial numbers." msgstr "Seri numaralandırılacak miktarı ve benzersiz seri numaralarını seçin." -#: stock/templates/stock/location.html:33 +#: stock/templates/stock/location.html:38 msgid "Locate stock location" msgstr "" -#: stock/templates/stock/location.html:49 +#: stock/templates/stock/location.html:54 msgid "Check-in Items" msgstr "" -#: stock/templates/stock/location.html:77 +#: stock/templates/stock/location.html:82 msgid "Location actions" msgstr "Konum işlemleri" -#: stock/templates/stock/location.html:79 +#: stock/templates/stock/location.html:84 msgid "Edit location" msgstr "Konumu düzenle" -#: stock/templates/stock/location.html:81 +#: stock/templates/stock/location.html:86 msgid "Delete location" msgstr "Konumu sil" -#: stock/templates/stock/location.html:90 +#: stock/templates/stock/location.html:95 msgid "Create new stock location" msgstr "Yeni stok konumu oluştur" -#: stock/templates/stock/location.html:91 +#: stock/templates/stock/location.html:96 msgid "New Location" msgstr "Yeni Konum" -#: stock/templates/stock/location.html:109 -#: stock/templates/stock/location.html:115 +#: stock/templates/stock/location.html:114 +#: stock/templates/stock/location.html:120 msgid "Location Path" msgstr "" -#: stock/templates/stock/location.html:116 +#: stock/templates/stock/location.html:121 msgid "Top level stock location" msgstr "" -#: stock/templates/stock/location.html:122 +#: stock/templates/stock/location.html:127 msgid "Location Owner" msgstr "" -#: stock/templates/stock/location.html:126 +#: stock/templates/stock/location.html:131 msgid "You are not in the list of owners of this location. This stock location cannot be edited." msgstr "Bu konumun sahipleri listesinde değilsiniz. Bu stok konumu düzenlenemez." -#: stock/templates/stock/location.html:142 -#: stock/templates/stock/location.html:189 +#: stock/templates/stock/location.html:147 +#: stock/templates/stock/location.html:194 #: stock/templates/stock/location_sidebar.html:5 msgid "Sublocations" msgstr "Alt konumlar" -#: stock/templates/stock/location.html:156 templates/InvenTree/search.html:165 +#: stock/templates/stock/location.html:161 templates/InvenTree/search.html:165 #: templates/js/translated/search.js:238 users/models.py:39 msgid "Stock Locations" msgstr "Stok Konumları" @@ -6875,15 +6915,15 @@ msgstr "" msgid "Part Settings" msgstr "" -#: templates/InvenTree/settings/part.html:44 +#: templates/InvenTree/settings/part.html:46 msgid "Part Import" msgstr "" -#: templates/InvenTree/settings/part.html:48 +#: templates/InvenTree/settings/part.html:50 msgid "Import Part" msgstr "" -#: templates/InvenTree/settings/part.html:62 +#: templates/InvenTree/settings/part.html:64 msgid "Part Parameter Templates" msgstr "Parça Parametre Şablonu" @@ -6895,47 +6935,47 @@ msgstr "" msgid "Changing the settings below require you to immediately restart the server. Do not change this while under active usage." msgstr "" -#: templates/InvenTree/settings/plugin.html:34 +#: templates/InvenTree/settings/plugin.html:36 msgid "Plugins" msgstr "" -#: templates/InvenTree/settings/plugin.html:39 +#: templates/InvenTree/settings/plugin.html:41 #: templates/js/translated/plugin.js:16 msgid "Install Plugin" msgstr "" -#: templates/InvenTree/settings/plugin.html:48 templates/navbar.html:137 +#: templates/InvenTree/settings/plugin.html:50 templates/navbar.html:137 #: users/models.py:36 msgid "Admin" msgstr "" -#: templates/InvenTree/settings/plugin.html:50 +#: templates/InvenTree/settings/plugin.html:52 #: templates/InvenTree/settings/plugin_settings.html:28 msgid "Author" msgstr "" -#: templates/InvenTree/settings/plugin.html:52 +#: templates/InvenTree/settings/plugin.html:54 #: templates/InvenTree/settings/plugin_settings.html:43 msgid "Version" msgstr "" -#: templates/InvenTree/settings/plugin.html:74 +#: templates/InvenTree/settings/plugin.html:76 msgid "Sample" msgstr "" -#: templates/InvenTree/settings/plugin.html:99 +#: templates/InvenTree/settings/plugin.html:101 msgid "Inactive plugins" msgstr "" -#: templates/InvenTree/settings/plugin.html:122 +#: templates/InvenTree/settings/plugin.html:124 msgid "Plugin Error Stack" msgstr "" -#: templates/InvenTree/settings/plugin.html:131 +#: templates/InvenTree/settings/plugin.html:133 msgid "Stage" msgstr "" -#: templates/InvenTree/settings/plugin.html:133 +#: templates/InvenTree/settings/plugin.html:135 #: templates/js/translated/notification.js:75 msgid "Message" msgstr "" @@ -6999,11 +7039,11 @@ msgstr "Commit Hash Değeri" msgid "Commit Message" msgstr "" -#: templates/InvenTree/settings/plugin_settings.html:117 +#: templates/InvenTree/settings/plugin_settings.html:120 msgid "Sign Status" msgstr "" -#: templates/InvenTree/settings/plugin_settings.html:122 +#: templates/InvenTree/settings/plugin_settings.html:125 msgid "Sign Key" msgstr "" @@ -7828,7 +7868,7 @@ msgstr "" msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:456 templates/js/translated/stock.js:1050 +#: templates/js/translated/barcode.js:456 templates/js/translated/stock.js:1054 msgid "Remove stock item" msgstr "" @@ -8001,7 +8041,7 @@ msgid "Includes variant and substitute stock" msgstr "" #: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822 -#: templates/js/translated/part.js:759 +#: templates/js/translated/part.js:763 msgid "Includes variant stock" msgstr "" @@ -8098,12 +8138,12 @@ msgid "Complete Build Order" msgstr "Tamamlanmış Yapım İşi Emri" #: templates/js/translated/build.js:263 templates/js/translated/stock.js:92 -#: templates/js/translated/stock.js:210 +#: templates/js/translated/stock.js:214 msgid "Next available serial number" msgstr "" #: templates/js/translated/build.js:265 templates/js/translated/stock.js:94 -#: templates/js/translated/stock.js:212 +#: templates/js/translated/stock.js:216 msgid "Latest serial number" msgstr "" @@ -8316,9 +8356,9 @@ msgstr "" msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1383 -#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1682 -#: templates/js/translated/stock.js:2382 +#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387 +#: templates/js/translated/part.js:1899 templates/js/translated/stock.js:1686 +#: templates/js/translated/stock.js:2386 msgid "Select" msgstr "" @@ -8330,7 +8370,7 @@ msgstr "" msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2638 +#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647 msgid "No user information" msgstr "" @@ -8403,34 +8443,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:616 -#: templates/js/translated/company.js:876 templates/js/translated/part.js:634 -#: templates/js/translated/part.js:719 +#: templates/js/translated/company.js:876 templates/js/translated/part.js:638 +#: templates/js/translated/part.js:723 msgid "Template part" msgstr "Şablon Parça" #: templates/js/translated/company.js:620 -#: templates/js/translated/company.js:880 templates/js/translated/part.js:638 -#: templates/js/translated/part.js:723 +#: templates/js/translated/company.js:880 templates/js/translated/part.js:642 +#: templates/js/translated/part.js:727 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:748 templates/js/translated/part.js:826 +#: templates/js/translated/company.js:748 templates/js/translated/part.js:830 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:785 templates/js/translated/part.js:868 +#: templates/js/translated/company.js:785 templates/js/translated/part.js:872 msgid "Edit parameter" msgstr "" -#: templates/js/translated/company.js:786 templates/js/translated/part.js:869 +#: templates/js/translated/company.js:786 templates/js/translated/part.js:873 msgid "Delete parameter" msgstr "" -#: templates/js/translated/company.js:805 templates/js/translated/part.js:886 +#: templates/js/translated/company.js:805 templates/js/translated/part.js:890 msgid "Edit Parameter" msgstr "" -#: templates/js/translated/company.js:816 templates/js/translated/part.js:898 +#: templates/js/translated/company.js:816 templates/js/translated/part.js:902 msgid "Delete Parameter" msgstr "" @@ -8555,7 +8595,7 @@ msgid "Labels sent to printer" msgstr "" #: templates/js/translated/label.js:60 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1078 msgid "Select Stock Items" msgstr "" @@ -8865,7 +8905,7 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2140 +#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144 msgid "Stock Status" msgstr "" @@ -8889,7 +8929,7 @@ msgstr "" msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:1672 templates/js/translated/part.js:939 +#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943 msgid "No purchase orders found" msgstr "" @@ -8924,7 +8964,7 @@ msgstr "" #: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203 #: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050 -#: templates/js/translated/part.js:2126 templates/js/translated/part.js:2479 +#: templates/js/translated/part.js:2135 templates/js/translated/part.js:2488 msgid "Unit Price" msgstr "" @@ -8934,11 +8974,11 @@ msgid "Total Price" msgstr "" #: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600 -#: templates/js/translated/part.js:1046 +#: templates/js/translated/part.js:1050 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1092 +#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096 msgid "Receive line item" msgstr "" @@ -9059,7 +9099,7 @@ msgid "Delete Stock Allocation" msgstr "" #: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398 -#: templates/js/translated/stock.js:1598 +#: templates/js/translated/stock.js:1602 msgid "Shipped to customer" msgstr "" @@ -9183,241 +9223,245 @@ msgstr "" msgid "Parent part category" msgstr "" -#: templates/js/translated/part.js:318 +#: templates/js/translated/part.js:306 templates/js/translated/stock.js:118 +msgid "Icon (optional) - Explore all available icons on" +msgstr "" + +#: templates/js/translated/part.js:322 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:331 +#: templates/js/translated/part.js:335 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:333 +#: templates/js/translated/part.js:337 msgid "Any child categories will be moved to the parent of this category" msgstr "" -#: templates/js/translated/part.js:334 +#: templates/js/translated/part.js:338 msgid "Any parts in this category will be moved to the parent of this category" msgstr "" -#: templates/js/translated/part.js:339 +#: templates/js/translated/part.js:343 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:365 +#: templates/js/translated/part.js:369 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:367 +#: templates/js/translated/part.js:371 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:378 +#: templates/js/translated/part.js:382 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:430 +#: templates/js/translated/part.js:434 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:431 +#: templates/js/translated/part.js:435 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:445 +#: templates/js/translated/part.js:449 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:447 +#: templates/js/translated/part.js:451 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:448 +#: templates/js/translated/part.js:452 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:449 +#: templates/js/translated/part.js:453 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:456 +#: templates/js/translated/part.js:460 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:492 +#: templates/js/translated/part.js:496 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:494 +#: templates/js/translated/part.js:498 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:499 +#: templates/js/translated/part.js:503 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:501 +#: templates/js/translated/part.js:505 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:518 +#: templates/js/translated/part.js:522 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:528 +#: templates/js/translated/part.js:532 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:531 +#: templates/js/translated/part.js:535 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:556 +#: templates/js/translated/part.js:560 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:582 templates/js/translated/part.js:1466 +#: templates/js/translated/part.js:586 templates/js/translated/part.js:1470 #: templates/js/translated/table_filters.js:468 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:592 templates/js/translated/part.js:1478 +#: templates/js/translated/part.js:596 templates/js/translated/part.js:1482 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:626 templates/js/translated/part.js:711 +#: templates/js/translated/part.js:630 templates/js/translated/part.js:715 msgid "Trackable part" msgstr "" -#: templates/js/translated/part.js:630 templates/js/translated/part.js:715 +#: templates/js/translated/part.js:634 templates/js/translated/part.js:719 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:642 +#: templates/js/translated/part.js:646 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:646 +#: templates/js/translated/part.js:650 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:774 +#: templates/js/translated/part.js:778 msgid "No variants found" msgstr "Çeşit bulunamadı" -#: templates/js/translated/part.js:1162 +#: templates/js/translated/part.js:1166 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1186 +#: templates/js/translated/part.js:1190 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:1253 templates/js/translated/part.js:1549 +#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1553 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:1292 +#: templates/js/translated/part.js:1296 msgid "Not available" msgstr "" -#: templates/js/translated/part.js:1443 +#: templates/js/translated/part.js:1447 msgid "No category" msgstr "Katagori Yok" -#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816 -#: templates/js/translated/stock.js:2343 +#: templates/js/translated/part.js:1577 templates/js/translated/part.js:1820 +#: templates/js/translated/stock.js:2347 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:1589 +#: templates/js/translated/part.js:1593 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:1655 +#: templates/js/translated/part.js:1659 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:1660 +#: templates/js/translated/part.js:1664 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:1665 +#: templates/js/translated/part.js:1669 msgid "Select Part Category" msgstr "" -#: templates/js/translated/part.js:1678 +#: templates/js/translated/part.js:1682 msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2362 +#: templates/js/translated/part.js:1839 templates/js/translated/stock.js:2366 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:1914 +#: templates/js/translated/part.js:1918 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:1925 +#: templates/js/translated/part.js:1934 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:1983 +#: templates/js/translated/part.js:1992 msgid "No test templates matching query" msgstr "Sorgu ile eşleşen test şablonu bulunamadı" -#: templates/js/translated/part.js:2034 templates/js/translated/stock.js:1295 +#: templates/js/translated/part.js:2043 templates/js/translated/stock.js:1299 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:2035 templates/js/translated/stock.js:1296 -#: templates/js/translated/stock.js:1556 +#: templates/js/translated/part.js:2044 templates/js/translated/stock.js:1300 +#: templates/js/translated/stock.js:1560 msgid "Delete test result" msgstr "" -#: templates/js/translated/part.js:2041 +#: templates/js/translated/part.js:2050 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2063 +#: templates/js/translated/part.js:2072 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2077 +#: templates/js/translated/part.js:2086 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2102 +#: templates/js/translated/part.js:2111 #, python-brace-format msgid "No ${human_name} information found" msgstr "" -#: templates/js/translated/part.js:2159 +#: templates/js/translated/part.js:2168 #, python-brace-format msgid "Edit ${human_name}" msgstr "" -#: templates/js/translated/part.js:2160 +#: templates/js/translated/part.js:2169 #, python-brace-format msgid "Delete ${human_name}" msgstr "" -#: templates/js/translated/part.js:2274 +#: templates/js/translated/part.js:2283 msgid "Current Stock" msgstr "" -#: templates/js/translated/part.js:2307 +#: templates/js/translated/part.js:2316 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2333 +#: templates/js/translated/part.js:2342 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2403 +#: templates/js/translated/part.js:2412 msgid "Single Price" msgstr "" -#: templates/js/translated/part.js:2422 +#: templates/js/translated/part.js:2431 msgid "Single Price Difference" msgstr "" @@ -9511,376 +9555,376 @@ msgstr "" msgid "Parent stock location" msgstr "" -#: templates/js/translated/stock.js:140 +#: templates/js/translated/stock.js:144 msgid "Edit Stock Location" msgstr "Stok konumunu düzenle" -#: templates/js/translated/stock.js:155 +#: templates/js/translated/stock.js:159 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:169 +#: templates/js/translated/stock.js:173 msgid "Are you sure you want to delete this stock location?" msgstr "Bu stok konumunu silmek istediğinizden emin misiniz?" -#: templates/js/translated/stock.js:171 +#: templates/js/translated/stock.js:175 msgid "Any child locations will be moved to the parent of this location" msgstr "" -#: templates/js/translated/stock.js:172 +#: templates/js/translated/stock.js:176 msgid "Any stock items in this location will be moved to the parent of this location" msgstr "" -#: templates/js/translated/stock.js:178 +#: templates/js/translated/stock.js:182 msgid "Delete Stock Location" msgstr "Stok Konumunu Sil" -#: templates/js/translated/stock.js:223 +#: templates/js/translated/stock.js:227 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:262 +#: templates/js/translated/stock.js:266 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:268 +#: templates/js/translated/stock.js:272 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:333 +#: templates/js/translated/stock.js:337 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:353 +#: templates/js/translated/stock.js:357 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:369 +#: templates/js/translated/stock.js:373 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:374 +#: templates/js/translated/stock.js:378 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:395 +#: templates/js/translated/stock.js:399 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:445 +#: templates/js/translated/stock.js:449 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:458 +#: templates/js/translated/stock.js:462 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:483 +#: templates/js/translated/stock.js:487 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:487 templates/js/translated/stock.js:488 +#: templates/js/translated/stock.js:491 templates/js/translated/stock.js:492 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:504 +#: templates/js/translated/stock.js:508 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:524 +#: templates/js/translated/stock.js:528 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:533 +#: templates/js/translated/stock.js:537 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:656 +#: templates/js/translated/stock.js:660 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:657 +#: templates/js/translated/stock.js:661 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:734 +#: templates/js/translated/stock.js:738 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:735 +#: templates/js/translated/stock.js:739 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:737 +#: templates/js/translated/stock.js:741 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:738 +#: templates/js/translated/stock.js:742 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:824 +#: templates/js/translated/stock.js:828 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:825 +#: templates/js/translated/stock.js:829 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:920 +#: templates/js/translated/stock.js:924 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:921 +#: templates/js/translated/stock.js:925 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:927 +#: templates/js/translated/stock.js:931 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:928 +#: templates/js/translated/stock.js:932 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:932 +#: templates/js/translated/stock.js:936 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:933 +#: templates/js/translated/stock.js:937 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:937 +#: templates/js/translated/stock.js:941 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:938 users/models.py:216 +#: templates/js/translated/stock.js:942 users/models.py:216 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:942 +#: templates/js/translated/stock.js:946 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1035 +#: templates/js/translated/stock.js:1039 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1035 +#: templates/js/translated/stock.js:1039 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1075 +#: templates/js/translated/stock.js:1079 msgid "You must select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1098 +#: templates/js/translated/stock.js:1102 msgid "Confirm stock adjustment" msgstr "Stok ayarlamasını onayla" -#: templates/js/translated/stock.js:1234 +#: templates/js/translated/stock.js:1238 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1236 +#: templates/js/translated/stock.js:1240 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1241 +#: templates/js/translated/stock.js:1245 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1288 +#: templates/js/translated/stock.js:1292 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1291 +#: templates/js/translated/stock.js:1295 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1317 +#: templates/js/translated/stock.js:1321 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1374 +#: templates/js/translated/stock.js:1378 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1539 +#: templates/js/translated/stock.js:1543 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1561 +#: templates/js/translated/stock.js:1565 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1590 +#: templates/js/translated/stock.js:1594 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1594 +#: templates/js/translated/stock.js:1598 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1602 +#: templates/js/translated/stock.js:1606 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1608 +#: templates/js/translated/stock.js:1612 msgid "No stock location set" msgstr "Stok konumu ayarlanmadı" -#: templates/js/translated/stock.js:1775 +#: templates/js/translated/stock.js:1779 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:1780 +#: templates/js/translated/stock.js:1784 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:1783 +#: templates/js/translated/stock.js:1787 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:1786 +#: templates/js/translated/stock.js:1790 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:1788 +#: templates/js/translated/stock.js:1792 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:1790 +#: templates/js/translated/stock.js:1794 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:1793 +#: templates/js/translated/stock.js:1797 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:1797 +#: templates/js/translated/stock.js:1801 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:1799 +#: templates/js/translated/stock.js:1803 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:1806 +#: templates/js/translated/stock.js:1810 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:1808 +#: templates/js/translated/stock.js:1812 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:1810 +#: templates/js/translated/stock.js:1814 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:1814 +#: templates/js/translated/stock.js:1818 #: templates/js/translated/table_filters.js:196 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:1865 +#: templates/js/translated/stock.js:1869 msgid "Stocktake" msgstr "" -#: templates/js/translated/stock.js:1944 +#: templates/js/translated/stock.js:1948 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:1982 +#: templates/js/translated/stock.js:1986 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2155 +#: templates/js/translated/stock.js:2159 msgid "Set Stock Status" msgstr "" -#: templates/js/translated/stock.js:2169 +#: templates/js/translated/stock.js:2173 msgid "Select Status Code" msgstr "" -#: templates/js/translated/stock.js:2170 +#: templates/js/translated/stock.js:2174 msgid "Status code must be selected" msgstr "" -#: templates/js/translated/stock.js:2400 +#: templates/js/translated/stock.js:2404 msgid "Load Subloactions" msgstr "" -#: templates/js/translated/stock.js:2484 +#: templates/js/translated/stock.js:2493 msgid "Details" msgstr "Detaylar" -#: templates/js/translated/stock.js:2500 +#: templates/js/translated/stock.js:2509 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2522 +#: templates/js/translated/stock.js:2531 msgid "Location no longer exists" msgstr "Konum artık yok" -#: templates/js/translated/stock.js:2541 +#: templates/js/translated/stock.js:2550 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2560 +#: templates/js/translated/stock.js:2569 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2578 +#: templates/js/translated/stock.js:2587 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:2601 +#: templates/js/translated/stock.js:2610 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:2609 +#: templates/js/translated/stock.js:2618 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:2685 +#: templates/js/translated/stock.js:2694 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:2736 templates/js/translated/stock.js:2772 +#: templates/js/translated/stock.js:2745 templates/js/translated/stock.js:2781 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:2785 +#: templates/js/translated/stock.js:2794 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:2806 +#: templates/js/translated/stock.js:2815 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:2807 +#: templates/js/translated/stock.js:2816 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:2809 +#: templates/js/translated/stock.js:2818 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:2810 +#: templates/js/translated/stock.js:2819 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:2811 +#: templates/js/translated/stock.js:2820 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:2812 +#: templates/js/translated/stock.js:2821 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:2825 +#: templates/js/translated/stock.js:2834 msgid "Select part to install" msgstr "" diff --git a/InvenTree/locale/vi/LC_MESSAGES/django.po b/InvenTree/locale/vi/LC_MESSAGES/django.po index 5b72b1b7f8..eff9f866a0 100644 --- a/InvenTree/locale/vi/LC_MESSAGES/django.po +++ b/InvenTree/locale/vi/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-11 02:47+0000\n" -"PO-Revision-Date: 2022-08-11 13:49\n" +"POT-Creation-Date: 2022-08-16 11:53+0000\n" +"PO-Revision-Date: 2022-08-16 21:35\n" "Last-Translator: \n" "Language-Team: Vietnamese\n" "Language: vi_VN\n" @@ -36,15 +36,15 @@ msgstr "" #: order/templates/order/so_sidebar.html:17 #: part/templates/part/part_sidebar.html:59 #: report/templates/report/inventree_build_order_base.html:172 -#: stock/models.py:1993 stock/models.py:2101 stock/serializers.py:329 -#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:823 -#: stock/serializers.py:922 stock/serializers.py:1054 +#: stock/models.py:2000 stock/models.py:2108 stock/serializers.py:329 +#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825 +#: stock/serializers.py:924 stock/serializers.py:1056 #: stock/templates/stock/stock_sidebar.html:25 #: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101 #: templates/js/translated/company.js:964 templates/js/translated/order.js:2104 #: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753 #: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102 -#: templates/js/translated/stock.js:1370 templates/js/translated/stock.js:1976 +#: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980 msgid "Notes" msgstr "" @@ -163,6 +163,10 @@ msgstr "" msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "" +#: InvenTree/mixins.py:71 +msgid "Remove HTML tags from this value" +msgstr "" + #: InvenTree/models.py:236 msgid "Improperly formatted pattern" msgstr "" @@ -195,7 +199,7 @@ msgstr "" msgid "Missing external link" msgstr "" -#: InvenTree/models.py:395 stock/models.py:2095 +#: InvenTree/models.py:395 stock/models.py:2102 #: templates/js/translated/attachment.js:103 #: templates/js/translated/attachment.js:241 msgid "Attachment" @@ -207,16 +211,16 @@ msgstr "" #: InvenTree/models.py:402 company/models.py:124 company/models.py:276 #: company/models.py:510 order/models.py:84 order/models.py:1245 -#: part/models.py:795 +#: part/models.py:802 #: report/templates/report/inventree_build_order_base.html:164 #: templates/js/translated/company.js:656 #: templates/js/translated/company.js:948 templates/js/translated/order.js:2742 -#: templates/js/translated/part.js:1510 +#: templates/js/translated/part.js:1514 msgid "Link" msgstr "" -#: InvenTree/models.py:403 build/models.py:296 part/models.py:796 -#: stock/models.py:651 +#: InvenTree/models.py:403 build/models.py:296 part/models.py:803 +#: stock/models.py:658 msgid "Link to external URL" msgstr "" @@ -229,12 +233,12 @@ msgstr "Bình luận" msgid "File comment" msgstr "" -#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1646 -#: common/models.py:1647 common/models.py:1870 common/models.py:1871 -#: common/models.py:2133 common/models.py:2134 part/models.py:2193 -#: part/models.py:2213 plugin/models.py:238 plugin/models.py:239 +#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665 +#: common/models.py:1666 common/models.py:1889 common/models.py:1890 +#: common/models.py:2152 common/models.py:2153 part/models.py:2200 +#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2632 +#: templates/js/translated/stock.js:2641 msgid "User" msgstr "Người dùng" @@ -271,19 +275,19 @@ msgstr "" msgid "Invalid choice" msgstr "" -#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1856 -#: company/models.py:358 label/models.py:101 part/models.py:739 -#: part/models.py:2371 plugin/models.py:93 report/models.py:152 +#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875 +#: company/models.py:358 label/models.py:101 part/models.py:746 +#: part/models.py:2378 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 -#: templates/InvenTree/settings/plugin.html:49 -#: templates/InvenTree/settings/plugin.html:132 +#: templates/InvenTree/settings/plugin.html:51 +#: templates/InvenTree/settings/plugin.html:134 #: templates/InvenTree/settings/plugin_settings.html:23 #: templates/InvenTree/settings/settings.html:347 #: templates/js/translated/company.js:545 #: templates/js/translated/company.js:758 #: templates/js/translated/notification.js:71 -#: templates/js/translated/part.js:684 templates/js/translated/part.js:836 -#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2388 +#: templates/js/translated/part.js:688 templates/js/translated/part.js:840 +#: templates/js/translated/part.js:1906 templates/js/translated/stock.js:2392 msgid "Name" msgstr "" @@ -292,21 +296,21 @@ msgstr "" #: company/models.py:516 company/templates/company/company_base.html:71 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:87 label/models.py:108 -#: order/models.py:82 part/models.py:762 part/templates/part/category.html:74 +#: order/models.py:82 part/models.py:769 part/templates/part/category.html:80 #: part/templates/part/part_base.html:167 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 -#: stock/templates/stock/location.html:103 +#: stock/templates/stock/location.html:108 #: templates/InvenTree/settings/plugin_settings.html:33 #: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848 #: templates/js/translated/build.js:2471 templates/js/translated/company.js:409 #: templates/js/translated/company.js:667 #: templates/js/translated/company.js:959 templates/js/translated/order.js:1720 #: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531 -#: templates/js/translated/part.js:743 templates/js/translated/part.js:1149 -#: templates/js/translated/part.js:1424 templates/js/translated/part.js:1933 -#: templates/js/translated/part.js:2002 templates/js/translated/stock.js:1739 -#: templates/js/translated/stock.js:2415 templates/js/translated/stock.js:2469 +#: templates/js/translated/part.js:747 templates/js/translated/part.js:1153 +#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1942 +#: templates/js/translated/part.js:2011 templates/js/translated/stock.js:1743 +#: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478 msgid "Description" msgstr "Mô tả" @@ -319,7 +323,7 @@ msgid "parent" msgstr "" #: InvenTree/models.py:560 InvenTree/models.py:561 -#: templates/js/translated/part.js:1939 templates/js/translated/stock.js:2421 +#: templates/js/translated/part.js:1948 templates/js/translated/stock.js:2430 msgid "Path" msgstr "" @@ -331,7 +335,7 @@ msgstr "" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:55 part/models.py:2692 +#: InvenTree/serializers.py:55 part/models.py:2699 msgid "Must be a valid number" msgstr "" @@ -398,99 +402,99 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/settings.py:609 +#: InvenTree/settings.py:607 msgid "Czech" msgstr "" -#: InvenTree/settings.py:610 +#: InvenTree/settings.py:608 msgid "German" msgstr "" -#: InvenTree/settings.py:611 +#: InvenTree/settings.py:609 msgid "Greek" msgstr "" -#: InvenTree/settings.py:612 +#: InvenTree/settings.py:610 msgid "English" msgstr "" -#: InvenTree/settings.py:613 +#: InvenTree/settings.py:611 msgid "Spanish" msgstr "" -#: InvenTree/settings.py:614 +#: InvenTree/settings.py:612 msgid "Spanish (Mexican)" msgstr "" -#: InvenTree/settings.py:615 +#: InvenTree/settings.py:613 msgid "Farsi / Persian" msgstr "" -#: InvenTree/settings.py:616 +#: InvenTree/settings.py:614 msgid "French" msgstr "" -#: InvenTree/settings.py:617 +#: InvenTree/settings.py:615 msgid "Hebrew" msgstr "" -#: InvenTree/settings.py:618 +#: InvenTree/settings.py:616 msgid "Hungarian" msgstr "" -#: InvenTree/settings.py:619 +#: InvenTree/settings.py:617 msgid "Italian" msgstr "" -#: InvenTree/settings.py:620 +#: InvenTree/settings.py:618 msgid "Japanese" msgstr "" -#: InvenTree/settings.py:621 +#: InvenTree/settings.py:619 msgid "Korean" msgstr "" -#: InvenTree/settings.py:622 +#: InvenTree/settings.py:620 msgid "Dutch" msgstr "" -#: InvenTree/settings.py:623 +#: InvenTree/settings.py:621 msgid "Norwegian" msgstr "" -#: InvenTree/settings.py:624 +#: InvenTree/settings.py:622 msgid "Polish" msgstr "" -#: InvenTree/settings.py:625 +#: InvenTree/settings.py:623 msgid "Portuguese" msgstr "" -#: InvenTree/settings.py:626 +#: InvenTree/settings.py:624 msgid "Portuguese (Brazilian)" msgstr "" -#: InvenTree/settings.py:627 +#: InvenTree/settings.py:625 msgid "Russian" msgstr "" -#: InvenTree/settings.py:628 +#: InvenTree/settings.py:626 msgid "Swedish" msgstr "" -#: InvenTree/settings.py:629 +#: InvenTree/settings.py:627 msgid "Thai" msgstr "" -#: InvenTree/settings.py:630 +#: InvenTree/settings.py:628 msgid "Turkish" msgstr "" -#: InvenTree/settings.py:631 +#: InvenTree/settings.py:629 msgid "Vietnamese" msgstr "" -#: InvenTree/settings.py:632 +#: InvenTree/settings.py:630 msgid "Chinese" msgstr "" @@ -621,7 +625,7 @@ msgstr "" msgid "Split child item" msgstr "" -#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2080 +#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2084 msgid "Merged stock items" msgstr "" @@ -743,7 +747,7 @@ msgid "Build Order Reference" msgstr "" #: build/models.py:166 order/models.py:240 order/models.py:623 -#: order/models.py:904 part/models.py:2610 +#: order/models.py:904 part/models.py:2617 #: part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 @@ -770,10 +774,10 @@ msgstr "" #: build/models.py:191 build/templates/build/build_base.html:77 #: build/templates/build/detail.html:29 company/models.py:670 #: order/models.py:1001 order/models.py:1112 order/models.py:1113 -#: part/models.py:336 part/models.py:2139 part/models.py:2154 -#: part/models.py:2173 part/models.py:2191 part/models.py:2290 -#: part/models.py:2410 part/models.py:2500 part/models.py:2585 -#: part/models.py:2861 part/serializers.py:811 +#: part/models.py:343 part/models.py:2146 part/models.py:2161 +#: part/models.py:2180 part/models.py:2198 part/models.py:2297 +#: part/models.py:2417 part/models.py:2507 part/models.py:2592 +#: part/models.py:2868 part/serializers.py:813 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -796,11 +800,11 @@ msgstr "" #: templates/js/translated/order.js:934 templates/js/translated/order.js:1387 #: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885 #: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507 -#: templates/js/translated/part.js:1134 templates/js/translated/part.js:1206 -#: templates/js/translated/part.js:1402 templates/js/translated/stock.js:582 -#: templates/js/translated/stock.js:747 templates/js/translated/stock.js:954 -#: templates/js/translated/stock.js:1696 templates/js/translated/stock.js:2495 -#: templates/js/translated/stock.js:2690 templates/js/translated/stock.js:2824 +#: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210 +#: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586 +#: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958 +#: templates/js/translated/stock.js:1700 templates/js/translated/stock.js:2504 +#: templates/js/translated/stock.js:2699 templates/js/translated/stock.js:2833 msgid "Part" msgstr "Nguyên liệu" @@ -858,7 +862,7 @@ msgid "Build status code" msgstr "" #: build/models.py:251 build/serializers.py:225 order/serializers.py:447 -#: stock/models.py:655 templates/js/translated/order.js:1247 +#: stock/models.py:662 templates/js/translated/order.js:1247 msgid "Batch Code" msgstr "" @@ -866,7 +870,7 @@ msgstr "" msgid "Batch code for this build output" msgstr "" -#: build/models.py:258 order/models.py:86 part/models.py:931 +#: build/models.py:258 order/models.py:86 part/models.py:938 #: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544 msgid "Creation Date" msgstr "" @@ -899,7 +903,7 @@ msgstr "" #: build/models.py:289 build/templates/build/build_base.html:190 #: build/templates/build/detail.html:115 order/models.py:100 #: order/templates/order/order_base.html:176 -#: order/templates/order/sales_order_base.html:183 part/models.py:935 +#: order/templates/order/sales_order_base.html:183 part/models.py:942 #: report/templates/report/inventree_build_order_base.html:158 #: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754 msgid "Responsible" @@ -912,7 +916,7 @@ msgstr "" #: build/models.py:295 build/templates/build/detail.html:101 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:153 -#: part/templates/part/part_base.html:346 stock/models.py:649 +#: part/templates/part/part_base.html:346 stock/models.py:656 #: stock/templates/stock/item_base.html:205 msgid "External Link" msgstr "" @@ -978,8 +982,8 @@ msgid "Build to allocate parts" msgstr "" #: build/models.py:1345 build/serializers.py:645 order/serializers.py:1015 -#: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 -#: stock/serializers.py:880 stock/templates/stock/item_base.html:10 +#: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:756 +#: stock/serializers.py:882 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:199 #: templates/js/translated/build.js:741 templates/js/translated/build.js:746 @@ -987,8 +991,8 @@ msgstr "" #: templates/js/translated/order.js:104 templates/js/translated/order.js:2886 #: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193 #: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380 -#: templates/js/translated/stock.js:583 templates/js/translated/stock.js:748 -#: templates/js/translated/stock.js:2568 +#: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752 +#: templates/js/translated/stock.js:2577 msgid "Stock Item" msgstr "" @@ -998,11 +1002,11 @@ msgstr "" #: build/models.py:1358 build/serializers.py:193 #: build/templates/build/build_base.html:82 -#: build/templates/build/detail.html:34 common/models.py:1678 +#: build/templates/build/detail.html:34 common/models.py:1697 #: company/templates/company/supplier_part.html:279 order/models.py:897 #: order/models.py:1423 order/serializers.py:1155 #: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40 -#: part/models.py:2601 part/templates/part/detail.html:937 +#: part/models.py:2608 part/templates/part/detail.html:937 #: part/templates/part/detail.html:1023 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 @@ -1025,11 +1029,11 @@ msgstr "" #: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207 #: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386 #: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037 -#: templates/js/translated/part.js:1034 templates/js/translated/part.js:2147 -#: templates/js/translated/part.js:2378 templates/js/translated/part.js:2412 -#: templates/js/translated/part.js:2490 templates/js/translated/stock.js:454 -#: templates/js/translated/stock.js:608 templates/js/translated/stock.js:778 -#: templates/js/translated/stock.js:2617 templates/js/translated/stock.js:2702 +#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2156 +#: templates/js/translated/part.js:2387 templates/js/translated/part.js:2421 +#: templates/js/translated/part.js:2499 templates/js/translated/stock.js:458 +#: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782 +#: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711 msgid "Quantity" msgstr "" @@ -1071,8 +1075,8 @@ msgid "Enter quantity for build output" msgstr "" #: build/serializers.py:208 build/serializers.py:665 order/models.py:318 -#: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 -#: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 +#: order/serializers.py:287 order/serializers.py:442 part/serializers.py:544 +#: part/serializers.py:976 stock/models.py:484 stock/models.py:1251 #: stock/serializers.py:302 msgid "Quantity must be greater than zero" msgstr "" @@ -1087,7 +1091,7 @@ msgstr "" #: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159 #: stock/serializers.py:311 templates/js/translated/order.js:1258 -#: templates/js/translated/stock.js:267 templates/js/translated/stock.js:455 +#: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459 msgid "Serial Numbers" msgstr "" @@ -1113,16 +1117,16 @@ msgstr "" #: build/serializers.py:366 order/serializers.py:428 order/serializers.py:532 #: stock/serializers.py:322 stock/serializers.py:453 stock/serializers.py:534 -#: stock/serializers.py:915 stock/serializers.py:1148 +#: stock/serializers.py:917 stock/serializers.py:1150 #: stock/templates/stock/item_base.html:390 #: templates/js/translated/barcode.js:436 #: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753 #: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285 #: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305 #: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394 -#: templates/js/translated/part.js:181 templates/js/translated/stock.js:584 -#: templates/js/translated/stock.js:749 templates/js/translated/stock.js:956 -#: templates/js/translated/stock.js:1850 templates/js/translated/stock.js:2509 +#: templates/js/translated/part.js:181 templates/js/translated/stock.js:588 +#: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960 +#: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518 msgid "Location" msgstr "" @@ -1135,8 +1139,8 @@ msgstr "" #: order/serializers.py:465 stock/templates/stock/item_base.html:423 #: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505 #: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724 -#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1825 -#: templates/js/translated/stock.js:2586 templates/js/translated/stock.js:2718 +#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829 +#: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727 msgid "Status" msgstr "Trạng thái" @@ -1212,8 +1216,8 @@ msgstr "" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:577 build/serializers.py:622 part/models.py:2719 -#: part/models.py:2853 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726 +#: part/models.py:2860 msgid "BOM Item" msgstr "" @@ -1229,7 +1233,7 @@ msgstr "" msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:651 stock/serializers.py:767 +#: build/serializers.py:651 stock/serializers.py:769 msgid "Item must be in stock" msgstr "" @@ -1367,7 +1371,7 @@ msgstr "" #: report/templates/report/inventree_build_order_base.html:125 #: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741 #: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552 -#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1038 +#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042 msgid "Target Date" msgstr "" @@ -1445,8 +1449,8 @@ msgstr "" #: stock/templates/stock/item_base.html:170 #: templates/js/translated/build.js:1182 #: templates/js/translated/model_renderers.js:124 -#: templates/js/translated/stock.js:1022 templates/js/translated/stock.js:1839 -#: templates/js/translated/stock.js:2725 +#: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843 +#: templates/js/translated/stock.js:2734 #: templates/js/translated/table_filters.js:159 #: templates/js/translated/table_filters.js:250 msgid "Batch" @@ -1506,7 +1510,7 @@ msgstr "" #: build/templates/build/detail.html:187 #: company/templates/company/detail.html:37 #: company/templates/company/detail.html:85 -#: part/templates/part/category.html:177 templates/js/translated/order.js:977 +#: part/templates/part/category.html:183 templates/js/translated/order.js:977 msgid "Order Parts" msgstr "" @@ -1559,12 +1563,12 @@ msgid "Delete outputs" msgstr "" #: build/templates/build/detail.html:267 -#: stock/templates/stock/location.html:197 templates/stock_table.html:27 +#: stock/templates/stock/location.html:202 templates/stock_table.html:27 msgid "Printing Actions" msgstr "" #: build/templates/build/detail.html:271 build/templates/build/detail.html:272 -#: stock/templates/stock/location.html:201 templates/stock_table.html:31 +#: stock/templates/stock/location.html:206 templates/stock_table.html:31 msgid "Print labels" msgstr "" @@ -1841,7 +1845,7 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:951 part/models.py:2412 report/models.py:158 +#: common/models.py:951 part/models.py:2419 report/models.py:158 #: templates/js/translated/table_filters.js:38 #: templates/js/translated/table_filters.js:484 msgid "Template" @@ -1851,7 +1855,7 @@ msgstr "" msgid "Parts are templates by default" msgstr "" -#: common/models.py:958 part/models.py:887 templates/js/translated/bom.js:1448 +#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448 #: templates/js/translated/table_filters.js:176 #: templates/js/translated/table_filters.js:447 msgid "Assembly" @@ -1861,7 +1865,7 @@ msgstr "" msgid "Parts can be assembled from other components by default" msgstr "" -#: common/models.py:965 part/models.py:893 +#: common/models.py:965 part/models.py:900 #: templates/js/translated/table_filters.js:455 msgid "Component" msgstr "" @@ -1870,7 +1874,7 @@ msgstr "" msgid "Parts can be used as sub-components by default" msgstr "" -#: common/models.py:972 part/models.py:904 +#: common/models.py:972 part/models.py:911 msgid "Purchaseable" msgstr "" @@ -1878,7 +1882,7 @@ msgstr "" msgid "Parts are purchaseable by default" msgstr "" -#: common/models.py:979 part/models.py:909 +#: common/models.py:979 part/models.py:916 #: templates/js/translated/table_filters.js:476 msgid "Salable" msgstr "" @@ -1887,7 +1891,7 @@ msgstr "" msgid "Parts are salable by default" msgstr "" -#: common/models.py:986 part/models.py:899 +#: common/models.py:986 part/models.py:906 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:108 #: templates/js/translated/table_filters.js:488 @@ -1898,7 +1902,7 @@ msgstr "" msgid "Parts are trackable by default" msgstr "" -#: common/models.py:993 part/models.py:919 +#: common/models.py:993 part/models.py:926 #: part/templates/part/part_base.html:151 #: templates/js/translated/table_filters.js:42 #: templates/js/translated/table_filters.js:492 @@ -1982,608 +1986,632 @@ msgid "Format to display the part name" msgstr "" #: common/models.py:1074 -msgid "Enable label printing" +msgid "Part Category Default Icon" msgstr "" #: common/models.py:1075 -msgid "Enable label printing from the web interface" +msgid "Part category default icon (empty means no icon)" +msgstr "" + +#: common/models.py:1080 +msgid "Enable label printing" msgstr "" #: common/models.py:1081 +msgid "Enable label printing from the web interface" +msgstr "" + +#: common/models.py:1087 msgid "Label Image DPI" msgstr "" -#: common/models.py:1082 +#: common/models.py:1088 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/models.py:1091 +#: common/models.py:1097 msgid "Enable Reports" msgstr "" -#: common/models.py:1092 +#: common/models.py:1098 msgid "Enable generation of reports" msgstr "" -#: common/models.py:1098 templates/stats.html:25 +#: common/models.py:1104 templates/stats.html:25 msgid "Debug Mode" msgstr "" -#: common/models.py:1099 +#: common/models.py:1105 msgid "Generate reports in debug mode (HTML output)" msgstr "" -#: common/models.py:1105 +#: common/models.py:1111 msgid "Page Size" msgstr "" -#: common/models.py:1106 +#: common/models.py:1112 msgid "Default page size for PDF reports" msgstr "" -#: common/models.py:1116 +#: common/models.py:1122 msgid "Enable Test Reports" msgstr "" -#: common/models.py:1117 +#: common/models.py:1123 msgid "Enable generation of test reports" msgstr "" -#: common/models.py:1123 +#: common/models.py:1129 msgid "Attach Test Reports" msgstr "" -#: common/models.py:1124 +#: common/models.py:1130 msgid "When printing a Test Report, attach a copy of the Test Report to the associated Stock Item" msgstr "" -#: common/models.py:1130 +#: common/models.py:1136 msgid "Batch Code Template" msgstr "" -#: common/models.py:1131 +#: common/models.py:1137 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/models.py:1136 +#: common/models.py:1142 msgid "Stock Expiry" msgstr "" -#: common/models.py:1137 +#: common/models.py:1143 msgid "Enable stock expiry functionality" msgstr "" -#: common/models.py:1143 +#: common/models.py:1149 msgid "Sell Expired Stock" msgstr "" -#: common/models.py:1144 +#: common/models.py:1150 msgid "Allow sale of expired stock" msgstr "" -#: common/models.py:1150 +#: common/models.py:1156 msgid "Stock Stale Time" msgstr "" -#: common/models.py:1151 +#: common/models.py:1157 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/models.py:1153 +#: common/models.py:1159 msgid "days" msgstr "" -#: common/models.py:1158 +#: common/models.py:1164 msgid "Build Expired Stock" msgstr "" -#: common/models.py:1159 +#: common/models.py:1165 msgid "Allow building with expired stock" msgstr "" -#: common/models.py:1165 +#: common/models.py:1171 msgid "Stock Ownership Control" msgstr "" -#: common/models.py:1166 +#: common/models.py:1172 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/models.py:1172 -msgid "Build Order Reference Pattern" -msgstr "" - -#: common/models.py:1173 -msgid "Required pattern for generating Build Order reference field" +#: common/models.py:1178 +msgid "Stock Location Default Icon" msgstr "" #: common/models.py:1179 +msgid "Stock location default icon (empty means no icon)" +msgstr "" + +#: common/models.py:1184 +msgid "Build Order Reference Pattern" +msgstr "" + +#: common/models.py:1185 +msgid "Required pattern for generating Build Order reference field" +msgstr "" + +#: common/models.py:1191 msgid "Sales Order Reference Pattern" msgstr "" -#: common/models.py:1180 +#: common/models.py:1192 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/models.py:1186 +#: common/models.py:1198 msgid "Sales Order Default Shipment" msgstr "" -#: common/models.py:1187 +#: common/models.py:1199 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/models.py:1193 +#: common/models.py:1205 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/models.py:1194 +#: common/models.py:1206 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/models.py:1201 +#: common/models.py:1213 msgid "Enable password forgot" msgstr "" -#: common/models.py:1202 +#: common/models.py:1214 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/models.py:1208 +#: common/models.py:1220 msgid "Enable registration" msgstr "" -#: common/models.py:1209 +#: common/models.py:1221 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/models.py:1215 +#: common/models.py:1227 msgid "Enable SSO" msgstr "" -#: common/models.py:1216 +#: common/models.py:1228 msgid "Enable SSO on the login pages" msgstr "" -#: common/models.py:1222 +#: common/models.py:1234 msgid "Email required" msgstr "" -#: common/models.py:1223 +#: common/models.py:1235 msgid "Require user to supply mail on signup" msgstr "" -#: common/models.py:1229 +#: common/models.py:1241 msgid "Auto-fill SSO users" msgstr "" -#: common/models.py:1230 +#: common/models.py:1242 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/models.py:1236 +#: common/models.py:1248 msgid "Mail twice" msgstr "" -#: common/models.py:1237 +#: common/models.py:1249 msgid "On signup ask users twice for their mail" msgstr "" -#: common/models.py:1243 +#: common/models.py:1255 msgid "Password twice" msgstr "" -#: common/models.py:1244 +#: common/models.py:1256 msgid "On signup ask users twice for their password" msgstr "" -#: common/models.py:1250 +#: common/models.py:1262 msgid "Group on signup" msgstr "" -#: common/models.py:1251 +#: common/models.py:1263 msgid "Group to which new users are assigned on registration" msgstr "" -#: common/models.py:1257 +#: common/models.py:1269 msgid "Enforce MFA" msgstr "" -#: common/models.py:1258 +#: common/models.py:1270 msgid "Users must use multifactor security." msgstr "" -#: common/models.py:1264 +#: common/models.py:1276 msgid "Check plugins on startup" msgstr "" -#: common/models.py:1265 +#: common/models.py:1277 msgid "Check that all plugins are installed on startup - enable in container enviroments" msgstr "" -#: common/models.py:1273 +#: common/models.py:1284 +msgid "Check plugin signatures" +msgstr "" + +#: common/models.py:1285 +msgid "Check and show signatures for plugins" +msgstr "" + +#: common/models.py:1292 msgid "Enable URL integration" msgstr "" -#: common/models.py:1274 +#: common/models.py:1293 msgid "Enable plugins to add URL routes" msgstr "" -#: common/models.py:1281 +#: common/models.py:1300 msgid "Enable navigation integration" msgstr "" -#: common/models.py:1282 +#: common/models.py:1301 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/models.py:1289 +#: common/models.py:1308 msgid "Enable app integration" msgstr "" -#: common/models.py:1290 +#: common/models.py:1309 msgid "Enable plugins to add apps" msgstr "" -#: common/models.py:1297 +#: common/models.py:1316 msgid "Enable schedule integration" msgstr "" -#: common/models.py:1298 +#: common/models.py:1317 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/models.py:1305 +#: common/models.py:1324 msgid "Enable event integration" msgstr "" -#: common/models.py:1306 +#: common/models.py:1325 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:1323 common/models.py:1639 +#: common/models.py:1342 common/models.py:1658 msgid "Settings key (must be unique - case insensitive" msgstr "" -#: common/models.py:1345 +#: common/models.py:1364 msgid "Show subscribed parts" msgstr "" -#: common/models.py:1346 +#: common/models.py:1365 msgid "Show subscribed parts on the homepage" msgstr "" -#: common/models.py:1352 +#: common/models.py:1371 msgid "Show subscribed categories" msgstr "" -#: common/models.py:1353 +#: common/models.py:1372 msgid "Show subscribed part categories on the homepage" msgstr "" -#: common/models.py:1359 +#: common/models.py:1378 msgid "Show latest parts" msgstr "Hiển thị nguyên liệu mới nhất" -#: common/models.py:1360 +#: common/models.py:1379 msgid "Show latest parts on the homepage" msgstr "Hiển thị nguyên liệu mới nhất trên trang chủ" -#: common/models.py:1366 +#: common/models.py:1385 msgid "Recent Part Count" msgstr "" -#: common/models.py:1367 +#: common/models.py:1386 msgid "Number of recent parts to display on index page" msgstr "" -#: common/models.py:1373 +#: common/models.py:1392 msgid "Show unvalidated BOMs" msgstr "" -#: common/models.py:1374 +#: common/models.py:1393 msgid "Show BOMs that await validation on the homepage" msgstr "" -#: common/models.py:1380 +#: common/models.py:1399 msgid "Show recent stock changes" msgstr "" -#: common/models.py:1381 +#: common/models.py:1400 msgid "Show recently changed stock items on the homepage" msgstr "" -#: common/models.py:1387 +#: common/models.py:1406 msgid "Recent Stock Count" msgstr "" -#: common/models.py:1388 +#: common/models.py:1407 msgid "Number of recent stock items to display on index page" msgstr "" -#: common/models.py:1394 +#: common/models.py:1413 msgid "Show low stock" msgstr "" -#: common/models.py:1395 +#: common/models.py:1414 msgid "Show low stock items on the homepage" msgstr "" -#: common/models.py:1401 +#: common/models.py:1420 msgid "Show depleted stock" msgstr "" -#: common/models.py:1402 +#: common/models.py:1421 msgid "Show depleted stock items on the homepage" msgstr "" -#: common/models.py:1408 +#: common/models.py:1427 msgid "Show needed stock" msgstr "" -#: common/models.py:1409 +#: common/models.py:1428 msgid "Show stock items needed for builds on the homepage" msgstr "" -#: common/models.py:1415 +#: common/models.py:1434 msgid "Show expired stock" msgstr "" -#: common/models.py:1416 +#: common/models.py:1435 msgid "Show expired stock items on the homepage" msgstr "" -#: common/models.py:1422 +#: common/models.py:1441 msgid "Show stale stock" msgstr "" -#: common/models.py:1423 +#: common/models.py:1442 msgid "Show stale stock items on the homepage" msgstr "" -#: common/models.py:1429 +#: common/models.py:1448 msgid "Show pending builds" msgstr "" -#: common/models.py:1430 +#: common/models.py:1449 msgid "Show pending builds on the homepage" msgstr "" -#: common/models.py:1436 +#: common/models.py:1455 msgid "Show overdue builds" msgstr "" -#: common/models.py:1437 +#: common/models.py:1456 msgid "Show overdue builds on the homepage" msgstr "" -#: common/models.py:1443 +#: common/models.py:1462 msgid "Show outstanding POs" msgstr "" -#: common/models.py:1444 +#: common/models.py:1463 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:1450 +#: common/models.py:1469 msgid "Show overdue POs" msgstr "" -#: common/models.py:1451 +#: common/models.py:1470 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:1457 +#: common/models.py:1476 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:1458 +#: common/models.py:1477 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:1464 +#: common/models.py:1483 msgid "Show overdue SOs" msgstr "" -#: common/models.py:1465 +#: common/models.py:1484 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:1471 +#: common/models.py:1490 msgid "Inline label display" msgstr "" -#: common/models.py:1472 +#: common/models.py:1491 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1478 +#: common/models.py:1497 msgid "Inline report display" msgstr "" -#: common/models.py:1479 +#: common/models.py:1498 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1485 +#: common/models.py:1504 msgid "Search Parts" msgstr "" -#: common/models.py:1486 +#: common/models.py:1505 msgid "Display parts in search preview window" msgstr "" -#: common/models.py:1492 +#: common/models.py:1511 msgid "Seach Supplier Parts" msgstr "" -#: common/models.py:1493 +#: common/models.py:1512 msgid "Display supplier parts in search preview window" msgstr "" -#: common/models.py:1499 +#: common/models.py:1518 msgid "Search Manufacturer Parts" msgstr "" -#: common/models.py:1500 +#: common/models.py:1519 msgid "Display manufacturer parts in search preview window" msgstr "" -#: common/models.py:1506 +#: common/models.py:1525 msgid "Hide Inactive Parts" msgstr "" -#: common/models.py:1507 +#: common/models.py:1526 msgid "Excluded inactive parts from search preview window" msgstr "" -#: common/models.py:1513 +#: common/models.py:1532 msgid "Search Categories" msgstr "" -#: common/models.py:1514 +#: common/models.py:1533 msgid "Display part categories in search preview window" msgstr "" -#: common/models.py:1520 +#: common/models.py:1539 msgid "Search Stock" msgstr "" -#: common/models.py:1521 +#: common/models.py:1540 msgid "Display stock items in search preview window" msgstr "" -#: common/models.py:1527 +#: common/models.py:1546 msgid "Hide Unavailable Stock Items" msgstr "" -#: common/models.py:1528 +#: common/models.py:1547 msgid "Exclude stock items which are not available from the search preview window" msgstr "" -#: common/models.py:1534 +#: common/models.py:1553 msgid "Search Locations" msgstr "" -#: common/models.py:1535 +#: common/models.py:1554 msgid "Display stock locations in search preview window" msgstr "" -#: common/models.py:1541 +#: common/models.py:1560 msgid "Search Companies" msgstr "" -#: common/models.py:1542 +#: common/models.py:1561 msgid "Display companies in search preview window" msgstr "" -#: common/models.py:1548 +#: common/models.py:1567 msgid "Search Purchase Orders" msgstr "" -#: common/models.py:1549 +#: common/models.py:1568 msgid "Display purchase orders in search preview window" msgstr "" -#: common/models.py:1555 +#: common/models.py:1574 msgid "Exclude Inactive Purchase Orders" msgstr "" -#: common/models.py:1556 +#: common/models.py:1575 msgid "Exclude inactive purchase orders from search preview window" msgstr "" -#: common/models.py:1562 +#: common/models.py:1581 msgid "Search Sales Orders" msgstr "" -#: common/models.py:1563 +#: common/models.py:1582 msgid "Display sales orders in search preview window" msgstr "" -#: common/models.py:1569 +#: common/models.py:1588 msgid "Exclude Inactive Sales Orders" msgstr "" -#: common/models.py:1570 +#: common/models.py:1589 msgid "Exclude inactive sales orders from search preview window" msgstr "" -#: common/models.py:1576 +#: common/models.py:1595 msgid "Search Preview Results" msgstr "" -#: common/models.py:1577 +#: common/models.py:1596 msgid "Number of results to show in each section of the search preview window" msgstr "" -#: common/models.py:1583 +#: common/models.py:1602 msgid "Show Quantity in Forms" msgstr "" -#: common/models.py:1584 +#: common/models.py:1603 msgid "Display available part quantity in some forms" msgstr "" -#: common/models.py:1590 +#: common/models.py:1609 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:1591 +#: common/models.py:1610 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:1597 +#: common/models.py:1616 msgid "Fixed Navbar" msgstr "" -#: common/models.py:1598 +#: common/models.py:1617 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:1604 +#: common/models.py:1623 msgid "Date Format" msgstr "" -#: common/models.py:1605 +#: common/models.py:1624 msgid "Preferred format for displaying dates" msgstr "" -#: common/models.py:1619 part/templates/part/detail.html:41 +#: common/models.py:1638 part/templates/part/detail.html:41 msgid "Part Scheduling" msgstr "" -#: common/models.py:1620 +#: common/models.py:1639 msgid "Display part scheduling information" msgstr "" -#: common/models.py:1679 +#: common/models.py:1698 msgid "Price break quantity" msgstr "" -#: common/models.py:1686 company/serializers.py:366 +#: common/models.py:1705 company/serializers.py:366 #: company/templates/company/supplier_part.html:284 order/models.py:938 -#: templates/js/translated/part.js:1065 templates/js/translated/part.js:2152 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2161 msgid "Price" msgstr "" -#: common/models.py:1687 +#: common/models.py:1706 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:1847 common/models.py:2025 +#: common/models.py:1866 common/models.py:2044 msgid "Endpoint" msgstr "" -#: common/models.py:1848 +#: common/models.py:1867 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:1857 +#: common/models.py:1876 msgid "Name for this webhook" msgstr "" -#: common/models.py:1862 part/models.py:914 plugin/models.py:99 +#: common/models.py:1881 part/models.py:921 plugin/models.py:100 #: templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:104 #: templates/js/translated/table_filters.js:316 @@ -2591,67 +2619,67 @@ msgstr "" msgid "Active" msgstr "" -#: common/models.py:1863 +#: common/models.py:1882 msgid "Is this webhook active" msgstr "" -#: common/models.py:1877 +#: common/models.py:1896 msgid "Token" msgstr "" -#: common/models.py:1878 +#: common/models.py:1897 msgid "Token for access" msgstr "" -#: common/models.py:1885 +#: common/models.py:1904 msgid "Secret" msgstr "" -#: common/models.py:1886 +#: common/models.py:1905 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:1992 +#: common/models.py:2011 msgid "Message ID" msgstr "" -#: common/models.py:1993 +#: common/models.py:2012 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2001 +#: common/models.py:2020 msgid "Host" msgstr "" -#: common/models.py:2002 +#: common/models.py:2021 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2009 +#: common/models.py:2028 msgid "Header" msgstr "" -#: common/models.py:2010 +#: common/models.py:2029 msgid "Header of this message" msgstr "" -#: common/models.py:2016 +#: common/models.py:2035 msgid "Body" msgstr "" -#: common/models.py:2017 +#: common/models.py:2036 msgid "Body of this message" msgstr "" -#: common/models.py:2026 +#: common/models.py:2045 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2031 +#: common/models.py:2050 msgid "Worked on" msgstr "" -#: common/models.py:2032 +#: common/models.py:2051 msgid "Was the work on this message finished?" msgstr "" @@ -2758,7 +2786,7 @@ msgstr "" msgid "Link to external company information" msgstr "" -#: company/models.py:135 part/models.py:808 +#: company/models.py:135 part/models.py:815 msgid "Image" msgstr "" @@ -2791,8 +2819,8 @@ msgid "Does this company manufacture parts?" msgstr "" #: company/models.py:148 company/serializers.py:372 -#: company/templates/company/company_base.html:106 part/serializers.py:151 -#: part/serializers.py:182 stock/serializers.py:180 +#: company/templates/company/company_base.html:106 part/serializers.py:153 +#: part/serializers.py:184 stock/serializers.py:180 msgid "Currency" msgstr "" @@ -2800,7 +2828,7 @@ msgstr "" msgid "Default currency used for this company" msgstr "" -#: company/models.py:248 company/models.py:481 stock/models.py:591 +#: company/models.py:248 company/models.py:481 stock/models.py:598 #: stock/serializers.py:87 stock/templates/stock/item_base.html:148 #: templates/js/translated/bom.js:543 msgid "Base Part" @@ -2832,7 +2860,7 @@ msgstr "" #: templates/js/translated/company.js:497 #: templates/js/translated/company.js:649 #: templates/js/translated/company.js:937 templates/js/translated/order.js:1971 -#: templates/js/translated/part.js:247 templates/js/translated/part.js:1023 +#: templates/js/translated/part.js:247 templates/js/translated/part.js:1027 msgid "MPN" msgstr "" @@ -2861,9 +2889,9 @@ msgstr "" #: company/models.py:365 #: report/templates/report/inventree_test_report_base.html:95 -#: stock/models.py:2088 templates/js/translated/company.js:546 -#: templates/js/translated/company.js:764 templates/js/translated/part.js:845 -#: templates/js/translated/stock.js:1356 +#: stock/models.py:2095 templates/js/translated/company.js:546 +#: templates/js/translated/company.js:764 templates/js/translated/part.js:849 +#: templates/js/translated/stock.js:1360 msgid "Value" msgstr "" @@ -2871,10 +2899,10 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:372 part/models.py:881 part/models.py:2379 +#: company/models.py:372 part/models.py:888 part/models.py:2386 #: part/templates/part/part_base.html:280 #: templates/InvenTree/settings/settings.html:352 -#: templates/js/translated/company.js:770 templates/js/translated/part.js:851 +#: templates/js/translated/company.js:770 templates/js/translated/part.js:855 msgid "Units" msgstr "" @@ -2894,7 +2922,7 @@ msgstr "" #: templates/js/translated/company.js:268 #: templates/js/translated/company.js:401 #: templates/js/translated/company.js:893 templates/js/translated/order.js:1707 -#: templates/js/translated/part.js:217 templates/js/translated/part.js:991 +#: templates/js/translated/part.js:217 templates/js/translated/part.js:995 #: templates/js/translated/table_filters.js:423 msgid "Supplier" msgstr "Nhà cung cấp" @@ -2906,7 +2934,7 @@ msgstr "" #: company/models.py:497 company/templates/company/supplier_part.html:118 #: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267 #: templates/js/translated/order.js:1958 templates/js/translated/part.js:228 -#: templates/js/translated/part.js:1009 +#: templates/js/translated/part.js:1013 msgid "SKU" msgstr "" @@ -2927,23 +2955,23 @@ msgid "Supplier part description" msgstr "" #: company/models.py:522 company/templates/company/supplier_part.html:146 -#: part/models.py:2613 part/templates/part/upload_bom.html:59 +#: part/models.py:2620 part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401 msgid "Note" msgstr "" -#: company/models.py:526 part/models.py:1735 +#: company/models.py:526 part/models.py:1742 msgid "base cost" msgstr "" -#: company/models.py:526 part/models.py:1735 +#: company/models.py:526 part/models.py:1742 msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:528 company/templates/company/supplier_part.html:139 -#: stock/models.py:617 stock/templates/stock/item_base.html:245 -#: templates/js/translated/company.js:969 templates/js/translated/stock.js:1972 +#: stock/models.py:624 stock/templates/stock/item_base.html:245 +#: templates/js/translated/company.js:969 templates/js/translated/stock.js:1976 msgid "Packaging" msgstr "" @@ -2951,7 +2979,7 @@ msgstr "" msgid "Part packaging" msgstr "" -#: company/models.py:530 part/models.py:1737 +#: company/models.py:530 part/models.py:1744 msgid "multiple" msgstr "" @@ -2964,7 +2992,7 @@ msgstr "" #: templates/email/low_stock_notification.html:18 #: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789 #: templates/js/translated/build.js:2645 templates/js/translated/company.js:979 -#: templates/js/translated/part.js:596 templates/js/translated/part.js:599 +#: templates/js/translated/part.js:600 templates/js/translated/part.js:603 #: templates/js/translated/table_filters.js:186 msgid "Available" msgstr "" @@ -3037,12 +3065,12 @@ msgid "Download image from URL" msgstr "" #: company/templates/company/company_base.html:86 order/models.py:637 -#: order/templates/order/sales_order_base.html:116 stock/models.py:636 -#: stock/models.py:637 stock/serializers.py:809 +#: order/templates/order/sales_order_base.html:116 stock/models.py:643 +#: stock/models.py:644 stock/serializers.py:811 #: stock/templates/stock/item_base.html:401 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:393 templates/js/translated/order.js:2513 -#: templates/js/translated/stock.js:2550 +#: templates/js/translated/stock.js:2559 #: templates/js/translated/table_filters.js:427 msgid "Customer" msgstr "" @@ -3083,7 +3111,7 @@ msgstr "" #: company/templates/company/detail.html:36 #: company/templates/company/detail.html:84 -#: part/templates/part/category.html:176 +#: part/templates/part/category.html:182 msgid "Order parts" msgstr "" @@ -3231,7 +3259,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:170 #: part/templates/part/detail.html:186 #: templates/InvenTree/settings/category.html:12 -#: templates/InvenTree/settings/part.html:66 +#: templates/InvenTree/settings/part.html:68 msgid "New Parameter" msgstr "" @@ -3261,10 +3289,10 @@ msgid "Assigned Stock Items" msgstr "" #: company/templates/company/supplier_part.html:7 -#: company/templates/company/supplier_part.html:24 stock/models.py:600 +#: company/templates/company/supplier_part.html:24 stock/models.py:607 #: stock/templates/stock/item_base.html:238 #: templates/js/translated/company.js:909 templates/js/translated/order.js:935 -#: templates/js/translated/stock.js:1929 +#: templates/js/translated/stock.js:1933 msgid "Supplier Part" msgstr "" @@ -3308,13 +3336,13 @@ msgid "Supplier Part Stock" msgstr "" #: company/templates/company/supplier_part.html:168 -#: part/templates/part/detail.html:24 stock/templates/stock/location.html:176 +#: part/templates/part/detail.html:24 stock/templates/stock/location.html:181 msgid "Create new stock item" msgstr "" #: company/templates/company/supplier_part.html:169 -#: part/templates/part/detail.html:25 stock/templates/stock/location.html:177 -#: templates/js/translated/stock.js:431 +#: part/templates/part/detail.html:25 stock/templates/stock/location.html:182 +#: templates/js/translated/stock.js:435 msgid "New Stock Item" msgstr "" @@ -3330,7 +3358,7 @@ msgstr "" #: company/templates/company/supplier_part.html:212 #: company/templates/company/supplier_part.html:326 -#: part/templates/part/prices.html:276 templates/js/translated/part.js:2224 +#: part/templates/part/prices.html:276 templates/js/translated/part.js:2233 msgid "Add Price Break" msgstr "" @@ -3339,12 +3367,12 @@ msgid "No price break information found" msgstr "" #: company/templates/company/supplier_part.html:252 -#: templates/js/translated/part.js:2234 +#: templates/js/translated/part.js:2243 msgid "Delete Price Break" msgstr "" #: company/templates/company/supplier_part.html:266 -#: templates/js/translated/part.js:2248 +#: templates/js/translated/part.js:2257 msgid "Edit Price Break" msgstr "" @@ -3366,13 +3394,13 @@ msgstr "" #: company/templates/company/supplier_part_navbar.html:15 #: part/templates/part/part_sidebar.html:14 -#: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:19 +#: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:24 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:151 #: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/bom.js:555 templates/js/translated/part.js:747 -#: templates/js/translated/part.js:1295 templates/js/translated/part.js:1456 -#: templates/js/translated/stock.js:955 templates/js/translated/stock.js:1750 +#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751 +#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460 +#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754 #: templates/navbar.html:31 msgid "Stock" msgstr "Kiện hàng" @@ -3392,14 +3420,14 @@ msgid "Pricing" msgstr "" #: company/templates/company/supplier_part_sidebar.html:5 -#: part/templates/part/category.html:197 +#: part/templates/part/category.html:203 #: part/templates/part/category_sidebar.html:17 -#: stock/templates/stock/location.html:147 -#: stock/templates/stock/location.html:161 -#: stock/templates/stock/location.html:173 +#: stock/templates/stock/location.html:152 +#: stock/templates/stock/location.html:166 +#: stock/templates/stock/location.html:178 #: stock/templates/stock/location_sidebar.html:7 #: templates/InvenTree/search.html:153 templates/js/translated/search.js:223 -#: templates/js/translated/stock.js:2427 users/models.py:40 +#: templates/js/translated/stock.js:2436 users/models.py:40 msgid "Stock Items" msgstr "" @@ -3656,8 +3684,8 @@ msgstr "" #: stock/templates/stock/item_base.html:184 #: templates/email/overdue_purchase_order.html:15 #: templates/js/translated/order.js:936 templates/js/translated/order.js:1691 -#: templates/js/translated/part.js:968 templates/js/translated/stock.js:1909 -#: templates/js/translated/stock.js:2531 +#: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913 +#: templates/js/translated/stock.js:2540 msgid "Purchase Order" msgstr "Đơn hàng" @@ -3667,7 +3695,7 @@ msgstr "" #: order/models.py:1009 order/templates/order/order_base.html:169 #: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073 -#: templates/js/translated/part.js:1060 templates/js/translated/part.js:1087 +#: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091 #: templates/js/translated/table_filters.js:338 msgid "Received" msgstr "" @@ -3676,9 +3704,9 @@ msgstr "" msgid "Number of items received" msgstr "" -#: order/models.py:1017 part/templates/part/prices.html:181 stock/models.py:727 +#: order/models.py:1017 part/templates/part/prices.html:181 stock/models.py:734 #: stock/serializers.py:171 stock/templates/stock/item_base.html:191 -#: templates/js/translated/stock.js:1960 +#: templates/js/translated/stock.js:1964 msgid "Purchase Price" msgstr "Giá mua" @@ -4066,8 +4094,8 @@ msgstr "" #: templates/js/translated/bom.js:77 templates/js/translated/build.js:431 #: templates/js/translated/build.js:583 templates/js/translated/build.js:1974 #: templates/js/translated/order.js:884 templates/js/translated/order.js:1337 -#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:621 -#: templates/js/translated/stock.js:789 +#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625 +#: templates/js/translated/stock.js:793 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "" @@ -4261,8 +4289,8 @@ msgstr "" msgid "This field is required" msgstr "" -#: part/bom.py:127 part/models.py:98 part/models.py:817 -#: part/templates/part/category.html:108 part/templates/part/part_base.html:330 +#: part/bom.py:127 part/models.py:98 part/models.py:824 +#: part/templates/part/category.html:114 part/templates/part/part_base.html:330 msgid "Default Location" msgstr "" @@ -4276,9 +4304,9 @@ msgid "Available Stock" msgstr "" #: part/bom.py:130 part/templates/part/part_base.html:207 -#: templates/js/translated/bom.js:947 templates/js/translated/part.js:586 -#: templates/js/translated/part.js:606 templates/js/translated/part.js:1298 -#: templates/js/translated/part.js:1470 templates/js/translated/part.js:1486 +#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590 +#: templates/js/translated/part.js:610 templates/js/translated/part.js:1302 +#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "" @@ -4299,516 +4327,524 @@ msgstr "" msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:115 part/models.py:2455 part/templates/part/category.html:15 +#: part/models.py:107 stock/models.py:84 +msgid "Icon" +msgstr "" + +#: part/models.py:108 stock/models.py:85 +msgid "Icon (optional)" +msgstr "" + +#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" -#: part/models.py:116 part/templates/part/category.html:128 +#: part/models.py:123 part/templates/part/category.html:134 #: templates/InvenTree/search.html:95 templates/js/translated/search.js:198 #: users/models.py:37 msgid "Part Categories" msgstr "" -#: part/models.py:337 part/templates/part/cat_link.html:3 -#: part/templates/part/category.html:17 part/templates/part/category.html:133 -#: part/templates/part/category.html:153 +#: part/models.py:344 part/templates/part/cat_link.html:3 +#: part/templates/part/category.html:23 part/templates/part/category.html:139 +#: part/templates/part/category.html:159 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82 #: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:1946 templates/js/translated/search.js:144 +#: templates/js/translated/part.js:1955 templates/js/translated/search.js:144 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "Nguyên liệu" -#: part/models.py:422 +#: part/models.py:429 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:492 part/models.py:504 +#: part/models.py:499 part/models.py:511 #, python-brace-format msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)" msgstr "" -#: part/models.py:621 +#: part/models.py:628 msgid "Next available serial numbers are" msgstr "" -#: part/models.py:625 +#: part/models.py:632 msgid "Next available serial number is" msgstr "" -#: part/models.py:630 +#: part/models.py:637 msgid "Most recent serial number is" msgstr "" -#: part/models.py:711 +#: part/models.py:718 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:738 part/models.py:2509 +#: part/models.py:745 part/models.py:2516 msgid "Part name" msgstr "" -#: part/models.py:745 +#: part/models.py:752 msgid "Is Template" msgstr "" -#: part/models.py:746 +#: part/models.py:753 msgid "Is this part a template part?" msgstr "" -#: part/models.py:756 +#: part/models.py:763 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:757 +#: part/models.py:764 msgid "Variant Of" msgstr "" -#: part/models.py:763 +#: part/models.py:770 msgid "Part description" msgstr "" -#: part/models.py:768 part/templates/part/category.html:86 +#: part/models.py:775 part/templates/part/category.html:92 #: part/templates/part/part_base.html:294 msgid "Keywords" msgstr "" -#: part/models.py:769 +#: part/models.py:776 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:776 part/models.py:2211 part/models.py:2454 +#: part/models.py:783 part/models.py:2218 part/models.py:2461 #: part/templates/part/part_base.html:257 #: templates/InvenTree/settings/settings.html:232 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1438 templates/js/translated/part.js:1664 +#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1668 msgid "Category" msgstr "" -#: part/models.py:777 +#: part/models.py:784 msgid "Part category" msgstr "" -#: part/models.py:782 part/templates/part/part_base.html:266 -#: templates/js/translated/part.js:735 templates/js/translated/part.js:1391 -#: templates/js/translated/stock.js:1722 +#: part/models.py:789 part/templates/part/part_base.html:266 +#: templates/js/translated/part.js:739 templates/js/translated/part.js:1395 +#: templates/js/translated/stock.js:1726 msgid "IPN" msgstr "" -#: part/models.py:783 +#: part/models.py:790 msgid "Internal Part Number" msgstr "" -#: part/models.py:789 +#: part/models.py:796 msgid "Part revision or version number" msgstr "" -#: part/models.py:790 part/templates/part/part_base.html:273 -#: report/models.py:171 templates/js/translated/part.js:739 +#: part/models.py:797 part/templates/part/part_base.html:273 +#: report/models.py:171 templates/js/translated/part.js:743 msgid "Revision" msgstr "" -#: part/models.py:815 +#: part/models.py:822 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:860 part/templates/part/part_base.html:339 +#: part/models.py:867 part/templates/part/part_base.html:339 msgid "Default Supplier" msgstr "" -#: part/models.py:861 +#: part/models.py:868 msgid "Default supplier part" msgstr "" -#: part/models.py:868 +#: part/models.py:875 msgid "Default Expiry" msgstr "" -#: part/models.py:869 +#: part/models.py:876 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:874 part/templates/part/part_base.html:200 +#: part/models.py:881 part/templates/part/part_base.html:200 msgid "Minimum Stock" msgstr "" -#: part/models.py:875 +#: part/models.py:882 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:882 +#: part/models.py:889 msgid "Stock keeping units for this part" msgstr "" -#: part/models.py:888 +#: part/models.py:895 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:894 +#: part/models.py:901 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:900 +#: part/models.py:907 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:905 +#: part/models.py:912 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:910 +#: part/models.py:917 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:915 +#: part/models.py:922 msgid "Is this part active?" msgstr "" -#: part/models.py:920 +#: part/models.py:927 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:922 +#: part/models.py:929 msgid "Part notes" msgstr "" -#: part/models.py:924 +#: part/models.py:931 msgid "BOM checksum" msgstr "" -#: part/models.py:924 +#: part/models.py:931 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:927 +#: part/models.py:934 msgid "BOM checked by" msgstr "" -#: part/models.py:929 +#: part/models.py:936 msgid "BOM checked date" msgstr "" -#: part/models.py:933 +#: part/models.py:940 msgid "Creation User" msgstr "" -#: part/models.py:1737 +#: part/models.py:1744 msgid "Sell multiple" msgstr "" -#: part/models.py:2258 +#: part/models.py:2265 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:2275 +#: part/models.py:2282 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:2295 templates/js/translated/part.js:1997 -#: templates/js/translated/stock.js:1336 +#: part/models.py:2302 templates/js/translated/part.js:2006 +#: templates/js/translated/stock.js:1340 msgid "Test Name" msgstr "" -#: part/models.py:2296 +#: part/models.py:2303 msgid "Enter a name for the test" msgstr "" -#: part/models.py:2301 +#: part/models.py:2308 msgid "Test Description" msgstr "" -#: part/models.py:2302 +#: part/models.py:2309 msgid "Enter description for this test" msgstr "" -#: part/models.py:2307 templates/js/translated/part.js:2006 +#: part/models.py:2314 templates/js/translated/part.js:2015 #: templates/js/translated/table_filters.js:302 msgid "Required" msgstr "" -#: part/models.py:2308 +#: part/models.py:2315 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:2313 templates/js/translated/part.js:2014 +#: part/models.py:2320 templates/js/translated/part.js:2023 msgid "Requires Value" msgstr "" -#: part/models.py:2314 +#: part/models.py:2321 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:2319 templates/js/translated/part.js:2021 +#: part/models.py:2326 templates/js/translated/part.js:2030 msgid "Requires Attachment" msgstr "" -#: part/models.py:2320 +#: part/models.py:2327 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:2328 +#: part/models.py:2335 #, python-brace-format msgid "Illegal character in template name ({c})" msgstr "" -#: part/models.py:2364 +#: part/models.py:2371 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:2372 +#: part/models.py:2379 msgid "Parameter Name" msgstr "" -#: part/models.py:2379 +#: part/models.py:2386 msgid "Parameter Units" msgstr "" -#: part/models.py:2410 +#: part/models.py:2417 msgid "Parent Part" msgstr "" -#: part/models.py:2412 part/models.py:2460 part/models.py:2461 +#: part/models.py:2419 part/models.py:2467 part/models.py:2468 #: templates/InvenTree/settings/settings.html:227 msgid "Parameter Template" msgstr "" -#: part/models.py:2414 +#: part/models.py:2421 msgid "Data" msgstr "" -#: part/models.py:2414 +#: part/models.py:2421 msgid "Parameter Value" msgstr "" -#: part/models.py:2465 templates/InvenTree/settings/settings.html:236 +#: part/models.py:2472 templates/InvenTree/settings/settings.html:236 msgid "Default Value" msgstr "" -#: part/models.py:2466 +#: part/models.py:2473 msgid "Default Parameter Value" msgstr "" -#: part/models.py:2501 +#: part/models.py:2508 msgid "Part ID or part name" msgstr "" -#: part/models.py:2504 templates/js/translated/model_renderers.js:212 +#: part/models.py:2511 templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "" -#: part/models.py:2505 +#: part/models.py:2512 msgid "Unique part ID value" msgstr "" -#: part/models.py:2508 +#: part/models.py:2515 msgid "Part Name" msgstr "" -#: part/models.py:2512 +#: part/models.py:2519 msgid "Part IPN" msgstr "" -#: part/models.py:2513 +#: part/models.py:2520 msgid "Part IPN value" msgstr "" -#: part/models.py:2516 +#: part/models.py:2523 msgid "Level" msgstr "" -#: part/models.py:2517 +#: part/models.py:2524 msgid "BOM level" msgstr "" -#: part/models.py:2586 +#: part/models.py:2593 msgid "Select parent part" msgstr "" -#: part/models.py:2594 +#: part/models.py:2601 msgid "Sub part" msgstr "" -#: part/models.py:2595 +#: part/models.py:2602 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:2601 +#: part/models.py:2608 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:2603 part/templates/part/upload_bom.html:58 +#: part/models.py:2610 part/templates/part/upload_bom.html:58 #: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999 #: templates/js/translated/table_filters.js:100 msgid "Optional" msgstr "" -#: part/models.py:2603 +#: part/models.py:2610 msgid "This BOM item is optional" msgstr "" -#: part/models.py:2606 part/templates/part/upload_bom.html:55 +#: part/models.py:2613 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:2607 +#: part/models.py:2614 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:2610 +#: part/models.py:2617 msgid "BOM item reference" msgstr "" -#: part/models.py:2613 +#: part/models.py:2620 msgid "BOM item notes" msgstr "" -#: part/models.py:2615 +#: part/models.py:2622 msgid "Checksum" msgstr "" -#: part/models.py:2615 +#: part/models.py:2622 msgid "BOM line checksum" msgstr "" -#: part/models.py:2619 part/templates/part/upload_bom.html:57 +#: part/models.py:2626 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1016 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:96 msgid "Inherited" msgstr "" -#: part/models.py:2620 +#: part/models.py:2627 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:2625 part/templates/part/upload_bom.html:56 +#: part/models.py:2632 part/templates/part/upload_bom.html:56 #: templates/js/translated/bom.js:1008 msgid "Allow Variants" msgstr "" -#: part/models.py:2626 +#: part/models.py:2633 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:2704 stock/models.py:461 +#: part/models.py:2711 stock/models.py:468 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:2713 part/models.py:2715 +#: part/models.py:2720 part/models.py:2722 msgid "Sub part must be specified" msgstr "" -#: part/models.py:2820 +#: part/models.py:2827 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:2841 +#: part/models.py:2848 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:2854 +#: part/models.py:2861 msgid "Parent BOM item" msgstr "" -#: part/models.py:2862 +#: part/models.py:2869 msgid "Substitute part" msgstr "" -#: part/models.py:2877 +#: part/models.py:2884 msgid "Part 1" msgstr "" -#: part/models.py:2881 +#: part/models.py:2888 msgid "Part 2" msgstr "" -#: part/models.py:2881 +#: part/models.py:2888 msgid "Select Related Part" msgstr "" -#: part/models.py:2899 +#: part/models.py:2906 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:2903 +#: part/models.py:2910 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:152 part/serializers.py:183 stock/serializers.py:181 +#: part/serializers.py:154 part/serializers.py:185 stock/serializers.py:181 msgid "Purchase currency of this stock item" msgstr "" -#: part/serializers.py:812 +#: part/serializers.py:814 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:820 +#: part/serializers.py:822 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:821 +#: part/serializers.py:823 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:826 +#: part/serializers.py:828 msgid "Include Inherited" msgstr "" -#: part/serializers.py:827 +#: part/serializers.py:829 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:832 +#: part/serializers.py:834 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:833 +#: part/serializers.py:835 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:838 +#: part/serializers.py:840 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:839 +#: part/serializers.py:841 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:879 +#: part/serializers.py:881 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:880 +#: part/serializers.py:882 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:910 +#: part/serializers.py:912 msgid "No part column specified" msgstr "" -#: part/serializers.py:953 +#: part/serializers.py:955 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:956 +#: part/serializers.py:958 msgid "No matching part found" msgstr "" -#: part/serializers.py:959 +#: part/serializers.py:961 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:968 +#: part/serializers.py:970 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:976 +#: part/serializers.py:978 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:997 +#: part/serializers.py:999 msgid "At least one BOM item is required" msgstr "" @@ -4848,101 +4884,101 @@ msgstr "" msgid "Delete Items" msgstr "" -#: part/templates/part/category.html:28 part/templates/part/category.html:32 +#: part/templates/part/category.html:34 part/templates/part/category.html:38 msgid "You are subscribed to notifications for this category" msgstr "" -#: part/templates/part/category.html:36 +#: part/templates/part/category.html:42 msgid "Subscribe to notifications for this category" msgstr "" -#: part/templates/part/category.html:42 +#: part/templates/part/category.html:48 msgid "Category Actions" msgstr "" -#: part/templates/part/category.html:47 +#: part/templates/part/category.html:53 msgid "Edit category" msgstr "" -#: part/templates/part/category.html:48 +#: part/templates/part/category.html:54 msgid "Edit Category" msgstr "" -#: part/templates/part/category.html:52 +#: part/templates/part/category.html:58 msgid "Delete category" msgstr "" -#: part/templates/part/category.html:53 +#: part/templates/part/category.html:59 msgid "Delete Category" msgstr "" -#: part/templates/part/category.html:61 +#: part/templates/part/category.html:67 msgid "Create new part category" msgstr "" -#: part/templates/part/category.html:62 +#: part/templates/part/category.html:68 msgid "New Category" msgstr "" -#: part/templates/part/category.html:80 part/templates/part/category.html:93 +#: part/templates/part/category.html:86 part/templates/part/category.html:99 msgid "Category Path" msgstr "" -#: part/templates/part/category.html:94 +#: part/templates/part/category.html:100 msgid "Top level part category" msgstr "" -#: part/templates/part/category.html:114 part/templates/part/category.html:222 +#: part/templates/part/category.html:120 part/templates/part/category.html:228 #: part/templates/part/category_sidebar.html:7 msgid "Subcategories" msgstr "" -#: part/templates/part/category.html:119 +#: part/templates/part/category.html:125 msgid "Parts (Including subcategories)" msgstr "" -#: part/templates/part/category.html:157 +#: part/templates/part/category.html:163 msgid "Create new part" msgstr "" -#: part/templates/part/category.html:158 templates/js/translated/bom.js:367 +#: part/templates/part/category.html:164 templates/js/translated/bom.js:367 msgid "New Part" msgstr "" -#: part/templates/part/category.html:168 part/templates/part/detail.html:363 +#: part/templates/part/category.html:174 part/templates/part/detail.html:363 #: part/templates/part/detail.html:394 msgid "Options" msgstr "" -#: part/templates/part/category.html:172 +#: part/templates/part/category.html:178 msgid "Set category" msgstr "" -#: part/templates/part/category.html:173 +#: part/templates/part/category.html:179 msgid "Set Category" msgstr "" -#: part/templates/part/category.html:180 part/templates/part/category.html:181 +#: part/templates/part/category.html:186 part/templates/part/category.html:187 msgid "Print Labels" msgstr "" -#: part/templates/part/category.html:206 +#: part/templates/part/category.html:212 msgid "Part Parameters" msgstr "" -#: part/templates/part/category.html:320 +#: part/templates/part/category.html:327 msgid "Create Part Category" msgstr "" -#: part/templates/part/category.html:340 +#: part/templates/part/category.html:347 msgid "Create Part" msgstr "" -#: part/templates/part/category.html:343 +#: part/templates/part/category.html:350 msgid "Create another part after this one" msgstr "" -#: part/templates/part/category.html:344 +#: part/templates/part/category.html:351 msgid "Part created successfully" msgstr "" @@ -4950,7 +4986,7 @@ msgstr "" msgid "Import Parts" msgstr "" -#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:375 +#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:379 msgid "Duplicate Part" msgstr "" @@ -5172,19 +5208,19 @@ msgstr "" #: part/templates/part/part_base.html:43 #: stock/templates/stock/item_base.html:41 -#: stock/templates/stock/location.html:43 +#: stock/templates/stock/location.html:48 msgid "Barcode actions" msgstr "" #: part/templates/part/part_base.html:46 #: stock/templates/stock/item_base.html:45 -#: stock/templates/stock/location.html:45 templates/qr_button.html:1 +#: stock/templates/stock/location.html:50 templates/qr_button.html:1 msgid "Show QR Code" msgstr "" #: part/templates/part/part_base.html:49 #: stock/templates/stock/item_base.html:63 -#: stock/templates/stock/location.html:47 +#: stock/templates/stock/location.html:52 msgid "Print Label" msgstr "" @@ -5194,7 +5230,7 @@ msgstr "" #: part/templates/part/part_base.html:60 #: stock/templates/stock/item_base.html:116 -#: stock/templates/stock/location.html:56 +#: stock/templates/stock/location.html:61 msgid "Stock actions" msgstr "" @@ -5255,7 +5291,7 @@ msgstr "" #: templates/js/translated/company.js:624 #: templates/js/translated/company.js:884 #: templates/js/translated/model_renderers.js:204 -#: templates/js/translated/part.js:650 templates/js/translated/part.js:727 +#: templates/js/translated/part.js:654 templates/js/translated/part.js:731 msgid "Inactive" msgstr "" @@ -5289,9 +5325,9 @@ msgstr "" msgid "Can Build" msgstr "" -#: part/templates/part/part_base.html:238 templates/js/translated/part.js:589 -#: templates/js/translated/part.js:609 templates/js/translated/part.js:1302 -#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490 +#: part/templates/part/part_base.html:238 templates/js/translated/part.js:593 +#: templates/js/translated/part.js:613 templates/js/translated/part.js:1306 +#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1494 msgid "Building" msgstr "" @@ -5464,8 +5500,8 @@ msgstr "" msgid "No sale pice history available for this part." msgstr "" -#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:612 -#: templates/js/translated/part.js:1290 templates/js/translated/part.js:1494 +#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616 +#: templates/js/translated/part.js:1294 templates/js/translated/part.js:1498 msgid "No Stock" msgstr "" @@ -5630,51 +5666,55 @@ msgstr "" msgid "Allow sending of emails for event notifications" msgstr "" -#: plugin/models.py:32 +#: plugin/models.py:33 msgid "Plugin Metadata" msgstr "" -#: plugin/models.py:33 +#: plugin/models.py:34 msgid "JSON metadata field, for use by external plugins" msgstr "" -#: plugin/models.py:79 +#: plugin/models.py:80 msgid "Plugin Configuration" msgstr "" -#: plugin/models.py:80 +#: plugin/models.py:81 msgid "Plugin Configurations" msgstr "" -#: plugin/models.py:85 +#: plugin/models.py:86 msgid "Key" msgstr "" -#: plugin/models.py:86 +#: plugin/models.py:87 msgid "Key of plugin" msgstr "" -#: plugin/models.py:94 +#: plugin/models.py:95 msgid "PluginName of the plugin" msgstr "" -#: plugin/models.py:100 +#: plugin/models.py:101 msgid "Is the plugin active" msgstr "" -#: plugin/models.py:168 +#: plugin/models.py:158 +msgid "Sample plugin" +msgstr "" + +#: plugin/models.py:186 msgid "Plugin" msgstr "" -#: plugin/models.py:231 +#: plugin/models.py:249 msgid "Method" msgstr "" -#: plugin/plugin.py:228 +#: plugin/plugin.py:251 msgid "No author found" msgstr "" -#: plugin/plugin.py:240 +#: plugin/plugin.py:263 msgid "No date found" msgstr "" @@ -5746,12 +5786,12 @@ msgstr "" msgid "No valid objects provided to template" msgstr "" -#: report/api.py:216 report/api.py:257 +#: report/api.py:216 report/api.py:252 #, python-brace-format msgid "Template file '{template}' is missing or does not exist" msgstr "" -#: report/api.py:360 +#: report/api.py:355 msgid "Test report" msgstr "" @@ -5852,12 +5892,12 @@ msgid "Stock Item Test Report" msgstr "" #: report/templates/report/inventree_test_report_base.html:79 -#: stock/models.py:641 stock/templates/stock/item_base.html:322 +#: stock/models.py:648 stock/templates/stock/item_base.html:322 #: templates/js/translated/build.js:424 templates/js/translated/build.js:576 #: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673 #: templates/js/translated/model_renderers.js:118 #: templates/js/translated/order.js:118 templates/js/translated/order.js:3297 -#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:486 +#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490 msgid "Serial Number" msgstr "" @@ -5866,19 +5906,19 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report_base.html:93 -#: stock/models.py:2076 +#: stock/models.py:2083 msgid "Test" msgstr "" #: report/templates/report/inventree_test_report_base.html:94 -#: stock/models.py:2082 +#: stock/models.py:2089 msgid "Result" msgstr "" #: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:51 +#: templates/InvenTree/settings/plugin.html:53 #: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2459 +#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468 msgid "Date" msgstr "" @@ -5896,8 +5936,8 @@ msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report_base.html:137 -#: templates/js/translated/stock.js:606 templates/js/translated/stock.js:776 -#: templates/js/translated/stock.js:2708 +#: templates/js/translated/stock.js:610 templates/js/translated/stock.js:780 +#: templates/js/translated/stock.js:2717 msgid "Serial" msgstr "" @@ -5913,241 +5953,241 @@ msgstr "" msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" -#: stock/models.py:82 stock/models.py:732 +#: stock/models.py:89 stock/models.py:739 #: stock/templates/stock/item_base.html:252 msgid "Owner" msgstr "" -#: stock/models.py:83 stock/models.py:733 +#: stock/models.py:90 stock/models.py:740 msgid "Select Owner" msgstr "" -#: stock/models.py:435 +#: stock/models.py:442 msgid "StockItem with this serial number already exists" msgstr "" -#: stock/models.py:467 stock/serializers.py:95 +#: stock/models.py:474 stock/serializers.py:95 msgid "Stock item cannot be created for virtual parts" msgstr "" -#: stock/models.py:484 +#: stock/models.py:491 #, python-brace-format msgid "Part type ('{pf}') must be {pe}" msgstr "" -#: stock/models.py:494 stock/models.py:503 +#: stock/models.py:501 stock/models.py:510 msgid "Quantity must be 1 for item with a serial number" msgstr "" -#: stock/models.py:495 +#: stock/models.py:502 msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:517 +#: stock/models.py:524 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:523 +#: stock/models.py:530 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:537 +#: stock/models.py:544 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:583 +#: stock/models.py:590 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:593 +#: stock/models.py:600 msgid "Base part" msgstr "" -#: stock/models.py:601 +#: stock/models.py:608 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:608 stock/templates/stock/location.html:17 +#: stock/models.py:615 stock/templates/stock/location.html:17 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" msgstr "Kho hàng" -#: stock/models.py:611 +#: stock/models.py:618 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:618 +#: stock/models.py:625 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:624 stock/templates/stock/item_base.html:361 +#: stock/models.py:631 stock/templates/stock/item_base.html:361 msgid "Installed In" msgstr "" -#: stock/models.py:627 +#: stock/models.py:634 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:643 +#: stock/models.py:650 msgid "Serial number for this item" msgstr "" -#: stock/models.py:657 +#: stock/models.py:664 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:662 +#: stock/models.py:669 msgid "Stock Quantity" msgstr "" -#: stock/models.py:671 +#: stock/models.py:678 msgid "Source Build" msgstr "" -#: stock/models.py:673 +#: stock/models.py:680 msgid "Build for this stock item" msgstr "" -#: stock/models.py:684 +#: stock/models.py:691 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:687 +#: stock/models.py:694 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:693 +#: stock/models.py:700 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:699 stock/templates/stock/item_base.html:429 -#: templates/js/translated/stock.js:1879 +#: stock/models.py:706 stock/templates/stock/item_base.html:429 +#: templates/js/translated/stock.js:1883 msgid "Expiry Date" msgstr "" -#: stock/models.py:700 +#: stock/models.py:707 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:713 +#: stock/models.py:720 msgid "Delete on deplete" msgstr "" -#: stock/models.py:713 +#: stock/models.py:720 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:720 stock/templates/stock/item.html:132 +#: stock/models.py:727 stock/templates/stock/item.html:132 msgid "Stock Item Notes" msgstr "" -#: stock/models.py:728 +#: stock/models.py:735 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:756 +#: stock/models.py:763 msgid "Converted to part" msgstr "" -#: stock/models.py:1235 +#: stock/models.py:1242 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1241 +#: stock/models.py:1248 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1247 +#: stock/models.py:1254 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({n})" msgstr "" -#: stock/models.py:1250 +#: stock/models.py:1257 msgid "Serial numbers must be a list of integers" msgstr "" -#: stock/models.py:1253 +#: stock/models.py:1260 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1260 +#: stock/models.py:1267 #, python-brace-format msgid "Serial numbers already exist: {exists}" msgstr "" -#: stock/models.py:1330 +#: stock/models.py:1337 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1333 +#: stock/models.py:1340 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1336 +#: stock/models.py:1343 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1339 +#: stock/models.py:1346 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1342 +#: stock/models.py:1349 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1345 +#: stock/models.py:1352 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1352 stock/serializers.py:959 +#: stock/models.py:1359 stock/serializers.py:961 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1356 +#: stock/models.py:1363 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1360 +#: stock/models.py:1367 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1364 +#: stock/models.py:1371 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:1533 +#: stock/models.py:1540 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:1994 +#: stock/models.py:2001 msgid "Entry notes" msgstr "" -#: stock/models.py:2052 +#: stock/models.py:2059 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2058 +#: stock/models.py:2065 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2077 +#: stock/models.py:2084 msgid "Test name" msgstr "" -#: stock/models.py:2083 +#: stock/models.py:2090 msgid "Test result" msgstr "" -#: stock/models.py:2089 +#: stock/models.py:2096 msgid "Test output value" msgstr "" -#: stock/models.py:2096 +#: stock/models.py:2103 msgid "Test result attachment" msgstr "" -#: stock/models.py:2102 +#: stock/models.py:2109 msgid "Test notes" msgstr "" @@ -6172,7 +6212,7 @@ msgstr "" msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:323 stock/serializers.py:916 stock/serializers.py:1149 +#: stock/serializers.py:323 stock/serializers.py:918 stock/serializers.py:1151 msgid "Destination stock location" msgstr "" @@ -6220,63 +6260,63 @@ msgstr "" msgid "Destination location for returned item" msgstr "" -#: stock/serializers.py:771 +#: stock/serializers.py:773 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:775 +#: stock/serializers.py:777 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:779 +#: stock/serializers.py:781 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:810 +#: stock/serializers.py:812 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:816 +#: stock/serializers.py:818 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:824 +#: stock/serializers.py:826 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:834 stock/serializers.py:1065 +#: stock/serializers.py:836 stock/serializers.py:1067 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:923 +#: stock/serializers.py:925 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:928 +#: stock/serializers.py:930 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:929 +#: stock/serializers.py:931 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:934 +#: stock/serializers.py:936 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:935 +#: stock/serializers.py:937 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:945 +#: stock/serializers.py:947 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1027 +#: stock/serializers.py:1029 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1055 +#: stock/serializers.py:1057 msgid "Stock transaction notes" msgstr "" @@ -6313,7 +6353,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2852 +#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2861 msgid "Install Stock Item" msgstr "" @@ -6321,7 +6361,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1518 +#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1522 msgid "Add Test Result" msgstr "" @@ -6352,7 +6392,7 @@ msgid "Stock adjustment actions" msgstr "" #: stock/templates/stock/item_base.html:80 -#: stock/templates/stock/location.html:63 templates/stock_table.html:47 +#: stock/templates/stock/location.html:68 templates/stock_table.html:47 msgid "Count stock" msgstr "" @@ -6369,7 +6409,7 @@ msgid "Serialize stock" msgstr "" #: stock/templates/stock/item_base.html:93 -#: stock/templates/stock/location.html:69 templates/stock_table.html:48 +#: stock/templates/stock/location.html:74 templates/stock_table.html:48 msgid "Transfer stock" msgstr "" @@ -6430,7 +6470,7 @@ msgid "You are not in the list of owners of this item. This stock item cannot be msgstr "" #: stock/templates/stock/item_base.html:257 -#: stock/templates/stock/location.html:127 +#: stock/templates/stock/location.html:132 msgid "Read only" msgstr "" @@ -6508,7 +6548,7 @@ msgid "Stale" msgstr "" #: stock/templates/stock/item_base.html:442 -#: templates/js/translated/company.js:985 templates/js/translated/stock.js:1895 +#: templates/js/translated/company.js:985 templates/js/translated/stock.js:1899 msgid "Last Updated" msgstr "" @@ -6552,58 +6592,58 @@ msgstr "" msgid "Select quantity to serialize, and unique serial numbers." msgstr "" -#: stock/templates/stock/location.html:33 +#: stock/templates/stock/location.html:38 msgid "Locate stock location" msgstr "" -#: stock/templates/stock/location.html:49 +#: stock/templates/stock/location.html:54 msgid "Check-in Items" msgstr "" -#: stock/templates/stock/location.html:77 +#: stock/templates/stock/location.html:82 msgid "Location actions" msgstr "" -#: stock/templates/stock/location.html:79 +#: stock/templates/stock/location.html:84 msgid "Edit location" msgstr "" -#: stock/templates/stock/location.html:81 +#: stock/templates/stock/location.html:86 msgid "Delete location" msgstr "" -#: stock/templates/stock/location.html:90 +#: stock/templates/stock/location.html:95 msgid "Create new stock location" msgstr "" -#: stock/templates/stock/location.html:91 +#: stock/templates/stock/location.html:96 msgid "New Location" msgstr "" -#: stock/templates/stock/location.html:109 -#: stock/templates/stock/location.html:115 +#: stock/templates/stock/location.html:114 +#: stock/templates/stock/location.html:120 msgid "Location Path" msgstr "" -#: stock/templates/stock/location.html:116 +#: stock/templates/stock/location.html:121 msgid "Top level stock location" msgstr "" -#: stock/templates/stock/location.html:122 +#: stock/templates/stock/location.html:127 msgid "Location Owner" msgstr "" -#: stock/templates/stock/location.html:126 +#: stock/templates/stock/location.html:131 msgid "You are not in the list of owners of this location. This stock location cannot be edited." msgstr "" -#: stock/templates/stock/location.html:142 -#: stock/templates/stock/location.html:189 +#: stock/templates/stock/location.html:147 +#: stock/templates/stock/location.html:194 #: stock/templates/stock/location_sidebar.html:5 msgid "Sublocations" msgstr "" -#: stock/templates/stock/location.html:156 templates/InvenTree/search.html:165 +#: stock/templates/stock/location.html:161 templates/InvenTree/search.html:165 #: templates/js/translated/search.js:238 users/models.py:39 msgid "Stock Locations" msgstr "" @@ -6875,15 +6915,15 @@ msgstr "" msgid "Part Settings" msgstr "" -#: templates/InvenTree/settings/part.html:44 +#: templates/InvenTree/settings/part.html:46 msgid "Part Import" msgstr "" -#: templates/InvenTree/settings/part.html:48 +#: templates/InvenTree/settings/part.html:50 msgid "Import Part" msgstr "" -#: templates/InvenTree/settings/part.html:62 +#: templates/InvenTree/settings/part.html:64 msgid "Part Parameter Templates" msgstr "" @@ -6895,47 +6935,47 @@ msgstr "" msgid "Changing the settings below require you to immediately restart the server. Do not change this while under active usage." msgstr "" -#: templates/InvenTree/settings/plugin.html:34 +#: templates/InvenTree/settings/plugin.html:36 msgid "Plugins" msgstr "" -#: templates/InvenTree/settings/plugin.html:39 +#: templates/InvenTree/settings/plugin.html:41 #: templates/js/translated/plugin.js:16 msgid "Install Plugin" msgstr "" -#: templates/InvenTree/settings/plugin.html:48 templates/navbar.html:137 +#: templates/InvenTree/settings/plugin.html:50 templates/navbar.html:137 #: users/models.py:36 msgid "Admin" msgstr "Quản trị" -#: templates/InvenTree/settings/plugin.html:50 +#: templates/InvenTree/settings/plugin.html:52 #: templates/InvenTree/settings/plugin_settings.html:28 msgid "Author" msgstr "" -#: templates/InvenTree/settings/plugin.html:52 +#: templates/InvenTree/settings/plugin.html:54 #: templates/InvenTree/settings/plugin_settings.html:43 msgid "Version" msgstr "" -#: templates/InvenTree/settings/plugin.html:74 +#: templates/InvenTree/settings/plugin.html:76 msgid "Sample" msgstr "" -#: templates/InvenTree/settings/plugin.html:99 +#: templates/InvenTree/settings/plugin.html:101 msgid "Inactive plugins" msgstr "" -#: templates/InvenTree/settings/plugin.html:122 +#: templates/InvenTree/settings/plugin.html:124 msgid "Plugin Error Stack" msgstr "" -#: templates/InvenTree/settings/plugin.html:131 +#: templates/InvenTree/settings/plugin.html:133 msgid "Stage" msgstr "" -#: templates/InvenTree/settings/plugin.html:133 +#: templates/InvenTree/settings/plugin.html:135 #: templates/js/translated/notification.js:75 msgid "Message" msgstr "" @@ -6999,11 +7039,11 @@ msgstr "" msgid "Commit Message" msgstr "" -#: templates/InvenTree/settings/plugin_settings.html:117 +#: templates/InvenTree/settings/plugin_settings.html:120 msgid "Sign Status" msgstr "" -#: templates/InvenTree/settings/plugin_settings.html:122 +#: templates/InvenTree/settings/plugin_settings.html:125 msgid "Sign Key" msgstr "" @@ -7828,7 +7868,7 @@ msgstr "" msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:456 templates/js/translated/stock.js:1050 +#: templates/js/translated/barcode.js:456 templates/js/translated/stock.js:1054 msgid "Remove stock item" msgstr "" @@ -8001,7 +8041,7 @@ msgid "Includes variant and substitute stock" msgstr "" #: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822 -#: templates/js/translated/part.js:759 +#: templates/js/translated/part.js:763 msgid "Includes variant stock" msgstr "" @@ -8098,12 +8138,12 @@ msgid "Complete Build Order" msgstr "" #: templates/js/translated/build.js:263 templates/js/translated/stock.js:92 -#: templates/js/translated/stock.js:210 +#: templates/js/translated/stock.js:214 msgid "Next available serial number" msgstr "" #: templates/js/translated/build.js:265 templates/js/translated/stock.js:94 -#: templates/js/translated/stock.js:212 +#: templates/js/translated/stock.js:216 msgid "Latest serial number" msgstr "Số seri mới nhất" @@ -8316,9 +8356,9 @@ msgstr "" msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1383 -#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1682 -#: templates/js/translated/stock.js:2382 +#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387 +#: templates/js/translated/part.js:1899 templates/js/translated/stock.js:1686 +#: templates/js/translated/stock.js:2386 msgid "Select" msgstr "" @@ -8330,7 +8370,7 @@ msgstr "" msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2638 +#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647 msgid "No user information" msgstr "" @@ -8403,34 +8443,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:616 -#: templates/js/translated/company.js:876 templates/js/translated/part.js:634 -#: templates/js/translated/part.js:719 +#: templates/js/translated/company.js:876 templates/js/translated/part.js:638 +#: templates/js/translated/part.js:723 msgid "Template part" msgstr "" #: templates/js/translated/company.js:620 -#: templates/js/translated/company.js:880 templates/js/translated/part.js:638 -#: templates/js/translated/part.js:723 +#: templates/js/translated/company.js:880 templates/js/translated/part.js:642 +#: templates/js/translated/part.js:727 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:748 templates/js/translated/part.js:826 +#: templates/js/translated/company.js:748 templates/js/translated/part.js:830 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:785 templates/js/translated/part.js:868 +#: templates/js/translated/company.js:785 templates/js/translated/part.js:872 msgid "Edit parameter" msgstr "" -#: templates/js/translated/company.js:786 templates/js/translated/part.js:869 +#: templates/js/translated/company.js:786 templates/js/translated/part.js:873 msgid "Delete parameter" msgstr "" -#: templates/js/translated/company.js:805 templates/js/translated/part.js:886 +#: templates/js/translated/company.js:805 templates/js/translated/part.js:890 msgid "Edit Parameter" msgstr "" -#: templates/js/translated/company.js:816 templates/js/translated/part.js:898 +#: templates/js/translated/company.js:816 templates/js/translated/part.js:902 msgid "Delete Parameter" msgstr "" @@ -8555,7 +8595,7 @@ msgid "Labels sent to printer" msgstr "" #: templates/js/translated/label.js:60 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1078 msgid "Select Stock Items" msgstr "" @@ -8865,7 +8905,7 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2140 +#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144 msgid "Stock Status" msgstr "" @@ -8889,7 +8929,7 @@ msgstr "" msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:1672 templates/js/translated/part.js:939 +#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943 msgid "No purchase orders found" msgstr "" @@ -8924,7 +8964,7 @@ msgstr "" #: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203 #: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050 -#: templates/js/translated/part.js:2126 templates/js/translated/part.js:2479 +#: templates/js/translated/part.js:2135 templates/js/translated/part.js:2488 msgid "Unit Price" msgstr "" @@ -8934,11 +8974,11 @@ msgid "Total Price" msgstr "" #: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600 -#: templates/js/translated/part.js:1046 +#: templates/js/translated/part.js:1050 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1092 +#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096 msgid "Receive line item" msgstr "" @@ -9059,7 +9099,7 @@ msgid "Delete Stock Allocation" msgstr "" #: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398 -#: templates/js/translated/stock.js:1598 +#: templates/js/translated/stock.js:1602 msgid "Shipped to customer" msgstr "" @@ -9183,241 +9223,245 @@ msgstr "" msgid "Parent part category" msgstr "" -#: templates/js/translated/part.js:318 +#: templates/js/translated/part.js:306 templates/js/translated/stock.js:118 +msgid "Icon (optional) - Explore all available icons on" +msgstr "" + +#: templates/js/translated/part.js:322 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:331 +#: templates/js/translated/part.js:335 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:333 +#: templates/js/translated/part.js:337 msgid "Any child categories will be moved to the parent of this category" msgstr "" -#: templates/js/translated/part.js:334 +#: templates/js/translated/part.js:338 msgid "Any parts in this category will be moved to the parent of this category" msgstr "" -#: templates/js/translated/part.js:339 +#: templates/js/translated/part.js:343 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:365 +#: templates/js/translated/part.js:369 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:367 +#: templates/js/translated/part.js:371 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:378 +#: templates/js/translated/part.js:382 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:430 +#: templates/js/translated/part.js:434 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:431 +#: templates/js/translated/part.js:435 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:445 +#: templates/js/translated/part.js:449 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:447 +#: templates/js/translated/part.js:451 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:448 +#: templates/js/translated/part.js:452 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:449 +#: templates/js/translated/part.js:453 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:456 +#: templates/js/translated/part.js:460 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:492 +#: templates/js/translated/part.js:496 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:494 +#: templates/js/translated/part.js:498 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:499 +#: templates/js/translated/part.js:503 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:501 +#: templates/js/translated/part.js:505 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:518 +#: templates/js/translated/part.js:522 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:528 +#: templates/js/translated/part.js:532 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:531 +#: templates/js/translated/part.js:535 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:556 +#: templates/js/translated/part.js:560 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:582 templates/js/translated/part.js:1466 +#: templates/js/translated/part.js:586 templates/js/translated/part.js:1470 #: templates/js/translated/table_filters.js:468 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:592 templates/js/translated/part.js:1478 +#: templates/js/translated/part.js:596 templates/js/translated/part.js:1482 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:626 templates/js/translated/part.js:711 +#: templates/js/translated/part.js:630 templates/js/translated/part.js:715 msgid "Trackable part" msgstr "" -#: templates/js/translated/part.js:630 templates/js/translated/part.js:715 +#: templates/js/translated/part.js:634 templates/js/translated/part.js:719 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:642 +#: templates/js/translated/part.js:646 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:646 +#: templates/js/translated/part.js:650 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:774 +#: templates/js/translated/part.js:778 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1162 +#: templates/js/translated/part.js:1166 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1186 +#: templates/js/translated/part.js:1190 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:1253 templates/js/translated/part.js:1549 +#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1553 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:1292 +#: templates/js/translated/part.js:1296 msgid "Not available" msgstr "" -#: templates/js/translated/part.js:1443 +#: templates/js/translated/part.js:1447 msgid "No category" msgstr "" -#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816 -#: templates/js/translated/stock.js:2343 +#: templates/js/translated/part.js:1577 templates/js/translated/part.js:1820 +#: templates/js/translated/stock.js:2347 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:1589 +#: templates/js/translated/part.js:1593 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:1655 +#: templates/js/translated/part.js:1659 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:1660 +#: templates/js/translated/part.js:1664 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:1665 +#: templates/js/translated/part.js:1669 msgid "Select Part Category" msgstr "" -#: templates/js/translated/part.js:1678 +#: templates/js/translated/part.js:1682 msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2362 +#: templates/js/translated/part.js:1839 templates/js/translated/stock.js:2366 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:1914 +#: templates/js/translated/part.js:1918 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:1925 +#: templates/js/translated/part.js:1934 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:1983 +#: templates/js/translated/part.js:1992 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2034 templates/js/translated/stock.js:1295 +#: templates/js/translated/part.js:2043 templates/js/translated/stock.js:1299 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:2035 templates/js/translated/stock.js:1296 -#: templates/js/translated/stock.js:1556 +#: templates/js/translated/part.js:2044 templates/js/translated/stock.js:1300 +#: templates/js/translated/stock.js:1560 msgid "Delete test result" msgstr "" -#: templates/js/translated/part.js:2041 +#: templates/js/translated/part.js:2050 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2063 +#: templates/js/translated/part.js:2072 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2077 +#: templates/js/translated/part.js:2086 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2102 +#: templates/js/translated/part.js:2111 #, python-brace-format msgid "No ${human_name} information found" msgstr "" -#: templates/js/translated/part.js:2159 +#: templates/js/translated/part.js:2168 #, python-brace-format msgid "Edit ${human_name}" msgstr "" -#: templates/js/translated/part.js:2160 +#: templates/js/translated/part.js:2169 #, python-brace-format msgid "Delete ${human_name}" msgstr "" -#: templates/js/translated/part.js:2274 +#: templates/js/translated/part.js:2283 msgid "Current Stock" msgstr "" -#: templates/js/translated/part.js:2307 +#: templates/js/translated/part.js:2316 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2333 +#: templates/js/translated/part.js:2342 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2403 +#: templates/js/translated/part.js:2412 msgid "Single Price" msgstr "" -#: templates/js/translated/part.js:2422 +#: templates/js/translated/part.js:2431 msgid "Single Price Difference" msgstr "" @@ -9511,376 +9555,376 @@ msgstr "" msgid "Parent stock location" msgstr "" -#: templates/js/translated/stock.js:140 +#: templates/js/translated/stock.js:144 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:155 +#: templates/js/translated/stock.js:159 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:169 +#: templates/js/translated/stock.js:173 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:171 +#: templates/js/translated/stock.js:175 msgid "Any child locations will be moved to the parent of this location" msgstr "" -#: templates/js/translated/stock.js:172 +#: templates/js/translated/stock.js:176 msgid "Any stock items in this location will be moved to the parent of this location" msgstr "" -#: templates/js/translated/stock.js:178 +#: templates/js/translated/stock.js:182 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:223 +#: templates/js/translated/stock.js:227 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:262 +#: templates/js/translated/stock.js:266 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:268 +#: templates/js/translated/stock.js:272 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:333 +#: templates/js/translated/stock.js:337 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:353 +#: templates/js/translated/stock.js:357 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:369 +#: templates/js/translated/stock.js:373 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:374 +#: templates/js/translated/stock.js:378 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:395 +#: templates/js/translated/stock.js:399 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:445 +#: templates/js/translated/stock.js:449 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:458 +#: templates/js/translated/stock.js:462 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:483 +#: templates/js/translated/stock.js:487 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:487 templates/js/translated/stock.js:488 +#: templates/js/translated/stock.js:491 templates/js/translated/stock.js:492 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:504 +#: templates/js/translated/stock.js:508 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:524 +#: templates/js/translated/stock.js:528 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:533 +#: templates/js/translated/stock.js:537 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:656 +#: templates/js/translated/stock.js:660 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:657 +#: templates/js/translated/stock.js:661 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:734 +#: templates/js/translated/stock.js:738 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:735 +#: templates/js/translated/stock.js:739 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:737 +#: templates/js/translated/stock.js:741 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:738 +#: templates/js/translated/stock.js:742 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:824 +#: templates/js/translated/stock.js:828 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:825 +#: templates/js/translated/stock.js:829 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:920 +#: templates/js/translated/stock.js:924 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:921 +#: templates/js/translated/stock.js:925 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:927 +#: templates/js/translated/stock.js:931 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:928 +#: templates/js/translated/stock.js:932 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:932 +#: templates/js/translated/stock.js:936 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:933 +#: templates/js/translated/stock.js:937 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:937 +#: templates/js/translated/stock.js:941 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:938 users/models.py:216 +#: templates/js/translated/stock.js:942 users/models.py:216 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:942 +#: templates/js/translated/stock.js:946 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1035 +#: templates/js/translated/stock.js:1039 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1035 +#: templates/js/translated/stock.js:1039 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1075 +#: templates/js/translated/stock.js:1079 msgid "You must select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1098 +#: templates/js/translated/stock.js:1102 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1234 +#: templates/js/translated/stock.js:1238 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1236 +#: templates/js/translated/stock.js:1240 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1241 +#: templates/js/translated/stock.js:1245 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1288 +#: templates/js/translated/stock.js:1292 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1291 +#: templates/js/translated/stock.js:1295 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1317 +#: templates/js/translated/stock.js:1321 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1374 +#: templates/js/translated/stock.js:1378 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1539 +#: templates/js/translated/stock.js:1543 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1561 +#: templates/js/translated/stock.js:1565 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1590 +#: templates/js/translated/stock.js:1594 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1594 +#: templates/js/translated/stock.js:1598 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1602 +#: templates/js/translated/stock.js:1606 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1608 +#: templates/js/translated/stock.js:1612 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1775 +#: templates/js/translated/stock.js:1779 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:1780 +#: templates/js/translated/stock.js:1784 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:1783 +#: templates/js/translated/stock.js:1787 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:1786 +#: templates/js/translated/stock.js:1790 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:1788 +#: templates/js/translated/stock.js:1792 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:1790 +#: templates/js/translated/stock.js:1794 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:1793 +#: templates/js/translated/stock.js:1797 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:1797 +#: templates/js/translated/stock.js:1801 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:1799 +#: templates/js/translated/stock.js:1803 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:1806 +#: templates/js/translated/stock.js:1810 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:1808 +#: templates/js/translated/stock.js:1812 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:1810 +#: templates/js/translated/stock.js:1814 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:1814 +#: templates/js/translated/stock.js:1818 #: templates/js/translated/table_filters.js:196 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:1865 +#: templates/js/translated/stock.js:1869 msgid "Stocktake" msgstr "" -#: templates/js/translated/stock.js:1944 +#: templates/js/translated/stock.js:1948 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:1982 +#: templates/js/translated/stock.js:1986 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2155 +#: templates/js/translated/stock.js:2159 msgid "Set Stock Status" msgstr "" -#: templates/js/translated/stock.js:2169 +#: templates/js/translated/stock.js:2173 msgid "Select Status Code" msgstr "" -#: templates/js/translated/stock.js:2170 +#: templates/js/translated/stock.js:2174 msgid "Status code must be selected" msgstr "" -#: templates/js/translated/stock.js:2400 +#: templates/js/translated/stock.js:2404 msgid "Load Subloactions" msgstr "" -#: templates/js/translated/stock.js:2484 +#: templates/js/translated/stock.js:2493 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2500 +#: templates/js/translated/stock.js:2509 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2522 +#: templates/js/translated/stock.js:2531 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2541 +#: templates/js/translated/stock.js:2550 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2560 +#: templates/js/translated/stock.js:2569 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2578 +#: templates/js/translated/stock.js:2587 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:2601 +#: templates/js/translated/stock.js:2610 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:2609 +#: templates/js/translated/stock.js:2618 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:2685 +#: templates/js/translated/stock.js:2694 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:2736 templates/js/translated/stock.js:2772 +#: templates/js/translated/stock.js:2745 templates/js/translated/stock.js:2781 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:2785 +#: templates/js/translated/stock.js:2794 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:2806 +#: templates/js/translated/stock.js:2815 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:2807 +#: templates/js/translated/stock.js:2816 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:2809 +#: templates/js/translated/stock.js:2818 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:2810 +#: templates/js/translated/stock.js:2819 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:2811 +#: templates/js/translated/stock.js:2820 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:2812 +#: templates/js/translated/stock.js:2821 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:2825 +#: templates/js/translated/stock.js:2834 msgid "Select part to install" msgstr "" diff --git a/InvenTree/locale/zh/LC_MESSAGES/django.po b/InvenTree/locale/zh/LC_MESSAGES/django.po index 9d3652b5b2..faa8a7dab7 100644 --- a/InvenTree/locale/zh/LC_MESSAGES/django.po +++ b/InvenTree/locale/zh/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-11 02:47+0000\n" -"PO-Revision-Date: 2022-08-11 13:49\n" +"POT-Creation-Date: 2022-08-16 11:53+0000\n" +"PO-Revision-Date: 2022-08-16 21:35\n" "Last-Translator: \n" "Language-Team: Chinese Simplified\n" "Language: zh_CN\n" @@ -36,15 +36,15 @@ msgstr "输入日期" #: order/templates/order/so_sidebar.html:17 #: part/templates/part/part_sidebar.html:59 #: report/templates/report/inventree_build_order_base.html:172 -#: stock/models.py:1993 stock/models.py:2101 stock/serializers.py:329 -#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:823 -#: stock/serializers.py:922 stock/serializers.py:1054 +#: stock/models.py:2000 stock/models.py:2108 stock/serializers.py:329 +#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825 +#: stock/serializers.py:924 stock/serializers.py:1056 #: stock/templates/stock/stock_sidebar.html:25 #: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101 #: templates/js/translated/company.js:964 templates/js/translated/order.js:2104 #: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753 #: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102 -#: templates/js/translated/stock.js:1370 templates/js/translated/stock.js:1976 +#: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980 msgid "Notes" msgstr "备注" @@ -163,6 +163,10 @@ msgstr "未找到序列号" msgid "Number of unique serial numbers ({s}) must match quantity ({q})" msgstr "唯一序列号 ({s}) 必须匹配数量 ({q})" +#: InvenTree/mixins.py:71 +msgid "Remove HTML tags from this value" +msgstr "" + #: InvenTree/models.py:236 msgid "Improperly formatted pattern" msgstr "" @@ -195,7 +199,7 @@ msgstr "缺少文件" msgid "Missing external link" msgstr "缺少外部链接" -#: InvenTree/models.py:395 stock/models.py:2095 +#: InvenTree/models.py:395 stock/models.py:2102 #: templates/js/translated/attachment.js:103 #: templates/js/translated/attachment.js:241 msgid "Attachment" @@ -207,16 +211,16 @@ msgstr "选择附件" #: InvenTree/models.py:402 company/models.py:124 company/models.py:276 #: company/models.py:510 order/models.py:84 order/models.py:1245 -#: part/models.py:795 +#: part/models.py:802 #: report/templates/report/inventree_build_order_base.html:164 #: templates/js/translated/company.js:656 #: templates/js/translated/company.js:948 templates/js/translated/order.js:2742 -#: templates/js/translated/part.js:1510 +#: templates/js/translated/part.js:1514 msgid "Link" msgstr "链接" -#: InvenTree/models.py:403 build/models.py:296 part/models.py:796 -#: stock/models.py:651 +#: InvenTree/models.py:403 build/models.py:296 part/models.py:803 +#: stock/models.py:658 msgid "Link to external URL" msgstr "链接到外部 URL" @@ -229,12 +233,12 @@ msgstr "注释" msgid "File comment" msgstr "文件注释" -#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1646 -#: common/models.py:1647 common/models.py:1870 common/models.py:1871 -#: common/models.py:2133 common/models.py:2134 part/models.py:2193 -#: part/models.py:2213 plugin/models.py:238 plugin/models.py:239 +#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665 +#: common/models.py:1666 common/models.py:1889 common/models.py:1890 +#: common/models.py:2152 common/models.py:2153 part/models.py:2200 +#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2632 +#: templates/js/translated/stock.js:2641 msgid "User" msgstr "用户" @@ -271,19 +275,19 @@ msgstr "重命名文件出错" msgid "Invalid choice" msgstr "选择无效" -#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1856 -#: company/models.py:358 label/models.py:101 part/models.py:739 -#: part/models.py:2371 plugin/models.py:93 report/models.py:152 +#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875 +#: company/models.py:358 label/models.py:101 part/models.py:746 +#: part/models.py:2378 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 -#: templates/InvenTree/settings/plugin.html:49 -#: templates/InvenTree/settings/plugin.html:132 +#: templates/InvenTree/settings/plugin.html:51 +#: templates/InvenTree/settings/plugin.html:134 #: templates/InvenTree/settings/plugin_settings.html:23 #: templates/InvenTree/settings/settings.html:347 #: templates/js/translated/company.js:545 #: templates/js/translated/company.js:758 #: templates/js/translated/notification.js:71 -#: templates/js/translated/part.js:684 templates/js/translated/part.js:836 -#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2388 +#: templates/js/translated/part.js:688 templates/js/translated/part.js:840 +#: templates/js/translated/part.js:1906 templates/js/translated/stock.js:2392 msgid "Name" msgstr "名称" @@ -292,21 +296,21 @@ msgstr "名称" #: company/models.py:516 company/templates/company/company_base.html:71 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:87 label/models.py:108 -#: order/models.py:82 part/models.py:762 part/templates/part/category.html:74 +#: order/models.py:82 part/models.py:769 part/templates/part/category.html:80 #: part/templates/part/part_base.html:167 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 -#: stock/templates/stock/location.html:103 +#: stock/templates/stock/location.html:108 #: templates/InvenTree/settings/plugin_settings.html:33 #: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848 #: templates/js/translated/build.js:2471 templates/js/translated/company.js:409 #: templates/js/translated/company.js:667 #: templates/js/translated/company.js:959 templates/js/translated/order.js:1720 #: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531 -#: templates/js/translated/part.js:743 templates/js/translated/part.js:1149 -#: templates/js/translated/part.js:1424 templates/js/translated/part.js:1933 -#: templates/js/translated/part.js:2002 templates/js/translated/stock.js:1739 -#: templates/js/translated/stock.js:2415 templates/js/translated/stock.js:2469 +#: templates/js/translated/part.js:747 templates/js/translated/part.js:1153 +#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1942 +#: templates/js/translated/part.js:2011 templates/js/translated/stock.js:1743 +#: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478 msgid "Description" msgstr "描述信息" @@ -319,7 +323,7 @@ msgid "parent" msgstr "上级项" #: InvenTree/models.py:560 InvenTree/models.py:561 -#: templates/js/translated/part.js:1939 templates/js/translated/stock.js:2421 +#: templates/js/translated/part.js:1948 templates/js/translated/stock.js:2430 msgid "Path" msgstr "" @@ -331,7 +335,7 @@ msgstr "服务器错误" msgid "An error has been logged by the server." msgstr "服务器记录了一个错误。" -#: InvenTree/serializers.py:55 part/models.py:2692 +#: InvenTree/serializers.py:55 part/models.py:2699 msgid "Must be a valid number" msgstr "必须是有效数字" @@ -398,99 +402,99 @@ msgstr "" msgid "Downloading images from remote URL is not enabled" msgstr "" -#: InvenTree/settings.py:609 +#: InvenTree/settings.py:607 msgid "Czech" msgstr "捷克语" -#: InvenTree/settings.py:610 +#: InvenTree/settings.py:608 msgid "German" msgstr "德语" -#: InvenTree/settings.py:611 +#: InvenTree/settings.py:609 msgid "Greek" msgstr "希腊语" -#: InvenTree/settings.py:612 +#: InvenTree/settings.py:610 msgid "English" msgstr "英语" -#: InvenTree/settings.py:613 +#: InvenTree/settings.py:611 msgid "Spanish" msgstr "西班牙语" -#: InvenTree/settings.py:614 +#: InvenTree/settings.py:612 msgid "Spanish (Mexican)" msgstr "西班牙语(墨西哥)" -#: InvenTree/settings.py:615 +#: InvenTree/settings.py:613 msgid "Farsi / Persian" msgstr "波斯语" -#: InvenTree/settings.py:616 +#: InvenTree/settings.py:614 msgid "French" msgstr "法语" -#: InvenTree/settings.py:617 +#: InvenTree/settings.py:615 msgid "Hebrew" msgstr "希伯来语" -#: InvenTree/settings.py:618 +#: InvenTree/settings.py:616 msgid "Hungarian" msgstr "匈牙利语" -#: InvenTree/settings.py:619 +#: InvenTree/settings.py:617 msgid "Italian" msgstr "意大利语" -#: InvenTree/settings.py:620 +#: InvenTree/settings.py:618 msgid "Japanese" msgstr "日语" -#: InvenTree/settings.py:621 +#: InvenTree/settings.py:619 msgid "Korean" msgstr "韩语" -#: InvenTree/settings.py:622 +#: InvenTree/settings.py:620 msgid "Dutch" msgstr "荷兰语" -#: InvenTree/settings.py:623 +#: InvenTree/settings.py:621 msgid "Norwegian" msgstr "挪威语" -#: InvenTree/settings.py:624 +#: InvenTree/settings.py:622 msgid "Polish" msgstr "波兰语" -#: InvenTree/settings.py:625 +#: InvenTree/settings.py:623 msgid "Portuguese" msgstr "葡萄牙语" -#: InvenTree/settings.py:626 +#: InvenTree/settings.py:624 msgid "Portuguese (Brazilian)" msgstr "葡萄牙语 (巴西)" -#: InvenTree/settings.py:627 +#: InvenTree/settings.py:625 msgid "Russian" msgstr "俄语" -#: InvenTree/settings.py:628 +#: InvenTree/settings.py:626 msgid "Swedish" msgstr "瑞典语" -#: InvenTree/settings.py:629 +#: InvenTree/settings.py:627 msgid "Thai" msgstr "泰语" -#: InvenTree/settings.py:630 +#: InvenTree/settings.py:628 msgid "Turkish" msgstr "土耳其语" -#: InvenTree/settings.py:631 +#: InvenTree/settings.py:629 msgid "Vietnamese" msgstr "越南语" -#: InvenTree/settings.py:632 +#: InvenTree/settings.py:630 msgid "Chinese" msgstr "中文(简体)" @@ -621,7 +625,7 @@ msgstr "从父项拆分" msgid "Split child item" msgstr "拆分子项" -#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2080 +#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2084 msgid "Merged stock items" msgstr "合并的库存项目" @@ -743,7 +747,7 @@ msgid "Build Order Reference" msgstr "相关生产订单" #: build/models.py:166 order/models.py:240 order/models.py:623 -#: order/models.py:904 part/models.py:2610 +#: order/models.py:904 part/models.py:2617 #: part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 @@ -770,10 +774,10 @@ msgstr "此次生产匹配的订单" #: build/models.py:191 build/templates/build/build_base.html:77 #: build/templates/build/detail.html:29 company/models.py:670 #: order/models.py:1001 order/models.py:1112 order/models.py:1113 -#: part/models.py:336 part/models.py:2139 part/models.py:2154 -#: part/models.py:2173 part/models.py:2191 part/models.py:2290 -#: part/models.py:2410 part/models.py:2500 part/models.py:2585 -#: part/models.py:2861 part/serializers.py:811 +#: part/models.py:343 part/models.py:2146 part/models.py:2161 +#: part/models.py:2180 part/models.py:2198 part/models.py:2297 +#: part/models.py:2417 part/models.py:2507 part/models.py:2592 +#: part/models.py:2868 part/serializers.py:813 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -796,11 +800,11 @@ msgstr "此次生产匹配的订单" #: templates/js/translated/order.js:934 templates/js/translated/order.js:1387 #: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885 #: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507 -#: templates/js/translated/part.js:1134 templates/js/translated/part.js:1206 -#: templates/js/translated/part.js:1402 templates/js/translated/stock.js:582 -#: templates/js/translated/stock.js:747 templates/js/translated/stock.js:954 -#: templates/js/translated/stock.js:1696 templates/js/translated/stock.js:2495 -#: templates/js/translated/stock.js:2690 templates/js/translated/stock.js:2824 +#: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210 +#: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586 +#: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958 +#: templates/js/translated/stock.js:1700 templates/js/translated/stock.js:2504 +#: templates/js/translated/stock.js:2699 templates/js/translated/stock.js:2833 msgid "Part" msgstr "商品" @@ -858,7 +862,7 @@ msgid "Build status code" msgstr "生产状态代码" #: build/models.py:251 build/serializers.py:225 order/serializers.py:447 -#: stock/models.py:655 templates/js/translated/order.js:1247 +#: stock/models.py:662 templates/js/translated/order.js:1247 msgid "Batch Code" msgstr "批量代码" @@ -866,7 +870,7 @@ msgstr "批量代码" msgid "Batch code for this build output" msgstr "此生产产出的批量代码" -#: build/models.py:258 order/models.py:86 part/models.py:931 +#: build/models.py:258 order/models.py:86 part/models.py:938 #: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544 msgid "Creation Date" msgstr "创建日期" @@ -899,7 +903,7 @@ msgstr "发布此生产订单的用户" #: build/models.py:289 build/templates/build/build_base.html:190 #: build/templates/build/detail.html:115 order/models.py:100 #: order/templates/order/order_base.html:176 -#: order/templates/order/sales_order_base.html:183 part/models.py:935 +#: order/templates/order/sales_order_base.html:183 part/models.py:942 #: report/templates/report/inventree_build_order_base.html:158 #: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754 msgid "Responsible" @@ -912,7 +916,7 @@ msgstr "负责此生产订单的用户" #: build/models.py:295 build/templates/build/detail.html:101 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:153 -#: part/templates/part/part_base.html:346 stock/models.py:649 +#: part/templates/part/part_base.html:346 stock/models.py:656 #: stock/templates/stock/item_base.html:205 msgid "External Link" msgstr "外部链接" @@ -978,8 +982,8 @@ msgid "Build to allocate parts" msgstr "生产以分配部件" #: build/models.py:1345 build/serializers.py:645 order/serializers.py:1015 -#: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 -#: stock/serializers.py:880 stock/templates/stock/item_base.html:10 +#: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:756 +#: stock/serializers.py:882 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:199 #: templates/js/translated/build.js:741 templates/js/translated/build.js:746 @@ -987,8 +991,8 @@ msgstr "生产以分配部件" #: templates/js/translated/order.js:104 templates/js/translated/order.js:2886 #: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193 #: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380 -#: templates/js/translated/stock.js:583 templates/js/translated/stock.js:748 -#: templates/js/translated/stock.js:2568 +#: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752 +#: templates/js/translated/stock.js:2577 msgid "Stock Item" msgstr "库存项" @@ -998,11 +1002,11 @@ msgstr "源库存项" #: build/models.py:1358 build/serializers.py:193 #: build/templates/build/build_base.html:82 -#: build/templates/build/detail.html:34 common/models.py:1678 +#: build/templates/build/detail.html:34 common/models.py:1697 #: company/templates/company/supplier_part.html:279 order/models.py:897 #: order/models.py:1423 order/serializers.py:1155 #: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40 -#: part/models.py:2601 part/templates/part/detail.html:937 +#: part/models.py:2608 part/templates/part/detail.html:937 #: part/templates/part/detail.html:1023 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 @@ -1025,11 +1029,11 @@ msgstr "源库存项" #: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207 #: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386 #: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037 -#: templates/js/translated/part.js:1034 templates/js/translated/part.js:2147 -#: templates/js/translated/part.js:2378 templates/js/translated/part.js:2412 -#: templates/js/translated/part.js:2490 templates/js/translated/stock.js:454 -#: templates/js/translated/stock.js:608 templates/js/translated/stock.js:778 -#: templates/js/translated/stock.js:2617 templates/js/translated/stock.js:2702 +#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2156 +#: templates/js/translated/part.js:2387 templates/js/translated/part.js:2421 +#: templates/js/translated/part.js:2499 templates/js/translated/stock.js:458 +#: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782 +#: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711 msgid "Quantity" msgstr "数量" @@ -1071,8 +1075,8 @@ msgid "Enter quantity for build output" msgstr "输入生产产出数量" #: build/serializers.py:208 build/serializers.py:665 order/models.py:318 -#: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 -#: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 +#: order/serializers.py:287 order/serializers.py:442 part/serializers.py:544 +#: part/serializers.py:976 stock/models.py:484 stock/models.py:1251 #: stock/serializers.py:302 msgid "Quantity must be greater than zero" msgstr "数量必须大于0" @@ -1087,7 +1091,7 @@ msgstr "需要整数型数值,因为BOM包含可追踪的部件" #: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159 #: stock/serializers.py:311 templates/js/translated/order.js:1258 -#: templates/js/translated/stock.js:267 templates/js/translated/stock.js:455 +#: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459 msgid "Serial Numbers" msgstr "序列号" @@ -1113,16 +1117,16 @@ msgstr "必须提供生产产出列表" #: build/serializers.py:366 order/serializers.py:428 order/serializers.py:532 #: stock/serializers.py:322 stock/serializers.py:453 stock/serializers.py:534 -#: stock/serializers.py:915 stock/serializers.py:1148 +#: stock/serializers.py:917 stock/serializers.py:1150 #: stock/templates/stock/item_base.html:390 #: templates/js/translated/barcode.js:436 #: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753 #: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285 #: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305 #: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394 -#: templates/js/translated/part.js:181 templates/js/translated/stock.js:584 -#: templates/js/translated/stock.js:749 templates/js/translated/stock.js:956 -#: templates/js/translated/stock.js:1850 templates/js/translated/stock.js:2509 +#: templates/js/translated/part.js:181 templates/js/translated/stock.js:588 +#: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960 +#: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518 msgid "Location" msgstr "地点" @@ -1135,8 +1139,8 @@ msgstr "已完成生产产出的仓储地点" #: order/serializers.py:465 stock/templates/stock/item_base.html:423 #: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505 #: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724 -#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1825 -#: templates/js/translated/stock.js:2586 templates/js/translated/stock.js:2718 +#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829 +#: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727 msgid "Status" msgstr "状态" @@ -1212,8 +1216,8 @@ msgstr "所需生产数量尚未完成" msgid "Build order has incomplete outputs" msgstr "生产订单有未完成的产出" -#: build/serializers.py:577 build/serializers.py:622 part/models.py:2719 -#: part/models.py:2853 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726 +#: part/models.py:2860 msgid "BOM Item" msgstr "BOM项" @@ -1229,7 +1233,7 @@ msgstr "生产产出必须指向相同的生产" msgid "bom_item.part must point to the same part as the build order" msgstr "bom_item.part 必须与生产订单指向相同的部件" -#: build/serializers.py:651 stock/serializers.py:767 +#: build/serializers.py:651 stock/serializers.py:769 msgid "Item must be in stock" msgstr "项目必须在库存中" @@ -1367,7 +1371,7 @@ msgstr "" #: report/templates/report/inventree_build_order_base.html:125 #: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741 #: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552 -#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1038 +#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042 msgid "Target Date" msgstr "预计日期" @@ -1445,8 +1449,8 @@ msgstr "" #: stock/templates/stock/item_base.html:170 #: templates/js/translated/build.js:1182 #: templates/js/translated/model_renderers.js:124 -#: templates/js/translated/stock.js:1022 templates/js/translated/stock.js:1839 -#: templates/js/translated/stock.js:2725 +#: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843 +#: templates/js/translated/stock.js:2734 #: templates/js/translated/table_filters.js:159 #: templates/js/translated/table_filters.js:250 msgid "Batch" @@ -1506,7 +1510,7 @@ msgstr "订单所需部件" #: build/templates/build/detail.html:187 #: company/templates/company/detail.html:37 #: company/templates/company/detail.html:85 -#: part/templates/part/category.html:177 templates/js/translated/order.js:977 +#: part/templates/part/category.html:183 templates/js/translated/order.js:977 msgid "Order Parts" msgstr "订购商品" @@ -1559,12 +1563,12 @@ msgid "Delete outputs" msgstr "" #: build/templates/build/detail.html:267 -#: stock/templates/stock/location.html:197 templates/stock_table.html:27 +#: stock/templates/stock/location.html:202 templates/stock_table.html:27 msgid "Printing Actions" msgstr "打印操作" #: build/templates/build/detail.html:271 build/templates/build/detail.html:272 -#: stock/templates/stock/location.html:201 templates/stock_table.html:31 +#: stock/templates/stock/location.html:206 templates/stock_table.html:31 msgid "Print labels" msgstr "打印标签" @@ -1841,7 +1845,7 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:951 part/models.py:2412 report/models.py:158 +#: common/models.py:951 part/models.py:2419 report/models.py:158 #: templates/js/translated/table_filters.js:38 #: templates/js/translated/table_filters.js:484 msgid "Template" @@ -1851,7 +1855,7 @@ msgstr "模板" msgid "Parts are templates by default" msgstr "" -#: common/models.py:958 part/models.py:887 templates/js/translated/bom.js:1448 +#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448 #: templates/js/translated/table_filters.js:176 #: templates/js/translated/table_filters.js:447 msgid "Assembly" @@ -1861,7 +1865,7 @@ msgstr "组装" msgid "Parts can be assembled from other components by default" msgstr "" -#: common/models.py:965 part/models.py:893 +#: common/models.py:965 part/models.py:900 #: templates/js/translated/table_filters.js:455 msgid "Component" msgstr "组件" @@ -1870,7 +1874,7 @@ msgstr "组件" msgid "Parts can be used as sub-components by default" msgstr "" -#: common/models.py:972 part/models.py:904 +#: common/models.py:972 part/models.py:911 msgid "Purchaseable" msgstr "可购买" @@ -1878,7 +1882,7 @@ msgstr "可购买" msgid "Parts are purchaseable by default" msgstr "商品默认可购买" -#: common/models.py:979 part/models.py:909 +#: common/models.py:979 part/models.py:916 #: templates/js/translated/table_filters.js:476 msgid "Salable" msgstr "可销售" @@ -1887,7 +1891,7 @@ msgstr "可销售" msgid "Parts are salable by default" msgstr "商品默认可销售" -#: common/models.py:986 part/models.py:899 +#: common/models.py:986 part/models.py:906 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:108 #: templates/js/translated/table_filters.js:488 @@ -1898,7 +1902,7 @@ msgstr "可追踪" msgid "Parts are trackable by default" msgstr "商品默认可跟踪" -#: common/models.py:993 part/models.py:919 +#: common/models.py:993 part/models.py:926 #: part/templates/part/part_base.html:151 #: templates/js/translated/table_filters.js:42 #: templates/js/translated/table_filters.js:492 @@ -1982,608 +1986,632 @@ msgid "Format to display the part name" msgstr "" #: common/models.py:1074 -msgid "Enable label printing" +msgid "Part Category Default Icon" msgstr "" #: common/models.py:1075 -msgid "Enable label printing from the web interface" +msgid "Part category default icon (empty means no icon)" +msgstr "" + +#: common/models.py:1080 +msgid "Enable label printing" msgstr "" #: common/models.py:1081 +msgid "Enable label printing from the web interface" +msgstr "" + +#: common/models.py:1087 msgid "Label Image DPI" msgstr "" -#: common/models.py:1082 +#: common/models.py:1088 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/models.py:1091 +#: common/models.py:1097 msgid "Enable Reports" msgstr "" -#: common/models.py:1092 +#: common/models.py:1098 msgid "Enable generation of reports" msgstr "" -#: common/models.py:1098 templates/stats.html:25 +#: common/models.py:1104 templates/stats.html:25 msgid "Debug Mode" msgstr "调试模式" -#: common/models.py:1099 +#: common/models.py:1105 msgid "Generate reports in debug mode (HTML output)" msgstr "在调试模式生成报告(HTML输出)" -#: common/models.py:1105 +#: common/models.py:1111 msgid "Page Size" msgstr "页面大小" -#: common/models.py:1106 +#: common/models.py:1112 msgid "Default page size for PDF reports" msgstr "PDF 报表默认页面大小" -#: common/models.py:1116 +#: common/models.py:1122 msgid "Enable Test Reports" msgstr "" -#: common/models.py:1117 +#: common/models.py:1123 msgid "Enable generation of test reports" msgstr "启用生成测试报表" -#: common/models.py:1123 +#: common/models.py:1129 msgid "Attach Test Reports" msgstr "" -#: common/models.py:1124 +#: common/models.py:1130 msgid "When printing a Test Report, attach a copy of the Test Report to the associated Stock Item" msgstr "" -#: common/models.py:1130 +#: common/models.py:1136 msgid "Batch Code Template" msgstr "" -#: common/models.py:1131 +#: common/models.py:1137 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/models.py:1136 +#: common/models.py:1142 msgid "Stock Expiry" msgstr "库存到期" -#: common/models.py:1137 +#: common/models.py:1143 msgid "Enable stock expiry functionality" msgstr "启用库存到期功能" -#: common/models.py:1143 +#: common/models.py:1149 msgid "Sell Expired Stock" msgstr "销售过期库存" -#: common/models.py:1144 +#: common/models.py:1150 msgid "Allow sale of expired stock" msgstr "允许销售过期库存" -#: common/models.py:1150 +#: common/models.py:1156 msgid "Stock Stale Time" msgstr "" -#: common/models.py:1151 +#: common/models.py:1157 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/models.py:1153 +#: common/models.py:1159 msgid "days" msgstr "天" -#: common/models.py:1158 +#: common/models.py:1164 msgid "Build Expired Stock" msgstr "" -#: common/models.py:1159 +#: common/models.py:1165 msgid "Allow building with expired stock" msgstr "" -#: common/models.py:1165 +#: common/models.py:1171 msgid "Stock Ownership Control" msgstr "库存所有权控制" -#: common/models.py:1166 +#: common/models.py:1172 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/models.py:1172 -msgid "Build Order Reference Pattern" -msgstr "" - -#: common/models.py:1173 -msgid "Required pattern for generating Build Order reference field" +#: common/models.py:1178 +msgid "Stock Location Default Icon" msgstr "" #: common/models.py:1179 +msgid "Stock location default icon (empty means no icon)" +msgstr "" + +#: common/models.py:1184 +msgid "Build Order Reference Pattern" +msgstr "" + +#: common/models.py:1185 +msgid "Required pattern for generating Build Order reference field" +msgstr "" + +#: common/models.py:1191 msgid "Sales Order Reference Pattern" msgstr "" -#: common/models.py:1180 +#: common/models.py:1192 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/models.py:1186 +#: common/models.py:1198 msgid "Sales Order Default Shipment" msgstr "" -#: common/models.py:1187 +#: common/models.py:1199 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/models.py:1193 +#: common/models.py:1205 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/models.py:1194 +#: common/models.py:1206 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/models.py:1201 +#: common/models.py:1213 msgid "Enable password forgot" msgstr "" -#: common/models.py:1202 +#: common/models.py:1214 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/models.py:1208 +#: common/models.py:1220 msgid "Enable registration" msgstr "" -#: common/models.py:1209 +#: common/models.py:1221 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/models.py:1215 +#: common/models.py:1227 msgid "Enable SSO" msgstr "" -#: common/models.py:1216 +#: common/models.py:1228 msgid "Enable SSO on the login pages" msgstr "" -#: common/models.py:1222 +#: common/models.py:1234 msgid "Email required" msgstr "" -#: common/models.py:1223 +#: common/models.py:1235 msgid "Require user to supply mail on signup" msgstr "" -#: common/models.py:1229 +#: common/models.py:1241 msgid "Auto-fill SSO users" msgstr "" -#: common/models.py:1230 +#: common/models.py:1242 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/models.py:1236 +#: common/models.py:1248 msgid "Mail twice" msgstr "" -#: common/models.py:1237 +#: common/models.py:1249 msgid "On signup ask users twice for their mail" msgstr "" -#: common/models.py:1243 +#: common/models.py:1255 msgid "Password twice" msgstr "" -#: common/models.py:1244 +#: common/models.py:1256 msgid "On signup ask users twice for their password" msgstr "" -#: common/models.py:1250 +#: common/models.py:1262 msgid "Group on signup" msgstr "" -#: common/models.py:1251 +#: common/models.py:1263 msgid "Group to which new users are assigned on registration" msgstr "" -#: common/models.py:1257 +#: common/models.py:1269 msgid "Enforce MFA" msgstr "" -#: common/models.py:1258 +#: common/models.py:1270 msgid "Users must use multifactor security." msgstr "" -#: common/models.py:1264 +#: common/models.py:1276 msgid "Check plugins on startup" msgstr "" -#: common/models.py:1265 +#: common/models.py:1277 msgid "Check that all plugins are installed on startup - enable in container enviroments" msgstr "" -#: common/models.py:1273 +#: common/models.py:1284 +msgid "Check plugin signatures" +msgstr "" + +#: common/models.py:1285 +msgid "Check and show signatures for plugins" +msgstr "" + +#: common/models.py:1292 msgid "Enable URL integration" msgstr "" -#: common/models.py:1274 +#: common/models.py:1293 msgid "Enable plugins to add URL routes" msgstr "" -#: common/models.py:1281 +#: common/models.py:1300 msgid "Enable navigation integration" msgstr "" -#: common/models.py:1282 +#: common/models.py:1301 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/models.py:1289 +#: common/models.py:1308 msgid "Enable app integration" msgstr "" -#: common/models.py:1290 +#: common/models.py:1309 msgid "Enable plugins to add apps" msgstr "" -#: common/models.py:1297 +#: common/models.py:1316 msgid "Enable schedule integration" msgstr "" -#: common/models.py:1298 +#: common/models.py:1317 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/models.py:1305 +#: common/models.py:1324 msgid "Enable event integration" msgstr "" -#: common/models.py:1306 +#: common/models.py:1325 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:1323 common/models.py:1639 +#: common/models.py:1342 common/models.py:1658 msgid "Settings key (must be unique - case insensitive" msgstr "" -#: common/models.py:1345 +#: common/models.py:1364 msgid "Show subscribed parts" msgstr "" -#: common/models.py:1346 +#: common/models.py:1365 msgid "Show subscribed parts on the homepage" msgstr "" -#: common/models.py:1352 +#: common/models.py:1371 msgid "Show subscribed categories" msgstr "" -#: common/models.py:1353 +#: common/models.py:1372 msgid "Show subscribed part categories on the homepage" msgstr "" -#: common/models.py:1359 +#: common/models.py:1378 msgid "Show latest parts" msgstr "显示最近商品" -#: common/models.py:1360 +#: common/models.py:1379 msgid "Show latest parts on the homepage" msgstr "在主页上显示最近商品" -#: common/models.py:1366 +#: common/models.py:1385 msgid "Recent Part Count" msgstr "" -#: common/models.py:1367 +#: common/models.py:1386 msgid "Number of recent parts to display on index page" msgstr "" -#: common/models.py:1373 +#: common/models.py:1392 msgid "Show unvalidated BOMs" msgstr "" -#: common/models.py:1374 +#: common/models.py:1393 msgid "Show BOMs that await validation on the homepage" msgstr "" -#: common/models.py:1380 +#: common/models.py:1399 msgid "Show recent stock changes" msgstr "" -#: common/models.py:1381 +#: common/models.py:1400 msgid "Show recently changed stock items on the homepage" msgstr "" -#: common/models.py:1387 +#: common/models.py:1406 msgid "Recent Stock Count" msgstr "" -#: common/models.py:1388 +#: common/models.py:1407 msgid "Number of recent stock items to display on index page" msgstr "" -#: common/models.py:1394 +#: common/models.py:1413 msgid "Show low stock" msgstr "" -#: common/models.py:1395 +#: common/models.py:1414 msgid "Show low stock items on the homepage" msgstr "" -#: common/models.py:1401 +#: common/models.py:1420 msgid "Show depleted stock" msgstr "" -#: common/models.py:1402 +#: common/models.py:1421 msgid "Show depleted stock items on the homepage" msgstr "" -#: common/models.py:1408 +#: common/models.py:1427 msgid "Show needed stock" msgstr "" -#: common/models.py:1409 +#: common/models.py:1428 msgid "Show stock items needed for builds on the homepage" msgstr "" -#: common/models.py:1415 +#: common/models.py:1434 msgid "Show expired stock" msgstr "" -#: common/models.py:1416 +#: common/models.py:1435 msgid "Show expired stock items on the homepage" msgstr "" -#: common/models.py:1422 +#: common/models.py:1441 msgid "Show stale stock" msgstr "" -#: common/models.py:1423 +#: common/models.py:1442 msgid "Show stale stock items on the homepage" msgstr "" -#: common/models.py:1429 +#: common/models.py:1448 msgid "Show pending builds" msgstr "" -#: common/models.py:1430 +#: common/models.py:1449 msgid "Show pending builds on the homepage" msgstr "" -#: common/models.py:1436 +#: common/models.py:1455 msgid "Show overdue builds" msgstr "显示逾期生产" -#: common/models.py:1437 +#: common/models.py:1456 msgid "Show overdue builds on the homepage" msgstr "在主页上显示逾期的生产" -#: common/models.py:1443 +#: common/models.py:1462 msgid "Show outstanding POs" msgstr "" -#: common/models.py:1444 +#: common/models.py:1463 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:1450 +#: common/models.py:1469 msgid "Show overdue POs" msgstr "" -#: common/models.py:1451 +#: common/models.py:1470 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:1457 +#: common/models.py:1476 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:1458 +#: common/models.py:1477 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:1464 +#: common/models.py:1483 msgid "Show overdue SOs" msgstr "" -#: common/models.py:1465 +#: common/models.py:1484 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:1471 +#: common/models.py:1490 msgid "Inline label display" msgstr "内嵌标签显示" -#: common/models.py:1472 +#: common/models.py:1491 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "在浏览器中显示 PDF 标签,而不是以文件形式下载" -#: common/models.py:1478 +#: common/models.py:1497 msgid "Inline report display" msgstr "" -#: common/models.py:1479 +#: common/models.py:1498 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "在浏览器中显示 PDF 报告,而不是以文件形式下载" -#: common/models.py:1485 +#: common/models.py:1504 msgid "Search Parts" msgstr "" -#: common/models.py:1486 +#: common/models.py:1505 msgid "Display parts in search preview window" msgstr "" -#: common/models.py:1492 +#: common/models.py:1511 msgid "Seach Supplier Parts" msgstr "" -#: common/models.py:1493 +#: common/models.py:1512 msgid "Display supplier parts in search preview window" msgstr "" -#: common/models.py:1499 +#: common/models.py:1518 msgid "Search Manufacturer Parts" msgstr "" -#: common/models.py:1500 +#: common/models.py:1519 msgid "Display manufacturer parts in search preview window" msgstr "" -#: common/models.py:1506 +#: common/models.py:1525 msgid "Hide Inactive Parts" msgstr "" -#: common/models.py:1507 +#: common/models.py:1526 msgid "Excluded inactive parts from search preview window" msgstr "" -#: common/models.py:1513 +#: common/models.py:1532 msgid "Search Categories" msgstr "" -#: common/models.py:1514 +#: common/models.py:1533 msgid "Display part categories in search preview window" msgstr "" -#: common/models.py:1520 +#: common/models.py:1539 msgid "Search Stock" msgstr "" -#: common/models.py:1521 +#: common/models.py:1540 msgid "Display stock items in search preview window" msgstr "" -#: common/models.py:1527 +#: common/models.py:1546 msgid "Hide Unavailable Stock Items" msgstr "" -#: common/models.py:1528 +#: common/models.py:1547 msgid "Exclude stock items which are not available from the search preview window" msgstr "" -#: common/models.py:1534 +#: common/models.py:1553 msgid "Search Locations" msgstr "" -#: common/models.py:1535 +#: common/models.py:1554 msgid "Display stock locations in search preview window" msgstr "" -#: common/models.py:1541 +#: common/models.py:1560 msgid "Search Companies" msgstr "" -#: common/models.py:1542 +#: common/models.py:1561 msgid "Display companies in search preview window" msgstr "" -#: common/models.py:1548 +#: common/models.py:1567 msgid "Search Purchase Orders" msgstr "" -#: common/models.py:1549 +#: common/models.py:1568 msgid "Display purchase orders in search preview window" msgstr "" -#: common/models.py:1555 +#: common/models.py:1574 msgid "Exclude Inactive Purchase Orders" msgstr "" -#: common/models.py:1556 +#: common/models.py:1575 msgid "Exclude inactive purchase orders from search preview window" msgstr "" -#: common/models.py:1562 +#: common/models.py:1581 msgid "Search Sales Orders" msgstr "" -#: common/models.py:1563 +#: common/models.py:1582 msgid "Display sales orders in search preview window" msgstr "" -#: common/models.py:1569 +#: common/models.py:1588 msgid "Exclude Inactive Sales Orders" msgstr "" -#: common/models.py:1570 +#: common/models.py:1589 msgid "Exclude inactive sales orders from search preview window" msgstr "" -#: common/models.py:1576 +#: common/models.py:1595 msgid "Search Preview Results" msgstr "搜索预览结果" -#: common/models.py:1577 +#: common/models.py:1596 msgid "Number of results to show in each section of the search preview window" msgstr "" -#: common/models.py:1583 +#: common/models.py:1602 msgid "Show Quantity in Forms" msgstr "在表格中显示数量" -#: common/models.py:1584 +#: common/models.py:1603 msgid "Display available part quantity in some forms" msgstr "在某些表格中显示可用的商品数量" -#: common/models.py:1590 +#: common/models.py:1609 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:1591 +#: common/models.py:1610 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:1597 +#: common/models.py:1616 msgid "Fixed Navbar" msgstr "" -#: common/models.py:1598 +#: common/models.py:1617 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:1604 +#: common/models.py:1623 msgid "Date Format" msgstr "" -#: common/models.py:1605 +#: common/models.py:1624 msgid "Preferred format for displaying dates" msgstr "" -#: common/models.py:1619 part/templates/part/detail.html:41 +#: common/models.py:1638 part/templates/part/detail.html:41 msgid "Part Scheduling" msgstr "" -#: common/models.py:1620 +#: common/models.py:1639 msgid "Display part scheduling information" msgstr "" -#: common/models.py:1679 +#: common/models.py:1698 msgid "Price break quantity" msgstr "" -#: common/models.py:1686 company/serializers.py:366 +#: common/models.py:1705 company/serializers.py:366 #: company/templates/company/supplier_part.html:284 order/models.py:938 -#: templates/js/translated/part.js:1065 templates/js/translated/part.js:2152 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2161 msgid "Price" msgstr "价格" -#: common/models.py:1687 +#: common/models.py:1706 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:1847 common/models.py:2025 +#: common/models.py:1866 common/models.py:2044 msgid "Endpoint" msgstr "" -#: common/models.py:1848 +#: common/models.py:1867 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:1857 +#: common/models.py:1876 msgid "Name for this webhook" msgstr "" -#: common/models.py:1862 part/models.py:914 plugin/models.py:99 +#: common/models.py:1881 part/models.py:921 plugin/models.py:100 #: templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:104 #: templates/js/translated/table_filters.js:316 @@ -2591,67 +2619,67 @@ msgstr "" msgid "Active" msgstr "" -#: common/models.py:1863 +#: common/models.py:1882 msgid "Is this webhook active" msgstr "" -#: common/models.py:1877 +#: common/models.py:1896 msgid "Token" msgstr "令牌" -#: common/models.py:1878 +#: common/models.py:1897 msgid "Token for access" msgstr "" -#: common/models.py:1885 +#: common/models.py:1904 msgid "Secret" msgstr "" -#: common/models.py:1886 +#: common/models.py:1905 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:1992 +#: common/models.py:2011 msgid "Message ID" msgstr "" -#: common/models.py:1993 +#: common/models.py:2012 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2001 +#: common/models.py:2020 msgid "Host" msgstr "" -#: common/models.py:2002 +#: common/models.py:2021 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2009 +#: common/models.py:2028 msgid "Header" msgstr "" -#: common/models.py:2010 +#: common/models.py:2029 msgid "Header of this message" msgstr "" -#: common/models.py:2016 +#: common/models.py:2035 msgid "Body" msgstr "" -#: common/models.py:2017 +#: common/models.py:2036 msgid "Body of this message" msgstr "" -#: common/models.py:2026 +#: common/models.py:2045 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2031 +#: common/models.py:2050 msgid "Worked on" msgstr "" -#: common/models.py:2032 +#: common/models.py:2051 msgid "Was the work on this message finished?" msgstr "" @@ -2758,7 +2786,7 @@ msgstr "" msgid "Link to external company information" msgstr "链接到外部公司信息" -#: company/models.py:135 part/models.py:808 +#: company/models.py:135 part/models.py:815 msgid "Image" msgstr "图片" @@ -2791,8 +2819,8 @@ msgid "Does this company manufacture parts?" msgstr "该公司制造商品吗?" #: company/models.py:148 company/serializers.py:372 -#: company/templates/company/company_base.html:106 part/serializers.py:151 -#: part/serializers.py:182 stock/serializers.py:180 +#: company/templates/company/company_base.html:106 part/serializers.py:153 +#: part/serializers.py:184 stock/serializers.py:180 msgid "Currency" msgstr "货币" @@ -2800,7 +2828,7 @@ msgstr "货币" msgid "Default currency used for this company" msgstr "该公司使用的默认货币" -#: company/models.py:248 company/models.py:481 stock/models.py:591 +#: company/models.py:248 company/models.py:481 stock/models.py:598 #: stock/serializers.py:87 stock/templates/stock/item_base.html:148 #: templates/js/translated/bom.js:543 msgid "Base Part" @@ -2832,7 +2860,7 @@ msgstr "选择制造商" #: templates/js/translated/company.js:497 #: templates/js/translated/company.js:649 #: templates/js/translated/company.js:937 templates/js/translated/order.js:1971 -#: templates/js/translated/part.js:247 templates/js/translated/part.js:1023 +#: templates/js/translated/part.js:247 templates/js/translated/part.js:1027 msgid "MPN" msgstr "" @@ -2861,9 +2889,9 @@ msgstr "参数名称" #: company/models.py:365 #: report/templates/report/inventree_test_report_base.html:95 -#: stock/models.py:2088 templates/js/translated/company.js:546 -#: templates/js/translated/company.js:764 templates/js/translated/part.js:845 -#: templates/js/translated/stock.js:1356 +#: stock/models.py:2095 templates/js/translated/company.js:546 +#: templates/js/translated/company.js:764 templates/js/translated/part.js:849 +#: templates/js/translated/stock.js:1360 msgid "Value" msgstr "数值" @@ -2871,10 +2899,10 @@ msgstr "数值" msgid "Parameter value" msgstr "参数值" -#: company/models.py:372 part/models.py:881 part/models.py:2379 +#: company/models.py:372 part/models.py:888 part/models.py:2386 #: part/templates/part/part_base.html:280 #: templates/InvenTree/settings/settings.html:352 -#: templates/js/translated/company.js:770 templates/js/translated/part.js:851 +#: templates/js/translated/company.js:770 templates/js/translated/part.js:855 msgid "Units" msgstr "单位" @@ -2894,7 +2922,7 @@ msgstr "" #: templates/js/translated/company.js:268 #: templates/js/translated/company.js:401 #: templates/js/translated/company.js:893 templates/js/translated/order.js:1707 -#: templates/js/translated/part.js:217 templates/js/translated/part.js:991 +#: templates/js/translated/part.js:217 templates/js/translated/part.js:995 #: templates/js/translated/table_filters.js:423 msgid "Supplier" msgstr "供应商" @@ -2906,7 +2934,7 @@ msgstr "选择供应商" #: company/models.py:497 company/templates/company/supplier_part.html:118 #: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267 #: templates/js/translated/order.js:1958 templates/js/translated/part.js:228 -#: templates/js/translated/part.js:1009 +#: templates/js/translated/part.js:1013 msgid "SKU" msgstr "" @@ -2927,23 +2955,23 @@ msgid "Supplier part description" msgstr "供应商商品描述" #: company/models.py:522 company/templates/company/supplier_part.html:146 -#: part/models.py:2613 part/templates/part/upload_bom.html:59 +#: part/models.py:2620 part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401 msgid "Note" msgstr "备注" -#: company/models.py:526 part/models.py:1735 +#: company/models.py:526 part/models.py:1742 msgid "base cost" msgstr "" -#: company/models.py:526 part/models.py:1735 +#: company/models.py:526 part/models.py:1742 msgid "Minimum charge (e.g. stocking fee)" msgstr "最低收费(例如库存费)" #: company/models.py:528 company/templates/company/supplier_part.html:139 -#: stock/models.py:617 stock/templates/stock/item_base.html:245 -#: templates/js/translated/company.js:969 templates/js/translated/stock.js:1972 +#: stock/models.py:624 stock/templates/stock/item_base.html:245 +#: templates/js/translated/company.js:969 templates/js/translated/stock.js:1976 msgid "Packaging" msgstr "打包" @@ -2951,7 +2979,7 @@ msgstr "打包" msgid "Part packaging" msgstr "商品打包" -#: company/models.py:530 part/models.py:1737 +#: company/models.py:530 part/models.py:1744 msgid "multiple" msgstr "" @@ -2964,7 +2992,7 @@ msgstr "" #: templates/email/low_stock_notification.html:18 #: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789 #: templates/js/translated/build.js:2645 templates/js/translated/company.js:979 -#: templates/js/translated/part.js:596 templates/js/translated/part.js:599 +#: templates/js/translated/part.js:600 templates/js/translated/part.js:603 #: templates/js/translated/table_filters.js:186 msgid "Available" msgstr "空闲" @@ -3037,12 +3065,12 @@ msgid "Download image from URL" msgstr "从 URL 下载图片" #: company/templates/company/company_base.html:86 order/models.py:637 -#: order/templates/order/sales_order_base.html:116 stock/models.py:636 -#: stock/models.py:637 stock/serializers.py:809 +#: order/templates/order/sales_order_base.html:116 stock/models.py:643 +#: stock/models.py:644 stock/serializers.py:811 #: stock/templates/stock/item_base.html:401 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:393 templates/js/translated/order.js:2513 -#: templates/js/translated/stock.js:2550 +#: templates/js/translated/stock.js:2559 #: templates/js/translated/table_filters.js:427 msgid "Customer" msgstr "客户" @@ -3083,7 +3111,7 @@ msgstr "新建供应商商品" #: company/templates/company/detail.html:36 #: company/templates/company/detail.html:84 -#: part/templates/part/category.html:176 +#: part/templates/part/category.html:182 msgid "Order parts" msgstr "订购商品" @@ -3231,7 +3259,7 @@ msgstr "参数" #: company/templates/company/manufacturer_part.html:170 #: part/templates/part/detail.html:186 #: templates/InvenTree/settings/category.html:12 -#: templates/InvenTree/settings/part.html:66 +#: templates/InvenTree/settings/part.html:68 msgid "New Parameter" msgstr "新建参数" @@ -3261,10 +3289,10 @@ msgid "Assigned Stock Items" msgstr "" #: company/templates/company/supplier_part.html:7 -#: company/templates/company/supplier_part.html:24 stock/models.py:600 +#: company/templates/company/supplier_part.html:24 stock/models.py:607 #: stock/templates/stock/item_base.html:238 #: templates/js/translated/company.js:909 templates/js/translated/order.js:935 -#: templates/js/translated/stock.js:1929 +#: templates/js/translated/stock.js:1933 msgid "Supplier Part" msgstr "供应商商品" @@ -3308,13 +3336,13 @@ msgid "Supplier Part Stock" msgstr "供货商商品库存" #: company/templates/company/supplier_part.html:168 -#: part/templates/part/detail.html:24 stock/templates/stock/location.html:176 +#: part/templates/part/detail.html:24 stock/templates/stock/location.html:181 msgid "Create new stock item" msgstr "" #: company/templates/company/supplier_part.html:169 -#: part/templates/part/detail.html:25 stock/templates/stock/location.html:177 -#: templates/js/translated/stock.js:431 +#: part/templates/part/detail.html:25 stock/templates/stock/location.html:182 +#: templates/js/translated/stock.js:435 msgid "New Stock Item" msgstr "" @@ -3330,7 +3358,7 @@ msgstr "价格信息" #: company/templates/company/supplier_part.html:212 #: company/templates/company/supplier_part.html:326 -#: part/templates/part/prices.html:276 templates/js/translated/part.js:2224 +#: part/templates/part/prices.html:276 templates/js/translated/part.js:2233 msgid "Add Price Break" msgstr "" @@ -3339,12 +3367,12 @@ msgid "No price break information found" msgstr "" #: company/templates/company/supplier_part.html:252 -#: templates/js/translated/part.js:2234 +#: templates/js/translated/part.js:2243 msgid "Delete Price Break" msgstr "" #: company/templates/company/supplier_part.html:266 -#: templates/js/translated/part.js:2248 +#: templates/js/translated/part.js:2257 msgid "Edit Price Break" msgstr "" @@ -3366,13 +3394,13 @@ msgstr "" #: company/templates/company/supplier_part_navbar.html:15 #: part/templates/part/part_sidebar.html:14 -#: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:19 +#: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:24 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:151 #: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/bom.js:555 templates/js/translated/part.js:747 -#: templates/js/translated/part.js:1295 templates/js/translated/part.js:1456 -#: templates/js/translated/stock.js:955 templates/js/translated/stock.js:1750 +#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751 +#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460 +#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754 #: templates/navbar.html:31 msgid "Stock" msgstr "库存" @@ -3392,14 +3420,14 @@ msgid "Pricing" msgstr "定价" #: company/templates/company/supplier_part_sidebar.html:5 -#: part/templates/part/category.html:197 +#: part/templates/part/category.html:203 #: part/templates/part/category_sidebar.html:17 -#: stock/templates/stock/location.html:147 -#: stock/templates/stock/location.html:161 -#: stock/templates/stock/location.html:173 +#: stock/templates/stock/location.html:152 +#: stock/templates/stock/location.html:166 +#: stock/templates/stock/location.html:178 #: stock/templates/stock/location_sidebar.html:7 #: templates/InvenTree/search.html:153 templates/js/translated/search.js:223 -#: templates/js/translated/stock.js:2427 users/models.py:40 +#: templates/js/translated/stock.js:2436 users/models.py:40 msgid "Stock Items" msgstr "库存项" @@ -3656,8 +3684,8 @@ msgstr "" #: stock/templates/stock/item_base.html:184 #: templates/email/overdue_purchase_order.html:15 #: templates/js/translated/order.js:936 templates/js/translated/order.js:1691 -#: templates/js/translated/part.js:968 templates/js/translated/stock.js:1909 -#: templates/js/translated/stock.js:2531 +#: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913 +#: templates/js/translated/stock.js:2540 msgid "Purchase Order" msgstr "" @@ -3667,7 +3695,7 @@ msgstr "供应商商品" #: order/models.py:1009 order/templates/order/order_base.html:169 #: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073 -#: templates/js/translated/part.js:1060 templates/js/translated/part.js:1087 +#: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091 #: templates/js/translated/table_filters.js:338 msgid "Received" msgstr "" @@ -3676,9 +3704,9 @@ msgstr "" msgid "Number of items received" msgstr "" -#: order/models.py:1017 part/templates/part/prices.html:181 stock/models.py:727 +#: order/models.py:1017 part/templates/part/prices.html:181 stock/models.py:734 #: stock/serializers.py:171 stock/templates/stock/item_base.html:191 -#: templates/js/translated/stock.js:1960 +#: templates/js/translated/stock.js:1964 msgid "Purchase Price" msgstr "采购价格" @@ -4066,8 +4094,8 @@ msgstr "选择供应商商品" #: templates/js/translated/bom.js:77 templates/js/translated/build.js:431 #: templates/js/translated/build.js:583 templates/js/translated/build.js:1974 #: templates/js/translated/order.js:884 templates/js/translated/order.js:1337 -#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:621 -#: templates/js/translated/stock.js:789 +#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625 +#: templates/js/translated/stock.js:793 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "移除行" @@ -4261,8 +4289,8 @@ msgstr "指定初始初始商品仓储地点" msgid "This field is required" msgstr "此字段为必填" -#: part/bom.py:127 part/models.py:98 part/models.py:817 -#: part/templates/part/category.html:108 part/templates/part/part_base.html:330 +#: part/bom.py:127 part/models.py:98 part/models.py:824 +#: part/templates/part/category.html:114 part/templates/part/part_base.html:330 msgid "Default Location" msgstr "默认仓储地点" @@ -4276,9 +4304,9 @@ msgid "Available Stock" msgstr "可用库存" #: part/bom.py:130 part/templates/part/part_base.html:207 -#: templates/js/translated/bom.js:947 templates/js/translated/part.js:586 -#: templates/js/translated/part.js:606 templates/js/translated/part.js:1298 -#: templates/js/translated/part.js:1470 templates/js/translated/part.js:1486 +#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590 +#: templates/js/translated/part.js:610 templates/js/translated/part.js:1302 +#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "" @@ -4299,516 +4327,524 @@ msgstr "" msgid "Default keywords for parts in this category" msgstr "此类别商品的默认关键字" -#: part/models.py:115 part/models.py:2455 part/templates/part/category.html:15 +#: part/models.py:107 stock/models.py:84 +msgid "Icon" +msgstr "" + +#: part/models.py:108 stock/models.py:85 +msgid "Icon (optional)" +msgstr "" + +#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "商品类别" -#: part/models.py:116 part/templates/part/category.html:128 +#: part/models.py:123 part/templates/part/category.html:134 #: templates/InvenTree/search.html:95 templates/js/translated/search.js:198 #: users/models.py:37 msgid "Part Categories" msgstr "商品类别" -#: part/models.py:337 part/templates/part/cat_link.html:3 -#: part/templates/part/category.html:17 part/templates/part/category.html:133 -#: part/templates/part/category.html:153 +#: part/models.py:344 part/templates/part/cat_link.html:3 +#: part/templates/part/category.html:23 part/templates/part/category.html:139 +#: part/templates/part/category.html:159 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82 #: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:1946 templates/js/translated/search.js:144 +#: templates/js/translated/part.js:1955 templates/js/translated/search.js:144 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "商品" -#: part/models.py:422 +#: part/models.py:429 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:492 part/models.py:504 +#: part/models.py:499 part/models.py:511 #, python-brace-format msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)" msgstr "" -#: part/models.py:621 +#: part/models.py:628 msgid "Next available serial numbers are" msgstr "" -#: part/models.py:625 +#: part/models.py:632 msgid "Next available serial number is" msgstr "" -#: part/models.py:630 +#: part/models.py:637 msgid "Most recent serial number is" msgstr "" -#: part/models.py:711 +#: part/models.py:718 msgid "Duplicate IPN not allowed in part settings" msgstr "在商品设置中不允许重复的IPN" -#: part/models.py:738 part/models.py:2509 +#: part/models.py:745 part/models.py:2516 msgid "Part name" msgstr "商品名称" -#: part/models.py:745 +#: part/models.py:752 msgid "Is Template" msgstr "" -#: part/models.py:746 +#: part/models.py:753 msgid "Is this part a template part?" msgstr "" -#: part/models.py:756 +#: part/models.py:763 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:757 +#: part/models.py:764 msgid "Variant Of" msgstr "" -#: part/models.py:763 +#: part/models.py:770 msgid "Part description" msgstr "商品描述" -#: part/models.py:768 part/templates/part/category.html:86 +#: part/models.py:775 part/templates/part/category.html:92 #: part/templates/part/part_base.html:294 msgid "Keywords" msgstr "关键词" -#: part/models.py:769 +#: part/models.py:776 msgid "Part keywords to improve visibility in search results" msgstr "提高搜索结果可见性的关键字" -#: part/models.py:776 part/models.py:2211 part/models.py:2454 +#: part/models.py:783 part/models.py:2218 part/models.py:2461 #: part/templates/part/part_base.html:257 #: templates/InvenTree/settings/settings.html:232 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1438 templates/js/translated/part.js:1664 +#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1668 msgid "Category" msgstr "类别" -#: part/models.py:777 +#: part/models.py:784 msgid "Part category" msgstr "商品类别" -#: part/models.py:782 part/templates/part/part_base.html:266 -#: templates/js/translated/part.js:735 templates/js/translated/part.js:1391 -#: templates/js/translated/stock.js:1722 +#: part/models.py:789 part/templates/part/part_base.html:266 +#: templates/js/translated/part.js:739 templates/js/translated/part.js:1395 +#: templates/js/translated/stock.js:1726 msgid "IPN" msgstr "" -#: part/models.py:783 +#: part/models.py:790 msgid "Internal Part Number" msgstr "内部商品编号" -#: part/models.py:789 +#: part/models.py:796 msgid "Part revision or version number" msgstr "商品版本号" -#: part/models.py:790 part/templates/part/part_base.html:273 -#: report/models.py:171 templates/js/translated/part.js:739 +#: part/models.py:797 part/templates/part/part_base.html:273 +#: report/models.py:171 templates/js/translated/part.js:743 msgid "Revision" msgstr "" -#: part/models.py:815 +#: part/models.py:822 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:860 part/templates/part/part_base.html:339 +#: part/models.py:867 part/templates/part/part_base.html:339 msgid "Default Supplier" msgstr "" -#: part/models.py:861 +#: part/models.py:868 msgid "Default supplier part" msgstr "默认供应商商品" -#: part/models.py:868 +#: part/models.py:875 msgid "Default Expiry" msgstr "" -#: part/models.py:869 +#: part/models.py:876 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:874 part/templates/part/part_base.html:200 +#: part/models.py:881 part/templates/part/part_base.html:200 msgid "Minimum Stock" msgstr "最低库存" -#: part/models.py:875 +#: part/models.py:882 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:882 +#: part/models.py:889 msgid "Stock keeping units for this part" msgstr "" -#: part/models.py:888 +#: part/models.py:895 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:894 +#: part/models.py:901 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:900 +#: part/models.py:907 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:905 +#: part/models.py:912 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:910 +#: part/models.py:917 msgid "Can this part be sold to customers?" msgstr "此商品可以销售给客户吗?" -#: part/models.py:915 +#: part/models.py:922 msgid "Is this part active?" msgstr "" -#: part/models.py:920 +#: part/models.py:927 msgid "Is this a virtual part, such as a software product or license?" msgstr "这是一个虚拟商品,如软件产品或许可证吗?" -#: part/models.py:922 +#: part/models.py:929 msgid "Part notes" msgstr "" -#: part/models.py:924 +#: part/models.py:931 msgid "BOM checksum" msgstr "" -#: part/models.py:924 +#: part/models.py:931 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:927 +#: part/models.py:934 msgid "BOM checked by" msgstr "" -#: part/models.py:929 +#: part/models.py:936 msgid "BOM checked date" msgstr "" -#: part/models.py:933 +#: part/models.py:940 msgid "Creation User" msgstr "新建用户" -#: part/models.py:1737 +#: part/models.py:1744 msgid "Sell multiple" msgstr "" -#: part/models.py:2258 +#: part/models.py:2265 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:2275 +#: part/models.py:2282 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:2295 templates/js/translated/part.js:1997 -#: templates/js/translated/stock.js:1336 +#: part/models.py:2302 templates/js/translated/part.js:2006 +#: templates/js/translated/stock.js:1340 msgid "Test Name" msgstr "" -#: part/models.py:2296 +#: part/models.py:2303 msgid "Enter a name for the test" msgstr "" -#: part/models.py:2301 +#: part/models.py:2308 msgid "Test Description" msgstr "" -#: part/models.py:2302 +#: part/models.py:2309 msgid "Enter description for this test" msgstr "" -#: part/models.py:2307 templates/js/translated/part.js:2006 +#: part/models.py:2314 templates/js/translated/part.js:2015 #: templates/js/translated/table_filters.js:302 msgid "Required" msgstr "" -#: part/models.py:2308 +#: part/models.py:2315 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:2313 templates/js/translated/part.js:2014 +#: part/models.py:2320 templates/js/translated/part.js:2023 msgid "Requires Value" msgstr "" -#: part/models.py:2314 +#: part/models.py:2321 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:2319 templates/js/translated/part.js:2021 +#: part/models.py:2326 templates/js/translated/part.js:2030 msgid "Requires Attachment" msgstr "" -#: part/models.py:2320 +#: part/models.py:2327 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:2328 +#: part/models.py:2335 #, python-brace-format msgid "Illegal character in template name ({c})" msgstr "" -#: part/models.py:2364 +#: part/models.py:2371 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:2372 +#: part/models.py:2379 msgid "Parameter Name" msgstr "" -#: part/models.py:2379 +#: part/models.py:2386 msgid "Parameter Units" msgstr "" -#: part/models.py:2410 +#: part/models.py:2417 msgid "Parent Part" msgstr "" -#: part/models.py:2412 part/models.py:2460 part/models.py:2461 +#: part/models.py:2419 part/models.py:2467 part/models.py:2468 #: templates/InvenTree/settings/settings.html:227 msgid "Parameter Template" msgstr "参数模板" -#: part/models.py:2414 +#: part/models.py:2421 msgid "Data" msgstr "" -#: part/models.py:2414 +#: part/models.py:2421 msgid "Parameter Value" msgstr "" -#: part/models.py:2465 templates/InvenTree/settings/settings.html:236 +#: part/models.py:2472 templates/InvenTree/settings/settings.html:236 msgid "Default Value" msgstr "默认值" -#: part/models.py:2466 +#: part/models.py:2473 msgid "Default Parameter Value" msgstr "" -#: part/models.py:2501 +#: part/models.py:2508 msgid "Part ID or part name" msgstr "" -#: part/models.py:2504 templates/js/translated/model_renderers.js:212 +#: part/models.py:2511 templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "商品ID" -#: part/models.py:2505 +#: part/models.py:2512 msgid "Unique part ID value" msgstr "" -#: part/models.py:2508 +#: part/models.py:2515 msgid "Part Name" msgstr "" -#: part/models.py:2512 +#: part/models.py:2519 msgid "Part IPN" msgstr "" -#: part/models.py:2513 +#: part/models.py:2520 msgid "Part IPN value" msgstr "" -#: part/models.py:2516 +#: part/models.py:2523 msgid "Level" msgstr "" -#: part/models.py:2517 +#: part/models.py:2524 msgid "BOM level" msgstr "" -#: part/models.py:2586 +#: part/models.py:2593 msgid "Select parent part" msgstr "" -#: part/models.py:2594 +#: part/models.py:2601 msgid "Sub part" msgstr "" -#: part/models.py:2595 +#: part/models.py:2602 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:2601 +#: part/models.py:2608 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:2603 part/templates/part/upload_bom.html:58 +#: part/models.py:2610 part/templates/part/upload_bom.html:58 #: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999 #: templates/js/translated/table_filters.js:100 msgid "Optional" msgstr "可选项" -#: part/models.py:2603 +#: part/models.py:2610 msgid "This BOM item is optional" msgstr "" -#: part/models.py:2606 part/templates/part/upload_bom.html:55 +#: part/models.py:2613 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:2607 +#: part/models.py:2614 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:2610 +#: part/models.py:2617 msgid "BOM item reference" msgstr "" -#: part/models.py:2613 +#: part/models.py:2620 msgid "BOM item notes" msgstr "" -#: part/models.py:2615 +#: part/models.py:2622 msgid "Checksum" msgstr "" -#: part/models.py:2615 +#: part/models.py:2622 msgid "BOM line checksum" msgstr "" -#: part/models.py:2619 part/templates/part/upload_bom.html:57 +#: part/models.py:2626 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1016 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:96 msgid "Inherited" msgstr "继承项" -#: part/models.py:2620 +#: part/models.py:2627 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:2625 part/templates/part/upload_bom.html:56 +#: part/models.py:2632 part/templates/part/upload_bom.html:56 #: templates/js/translated/bom.js:1008 msgid "Allow Variants" msgstr "" -#: part/models.py:2626 +#: part/models.py:2633 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:2704 stock/models.py:461 +#: part/models.py:2711 stock/models.py:468 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:2713 part/models.py:2715 +#: part/models.py:2720 part/models.py:2722 msgid "Sub part must be specified" msgstr "" -#: part/models.py:2820 +#: part/models.py:2827 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:2841 +#: part/models.py:2848 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:2854 +#: part/models.py:2861 msgid "Parent BOM item" msgstr "" -#: part/models.py:2862 +#: part/models.py:2869 msgid "Substitute part" msgstr "" -#: part/models.py:2877 +#: part/models.py:2884 msgid "Part 1" msgstr "" -#: part/models.py:2881 +#: part/models.py:2888 msgid "Part 2" msgstr "" -#: part/models.py:2881 +#: part/models.py:2888 msgid "Select Related Part" msgstr "" -#: part/models.py:2899 +#: part/models.py:2906 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:2903 +#: part/models.py:2910 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:152 part/serializers.py:183 stock/serializers.py:181 +#: part/serializers.py:154 part/serializers.py:185 stock/serializers.py:181 msgid "Purchase currency of this stock item" msgstr "" -#: part/serializers.py:812 +#: part/serializers.py:814 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:820 +#: part/serializers.py:822 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:821 +#: part/serializers.py:823 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:826 +#: part/serializers.py:828 msgid "Include Inherited" msgstr "" -#: part/serializers.py:827 +#: part/serializers.py:829 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:832 +#: part/serializers.py:834 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:833 +#: part/serializers.py:835 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:838 +#: part/serializers.py:840 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:839 +#: part/serializers.py:841 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:879 +#: part/serializers.py:881 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:880 +#: part/serializers.py:882 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:910 +#: part/serializers.py:912 msgid "No part column specified" msgstr "" -#: part/serializers.py:953 +#: part/serializers.py:955 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:956 +#: part/serializers.py:958 msgid "No matching part found" msgstr "" -#: part/serializers.py:959 +#: part/serializers.py:961 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:968 +#: part/serializers.py:970 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:976 +#: part/serializers.py:978 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:997 +#: part/serializers.py:999 msgid "At least one BOM item is required" msgstr "" @@ -4848,101 +4884,101 @@ msgstr "" msgid "Delete Items" msgstr "" -#: part/templates/part/category.html:28 part/templates/part/category.html:32 +#: part/templates/part/category.html:34 part/templates/part/category.html:38 msgid "You are subscribed to notifications for this category" msgstr "" -#: part/templates/part/category.html:36 +#: part/templates/part/category.html:42 msgid "Subscribe to notifications for this category" msgstr "" -#: part/templates/part/category.html:42 +#: part/templates/part/category.html:48 msgid "Category Actions" msgstr "" -#: part/templates/part/category.html:47 +#: part/templates/part/category.html:53 msgid "Edit category" msgstr "" -#: part/templates/part/category.html:48 +#: part/templates/part/category.html:54 msgid "Edit Category" msgstr "" -#: part/templates/part/category.html:52 +#: part/templates/part/category.html:58 msgid "Delete category" msgstr "" -#: part/templates/part/category.html:53 +#: part/templates/part/category.html:59 msgid "Delete Category" msgstr "" -#: part/templates/part/category.html:61 +#: part/templates/part/category.html:67 msgid "Create new part category" msgstr "新建商品类别" -#: part/templates/part/category.html:62 +#: part/templates/part/category.html:68 msgid "New Category" msgstr "" -#: part/templates/part/category.html:80 part/templates/part/category.html:93 +#: part/templates/part/category.html:86 part/templates/part/category.html:99 msgid "Category Path" msgstr "类别路径" -#: part/templates/part/category.html:94 +#: part/templates/part/category.html:100 msgid "Top level part category" msgstr "" -#: part/templates/part/category.html:114 part/templates/part/category.html:222 +#: part/templates/part/category.html:120 part/templates/part/category.html:228 #: part/templates/part/category_sidebar.html:7 msgid "Subcategories" msgstr "子类别" -#: part/templates/part/category.html:119 +#: part/templates/part/category.html:125 msgid "Parts (Including subcategories)" msgstr "商品 (包括子类别)" -#: part/templates/part/category.html:157 +#: part/templates/part/category.html:163 msgid "Create new part" msgstr "新建商品" -#: part/templates/part/category.html:158 templates/js/translated/bom.js:367 +#: part/templates/part/category.html:164 templates/js/translated/bom.js:367 msgid "New Part" msgstr "新商品" -#: part/templates/part/category.html:168 part/templates/part/detail.html:363 +#: part/templates/part/category.html:174 part/templates/part/detail.html:363 #: part/templates/part/detail.html:394 msgid "Options" msgstr "选项" -#: part/templates/part/category.html:172 +#: part/templates/part/category.html:178 msgid "Set category" msgstr "设置类别" -#: part/templates/part/category.html:173 +#: part/templates/part/category.html:179 msgid "Set Category" msgstr "设置类别" -#: part/templates/part/category.html:180 part/templates/part/category.html:181 +#: part/templates/part/category.html:186 part/templates/part/category.html:187 msgid "Print Labels" msgstr "打印标签" -#: part/templates/part/category.html:206 +#: part/templates/part/category.html:212 msgid "Part Parameters" msgstr "商品参数" -#: part/templates/part/category.html:320 +#: part/templates/part/category.html:327 msgid "Create Part Category" msgstr "创建商品类别" -#: part/templates/part/category.html:340 +#: part/templates/part/category.html:347 msgid "Create Part" msgstr "创建商品" -#: part/templates/part/category.html:343 +#: part/templates/part/category.html:350 msgid "Create another part after this one" msgstr "" -#: part/templates/part/category.html:344 +#: part/templates/part/category.html:351 msgid "Part created successfully" msgstr "" @@ -4950,7 +4986,7 @@ msgstr "" msgid "Import Parts" msgstr "" -#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:375 +#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:379 msgid "Duplicate Part" msgstr "复制部件" @@ -5172,19 +5208,19 @@ msgstr "" #: part/templates/part/part_base.html:43 #: stock/templates/stock/item_base.html:41 -#: stock/templates/stock/location.html:43 +#: stock/templates/stock/location.html:48 msgid "Barcode actions" msgstr "" #: part/templates/part/part_base.html:46 #: stock/templates/stock/item_base.html:45 -#: stock/templates/stock/location.html:45 templates/qr_button.html:1 +#: stock/templates/stock/location.html:50 templates/qr_button.html:1 msgid "Show QR Code" msgstr "" #: part/templates/part/part_base.html:49 #: stock/templates/stock/item_base.html:63 -#: stock/templates/stock/location.html:47 +#: stock/templates/stock/location.html:52 msgid "Print Label" msgstr "打印标签" @@ -5194,7 +5230,7 @@ msgstr "" #: part/templates/part/part_base.html:60 #: stock/templates/stock/item_base.html:116 -#: stock/templates/stock/location.html:56 +#: stock/templates/stock/location.html:61 msgid "Stock actions" msgstr "" @@ -5255,7 +5291,7 @@ msgstr "商品是虚拟的(不是实体零件)" #: templates/js/translated/company.js:624 #: templates/js/translated/company.js:884 #: templates/js/translated/model_renderers.js:204 -#: templates/js/translated/part.js:650 templates/js/translated/part.js:727 +#: templates/js/translated/part.js:654 templates/js/translated/part.js:731 msgid "Inactive" msgstr "" @@ -5289,9 +5325,9 @@ msgstr "" msgid "Can Build" msgstr "" -#: part/templates/part/part_base.html:238 templates/js/translated/part.js:589 -#: templates/js/translated/part.js:609 templates/js/translated/part.js:1302 -#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490 +#: part/templates/part/part_base.html:238 templates/js/translated/part.js:593 +#: templates/js/translated/part.js:613 templates/js/translated/part.js:1306 +#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1494 msgid "Building" msgstr "" @@ -5464,8 +5500,8 @@ msgstr "" msgid "No sale pice history available for this part." msgstr "" -#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:612 -#: templates/js/translated/part.js:1290 templates/js/translated/part.js:1494 +#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616 +#: templates/js/translated/part.js:1294 templates/js/translated/part.js:1498 msgid "No Stock" msgstr "" @@ -5630,51 +5666,55 @@ msgstr "" msgid "Allow sending of emails for event notifications" msgstr "" -#: plugin/models.py:32 +#: plugin/models.py:33 msgid "Plugin Metadata" msgstr "" -#: plugin/models.py:33 +#: plugin/models.py:34 msgid "JSON metadata field, for use by external plugins" msgstr "" -#: plugin/models.py:79 +#: plugin/models.py:80 msgid "Plugin Configuration" msgstr "" -#: plugin/models.py:80 +#: plugin/models.py:81 msgid "Plugin Configurations" msgstr "" -#: plugin/models.py:85 +#: plugin/models.py:86 msgid "Key" msgstr "" -#: plugin/models.py:86 +#: plugin/models.py:87 msgid "Key of plugin" msgstr "" -#: plugin/models.py:94 +#: plugin/models.py:95 msgid "PluginName of the plugin" msgstr "" -#: plugin/models.py:100 +#: plugin/models.py:101 msgid "Is the plugin active" msgstr "" -#: plugin/models.py:168 +#: plugin/models.py:158 +msgid "Sample plugin" +msgstr "" + +#: plugin/models.py:186 msgid "Plugin" msgstr "" -#: plugin/models.py:231 +#: plugin/models.py:249 msgid "Method" msgstr "" -#: plugin/plugin.py:228 +#: plugin/plugin.py:251 msgid "No author found" msgstr "" -#: plugin/plugin.py:240 +#: plugin/plugin.py:263 msgid "No date found" msgstr "" @@ -5746,12 +5786,12 @@ msgstr "" msgid "No valid objects provided to template" msgstr "没有为模板提供有效对象" -#: report/api.py:216 report/api.py:257 +#: report/api.py:216 report/api.py:252 #, python-brace-format msgid "Template file '{template}' is missing or does not exist" msgstr "" -#: report/api.py:360 +#: report/api.py:355 msgid "Test report" msgstr "" @@ -5852,12 +5892,12 @@ msgid "Stock Item Test Report" msgstr "" #: report/templates/report/inventree_test_report_base.html:79 -#: stock/models.py:641 stock/templates/stock/item_base.html:322 +#: stock/models.py:648 stock/templates/stock/item_base.html:322 #: templates/js/translated/build.js:424 templates/js/translated/build.js:576 #: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673 #: templates/js/translated/model_renderers.js:118 #: templates/js/translated/order.js:118 templates/js/translated/order.js:3297 -#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:486 +#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490 msgid "Serial Number" msgstr "序列号" @@ -5866,19 +5906,19 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report_base.html:93 -#: stock/models.py:2076 +#: stock/models.py:2083 msgid "Test" msgstr "" #: report/templates/report/inventree_test_report_base.html:94 -#: stock/models.py:2082 +#: stock/models.py:2089 msgid "Result" msgstr "" #: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:51 +#: templates/InvenTree/settings/plugin.html:53 #: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2459 +#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468 msgid "Date" msgstr "" @@ -5896,8 +5936,8 @@ msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report_base.html:137 -#: templates/js/translated/stock.js:606 templates/js/translated/stock.js:776 -#: templates/js/translated/stock.js:2708 +#: templates/js/translated/stock.js:610 templates/js/translated/stock.js:780 +#: templates/js/translated/stock.js:2717 msgid "Serial" msgstr "" @@ -5913,241 +5953,241 @@ msgstr "" msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" -#: stock/models.py:82 stock/models.py:732 +#: stock/models.py:89 stock/models.py:739 #: stock/templates/stock/item_base.html:252 msgid "Owner" msgstr "" -#: stock/models.py:83 stock/models.py:733 +#: stock/models.py:90 stock/models.py:740 msgid "Select Owner" msgstr "" -#: stock/models.py:435 +#: stock/models.py:442 msgid "StockItem with this serial number already exists" msgstr "" -#: stock/models.py:467 stock/serializers.py:95 +#: stock/models.py:474 stock/serializers.py:95 msgid "Stock item cannot be created for virtual parts" msgstr "" -#: stock/models.py:484 +#: stock/models.py:491 #, python-brace-format msgid "Part type ('{pf}') must be {pe}" msgstr "商品类型 ('{pf}') 必须是 {pe}" -#: stock/models.py:494 stock/models.py:503 +#: stock/models.py:501 stock/models.py:510 msgid "Quantity must be 1 for item with a serial number" msgstr "" -#: stock/models.py:495 +#: stock/models.py:502 msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:517 +#: stock/models.py:524 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:523 +#: stock/models.py:530 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:537 +#: stock/models.py:544 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:583 +#: stock/models.py:590 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:593 +#: stock/models.py:600 msgid "Base part" msgstr "" -#: stock/models.py:601 +#: stock/models.py:608 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:608 stock/templates/stock/location.html:17 +#: stock/models.py:615 stock/templates/stock/location.html:17 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" msgstr "仓储地点" -#: stock/models.py:611 +#: stock/models.py:618 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:618 +#: stock/models.py:625 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:624 stock/templates/stock/item_base.html:361 +#: stock/models.py:631 stock/templates/stock/item_base.html:361 msgid "Installed In" msgstr "" -#: stock/models.py:627 +#: stock/models.py:634 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:643 +#: stock/models.py:650 msgid "Serial number for this item" msgstr "" -#: stock/models.py:657 +#: stock/models.py:664 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:662 +#: stock/models.py:669 msgid "Stock Quantity" msgstr "" -#: stock/models.py:671 +#: stock/models.py:678 msgid "Source Build" msgstr "" -#: stock/models.py:673 +#: stock/models.py:680 msgid "Build for this stock item" msgstr "" -#: stock/models.py:684 +#: stock/models.py:691 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:687 +#: stock/models.py:694 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:693 +#: stock/models.py:700 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:699 stock/templates/stock/item_base.html:429 -#: templates/js/translated/stock.js:1879 +#: stock/models.py:706 stock/templates/stock/item_base.html:429 +#: templates/js/translated/stock.js:1883 msgid "Expiry Date" msgstr "" -#: stock/models.py:700 +#: stock/models.py:707 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:713 +#: stock/models.py:720 msgid "Delete on deplete" msgstr "" -#: stock/models.py:713 +#: stock/models.py:720 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:720 stock/templates/stock/item.html:132 +#: stock/models.py:727 stock/templates/stock/item.html:132 msgid "Stock Item Notes" msgstr "" -#: stock/models.py:728 +#: stock/models.py:735 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:756 +#: stock/models.py:763 msgid "Converted to part" msgstr "" -#: stock/models.py:1235 +#: stock/models.py:1242 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1241 +#: stock/models.py:1248 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1247 +#: stock/models.py:1254 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({n})" msgstr "" -#: stock/models.py:1250 +#: stock/models.py:1257 msgid "Serial numbers must be a list of integers" msgstr "" -#: stock/models.py:1253 +#: stock/models.py:1260 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1260 +#: stock/models.py:1267 #, python-brace-format msgid "Serial numbers already exist: {exists}" msgstr "" -#: stock/models.py:1330 +#: stock/models.py:1337 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1333 +#: stock/models.py:1340 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1336 +#: stock/models.py:1343 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1339 +#: stock/models.py:1346 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1342 +#: stock/models.py:1349 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1345 +#: stock/models.py:1352 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1352 stock/serializers.py:959 +#: stock/models.py:1359 stock/serializers.py:961 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1356 +#: stock/models.py:1363 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1360 +#: stock/models.py:1367 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1364 +#: stock/models.py:1371 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:1533 +#: stock/models.py:1540 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:1994 +#: stock/models.py:2001 msgid "Entry notes" msgstr "" -#: stock/models.py:2052 +#: stock/models.py:2059 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2058 +#: stock/models.py:2065 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2077 +#: stock/models.py:2084 msgid "Test name" msgstr "" -#: stock/models.py:2083 +#: stock/models.py:2090 msgid "Test result" msgstr "" -#: stock/models.py:2089 +#: stock/models.py:2096 msgid "Test output value" msgstr "" -#: stock/models.py:2096 +#: stock/models.py:2103 msgid "Test result attachment" msgstr "" -#: stock/models.py:2102 +#: stock/models.py:2109 msgid "Test notes" msgstr "" @@ -6172,7 +6212,7 @@ msgstr "" msgid "Enter serial numbers for new items" msgstr "输入新项目的序列号" -#: stock/serializers.py:323 stock/serializers.py:916 stock/serializers.py:1149 +#: stock/serializers.py:323 stock/serializers.py:918 stock/serializers.py:1151 msgid "Destination stock location" msgstr "目标库存位置" @@ -6220,63 +6260,63 @@ msgstr "" msgid "Destination location for returned item" msgstr "" -#: stock/serializers.py:771 +#: stock/serializers.py:773 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:775 +#: stock/serializers.py:777 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:779 +#: stock/serializers.py:781 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:810 +#: stock/serializers.py:812 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:816 +#: stock/serializers.py:818 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:824 +#: stock/serializers.py:826 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:834 stock/serializers.py:1065 +#: stock/serializers.py:836 stock/serializers.py:1067 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:923 +#: stock/serializers.py:925 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:928 +#: stock/serializers.py:930 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:929 +#: stock/serializers.py:931 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:934 +#: stock/serializers.py:936 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:935 +#: stock/serializers.py:937 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:945 +#: stock/serializers.py:947 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1027 +#: stock/serializers.py:1029 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1055 +#: stock/serializers.py:1057 msgid "Stock transaction notes" msgstr "" @@ -6313,7 +6353,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2852 +#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2861 msgid "Install Stock Item" msgstr "" @@ -6321,7 +6361,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1518 +#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1522 msgid "Add Test Result" msgstr "" @@ -6352,7 +6392,7 @@ msgid "Stock adjustment actions" msgstr "" #: stock/templates/stock/item_base.html:80 -#: stock/templates/stock/location.html:63 templates/stock_table.html:47 +#: stock/templates/stock/location.html:68 templates/stock_table.html:47 msgid "Count stock" msgstr "" @@ -6369,7 +6409,7 @@ msgid "Serialize stock" msgstr "" #: stock/templates/stock/item_base.html:93 -#: stock/templates/stock/location.html:69 templates/stock_table.html:48 +#: stock/templates/stock/location.html:74 templates/stock_table.html:48 msgid "Transfer stock" msgstr "" @@ -6430,7 +6470,7 @@ msgid "You are not in the list of owners of this item. This stock item cannot be msgstr "" #: stock/templates/stock/item_base.html:257 -#: stock/templates/stock/location.html:127 +#: stock/templates/stock/location.html:132 msgid "Read only" msgstr "" @@ -6508,7 +6548,7 @@ msgid "Stale" msgstr "" #: stock/templates/stock/item_base.html:442 -#: templates/js/translated/company.js:985 templates/js/translated/stock.js:1895 +#: templates/js/translated/company.js:985 templates/js/translated/stock.js:1899 msgid "Last Updated" msgstr "" @@ -6552,58 +6592,58 @@ msgstr "" msgid "Select quantity to serialize, and unique serial numbers." msgstr "" -#: stock/templates/stock/location.html:33 +#: stock/templates/stock/location.html:38 msgid "Locate stock location" msgstr "" -#: stock/templates/stock/location.html:49 +#: stock/templates/stock/location.html:54 msgid "Check-in Items" msgstr "" -#: stock/templates/stock/location.html:77 +#: stock/templates/stock/location.html:82 msgid "Location actions" msgstr "仓储地操作" -#: stock/templates/stock/location.html:79 +#: stock/templates/stock/location.html:84 msgid "Edit location" msgstr "编辑仓储地" -#: stock/templates/stock/location.html:81 +#: stock/templates/stock/location.html:86 msgid "Delete location" msgstr "删除仓储地" -#: stock/templates/stock/location.html:90 +#: stock/templates/stock/location.html:95 msgid "Create new stock location" msgstr "新建仓储地点" -#: stock/templates/stock/location.html:91 +#: stock/templates/stock/location.html:96 msgid "New Location" msgstr "新建仓储地点" -#: stock/templates/stock/location.html:109 -#: stock/templates/stock/location.html:115 +#: stock/templates/stock/location.html:114 +#: stock/templates/stock/location.html:120 msgid "Location Path" msgstr "" -#: stock/templates/stock/location.html:116 +#: stock/templates/stock/location.html:121 msgid "Top level stock location" msgstr "" -#: stock/templates/stock/location.html:122 +#: stock/templates/stock/location.html:127 msgid "Location Owner" msgstr "" -#: stock/templates/stock/location.html:126 +#: stock/templates/stock/location.html:131 msgid "You are not in the list of owners of this location. This stock location cannot be edited." msgstr "您不在此仓储地的所有者列表中,无法编辑此仓储地。" -#: stock/templates/stock/location.html:142 -#: stock/templates/stock/location.html:189 +#: stock/templates/stock/location.html:147 +#: stock/templates/stock/location.html:194 #: stock/templates/stock/location_sidebar.html:5 msgid "Sublocations" msgstr "" -#: stock/templates/stock/location.html:156 templates/InvenTree/search.html:165 +#: stock/templates/stock/location.html:161 templates/InvenTree/search.html:165 #: templates/js/translated/search.js:238 users/models.py:39 msgid "Stock Locations" msgstr "仓储地点" @@ -6875,15 +6915,15 @@ msgstr "" msgid "Part Settings" msgstr "商品设置" -#: templates/InvenTree/settings/part.html:44 +#: templates/InvenTree/settings/part.html:46 msgid "Part Import" msgstr "商品导入" -#: templates/InvenTree/settings/part.html:48 +#: templates/InvenTree/settings/part.html:50 msgid "Import Part" msgstr "导入商品" -#: templates/InvenTree/settings/part.html:62 +#: templates/InvenTree/settings/part.html:64 msgid "Part Parameter Templates" msgstr "商品参数模板" @@ -6895,47 +6935,47 @@ msgstr "" msgid "Changing the settings below require you to immediately restart the server. Do not change this while under active usage." msgstr "" -#: templates/InvenTree/settings/plugin.html:34 +#: templates/InvenTree/settings/plugin.html:36 msgid "Plugins" msgstr "" -#: templates/InvenTree/settings/plugin.html:39 +#: templates/InvenTree/settings/plugin.html:41 #: templates/js/translated/plugin.js:16 msgid "Install Plugin" msgstr "" -#: templates/InvenTree/settings/plugin.html:48 templates/navbar.html:137 +#: templates/InvenTree/settings/plugin.html:50 templates/navbar.html:137 #: users/models.py:36 msgid "Admin" msgstr "管理员" -#: templates/InvenTree/settings/plugin.html:50 +#: templates/InvenTree/settings/plugin.html:52 #: templates/InvenTree/settings/plugin_settings.html:28 msgid "Author" msgstr "" -#: templates/InvenTree/settings/plugin.html:52 +#: templates/InvenTree/settings/plugin.html:54 #: templates/InvenTree/settings/plugin_settings.html:43 msgid "Version" msgstr "" -#: templates/InvenTree/settings/plugin.html:74 +#: templates/InvenTree/settings/plugin.html:76 msgid "Sample" msgstr "" -#: templates/InvenTree/settings/plugin.html:99 +#: templates/InvenTree/settings/plugin.html:101 msgid "Inactive plugins" msgstr "" -#: templates/InvenTree/settings/plugin.html:122 +#: templates/InvenTree/settings/plugin.html:124 msgid "Plugin Error Stack" msgstr "" -#: templates/InvenTree/settings/plugin.html:131 +#: templates/InvenTree/settings/plugin.html:133 msgid "Stage" msgstr "" -#: templates/InvenTree/settings/plugin.html:133 +#: templates/InvenTree/settings/plugin.html:135 #: templates/js/translated/notification.js:75 msgid "Message" msgstr "" @@ -6999,11 +7039,11 @@ msgstr "" msgid "Commit Message" msgstr "" -#: templates/InvenTree/settings/plugin_settings.html:117 +#: templates/InvenTree/settings/plugin_settings.html:120 msgid "Sign Status" msgstr "" -#: templates/InvenTree/settings/plugin_settings.html:122 +#: templates/InvenTree/settings/plugin_settings.html:125 msgid "Sign Key" msgstr "" @@ -7828,7 +7868,7 @@ msgstr "" msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:456 templates/js/translated/stock.js:1050 +#: templates/js/translated/barcode.js:456 templates/js/translated/stock.js:1054 msgid "Remove stock item" msgstr "" @@ -8001,7 +8041,7 @@ msgid "Includes variant and substitute stock" msgstr "" #: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822 -#: templates/js/translated/part.js:759 +#: templates/js/translated/part.js:763 msgid "Includes variant stock" msgstr "" @@ -8098,12 +8138,12 @@ msgid "Complete Build Order" msgstr "生产订单完成" #: templates/js/translated/build.js:263 templates/js/translated/stock.js:92 -#: templates/js/translated/stock.js:210 +#: templates/js/translated/stock.js:214 msgid "Next available serial number" msgstr "" #: templates/js/translated/build.js:265 templates/js/translated/stock.js:94 -#: templates/js/translated/stock.js:212 +#: templates/js/translated/stock.js:216 msgid "Latest serial number" msgstr "" @@ -8316,9 +8356,9 @@ msgstr "" msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1383 -#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1682 -#: templates/js/translated/stock.js:2382 +#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387 +#: templates/js/translated/part.js:1899 templates/js/translated/stock.js:1686 +#: templates/js/translated/stock.js:2386 msgid "Select" msgstr "" @@ -8330,7 +8370,7 @@ msgstr "" msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2638 +#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647 msgid "No user information" msgstr "没有用户信息" @@ -8403,34 +8443,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:616 -#: templates/js/translated/company.js:876 templates/js/translated/part.js:634 -#: templates/js/translated/part.js:719 +#: templates/js/translated/company.js:876 templates/js/translated/part.js:638 +#: templates/js/translated/part.js:723 msgid "Template part" msgstr "" #: templates/js/translated/company.js:620 -#: templates/js/translated/company.js:880 templates/js/translated/part.js:638 -#: templates/js/translated/part.js:723 +#: templates/js/translated/company.js:880 templates/js/translated/part.js:642 +#: templates/js/translated/part.js:727 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:748 templates/js/translated/part.js:826 +#: templates/js/translated/company.js:748 templates/js/translated/part.js:830 msgid "No parameters found" msgstr "无指定参数" -#: templates/js/translated/company.js:785 templates/js/translated/part.js:868 +#: templates/js/translated/company.js:785 templates/js/translated/part.js:872 msgid "Edit parameter" msgstr "编辑参数" -#: templates/js/translated/company.js:786 templates/js/translated/part.js:869 +#: templates/js/translated/company.js:786 templates/js/translated/part.js:873 msgid "Delete parameter" msgstr "删除参数" -#: templates/js/translated/company.js:805 templates/js/translated/part.js:886 +#: templates/js/translated/company.js:805 templates/js/translated/part.js:890 msgid "Edit Parameter" msgstr "编辑参数" -#: templates/js/translated/company.js:816 templates/js/translated/part.js:898 +#: templates/js/translated/company.js:816 templates/js/translated/part.js:902 msgid "Delete Parameter" msgstr "删除参数" @@ -8555,7 +8595,7 @@ msgid "Labels sent to printer" msgstr "" #: templates/js/translated/label.js:60 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1078 msgid "Select Stock Items" msgstr "选择库存项" @@ -8865,7 +8905,7 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2140 +#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144 msgid "Stock Status" msgstr "" @@ -8889,7 +8929,7 @@ msgstr "" msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:1672 templates/js/translated/part.js:939 +#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943 msgid "No purchase orders found" msgstr "" @@ -8924,7 +8964,7 @@ msgstr "" #: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203 #: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050 -#: templates/js/translated/part.js:2126 templates/js/translated/part.js:2479 +#: templates/js/translated/part.js:2135 templates/js/translated/part.js:2488 msgid "Unit Price" msgstr "单价" @@ -8934,11 +8974,11 @@ msgid "Total Price" msgstr "" #: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600 -#: templates/js/translated/part.js:1046 +#: templates/js/translated/part.js:1050 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1092 +#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096 msgid "Receive line item" msgstr "" @@ -9059,7 +9099,7 @@ msgid "Delete Stock Allocation" msgstr "" #: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398 -#: templates/js/translated/stock.js:1598 +#: templates/js/translated/stock.js:1602 msgid "Shipped to customer" msgstr "" @@ -9183,241 +9223,245 @@ msgstr "" msgid "Parent part category" msgstr "" -#: templates/js/translated/part.js:318 +#: templates/js/translated/part.js:306 templates/js/translated/stock.js:118 +msgid "Icon (optional) - Explore all available icons on" +msgstr "" + +#: templates/js/translated/part.js:322 msgid "Edit Part Category" msgstr "编辑商品类别" -#: templates/js/translated/part.js:331 +#: templates/js/translated/part.js:335 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:333 +#: templates/js/translated/part.js:337 msgid "Any child categories will be moved to the parent of this category" msgstr "" -#: templates/js/translated/part.js:334 +#: templates/js/translated/part.js:338 msgid "Any parts in this category will be moved to the parent of this category" msgstr "" -#: templates/js/translated/part.js:339 +#: templates/js/translated/part.js:343 msgid "Delete Part Category" msgstr "删除商品类别" -#: templates/js/translated/part.js:365 +#: templates/js/translated/part.js:369 msgid "Edit Part" msgstr "编辑商品" -#: templates/js/translated/part.js:367 +#: templates/js/translated/part.js:371 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:378 +#: templates/js/translated/part.js:382 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:430 +#: templates/js/translated/part.js:434 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:431 +#: templates/js/translated/part.js:435 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:445 +#: templates/js/translated/part.js:449 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:447 +#: templates/js/translated/part.js:451 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:448 +#: templates/js/translated/part.js:452 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:449 +#: templates/js/translated/part.js:453 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:456 +#: templates/js/translated/part.js:460 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:492 +#: templates/js/translated/part.js:496 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:494 +#: templates/js/translated/part.js:498 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:499 +#: templates/js/translated/part.js:503 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:501 +#: templates/js/translated/part.js:505 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:518 +#: templates/js/translated/part.js:522 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:528 +#: templates/js/translated/part.js:532 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:531 +#: templates/js/translated/part.js:535 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:556 +#: templates/js/translated/part.js:560 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:582 templates/js/translated/part.js:1466 +#: templates/js/translated/part.js:586 templates/js/translated/part.js:1470 #: templates/js/translated/table_filters.js:468 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:592 templates/js/translated/part.js:1478 +#: templates/js/translated/part.js:596 templates/js/translated/part.js:1482 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:626 templates/js/translated/part.js:711 +#: templates/js/translated/part.js:630 templates/js/translated/part.js:715 msgid "Trackable part" msgstr "可追溯商品" -#: templates/js/translated/part.js:630 templates/js/translated/part.js:715 +#: templates/js/translated/part.js:634 templates/js/translated/part.js:719 msgid "Virtual part" msgstr "虚拟商品" -#: templates/js/translated/part.js:642 +#: templates/js/translated/part.js:646 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:646 +#: templates/js/translated/part.js:650 msgid "Salable part" msgstr "可销售商品" -#: templates/js/translated/part.js:774 +#: templates/js/translated/part.js:778 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1162 +#: templates/js/translated/part.js:1166 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1186 +#: templates/js/translated/part.js:1190 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:1253 templates/js/translated/part.js:1549 +#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1553 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:1292 +#: templates/js/translated/part.js:1296 msgid "Not available" msgstr "" -#: templates/js/translated/part.js:1443 +#: templates/js/translated/part.js:1447 msgid "No category" msgstr "没有分类" -#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816 -#: templates/js/translated/stock.js:2343 +#: templates/js/translated/part.js:1577 templates/js/translated/part.js:1820 +#: templates/js/translated/stock.js:2347 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:1589 +#: templates/js/translated/part.js:1593 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:1655 +#: templates/js/translated/part.js:1659 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:1660 +#: templates/js/translated/part.js:1664 msgid "Set Part Category" msgstr "设置商品类别" -#: templates/js/translated/part.js:1665 +#: templates/js/translated/part.js:1669 msgid "Select Part Category" msgstr "" -#: templates/js/translated/part.js:1678 +#: templates/js/translated/part.js:1682 msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2362 +#: templates/js/translated/part.js:1839 templates/js/translated/stock.js:2366 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:1914 +#: templates/js/translated/part.js:1918 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:1925 +#: templates/js/translated/part.js:1934 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:1983 +#: templates/js/translated/part.js:1992 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2034 templates/js/translated/stock.js:1295 +#: templates/js/translated/part.js:2043 templates/js/translated/stock.js:1299 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:2035 templates/js/translated/stock.js:1296 -#: templates/js/translated/stock.js:1556 +#: templates/js/translated/part.js:2044 templates/js/translated/stock.js:1300 +#: templates/js/translated/stock.js:1560 msgid "Delete test result" msgstr "" -#: templates/js/translated/part.js:2041 +#: templates/js/translated/part.js:2050 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2063 +#: templates/js/translated/part.js:2072 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2077 +#: templates/js/translated/part.js:2086 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2102 +#: templates/js/translated/part.js:2111 #, python-brace-format msgid "No ${human_name} information found" msgstr "" -#: templates/js/translated/part.js:2159 +#: templates/js/translated/part.js:2168 #, python-brace-format msgid "Edit ${human_name}" msgstr "" -#: templates/js/translated/part.js:2160 +#: templates/js/translated/part.js:2169 #, python-brace-format msgid "Delete ${human_name}" msgstr "" -#: templates/js/translated/part.js:2274 +#: templates/js/translated/part.js:2283 msgid "Current Stock" msgstr "" -#: templates/js/translated/part.js:2307 +#: templates/js/translated/part.js:2316 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2333 +#: templates/js/translated/part.js:2342 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2403 +#: templates/js/translated/part.js:2412 msgid "Single Price" msgstr "" -#: templates/js/translated/part.js:2422 +#: templates/js/translated/part.js:2431 msgid "Single Price Difference" msgstr "" @@ -9511,376 +9555,376 @@ msgstr "" msgid "Parent stock location" msgstr "" -#: templates/js/translated/stock.js:140 +#: templates/js/translated/stock.js:144 msgid "Edit Stock Location" msgstr "编辑仓储地点" -#: templates/js/translated/stock.js:155 +#: templates/js/translated/stock.js:159 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:169 +#: templates/js/translated/stock.js:173 msgid "Are you sure you want to delete this stock location?" msgstr "确实要删除此仓储地点吗?" -#: templates/js/translated/stock.js:171 +#: templates/js/translated/stock.js:175 msgid "Any child locations will be moved to the parent of this location" msgstr "" -#: templates/js/translated/stock.js:172 +#: templates/js/translated/stock.js:176 msgid "Any stock items in this location will be moved to the parent of this location" msgstr "" -#: templates/js/translated/stock.js:178 +#: templates/js/translated/stock.js:182 msgid "Delete Stock Location" msgstr "删除仓储地点" -#: templates/js/translated/stock.js:223 +#: templates/js/translated/stock.js:227 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:262 +#: templates/js/translated/stock.js:266 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:268 +#: templates/js/translated/stock.js:272 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:333 +#: templates/js/translated/stock.js:337 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:353 +#: templates/js/translated/stock.js:357 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:369 +#: templates/js/translated/stock.js:373 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:374 +#: templates/js/translated/stock.js:378 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:395 +#: templates/js/translated/stock.js:399 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:445 +#: templates/js/translated/stock.js:449 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:458 +#: templates/js/translated/stock.js:462 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:483 +#: templates/js/translated/stock.js:487 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:487 templates/js/translated/stock.js:488 +#: templates/js/translated/stock.js:491 templates/js/translated/stock.js:492 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:504 +#: templates/js/translated/stock.js:508 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:524 +#: templates/js/translated/stock.js:528 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:533 +#: templates/js/translated/stock.js:537 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:656 +#: templates/js/translated/stock.js:660 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:657 +#: templates/js/translated/stock.js:661 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:734 +#: templates/js/translated/stock.js:738 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:735 +#: templates/js/translated/stock.js:739 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:737 +#: templates/js/translated/stock.js:741 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:738 +#: templates/js/translated/stock.js:742 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:824 +#: templates/js/translated/stock.js:828 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:825 +#: templates/js/translated/stock.js:829 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:920 +#: templates/js/translated/stock.js:924 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:921 +#: templates/js/translated/stock.js:925 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:927 +#: templates/js/translated/stock.js:931 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:928 +#: templates/js/translated/stock.js:932 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:932 +#: templates/js/translated/stock.js:936 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:933 +#: templates/js/translated/stock.js:937 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:937 +#: templates/js/translated/stock.js:941 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:938 users/models.py:216 +#: templates/js/translated/stock.js:942 users/models.py:216 msgid "Add" msgstr "添加" -#: templates/js/translated/stock.js:942 +#: templates/js/translated/stock.js:946 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1035 +#: templates/js/translated/stock.js:1039 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1035 +#: templates/js/translated/stock.js:1039 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1075 +#: templates/js/translated/stock.js:1079 msgid "You must select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1098 +#: templates/js/translated/stock.js:1102 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1234 +#: templates/js/translated/stock.js:1238 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1236 +#: templates/js/translated/stock.js:1240 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1241 +#: templates/js/translated/stock.js:1245 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1288 +#: templates/js/translated/stock.js:1292 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1291 +#: templates/js/translated/stock.js:1295 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1317 +#: templates/js/translated/stock.js:1321 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1374 +#: templates/js/translated/stock.js:1378 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1539 +#: templates/js/translated/stock.js:1543 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1561 +#: templates/js/translated/stock.js:1565 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1590 +#: templates/js/translated/stock.js:1594 msgid "In production" msgstr "正在生产" -#: templates/js/translated/stock.js:1594 +#: templates/js/translated/stock.js:1598 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1602 +#: templates/js/translated/stock.js:1606 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1608 +#: templates/js/translated/stock.js:1612 msgid "No stock location set" msgstr "未设置仓储地点" -#: templates/js/translated/stock.js:1775 +#: templates/js/translated/stock.js:1779 msgid "Stock item is in production" msgstr "库存品正在生产" -#: templates/js/translated/stock.js:1780 +#: templates/js/translated/stock.js:1784 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:1783 +#: templates/js/translated/stock.js:1787 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:1786 +#: templates/js/translated/stock.js:1790 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:1788 +#: templates/js/translated/stock.js:1792 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:1790 +#: templates/js/translated/stock.js:1794 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:1793 +#: templates/js/translated/stock.js:1797 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:1797 +#: templates/js/translated/stock.js:1801 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:1799 +#: templates/js/translated/stock.js:1803 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:1806 +#: templates/js/translated/stock.js:1810 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:1808 +#: templates/js/translated/stock.js:1812 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:1810 +#: templates/js/translated/stock.js:1814 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:1814 +#: templates/js/translated/stock.js:1818 #: templates/js/translated/table_filters.js:196 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:1865 +#: templates/js/translated/stock.js:1869 msgid "Stocktake" msgstr "" -#: templates/js/translated/stock.js:1944 +#: templates/js/translated/stock.js:1948 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:1982 +#: templates/js/translated/stock.js:1986 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2155 +#: templates/js/translated/stock.js:2159 msgid "Set Stock Status" msgstr "" -#: templates/js/translated/stock.js:2169 +#: templates/js/translated/stock.js:2173 msgid "Select Status Code" msgstr "" -#: templates/js/translated/stock.js:2170 +#: templates/js/translated/stock.js:2174 msgid "Status code must be selected" msgstr "" -#: templates/js/translated/stock.js:2400 +#: templates/js/translated/stock.js:2404 msgid "Load Subloactions" msgstr "" -#: templates/js/translated/stock.js:2484 +#: templates/js/translated/stock.js:2493 msgid "Details" msgstr "详情" -#: templates/js/translated/stock.js:2500 +#: templates/js/translated/stock.js:2509 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2522 +#: templates/js/translated/stock.js:2531 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2541 +#: templates/js/translated/stock.js:2550 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2560 +#: templates/js/translated/stock.js:2569 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2578 +#: templates/js/translated/stock.js:2587 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:2601 +#: templates/js/translated/stock.js:2610 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:2609 +#: templates/js/translated/stock.js:2618 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:2685 +#: templates/js/translated/stock.js:2694 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:2736 templates/js/translated/stock.js:2772 +#: templates/js/translated/stock.js:2745 templates/js/translated/stock.js:2781 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:2785 +#: templates/js/translated/stock.js:2794 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:2806 +#: templates/js/translated/stock.js:2815 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:2807 +#: templates/js/translated/stock.js:2816 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:2809 +#: templates/js/translated/stock.js:2818 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:2810 +#: templates/js/translated/stock.js:2819 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:2811 +#: templates/js/translated/stock.js:2820 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:2812 +#: templates/js/translated/stock.js:2821 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:2825 +#: templates/js/translated/stock.js:2834 msgid "Select part to install" msgstr "" From 32b11ec5afa9d9cccf1d52db656a20aa888420e5 Mon Sep 17 00:00:00 2001 From: Oliver Date: Thu, 18 Aug 2022 11:36:02 +1000 Subject: [PATCH 26/60] Scheduling improvements (#3564) * Handle case where initial API call fails * Error if scheduling fails to retrieve * Visual improvements for scheduling graph: - Fixes for vertical scales - Add "minimum stock level" line * Refactor / improve query for list of BOM items a part can exist in * Remove stock column from "substitute part" dialog - Stock quantity no longer available in this serailizer * Add a button to reload part scheduling information * Add extra information to part scheduling API - Include "speculative" quantity drawdown for build orders * Add table of scheduling data * Improved chart display - Adds "minimum" and "maximum" expected values - Adds table of scheduling information * Bump API version * Improve table rendering * Improve axis scaling * Add ability to dynamically refresh schedling data * JS linting * JS fix --- InvenTree/InvenTree/api_version.py | 5 +- InvenTree/part/api.py | 123 ++++++---- InvenTree/part/models.py | 47 ++++ InvenTree/part/templates/part/detail.html | 12 +- .../part/templates/part/part_scheduling.html | 12 + InvenTree/templates/js/translated/bom.js | 2 - InvenTree/templates/js/translated/part.js | 230 ++++++++++++++++-- 7 files changed, 355 insertions(+), 76 deletions(-) diff --git a/InvenTree/InvenTree/api_version.py b/InvenTree/InvenTree/api_version.py index f68a04cfa3..aad384331d 100644 --- a/InvenTree/InvenTree/api_version.py +++ b/InvenTree/InvenTree/api_version.py @@ -2,11 +2,14 @@ # InvenTree API version -INVENTREE_API_VERSION = 70 +INVENTREE_API_VERSION = 71 """ Increment this API version number whenever there is a significant change to the API that any clients need to know about +v71 -> 2022-08-18 : https://github.com/inventree/InvenTree/pull/3564 + - Updates to the "part scheduling" API endpoint + v70 -> 2022-08-02 : https://github.com/inventree/InvenTree/pull/3451 - Adds a 'depth' parameter to the PartCategory list API - Adds a 'depth' parameter to the StockLocation list API diff --git a/InvenTree/part/api.py b/InvenTree/part/api.py index 1d5b10ac61..522f09e10a 100644 --- a/InvenTree/part/api.py +++ b/InvenTree/part/api.py @@ -1,6 +1,6 @@ """Provides a JSON API for the Part app.""" -import datetime +import functools from decimal import Decimal, InvalidOperation from django.db import transaction @@ -474,27 +474,27 @@ class PartScheduling(RetrieveAPI): def retrieve(self, request, *args, **kwargs): """Return scheduling information for the referenced Part instance""" - today = datetime.datetime.now().date() part = self.get_object() schedule = [] - def add_schedule_entry(date, quantity, title, label, url): + def add_schedule_entry(date, quantity, title, label, url, speculative_quantity=0): """Check if a scheduled entry should be added: - date must be non-null - date cannot be in the "past" - quantity must not be zero """ - if date and date >= today and quantity != 0: - schedule.append({ - 'date': date, - 'quantity': quantity, - 'title': title, - 'label': label, - 'url': url, - }) + + schedule.append({ + 'date': date, + 'quantity': quantity, + 'speculative_quantity': speculative_quantity, + 'title': title, + 'label': label, + 'url': url, + }) # Add purchase order (incoming stock) information po_lines = order.models.PurchaseOrderLineItem.objects.filter( @@ -571,23 +571,77 @@ class PartScheduling(RetrieveAPI): and just looking at what stock items the user has actually allocated against the Build. """ - build_allocations = BuildItem.objects.filter( - stock_item__part=part, - build__status__in=BuildStatus.ACTIVE_CODES, - ) + # Grab a list of BomItem objects that this part might be used in + bom_items = BomItem.objects.filter(part.get_used_in_bom_item_filter()) - for allocation in build_allocations: + for bom_item in bom_items: + # Find a list of active builds for this BomItem - add_schedule_entry( - allocation.build.target_date, - -allocation.quantity, - _('Stock required for Build Order'), - str(allocation.build), - allocation.build.get_absolute_url(), + builds = Build.objects.filter( + status__in=BuildStatus.ACTIVE_CODES, + part=bom_item.part, ) + for build in builds: + + if bom_item.sub_part.trackable: + # Trackable parts are allocated against the outputs + required_quantity = build.remaining * bom_item.quantity + else: + # Non-trackable parts are allocated against the build itself + required_quantity = build.quantity * bom_item.quantity + + # Grab all allocations against the spefied BomItem + allocations = BuildItem.objects.filter( + bom_item=bom_item, + build=build, + ) + + # Total allocated for *this* part + part_allocated_quantity = 0 + + # Total allocated for *any* part + total_allocated_quantity = 0 + + for allocation in allocations: + total_allocated_quantity += allocation.quantity + + if allocation.stock_item.part == part: + part_allocated_quantity += allocation.quantity + + speculative_quantity = 0 + + # Consider the case where the build order is *not* fully allocated + if required_quantity > total_allocated_quantity: + speculative_quantity = -1 * (required_quantity - total_allocated_quantity) + + add_schedule_entry( + build.target_date, + -part_allocated_quantity, + _('Stock required for Build Order'), + str(build), + build.get_absolute_url(), + speculative_quantity=speculative_quantity + ) + + def compare(entry_1, entry_2): + """Comparison function for sorting entries by date. + + Account for the fact that either date might be None + """ + + date_1 = entry_1['date'] + date_2 = entry_2['date'] + + if date_1 is None: + return -1 + elif date_2 is None: + return 1 + + return -1 if date_1 < date_2 else 1 + # Sort by incrementing date values - schedule = sorted(schedule, key=lambda entry: entry['date']) + schedule = sorted(schedule, key=functools.cmp_to_key(compare)) return Response(schedule) @@ -1746,28 +1800,7 @@ class BomList(ListCreateDestroyAPIView): # Extract the part we are interested in uses_part = Part.objects.get(pk=uses) - # Construct the database query in multiple parts - - # A) Direct specification of sub_part - q_A = Q(sub_part=uses_part) - - # B) BomItem is inherited and points to a "parent" of this part - parents = uses_part.get_ancestors(include_self=False) - - q_B = Q( - inherited=True, - sub_part__in=parents - ) - - # C) Substitution of variant parts - # TODO - - # D) Specification of individual substitutes - # TODO - - q = q_A | q_B - - queryset = queryset.filter(q) + queryset = queryset.filter(uses_part.get_used_in_bom_item_filter()) except (ValueError, Part.DoesNotExist): pass diff --git a/InvenTree/part/models.py b/InvenTree/part/models.py index 95cf3f4405..6048be70e1 100644 --- a/InvenTree/part/models.py +++ b/InvenTree/part/models.py @@ -1436,6 +1436,53 @@ class Part(MetadataMixin, MPTTModel): return parts + def get_used_in_bom_item_filter(self, include_inherited=True, include_variants=True, include_substitutes=True): + """Return a BomItem queryset which returns all BomItem instances which refer to *this* part. + + As the BOM allocation logic is somewhat complicted, there are some considerations: + + A) This part may be directly specified in a BomItem instance + B) This part may be a *variant* of a part which is directly specified in a BomItem instance + C) This part may be a *substitute* for a part which is directly specifed in a BomItem instance + + So we construct a query for each case, and combine them... + """ + + # Cache all *parent* parts + parents = self.get_ancestors(include_self=False) + + # Case A: This part is directly specified in a BomItem (we always use this case) + query = Q( + sub_part=self, + inherited=False, + ) + + if include_inherited: + query |= Q( + sub_part__in=parents, + inherited=True + ) + + if include_variants: + # Case B: This part is a *variant* of a part which is specified in a BomItem which allows variants + query |= Q( + allow_variants=True, + sub_part__in=parents, + inherited=False, + ) + + # Case C: This part is a *substitute* of a part which is directly specified in a BomItem + if include_substitutes: + + # Grab a list of BomItem substitutes which reference this part + substitutes = self.substitute_items.all() + + query |= Q( + pk__in=[substitute.bom_item.pk for substitute in substitutes], + ) + + return query + def get_used_in_filter(self, include_inherited=True): """Return a query filter for all parts that this part is used in. diff --git a/InvenTree/part/templates/part/detail.html b/InvenTree/part/templates/part/detail.html index 4ac5d28d08..ab238a0859 100644 --- a/InvenTree/part/templates/part/detail.html +++ b/InvenTree/part/templates/part/detail.html @@ -40,6 +40,11 @@

{% trans "Part Scheduling" %}

{% include "spacer.html" %} +
+ +
@@ -427,7 +432,12 @@ // Load the "scheduling" tab onPanelLoad('scheduling', function() { - loadPartSchedulingChart('part-schedule-chart', {{ part.pk }}); + var chart = loadPartSchedulingChart('part-schedule-chart', {{ part.pk }}); + + $('#btn-schedule-reload').click(function() { + chart.destroy(); + loadPartSchedulingChart('part-schedule-chart', {{ part.pk }}); + }); }); // Load the "suppliers" tab diff --git a/InvenTree/part/templates/part/part_scheduling.html b/InvenTree/part/templates/part/part_scheduling.html index 61f49f2d47..f0d4acccc6 100644 --- a/InvenTree/part/templates/part/part_scheduling.html +++ b/InvenTree/part/templates/part/part_scheduling.html @@ -4,3 +4,15 @@
+ + + + + + + + + + + +
{% trans "Link" %}{% trans "Description" %}{% trans "Date" %}{% trans "Scheduled Quantity" %}
diff --git a/InvenTree/templates/js/translated/bom.js b/InvenTree/templates/js/translated/bom.js index dad17074dd..6193b5a127 100644 --- a/InvenTree/templates/js/translated/bom.js +++ b/InvenTree/templates/js/translated/bom.js @@ -519,7 +519,6 @@ function bomSubstitutesDialog(bom_item_id, substitutes, options={}) { ${part.description} - ${part.stock} ${buttons} `; @@ -552,7 +551,6 @@ function bomSubstitutesDialog(bom_item_id, substitutes, options={}) { {% trans "Part" %} {% trans "Description" %} - {% trans "Stock" %} diff --git a/InvenTree/templates/js/translated/part.js b/InvenTree/templates/js/translated/part.js index cbb7c77c28..4b204df45b 100644 --- a/InvenTree/templates/js/translated/part.js +++ b/InvenTree/templates/js/translated/part.js @@ -2257,6 +2257,14 @@ function initPriceBreakSet(table, options) { } +/* + * Load a chart which displays projected scheduling information for a particular part. + * This takes into account: + * - Current stock levels / availability + * - Upcoming / scheduled build orders + * - Upcoming / scheduled sales orders + * - Upcoming / scheduled purchase orders + */ function loadPartSchedulingChart(canvas_id, part_id) { var part_info = null; @@ -2269,16 +2277,30 @@ function loadPartSchedulingChart(canvas_id, part_id) { } }); + if (!part_info) { + console.error(`Error loading part information for part ${part_id}`); + return; + } + var today = moment(); - // Create an initial entry, using the available quantity - var stock_schedule = [ - { - date: today, - delta: 0, - label: '{% trans "Current Stock" %}', - } - ]; + /* Construct initial datasets for: + * - Scheduled quantity + * - Minimum speculative quantity + * - Maximum speculative quantity + */ + + var quantity_scheduled = [{ + date: today, + delta: 0, + }]; + + // We will construct the HTML table as we go + var table_html = ''; + + // The "known" initial stock quantity + var initial_stock_min = part_info.in_stock; + var initial_stock_max = part_info.in_stock; /* Request scheduling information for the part. * Note that this information has already been 'curated' by the server, @@ -2290,28 +2312,85 @@ function loadPartSchedulingChart(canvas_id, part_id) { { async: false, success: function(response) { - response.forEach(function(entry) { - stock_schedule.push({ + + for (var idx = 0; idx < response.length; idx++) { + + var entry = response[idx]; + var date = entry.date != null ? moment(entry.date) : null; + + var date_string = entry.date; + + if (date == null) { + date_string = '{% trans "No date specified" %}'; + date_string += ``; + } else if (date < today) { + date_string += ``; + } + + var quantity_string = entry.quantity + entry.speculative_quantity; + + if (entry.speculative_quantity != 0) { + quantity_string += ``; + } + + // Add an entry to the scheduling table + table_html += ` + + ${entry.label} + ${entry.title} + ${date_string} + ${quantity_string} + + `; + + // If the date is unknown or in the past, we cannot make use of this information + // So we update the "speculative quantity" + if (date == null || date < today) { + if (entry.quantity < 0) initial_stock_min += entry.quantity; + if (entry.speculative_quantity < 0) initial_stock_min += entry.speculative_quantity; + + if (entry.quantity > 0) initial_stock_max += entry.quantity; + if (entry.speculative_quantity > 0) initial_stock_max += entry.speculative_quantity; + + // We do not add this entry to the graph + continue; + } + + // Add an entry to the scheduled quantity + quantity_scheduled.push({ date: moment(entry.date), delta: entry.quantity, + speculative: entry.speculative_quantity, title: entry.title, label: entry.label, url: entry.url, }); - }); + } + }, + error: function(response) { + console.error(`Error retrieving scheduling information for part ${part_id}`); + was_error = true; } } ); // If no scheduling information is available for the part, // remove the chart and display a message instead - if (stock_schedule.length <= 1) { + if (quantity_scheduled.length <= 1) { var message = `
- {% trans "No scheduling information available for this part" %}.
+ {% trans "No scheduling information available for this part" %}.
`; + if (was_error) { + message = ` +
+ {% trans "Error fetching scheduling information for this part" %}. +
+ `; + } + var canvas_element = $('#part-schedule-chart'); canvas_element.closest('div').html(message); @@ -2319,30 +2398,126 @@ function loadPartSchedulingChart(canvas_id, part_id) { return; } - // Iterate through future "events" to calculate expected quantity + var y_min = 0; + var y_max = 0; + // Iterate through future "events" to calculate expected quantity values var quantity = part_info.in_stock; + var speculative_min = initial_stock_min; + var speculative_max = initial_stock_max; - for (var idx = 0; idx < stock_schedule.length; idx++) { + // Datasets for speculative quantity + var q_spec_min = []; + var q_spec_max = []; - quantity += stock_schedule[idx].delta; + for (var idx = 0; idx < quantity_scheduled.length; idx++) { - stock_schedule[idx].x = stock_schedule[idx].date.format('YYYY-MM-DD'); - stock_schedule[idx].y = quantity; + var speculative = quantity_scheduled[idx].speculative; + var date = quantity_scheduled[idx].date.format('YYYY-MM-DD'); + var delta = quantity_scheduled[idx].delta; + + // Update the running quantity + quantity += delta; + + quantity_scheduled[idx].x = date; + quantity_scheduled[idx].y = quantity; + + // Update minimum "speculative" quantity + speculative_min += delta; + speculative_max += delta; + + if (speculative < 0) { + speculative_min += speculative; + } else if (speculative > 0) { + speculative_max += speculative; + } + + q_spec_min.push({ + x: date, + y: speculative_min, + label: 'label', + title: '', + }); + + q_spec_max.push({ + x: date, + y: speculative_max, + label: 'label', + title: '', + }); + + // Update min / max values + if (quantity < y_min) y_min = quantity; + if (quantity > y_max) y_max = quantity; } var context = document.getElementById(canvas_id); - const data = { - datasets: [{ - label: '{% trans "Scheduled Stock Quantities" %}', - data: stock_schedule, - backgroundColor: 'rgb(220, 160, 80)', - borderWidth: 2, - borderColor: 'rgb(90, 130, 150)' - }], + var data = { + datasets: [ + { + label: '{% trans "Scheduled Stock Quantities" %}', + data: quantity_scheduled, + backgroundColor: 'rgba(160, 80, 220, 0.75)', + borderWidth: 3, + borderColor: 'rgb(160, 80, 220)' + }, + { + label: '{% trans "Minimum Quantity" %}', + data: q_spec_min, + backgroundColor: 'rgba(220, 160, 80, 0.25)', + borderWidth: 2, + borderColor: 'rgba(220, 160, 80, 0.35)', + borderDash: [10, 5], + fill: '-1', + }, + { + label: '{% trans "Maximum Quantity" %}', + data: q_spec_max, + backgroundColor: 'rgba(220, 160, 80, 0.25)', + borderWidth: 2, + borderColor: 'rgba(220, 160, 80, 0.35)', + borderDash: [10, 5], + fill: '-2', + }, + ], }; + if (part_info.minimum_stock) { + // Construct a 'minimum stock' threshold line + var minimum_stock_curve = [ + { + x: today.format(), + y: part_info.minimum_stock, + }, + { + x: quantity_scheduled[quantity_scheduled.length - 1].x, + y: part_info.minimum_stock, + } + ]; + + data.datasets.push({ + data: minimum_stock_curve, + label: '{% trans "Minimum Stock Level" %}', + backgroundColor: 'rgba(250, 50, 50, 0.1)', + borderColor: 'rgba(250, 50, 50, 0.5)', + borderDash: [5, 5], + fill: { + target: { + value: 0, + } + } + }); + } + + // Update the table + $('#part-schedule-table').find('tbody').html(table_html); + + var y_range = y_max - y_min; + + y_max += 0.1 * y_range; + y_min -= 0.1 * y_range; + return new Chart(context, { type: 'scatter', data: data, @@ -2359,7 +2534,8 @@ function loadPartSchedulingChart(canvas_id, part_id) { }, }, y: { - beginAtZero: true, + min: y_min, + max: y_max, } }, plugins: { From b70a0164ae80fe1db608db2f94294b4b8d2e74f3 Mon Sep 17 00:00:00 2001 From: Oliver Date: Thu, 18 Aug 2022 12:44:47 +1000 Subject: [PATCH 27/60] Add ability to quickly duplicate build orders (#3565) * Adds ability to easily duplicate an existing build order * Refactor purchase order editing code --- .../build/templates/build/build_base.html | 11 +++ .../order/templates/order/order_base.html | 26 +---- InvenTree/templates/js/translated/build.js | 34 ++++++- InvenTree/templates/js/translated/order.js | 99 +++++++++++++------ 4 files changed, 117 insertions(+), 53 deletions(-) diff --git a/InvenTree/build/templates/build/build_base.html b/InvenTree/build/templates/build/build_base.html index 8c051d7f67..2f3e339b7d 100644 --- a/InvenTree/build/templates/build/build_base.html +++ b/InvenTree/build/templates/build/build_base.html @@ -55,6 +55,9 @@ src="{% static 'img/blank_image.png' %}" {% if build.is_active %}
  • {% trans "Cancel Build" %}
  • {% endif %} + {% if roles.build.add %} +
  • {% trans "Duplicate Build" %}
  • + {% endif %} {% if build.status == BuildStatus.CANCELLED and roles.build.delete %}
  • {% trans "Delete Build" %} {% endif %} @@ -209,6 +212,7 @@ src="{% static 'img/blank_image.png' %}" {% block js_ready %} + {% if roles.build.change %} $("#build-edit").click(function () { editBuildOrder({{ build.pk }}); }); @@ -230,6 +234,13 @@ src="{% static 'img/blank_image.png' %}" completed: {% if build.remaining == 0 %}true{% else %}false{% endif %}, }); }); + {% endif %} + + {% if roles.build.add %} + $('#build-duplicate').click(function() { + duplicateBuildOrder({{ build.pk }}); + }); + {% endif %} {% if report_enabled %} $('#print-build-report').click(function() { diff --git a/InvenTree/order/templates/order/order_base.html b/InvenTree/order/templates/order/order_base.html index 2d16796bc3..000d4c7751 100644 --- a/InvenTree/order/templates/order/order_base.html +++ b/InvenTree/order/templates/order/order_base.html @@ -219,28 +219,10 @@ $('#print-order-report').click(function() { $("#edit-order").click(function() { - constructForm('{% url "api-po-detail" order.pk %}', { - fields: { - reference: { - icon: 'fa-hashtag', - }, - {% if order.lines.count == 0 and order.status == PurchaseOrderStatus.PENDING %} - supplier: { - }, - {% endif %} - supplier_reference: {}, - description: {}, - target_date: { - icon: 'fa-calendar-alt', - }, - link: { - icon: 'fa-link', - }, - responsible: { - icon: 'fa-user', - }, - }, - title: '{% trans "Edit Purchase Order" %}', + editPurchaseOrder({{ order.pk }}, { + {% if order.lines.count > 0 or order.status != PurchaseOrderStatus.PENDING %} + hide_supplier: true, + {% endif %} reload: true, }); }); diff --git a/InvenTree/templates/js/translated/build.js b/InvenTree/templates/js/translated/build.js index 223427e68e..7b42e3216d 100644 --- a/InvenTree/templates/js/translated/build.js +++ b/InvenTree/templates/js/translated/build.js @@ -23,6 +23,7 @@ cancelBuildOrder, completeBuildOrder, createBuildOutput, + duplicateBuildOrder, editBuildOrder, loadAllocationTable, loadBuildOrderAllocationTable, @@ -75,7 +76,9 @@ function buildFormFields() { }; } - +/* + * Edit an existing BuildOrder via the API + */ function editBuildOrder(pk) { var fields = buildFormFields(); @@ -87,6 +90,10 @@ function editBuildOrder(pk) { }); } + +/* + * Create a new build order via an API form + */ function newBuildOrder(options={}) { /* Launch modal form to create a new BuildOrder. */ @@ -113,8 +120,13 @@ function newBuildOrder(options={}) { fields.sales_order.value = options.sales_order; } + if (options.data) { + delete options.data.pk; + } + constructForm(`/api/build/`, { fields: fields, + data: options.data, follow: true, method: 'POST', title: '{% trans "Create Build Order" %}', @@ -123,6 +135,26 @@ function newBuildOrder(options={}) { } +/* + * Duplicate an existing build order. + */ +function duplicateBuildOrder(build_id, options={}) { + + inventreeGet(`/api/build/${build_id}/`, {}, { + success: function(data) { + // Clear out data we do not want to be duplicated + delete data['pk']; + delete data['issued_by']; + delete data['reference']; + + options.data = data; + newBuildOrder(options); + } + }); +} + + + /* Construct a form to cancel a build order */ function cancelBuildOrder(build_id, options={}) { diff --git a/InvenTree/templates/js/translated/order.js b/InvenTree/templates/js/translated/order.js index 221c0c1d19..fd9421a6e8 100644 --- a/InvenTree/templates/js/translated/order.js +++ b/InvenTree/templates/js/translated/order.js @@ -30,6 +30,7 @@ createPurchaseOrderLineItem, createSalesOrder, createSalesOrderShipment, + editPurchaseOrder, editPurchaseOrderLineItem, exportOrder, issuePurchaseOrder, @@ -493,41 +494,79 @@ function createSalesOrder(options={}) { }); } + +/* + * Construct a set of fields for a purchase order form + */ +function purchaseOrderFields(options={}) { + + var fields = { + reference: { + icon: 'fa-hashtag', + }, + supplier: { + icon: 'fa-building', + secondary: { + title: '{% trans "Add Supplier" %}', + fields: function() { + var fields = companyFormFields(); + + fields.is_supplier.value = true; + + return fields; + } + } + }, + description: {}, + supplier_reference: {}, + target_date: { + icon: 'fa-calendar-alt', + }, + link: { + icon: 'fa-link', + }, + responsible: { + icon: 'fa-user', + }, + }; + + if (options.supplier) { + fields.supplier.value = options.supplier; + } + + if (options.hide_supplier) { + fields.supplier.hidden = true; + } + + return fields; +} + + +/* + * Edit an existing PurchaseOrder + */ +function editPurchaseOrder(pk, options={}) { + + var fields = purchaseOrderFields(options); + + constructForm(`/api/order/po/${pk}/`, { + fields: fields, + title: '{% trans "Edit Purchase Order" %}', + onSuccess: function(response) { + handleFormSuccess(response, options); + } + }); +} + + // Create a new PurchaseOrder function createPurchaseOrder(options={}) { + var fields = purchaseOrderFields(options); + constructForm('{% url "api-po-list" %}', { method: 'POST', - fields: { - reference: { - icon: 'fa-hashtag', - }, - supplier: { - icon: 'fa-building', - value: options.supplier, - secondary: { - title: '{% trans "Add Supplier" %}', - fields: function() { - var fields = companyFormFields(); - - fields.is_supplier.value = true; - - return fields; - } - } - }, - description: {}, - supplier_reference: {}, - target_date: { - icon: 'fa-calendar-alt', - }, - link: { - icon: 'fa-link', - }, - responsible: { - icon: 'fa-user', - } - }, + fields: fields, onSuccess: function(data) { if (options.onSuccess) { From 7384a85bdb1023a6f66353d6c72ab85c3a357f7f Mon Sep 17 00:00:00 2001 From: Oliver Date: Thu, 18 Aug 2022 15:12:59 +1000 Subject: [PATCH 28/60] Fix bug in recent part scheduling table (#3566) * Gotta make a variable to reference a variable * Fix scaling issues * Hey, it's only a suggestion * Fix quantity display in build order table * Logic fix for destroying / refreshing chart * Better handling of edge cases * Fix issue with "undefined" labels * Speculative should be a question mark --- InvenTree/part/templates/part/detail.html | 8 ++- InvenTree/templates/js/translated/build.js | 3 +- InvenTree/templates/js/translated/part.js | 67 ++++++++++++++++++---- 3 files changed, 63 insertions(+), 15 deletions(-) diff --git a/InvenTree/part/templates/part/detail.html b/InvenTree/part/templates/part/detail.html index ab238a0859..86ad10f35e 100644 --- a/InvenTree/part/templates/part/detail.html +++ b/InvenTree/part/templates/part/detail.html @@ -435,8 +435,12 @@ var chart = loadPartSchedulingChart('part-schedule-chart', {{ part.pk }}); $('#btn-schedule-reload').click(function() { - chart.destroy(); - loadPartSchedulingChart('part-schedule-chart', {{ part.pk }}); + + if (chart != null) { + chart.destroy(); + } + + chart = loadPartSchedulingChart('part-schedule-chart', {{ part.pk }}); }); }); diff --git a/InvenTree/templates/js/translated/build.js b/InvenTree/templates/js/translated/build.js index 7b42e3216d..f5b16c87c6 100644 --- a/InvenTree/templates/js/translated/build.js +++ b/InvenTree/templates/js/translated/build.js @@ -1831,6 +1831,7 @@ function loadBuildOutputAllocationTable(buildInfo, output, options={}) { var available_stock = availableQuantity(row); var required = requiredQuantity(row); + var allocated = allocatedQuantity(row); var text = ''; @@ -1838,7 +1839,7 @@ function loadBuildOutputAllocationTable(buildInfo, output, options={}) { text += `${available_stock}`; } - if (available_stock < required) { + if (available_stock < (required - allocated)) { text += ``; } else { text += ``; diff --git a/InvenTree/templates/js/translated/part.js b/InvenTree/templates/js/translated/part.js index 4b204df45b..5a3799e0b2 100644 --- a/InvenTree/templates/js/translated/part.js +++ b/InvenTree/templates/js/translated/part.js @@ -2269,6 +2269,8 @@ function loadPartSchedulingChart(canvas_id, part_id) { var part_info = null; + var was_error = false; + // First, grab updated data for the particular part inventreeGet(`/api/part/${part_id}/`, {}, { async: false, @@ -2302,6 +2304,8 @@ function loadPartSchedulingChart(canvas_id, part_id) { var initial_stock_min = part_info.in_stock; var initial_stock_max = part_info.in_stock; + var n_entries = 0; + /* Request scheduling information for the part. * Note that this information has already been 'curated' by the server, * and arranged in increasing chronological order @@ -2313,6 +2317,8 @@ function loadPartSchedulingChart(canvas_id, part_id) { async: false, success: function(response) { + n_entries = response.length; + for (var idx = 0; idx < response.length; idx++) { var entry = response[idx]; @@ -2330,7 +2336,7 @@ function loadPartSchedulingChart(canvas_id, part_id) { var quantity_string = entry.quantity + entry.speculative_quantity; if (entry.speculative_quantity != 0) { - quantity_string += ``; + quantity_string += ``; } // Add an entry to the scheduling table @@ -2376,7 +2382,7 @@ function loadPartSchedulingChart(canvas_id, part_id) { // If no scheduling information is available for the part, // remove the chart and display a message instead - if (quantity_scheduled.length <= 1) { + if (n_entries < 1) { var message = `
    @@ -2395,9 +2401,13 @@ function loadPartSchedulingChart(canvas_id, part_id) { canvas_element.closest('div').html(message); + $('#part-schedule-table').hide(); + return; } + $('#part-schedule-table').show(); + var y_min = 0; var y_max = 0; @@ -2435,22 +2445,44 @@ function loadPartSchedulingChart(canvas_id, part_id) { q_spec_min.push({ x: date, y: speculative_min, - label: 'label', + label: '', title: '', }); q_spec_max.push({ x: date, y: speculative_max, - label: 'label', + label: '', title: '', }); // Update min / max values if (quantity < y_min) y_min = quantity; if (quantity > y_max) y_max = quantity; + + if (speculative_min < y_min) y_min = speculative_min; + if (speculative_max > y_max) y_max = speculative_max; } + // Add one extra data point at the end + var n = quantity_scheduled.length; + var final_date = quantity_scheduled[n - 1].date.add(1, 'd').format('YYYY-MM-DD'); + + quantity_scheduled.push({ + x: final_date, + y: quantity_scheduled[n - 1].y, + }); + + q_spec_min.push({ + x: final_date, + y: q_spec_min[n - 1].y, + }); + + q_spec_max.push({ + x: final_date, + y: q_spec_max[n - 1].y, + }); + var context = document.getElementById(canvas_id); var data = { @@ -2487,7 +2519,7 @@ function loadPartSchedulingChart(canvas_id, part_id) { // Construct a 'minimum stock' threshold line var minimum_stock_curve = [ { - x: today.format(), + x: quantity_scheduled[0].x, y: part_info.minimum_stock, }, { @@ -2513,11 +2545,21 @@ function loadPartSchedulingChart(canvas_id, part_id) { // Update the table $('#part-schedule-table').find('tbody').html(table_html); + if (y_max < part_info.minimum_stock) { + y_max = part_info.minimum_stock; + } + var y_range = y_max - y_min; y_max += 0.1 * y_range; y_min -= 0.1 * y_range; + // Prevent errors if y-scale is weird + if (y_max == y_min) { + y_min -= 1; + y_max += 1; + } + return new Chart(context, { type: 'scatter', data: data, @@ -2527,30 +2569,31 @@ function loadPartSchedulingChart(canvas_id, part_id) { scales: { x: { type: 'time', - min: today.format(), + suggestedMin: today.format(), + suggestedMax: quantity_scheduled[quantity_scheduled.length - 1].x, position: 'bottom', time: { - unit: 'day', + minUnit: 'day', }, }, y: { - min: y_min, - max: y_max, + suggestedMin: y_min, + suggestedMax: y_max, } }, plugins: { tooltip: { callbacks: { label: function(item) { - return item.raw.label; + return item.raw.label || ''; }, beforeLabel: function(item) { - return item.raw.title; + return item.raw.title || ''; }, afterLabel: function(item) { var delta = item.raw.delta; - if (delta == 0) { + if (delta == null || delta == 0) { delta = ''; } else { delta = ` (${item.raw.delta > 0 ? '+' : ''}${item.raw.delta})`; From efafa3960bac1b70672b1f4791df6e99e5995012 Mon Sep 17 00:00:00 2001 From: wolflu05 <76838159+wolflu05@users.noreply.github.com> Date: Thu, 18 Aug 2022 23:56:03 +0200 Subject: [PATCH 29/60] fix: invalid chas in cache key (#3574) --- InvenTree/common/models.py | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/InvenTree/common/models.py b/InvenTree/common/models.py index aec2c553f1..e1383dc74d 100644 --- a/InvenTree/common/models.py +++ b/InvenTree/common/models.py @@ -131,7 +131,7 @@ class BaseInvenTreeSetting(models.Model): for k, v in kwargs.items(): key += f"_{k}:{v}" - return key + return key.replace(" ", "") @classmethod def allValues(cls, user=None, exclude_hidden=False): From 868697392f75748921c1385fa3419efbe099136c Mon Sep 17 00:00:00 2001 From: Oliver Date: Fri, 19 Aug 2022 08:39:54 +1000 Subject: [PATCH 30/60] Include variant stock in part table (#3573) --- InvenTree/templates/js/translated/part.js | 18 ++++++++++++++---- 1 file changed, 14 insertions(+), 4 deletions(-) diff --git a/InvenTree/templates/js/translated/part.js b/InvenTree/templates/js/translated/part.js index 5a3799e0b2..7171e6c7f9 100644 --- a/InvenTree/templates/js/translated/part.js +++ b/InvenTree/templates/js/translated/part.js @@ -1463,18 +1463,24 @@ function loadPartTable(table, url, options={}) { var text = ''; + var total_stock = row.in_stock; + + if (row.variant_stock) { + total_stock += row.variant_stock; + } + if (row.unallocated_stock != row.in_stock) { - text = `${row.unallocated_stock} / ${row.in_stock}`; + text = `${row.unallocated_stock} / ${total_stock}`; } else { - text = `${row.in_stock}`; + text = `${total_stock}`; } // Construct extra informational badges var badges = ''; - if (row.in_stock == 0) { + if (total_stock == 0) { badges += ``; - } else if (row.in_stock < row.minimum_stock) { + } else if (total_stock < row.minimum_stock) { badges += ``; } @@ -1492,6 +1498,10 @@ function loadPartTable(table, url, options={}) { ); } + if (row.variant_stock && row.variant_stock > 0) { + badges += ``; + } + text = renderLink(text, `/part/${row.pk}/?display=part-stock`); text += badges; From 1ec9795edef9eac56ad112965b3969fde25fe091 Mon Sep 17 00:00:00 2001 From: Oliver Date: Fri, 19 Aug 2022 11:34:37 +1000 Subject: [PATCH 31/60] Adds option for duplicating an existing purchase order (#3567) * Adds option for duplicating an existing purchase order - Copy line items across * Update API version * JS linting * Adds option for duplication of extra lines * Decimal point rounding fix * Unit tests for PO duplication via the API --- InvenTree/InvenTree/api_version.py | 5 +- InvenTree/order/api.py | 47 +++++++++++-- .../order/templates/order/order_base.html | 15 ++++ InvenTree/order/test_api.py | 58 ++++++++++++++++ InvenTree/templates/js/translated/bom.js | 2 +- InvenTree/templates/js/translated/order.js | 69 ++++++++++++++++++- 6 files changed, 189 insertions(+), 7 deletions(-) diff --git a/InvenTree/InvenTree/api_version.py b/InvenTree/InvenTree/api_version.py index aad384331d..9a3b1cef2f 100644 --- a/InvenTree/InvenTree/api_version.py +++ b/InvenTree/InvenTree/api_version.py @@ -2,11 +2,14 @@ # InvenTree API version -INVENTREE_API_VERSION = 71 +INVENTREE_API_VERSION = 72 """ Increment this API version number whenever there is a significant change to the API that any clients need to know about +v72 -> 2022-08-18 : https://github.com/inventree/InvenTree/pull/3567 + - Allow PurchaseOrder to be duplicated via the API + v71 -> 2022-08-18 : https://github.com/inventree/InvenTree/pull/3564 - Updates to the "part scheduling" API endpoint diff --git a/InvenTree/order/api.py b/InvenTree/order/api.py index 72a47e113a..0a625a89c3 100644 --- a/InvenTree/order/api.py +++ b/InvenTree/order/api.py @@ -1,10 +1,13 @@ """JSON API for the Order app.""" +from django.db import transaction from django.db.models import F, Q from django.urls import include, path, re_path +from django.utils.translation import gettext_lazy as _ from django_filters import rest_framework as rest_filters from rest_framework import filters, status +from rest_framework.exceptions import ValidationError from rest_framework.response import Response import order.models as models @@ -116,12 +119,48 @@ class PurchaseOrderList(APIDownloadMixin, ListCreateAPI): def create(self, request, *args, **kwargs): """Save user information on create.""" - serializer = self.get_serializer(data=self.clean_data(request.data)) + + data = self.clean_data(request.data) + + duplicate_order = data.pop('duplicate_order', None) + duplicate_line_items = str2bool(data.pop('duplicate_line_items', False)) + duplicate_extra_lines = str2bool(data.pop('duplicate_extra_lines', False)) + + if duplicate_order is not None: + try: + duplicate_order = models.PurchaseOrder.objects.get(pk=duplicate_order) + except (ValueError, models.PurchaseOrder.DoesNotExist): + raise ValidationError({ + 'duplicate_order': [_('No matching purchase order found')], + }) + + serializer = self.get_serializer(data=data) serializer.is_valid(raise_exception=True) - item = serializer.save() - item.created_by = request.user - item.save() + with transaction.atomic(): + order = serializer.save() + order.created_by = request.user + order.save() + + # Duplicate line items from other order if required + if duplicate_order is not None: + + if duplicate_line_items: + for line in duplicate_order.lines.all(): + # Copy the line across to the new order + line.pk = None + line.order = order + line.received = 0 + + line.save() + + if duplicate_extra_lines: + for line in duplicate_order.extra_lines.all(): + # Copy the line across to the new order + line.pk = None + line.order = order + + line.save() headers = self.get_success_headers(serializer.data) return Response(serializer.data, status=status.HTTP_201_CREATED, headers=headers) diff --git a/InvenTree/order/templates/order/order_base.html b/InvenTree/order/templates/order/order_base.html index 000d4c7751..cbb82640db 100644 --- a/InvenTree/order/templates/order/order_base.html +++ b/InvenTree/order/templates/order/order_base.html @@ -46,6 +46,9 @@ {% if order.can_cancel %}
  • {% trans "Cancel order" %}
  • {% endif %} + {% if roles.purchase_order.add %} +
  • {% trans "Duplicate order" %}
  • + {% endif %}
    {% if order.status == PurchaseOrderStatus.PENDING %} @@ -217,6 +220,8 @@ $('#print-order-report').click(function() { }); {% endif %} +{% if roles.purchase_order.change %} + $("#edit-order").click(function() { editPurchaseOrder({{ order.pk }}, { @@ -275,6 +280,16 @@ $("#cancel-order").click(function() { ); }); +{% endif %} + +{% if roles.purchase_order.add %} +$('#duplicate-order').click(function() { + duplicatePurchaseOrder( + {{ order.pk }}, + ); +}); +{% endif %} + $("#export-order").click(function() { exportOrder('{% url "po-export" order.id %}'); }); diff --git a/InvenTree/order/test_api.py b/InvenTree/order/test_api.py index 7824fcb4a7..3e5f63c72a 100644 --- a/InvenTree/order/test_api.py +++ b/InvenTree/order/test_api.py @@ -225,6 +225,64 @@ class PurchaseOrderTest(OrderTest): expected_code=201 ) + def test_po_duplicate(self): + """Test that we can duplicate a PurchaseOrder via the API""" + + self.assignRole('purchase_order.add') + + po = models.PurchaseOrder.objects.get(pk=1) + + self.assertTrue(po.lines.count() > 0) + + # Add some extra line items to this order + for idx in range(5): + models.PurchaseOrderExtraLine.objects.create( + order=po, + quantity=idx + 10, + reference='some reference', + ) + + data = self.get(reverse('api-po-detail', kwargs={'pk': 1})).data + + del data['pk'] + del data['reference'] + + data['duplicate_order'] = 1 + data['duplicate_line_items'] = True + data['duplicate_extra_lines'] = False + + data['reference'] = 'PO-9999' + + # Duplicate via the API + response = self.post( + reverse('api-po-list'), + data, + expected_code=201 + ) + + # Order is for the same supplier + self.assertEqual(response.data['supplier'], po.supplier.pk) + + po_dup = models.PurchaseOrder.objects.get(pk=response.data['pk']) + + self.assertEqual(po_dup.extra_lines.count(), 0) + self.assertEqual(po_dup.lines.count(), po.lines.count()) + + data['reference'] = 'PO-9998' + data['duplicate_line_items'] = False + data['duplicate_extra_lines'] = True + + response = self.post( + reverse('api-po-list'), + data, + expected_code=201, + ) + + po_dup = models.PurchaseOrder.objects.get(pk=response.data['pk']) + + self.assertEqual(po_dup.extra_lines.count(), po.extra_lines.count()) + self.assertEqual(po_dup.lines.count(), 0) + def test_po_cancel(self): """Test the PurchaseOrderCancel API endpoint.""" po = models.PurchaseOrder.objects.get(pk=1) diff --git a/InvenTree/templates/js/translated/bom.js b/InvenTree/templates/js/translated/bom.js index 6193b5a127..ccee63e30f 100644 --- a/InvenTree/templates/js/translated/bom.js +++ b/InvenTree/templates/js/translated/bom.js @@ -1049,7 +1049,7 @@ function loadBomTable(table, options={}) { available += row.on_order; can_build = available / row.quantity; - text += ``; + text += ``; } return text; diff --git a/InvenTree/templates/js/translated/order.js b/InvenTree/templates/js/translated/order.js index fd9421a6e8..61482acf09 100644 --- a/InvenTree/templates/js/translated/order.js +++ b/InvenTree/templates/js/translated/order.js @@ -30,6 +30,7 @@ createPurchaseOrderLineItem, createSalesOrder, createSalesOrderShipment, + duplicatePurchaseOrder, editPurchaseOrder, editPurchaseOrderLineItem, exportOrder, @@ -538,6 +539,39 @@ function purchaseOrderFields(options={}) { fields.supplier.hidden = true; } + // Add fields for order duplication (only if required) + if (options.duplicate_order) { + fields.duplicate_order = { + value: options.duplicate_order, + group: 'duplicate', + required: 'true', + type: 'related field', + model: 'purchaseorder', + filters: { + supplier_detail: true, + }, + api_url: '{% url "api-po-list" %}', + label: '{% trans "Purchase Order" %}', + help_text: '{% trans "Select purchase order to duplicate" %}', + }; + + fields.duplicate_line_items = { + value: true, + group: 'duplicate', + type: 'boolean', + label: '{% trans "Duplicate Line Items" %}', + help_text: '{% trans "Duplicate all line items from the selected order" %}', + }; + + fields.duplicate_extra_lines = { + value: true, + group: 'duplicate', + type: 'boolean', + label: '{% trans "Duplicate Extra Lines" %}', + help_text: '{% trans "Duplicate extra line items from the selected order" %}', + }; + } + return fields; } @@ -564,9 +598,20 @@ function createPurchaseOrder(options={}) { var fields = purchaseOrderFields(options); + var groups = {}; + + if (options.duplicate_order) { + groups.duplicate = { + title: '{% trans "Duplication Options" %}', + collapsible: false, + }; + }; + constructForm('{% url "api-po-list" %}', { method: 'POST', fields: fields, + groups: groups, + data: options.data, onSuccess: function(data) { if (options.onSuccess) { @@ -576,7 +621,29 @@ function createPurchaseOrder(options={}) { location.href = `/order/purchase-order/${data.pk}/`; } }, - title: '{% trans "Create Purchase Order" %}', + title: options.title || '{% trans "Create Purchase Order" %}', + }); +} + +/* + * Duplicate an existing PurchaseOrder + * Provides user with option to duplicate line items for the order also. + */ +function duplicatePurchaseOrder(order_id, options={}) { + + options.duplicate_order = order_id; + + inventreeGet(`/api/order/po/${order_id}/`, {}, { + success: function(data) { + + // Clear out data we do not want to be duplicated + delete data['pk']; + delete data['reference']; + + options.data = data; + + createPurchaseOrder(options); + } }); } From 4c22110c76e662a2b203caab0d8a1014c0af51b8 Mon Sep 17 00:00:00 2001 From: Oliver Date: Fri, 19 Aug 2022 11:35:38 +1000 Subject: [PATCH 32/60] New Crowdin updates (#3563) * updated translation base * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin * Fix: New translations django.po from Crowdin Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com> --- InvenTree/locale/cs/LC_MESSAGES/django.po | 1110 ++++++------ InvenTree/locale/de/LC_MESSAGES/django.po | 1112 ++++++------ InvenTree/locale/el/LC_MESSAGES/django.po | 1110 ++++++------ InvenTree/locale/en/LC_MESSAGES/django.po | 1580 +++++++++--------- InvenTree/locale/es/LC_MESSAGES/django.po | 1110 ++++++------ InvenTree/locale/es_MX/LC_MESSAGES/django.po | 1580 +++++++++--------- InvenTree/locale/fa/LC_MESSAGES/django.po | 1110 ++++++------ InvenTree/locale/fr/LC_MESSAGES/django.po | 1110 ++++++------ InvenTree/locale/he/LC_MESSAGES/django.po | 1110 ++++++------ InvenTree/locale/hu/LC_MESSAGES/django.po | 1112 ++++++------ InvenTree/locale/id/LC_MESSAGES/django.po | 1110 ++++++------ InvenTree/locale/it/LC_MESSAGES/django.po | 1110 ++++++------ InvenTree/locale/ja/LC_MESSAGES/django.po | 1110 ++++++------ InvenTree/locale/ko/LC_MESSAGES/django.po | 1110 ++++++------ InvenTree/locale/nl/LC_MESSAGES/django.po | 1110 ++++++------ InvenTree/locale/no/LC_MESSAGES/django.po | 1110 ++++++------ InvenTree/locale/pl/LC_MESSAGES/django.po | 1110 ++++++------ InvenTree/locale/pt/LC_MESSAGES/django.po | 1126 +++++++------ InvenTree/locale/pt_br/LC_MESSAGES/django.po | 1580 +++++++++--------- InvenTree/locale/ru/LC_MESSAGES/django.po | 1110 ++++++------ InvenTree/locale/sv/LC_MESSAGES/django.po | 1110 ++++++------ InvenTree/locale/th/LC_MESSAGES/django.po | 1110 ++++++------ InvenTree/locale/tr/LC_MESSAGES/django.po | 1110 ++++++------ InvenTree/locale/vi/LC_MESSAGES/django.po | 1110 ++++++------ InvenTree/locale/zh/LC_MESSAGES/django.po | 1110 ++++++------ 25 files changed, 15074 insertions(+), 14106 deletions(-) diff --git a/InvenTree/locale/cs/LC_MESSAGES/django.po b/InvenTree/locale/cs/LC_MESSAGES/django.po index 763fb93aad..eb82a6bd7c 100644 --- a/InvenTree/locale/cs/LC_MESSAGES/django.po +++ b/InvenTree/locale/cs/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-16 11:53+0000\n" -"PO-Revision-Date: 2022-08-16 21:36\n" +"POT-Creation-Date: 2022-08-18 05:14+0000\n" +"PO-Revision-Date: 2022-08-18 21:39\n" "Last-Translator: \n" "Language-Team: Czech\n" "Language: cs_CZ\n" @@ -40,10 +40,10 @@ msgstr "Zadejte datum" #: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825 #: stock/serializers.py:924 stock/serializers.py:1056 #: stock/templates/stock/stock_sidebar.html:25 -#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101 -#: templates/js/translated/company.js:964 templates/js/translated/order.js:2104 -#: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753 -#: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102 +#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1099 +#: templates/js/translated/company.js:964 templates/js/translated/order.js:2143 +#: templates/js/translated/order.js:2294 templates/js/translated/order.js:2792 +#: templates/js/translated/order.js:3743 templates/js/translated/order.js:4141 #: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980 msgid "Notes" msgstr "" @@ -211,11 +211,11 @@ msgstr "Vyberte soubor k přiložení" #: InvenTree/models.py:402 company/models.py:124 company/models.py:276 #: company/models.py:510 order/models.py:84 order/models.py:1245 -#: part/models.py:802 +#: part/models.py:802 part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_base.html:164 #: templates/js/translated/company.js:656 -#: templates/js/translated/company.js:948 templates/js/translated/order.js:2742 -#: templates/js/translated/part.js:1514 +#: templates/js/translated/company.js:948 templates/js/translated/order.js:2781 +#: templates/js/translated/part.js:1510 msgid "Link" msgstr "Odkaz" @@ -235,8 +235,8 @@ msgstr "Komentář k souboru" #: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665 #: common/models.py:1666 common/models.py:1889 common/models.py:1890 -#: common/models.py:2152 common/models.py:2153 part/models.py:2200 -#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257 +#: common/models.py:2152 common/models.py:2153 part/models.py:2247 +#: part/models.py:2267 plugin/models.py:256 plugin/models.py:257 #: report/templates/report/inventree_test_report_base.html:96 #: templates/js/translated/stock.js:2641 msgid "User" @@ -277,7 +277,7 @@ msgstr "Neplatný výběr" #: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875 #: company/models.py:358 label/models.py:101 part/models.py:746 -#: part/models.py:2378 plugin/models.py:94 report/models.py:152 +#: part/models.py:2425 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 #: templates/InvenTree/settings/plugin.html:51 #: templates/InvenTree/settings/plugin.html:134 @@ -287,7 +287,7 @@ msgstr "Neplatný výběr" #: templates/js/translated/company.js:758 #: templates/js/translated/notification.js:71 #: templates/js/translated/part.js:688 templates/js/translated/part.js:840 -#: templates/js/translated/part.js:1906 templates/js/translated/stock.js:2392 +#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2392 msgid "Name" msgstr "Název" @@ -297,19 +297,20 @@ msgstr "Název" #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:87 label/models.py:108 #: order/models.py:82 part/models.py:769 part/templates/part/category.html:80 -#: part/templates/part/part_base.html:167 report/models.py:165 +#: part/templates/part/part_base.html:167 +#: part/templates/part/part_scheduling.html:12 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 #: stock/templates/stock/location.html:108 #: templates/InvenTree/settings/plugin_settings.html:33 -#: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848 -#: templates/js/translated/build.js:2471 templates/js/translated/company.js:409 +#: templates/js/translated/bom.js:553 templates/js/translated/bom.js:846 +#: templates/js/translated/build.js:2504 templates/js/translated/company.js:409 #: templates/js/translated/company.js:667 -#: templates/js/translated/company.js:959 templates/js/translated/order.js:1720 -#: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531 +#: templates/js/translated/company.js:959 templates/js/translated/order.js:1759 +#: templates/js/translated/order.js:1991 templates/js/translated/order.js:2570 #: templates/js/translated/part.js:747 templates/js/translated/part.js:1153 -#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1942 -#: templates/js/translated/part.js:2011 templates/js/translated/stock.js:1743 +#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1938 +#: templates/js/translated/part.js:2007 templates/js/translated/stock.js:1743 #: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478 msgid "Description" msgstr "Popis" @@ -323,7 +324,7 @@ msgid "parent" msgstr "nadřazený" #: InvenTree/models.py:560 InvenTree/models.py:561 -#: templates/js/translated/part.js:1948 templates/js/translated/stock.js:2430 +#: templates/js/translated/part.js:1944 templates/js/translated/stock.js:2430 msgid "Path" msgstr "Cesta" @@ -335,7 +336,7 @@ msgstr "Chyba serveru" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:55 part/models.py:2699 +#: InvenTree/serializers.py:55 part/models.py:2746 msgid "Must be a valid number" msgstr "Musí být platné číslo" @@ -541,7 +542,7 @@ msgid "Returned" msgstr "Vráceno" #: InvenTree/status_codes.py:141 order/models.py:1128 -#: templates/js/translated/order.js:3330 templates/js/translated/order.js:3679 +#: templates/js/translated/order.js:3369 templates/js/translated/order.js:3718 msgid "Shipped" msgstr "Odesláno" @@ -728,7 +729,7 @@ msgstr "" #: report/templates/report/inventree_build_order_base.html:105 #: templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 -#: templates/js/translated/build.js:731 +#: templates/js/translated/build.js:763 msgid "Build Order" msgstr "" @@ -747,14 +748,14 @@ msgid "Build Order Reference" msgstr "" #: build/models.py:166 order/models.py:240 order/models.py:623 -#: order/models.py:904 part/models.py:2617 +#: order/models.py:904 part/models.py:2664 #: part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 -#: templates/js/translated/bom.js:692 templates/js/translated/bom.js:855 -#: templates/js/translated/build.js:1779 templates/js/translated/order.js:1983 -#: templates/js/translated/order.js:2184 templates/js/translated/order.js:3523 -#: templates/js/translated/order.js:4031 +#: templates/js/translated/bom.js:690 templates/js/translated/bom.js:853 +#: templates/js/translated/build.js:1811 templates/js/translated/order.js:2022 +#: templates/js/translated/order.js:2223 templates/js/translated/order.js:3562 +#: templates/js/translated/order.js:4070 msgid "Reference" msgstr "" @@ -762,7 +763,7 @@ msgstr "" msgid "Brief description of the build" msgstr "" -#: build/models.py:185 build/templates/build/build_base.html:169 +#: build/models.py:185 build/templates/build/build_base.html:172 #: build/templates/build/detail.html:87 msgid "Parent Build" msgstr "" @@ -771,13 +772,13 @@ msgstr "" msgid "BuildOrder to which this build is allocated" msgstr "" -#: build/models.py:191 build/templates/build/build_base.html:77 +#: build/models.py:191 build/templates/build/build_base.html:80 #: build/templates/build/detail.html:29 company/models.py:670 #: order/models.py:1001 order/models.py:1112 order/models.py:1113 -#: part/models.py:343 part/models.py:2146 part/models.py:2161 -#: part/models.py:2180 part/models.py:2198 part/models.py:2297 -#: part/models.py:2417 part/models.py:2507 part/models.py:2592 -#: part/models.py:2868 part/serializers.py:813 +#: part/models.py:343 part/models.py:2193 part/models.py:2208 +#: part/models.py:2227 part/models.py:2245 part/models.py:2344 +#: part/models.py:2464 part/models.py:2554 part/models.py:2639 +#: part/models.py:2915 part/serializers.py:813 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -789,17 +790,17 @@ msgstr "" #: templates/email/build_order_required_stock.html:17 #: templates/email/low_stock_notification.html:16 #: templates/email/overdue_build_order.html:16 -#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:553 -#: templates/js/translated/bom.js:691 templates/js/translated/bom.js:802 -#: templates/js/translated/build.js:1156 templates/js/translated/build.js:1649 -#: templates/js/translated/build.js:2085 templates/js/translated/build.js:2476 +#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:552 +#: templates/js/translated/bom.js:689 templates/js/translated/bom.js:800 +#: templates/js/translated/build.js:1188 templates/js/translated/build.js:1681 +#: templates/js/translated/build.js:2118 templates/js/translated/build.js:2509 #: templates/js/translated/company.js:266 #: templates/js/translated/company.js:496 #: templates/js/translated/company.js:608 -#: templates/js/translated/company.js:868 templates/js/translated/order.js:103 -#: templates/js/translated/order.js:934 templates/js/translated/order.js:1387 -#: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885 -#: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507 +#: templates/js/translated/company.js:868 templates/js/translated/order.js:104 +#: templates/js/translated/order.js:973 templates/js/translated/order.js:1426 +#: templates/js/translated/order.js:1976 templates/js/translated/order.js:2924 +#: templates/js/translated/order.js:3320 templates/js/translated/order.js:3546 #: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210 #: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586 #: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958 @@ -821,7 +822,7 @@ msgid "SalesOrder to which this build is allocated" msgstr "" #: build/models.py:213 build/serializers.py:800 -#: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873 +#: templates/js/translated/build.js:2106 templates/js/translated/order.js:2912 msgid "Source Location" msgstr "" @@ -862,7 +863,7 @@ msgid "Build status code" msgstr "" #: build/models.py:251 build/serializers.py:225 order/serializers.py:447 -#: stock/models.py:662 templates/js/translated/order.js:1247 +#: stock/models.py:662 templates/js/translated/order.js:1286 msgid "Batch Code" msgstr "" @@ -871,7 +872,7 @@ msgid "Batch code for this build output" msgstr "" #: build/models.py:258 order/models.py:86 part/models.py:938 -#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544 +#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2583 msgid "Creation Date" msgstr "" @@ -884,7 +885,7 @@ msgid "Target date for build completion. Build will be overdue after this date." msgstr "" #: build/models.py:266 order/models.py:286 -#: templates/js/translated/build.js:2553 +#: templates/js/translated/build.js:2586 msgid "Completion Date" msgstr "" @@ -892,7 +893,7 @@ msgstr "" msgid "completed by" msgstr "" -#: build/models.py:280 templates/js/translated/build.js:2521 +#: build/models.py:280 templates/js/translated/build.js:2554 msgid "Issued by" msgstr "" @@ -900,12 +901,12 @@ msgstr "" msgid "User who issued this build order" msgstr "" -#: build/models.py:289 build/templates/build/build_base.html:190 +#: build/models.py:289 build/templates/build/build_base.html:193 #: build/templates/build/detail.html:115 order/models.py:100 #: order/templates/order/order_base.html:176 #: order/templates/order/sales_order_base.html:183 part/models.py:942 #: report/templates/report/inventree_build_order_base.html:158 -#: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754 +#: templates/js/translated/build.js:2566 templates/js/translated/order.js:1793 msgid "Responsible" msgstr "" @@ -972,7 +973,7 @@ msgid "Selected stock item not found in BOM" msgstr "" #: build/models.py:1328 stock/templates/stock/item_base.html:177 -#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2455 +#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2488 #: templates/navbar.html:38 msgid "Build" msgstr "" @@ -986,11 +987,11 @@ msgstr "" #: stock/serializers.py:882 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:199 -#: templates/js/translated/build.js:741 templates/js/translated/build.js:746 -#: templates/js/translated/build.js:2087 templates/js/translated/build.js:2638 -#: templates/js/translated/order.js:104 templates/js/translated/order.js:2886 -#: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193 -#: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380 +#: templates/js/translated/build.js:773 templates/js/translated/build.js:778 +#: templates/js/translated/build.js:2120 templates/js/translated/build.js:2671 +#: templates/js/translated/order.js:105 templates/js/translated/order.js:2925 +#: templates/js/translated/order.js:3227 templates/js/translated/order.js:3232 +#: templates/js/translated/order.js:3327 templates/js/translated/order.js:3419 #: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752 #: templates/js/translated/stock.js:2577 msgid "Stock Item" @@ -1001,13 +1002,13 @@ msgid "Source stock item" msgstr "" #: build/models.py:1358 build/serializers.py:193 -#: build/templates/build/build_base.html:82 +#: build/templates/build/build_base.html:85 #: build/templates/build/detail.html:34 common/models.py:1697 #: company/templates/company/supplier_part.html:279 order/models.py:897 #: order/models.py:1423 order/serializers.py:1155 #: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40 -#: part/models.py:2608 part/templates/part/detail.html:937 -#: part/templates/part/detail.html:1023 +#: part/models.py:2655 part/templates/part/detail.html:951 +#: part/templates/part/detail.html:1037 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 #: report/templates/report/inventree_build_order_base.html:113 @@ -1018,20 +1019,20 @@ msgstr "" #: stock/serializers.py:293 stock/templates/stock/item_base.html:292 #: stock/templates/stock/item_base.html:300 #: templates/email/build_order_completed.html:18 -#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:693 -#: templates/js/translated/bom.js:863 templates/js/translated/build.js:426 -#: templates/js/translated/build.js:578 templates/js/translated/build.js:768 -#: templates/js/translated/build.js:1178 templates/js/translated/build.js:1675 -#: templates/js/translated/build.js:2088 +#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:691 +#: templates/js/translated/bom.js:861 templates/js/translated/build.js:458 +#: templates/js/translated/build.js:610 templates/js/translated/build.js:800 +#: templates/js/translated/build.js:1210 templates/js/translated/build.js:1707 +#: templates/js/translated/build.js:2121 #: templates/js/translated/model_renderers.js:120 -#: templates/js/translated/order.js:120 templates/js/translated/order.js:937 -#: templates/js/translated/order.js:1989 templates/js/translated/order.js:2190 -#: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207 -#: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386 -#: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037 -#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2156 -#: templates/js/translated/part.js:2387 templates/js/translated/part.js:2421 -#: templates/js/translated/part.js:2499 templates/js/translated/stock.js:458 +#: templates/js/translated/order.js:121 templates/js/translated/order.js:976 +#: templates/js/translated/order.js:2028 templates/js/translated/order.js:2229 +#: templates/js/translated/order.js:2926 templates/js/translated/order.js:3246 +#: templates/js/translated/order.js:3333 templates/js/translated/order.js:3425 +#: templates/js/translated/order.js:3568 templates/js/translated/order.js:4076 +#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2152 +#: templates/js/translated/part.js:2602 templates/js/translated/part.js:2636 +#: templates/js/translated/part.js:2714 templates/js/translated/stock.js:458 #: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782 #: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711 msgid "Quantity" @@ -1050,7 +1051,7 @@ msgid "Destination stock item" msgstr "" #: build/serializers.py:138 build/serializers.py:674 -#: templates/js/translated/build.js:1166 +#: templates/js/translated/build.js:1198 msgid "Build Output" msgstr "" @@ -1090,7 +1091,7 @@ msgid "Integer quantity required, as the bill of materials contains trackable pa msgstr "" #: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159 -#: stock/serializers.py:311 templates/js/translated/order.js:1258 +#: stock/serializers.py:311 templates/js/translated/order.js:1297 #: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459 msgid "Serial Numbers" msgstr "" @@ -1120,10 +1121,10 @@ msgstr "" #: stock/serializers.py:917 stock/serializers.py:1150 #: stock/templates/stock/item_base.html:390 #: templates/js/translated/barcode.js:436 -#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753 -#: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285 -#: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305 -#: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394 +#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:785 +#: templates/js/translated/build.js:1719 templates/js/translated/order.js:1324 +#: templates/js/translated/order.js:3239 templates/js/translated/order.js:3344 +#: templates/js/translated/order.js:3352 templates/js/translated/order.js:3433 #: templates/js/translated/part.js:181 templates/js/translated/stock.js:588 #: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960 #: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518 @@ -1134,12 +1135,12 @@ msgstr "" msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:373 build/templates/build/build_base.html:142 +#: build/serializers.py:373 build/templates/build/build_base.html:145 #: build/templates/build/detail.html:62 order/models.py:642 #: order/serializers.py:465 stock/templates/stock/item_base.html:423 -#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505 -#: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724 -#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829 +#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2538 +#: templates/js/translated/order.js:1431 templates/js/translated/order.js:1763 +#: templates/js/translated/order.js:2575 templates/js/translated/stock.js:1829 #: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727 msgid "Status" msgstr "" @@ -1196,7 +1197,7 @@ msgstr "" msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:522 templates/js/translated/build.js:195 +#: build/serializers.py:522 templates/js/translated/build.js:227 msgid "Required stock has not been fully allocated" msgstr "" @@ -1208,7 +1209,7 @@ msgstr "" msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:538 templates/js/translated/build.js:199 +#: build/serializers.py:538 templates/js/translated/build.js:231 msgid "Required build quantity has not been completed" msgstr "" @@ -1216,8 +1217,8 @@ msgstr "" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726 -#: part/models.py:2860 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2773 +#: part/models.py:2907 msgid "BOM Item" msgstr "" @@ -1322,66 +1323,70 @@ msgid "Cancel Build" msgstr "" #: build/templates/build/build_base.html:59 +msgid "Duplicate Build" +msgstr "" + +#: build/templates/build/build_base.html:62 msgid "Delete Build" msgstr "" -#: build/templates/build/build_base.html:64 -#: build/templates/build/build_base.html:65 +#: build/templates/build/build_base.html:67 +#: build/templates/build/build_base.html:68 msgid "Complete Build" msgstr "" -#: build/templates/build/build_base.html:87 +#: build/templates/build/build_base.html:90 msgid "Build Description" msgstr "" -#: build/templates/build/build_base.html:95 +#: build/templates/build/build_base.html:98 msgid "No build outputs have been created for this build order" msgstr "" -#: build/templates/build/build_base.html:101 +#: build/templates/build/build_base.html:104 #, python-format msgid "This Build Order is allocated to Sales Order %(link)s" msgstr "" -#: build/templates/build/build_base.html:108 +#: build/templates/build/build_base.html:111 #, python-format msgid "This Build Order is a child of Build Order %(link)s" msgstr "" -#: build/templates/build/build_base.html:115 +#: build/templates/build/build_base.html:118 msgid "Build Order is ready to mark as completed" msgstr "" -#: build/templates/build/build_base.html:120 +#: build/templates/build/build_base.html:123 msgid "Build Order cannot be completed as outstanding outputs remain" msgstr "" -#: build/templates/build/build_base.html:125 +#: build/templates/build/build_base.html:128 msgid "Required build quantity has not yet been completed" msgstr "" -#: build/templates/build/build_base.html:130 +#: build/templates/build/build_base.html:133 msgid "Stock has not been fully allocated to this Build Order" msgstr "" -#: build/templates/build/build_base.html:151 +#: build/templates/build/build_base.html:154 #: build/templates/build/detail.html:131 order/models.py:910 #: order/templates/order/order_base.html:162 #: order/templates/order/sales_order_base.html:164 #: report/templates/report/inventree_build_order_base.html:125 -#: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741 -#: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552 -#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042 +#: templates/js/translated/build.js:2578 templates/js/translated/order.js:1780 +#: templates/js/translated/order.js:2090 templates/js/translated/order.js:2591 +#: templates/js/translated/order.js:3631 templates/js/translated/part.js:1042 msgid "Target Date" msgstr "" -#: build/templates/build/build_base.html:156 +#: build/templates/build/build_base.html:159 #, python-format msgid "This build was due on %(target)s" msgstr "" -#: build/templates/build/build_base.html:156 -#: build/templates/build/build_base.html:201 +#: build/templates/build/build_base.html:159 +#: build/templates/build/build_base.html:204 #: order/templates/order/order_base.html:98 #: order/templates/order/sales_order_base.html:94 #: templates/js/translated/table_filters.js:320 @@ -1390,14 +1395,14 @@ msgstr "" msgid "Overdue" msgstr "" -#: build/templates/build/build_base.html:163 +#: build/templates/build/build_base.html:166 #: build/templates/build/detail.html:67 build/templates/build/detail.html:142 #: order/templates/order/sales_order_base.html:171 #: templates/js/translated/table_filters.js:400 msgid "Completed" msgstr "" -#: build/templates/build/build_base.html:176 +#: build/templates/build/build_base.html:179 #: build/templates/build/detail.html:94 order/models.py:1105 #: order/models.py:1199 order/models.py:1330 #: order/templates/order/sales_order_base.html:9 @@ -1406,17 +1411,17 @@ msgstr "" #: report/templates/report/inventree_so_report.html:77 #: stock/templates/stock/item_base.html:370 #: templates/email/overdue_sales_order.html:15 -#: templates/js/translated/order.js:2498 +#: templates/js/translated/order.js:2537 msgid "Sales Order" msgstr "" -#: build/templates/build/build_base.html:183 +#: build/templates/build/build_base.html:186 #: build/templates/build/detail.html:108 #: report/templates/report/inventree_build_order_base.html:152 msgid "Issued By" msgstr "" -#: build/templates/build/build_base.html:245 +#: build/templates/build/build_base.html:256 msgid "Delete Build Order" msgstr "" @@ -1433,7 +1438,7 @@ msgid "Stock can be taken from any available location." msgstr "" #: build/templates/build/detail.html:49 order/models.py:1023 -#: templates/js/translated/order.js:1393 templates/js/translated/order.js:2093 +#: templates/js/translated/order.js:1432 templates/js/translated/order.js:2132 msgid "Destination" msgstr "" @@ -1447,7 +1452,7 @@ msgstr "" #: build/templates/build/detail.html:80 #: stock/templates/stock/item_base.html:170 -#: templates/js/translated/build.js:1182 +#: templates/js/translated/build.js:1214 #: templates/js/translated/model_renderers.js:124 #: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843 #: templates/js/translated/stock.js:2734 @@ -1459,7 +1464,7 @@ msgstr "" #: build/templates/build/detail.html:126 #: order/templates/order/order_base.html:149 #: order/templates/order/sales_order_base.html:158 -#: templates/js/translated/build.js:2513 +#: templates/js/translated/build.js:2546 msgid "Created" msgstr "" @@ -1479,7 +1484,7 @@ msgstr "" msgid "Allocate Stock to Build" msgstr "" -#: build/templates/build/detail.html:176 templates/js/translated/build.js:1901 +#: build/templates/build/detail.html:176 templates/js/translated/build.js:1934 msgid "Unallocate stock" msgstr "" @@ -1510,7 +1515,7 @@ msgstr "" #: build/templates/build/detail.html:187 #: company/templates/company/detail.html:37 #: company/templates/company/detail.html:85 -#: part/templates/part/category.html:183 templates/js/translated/order.js:977 +#: part/templates/part/category.html:183 templates/js/translated/order.js:1016 msgid "Order Parts" msgstr "" @@ -1582,7 +1587,7 @@ msgstr "" #: order/templates/order/po_sidebar.html:9 #: order/templates/order/purchase_order_detail.html:82 #: order/templates/order/sales_order_detail.html:135 -#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:207 +#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:212 #: part/templates/part/part_sidebar.html:57 stock/templates/stock/item.html:117 #: stock/templates/stock/stock_sidebar.html:23 msgid "Attachments" @@ -1600,7 +1605,7 @@ msgstr "" msgid "All untracked stock items have been allocated" msgstr "" -#: build/templates/build/index.html:18 part/templates/part/detail.html:313 +#: build/templates/build/index.html:18 part/templates/part/detail.html:318 msgid "New Build Order" msgstr "" @@ -1845,7 +1850,7 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:951 part/models.py:2419 report/models.py:158 +#: common/models.py:951 part/models.py:2466 report/models.py:158 #: templates/js/translated/table_filters.js:38 #: templates/js/translated/table_filters.js:484 msgid "Template" @@ -1855,7 +1860,7 @@ msgstr "" msgid "Parts are templates by default" msgstr "" -#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448 +#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1446 #: templates/js/translated/table_filters.js:176 #: templates/js/translated/table_filters.js:447 msgid "Assembly" @@ -2591,7 +2596,7 @@ msgstr "" #: common/models.py:1705 company/serializers.py:366 #: company/templates/company/supplier_part.html:284 order/models.py:938 -#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2161 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2157 msgid "Price" msgstr "" @@ -2830,7 +2835,7 @@ msgstr "" #: company/models.py:248 company/models.py:481 stock/models.py:598 #: stock/serializers.py:87 stock/templates/stock/item_base.html:148 -#: templates/js/translated/bom.js:543 +#: templates/js/translated/bom.js:542 msgid "Base Part" msgstr "" @@ -2859,7 +2864,7 @@ msgstr "" #: templates/js/translated/company.js:269 #: templates/js/translated/company.js:497 #: templates/js/translated/company.js:649 -#: templates/js/translated/company.js:937 templates/js/translated/order.js:1971 +#: templates/js/translated/company.js:937 templates/js/translated/order.js:2010 #: templates/js/translated/part.js:247 templates/js/translated/part.js:1027 msgid "MPN" msgstr "" @@ -2899,7 +2904,7 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:372 part/models.py:888 part/models.py:2386 +#: company/models.py:372 part/models.py:888 part/models.py:2433 #: part/templates/part/part_base.html:280 #: templates/InvenTree/settings/settings.html:352 #: templates/js/translated/company.js:770 templates/js/translated/part.js:855 @@ -2921,7 +2926,7 @@ msgstr "" #: templates/email/overdue_purchase_order.html:16 #: templates/js/translated/company.js:268 #: templates/js/translated/company.js:401 -#: templates/js/translated/company.js:893 templates/js/translated/order.js:1707 +#: templates/js/translated/company.js:893 templates/js/translated/order.js:1746 #: templates/js/translated/part.js:217 templates/js/translated/part.js:995 #: templates/js/translated/table_filters.js:423 msgid "Supplier" @@ -2933,7 +2938,7 @@ msgstr "" #: company/models.py:497 company/templates/company/supplier_part.html:118 #: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267 -#: templates/js/translated/order.js:1958 templates/js/translated/part.js:228 +#: templates/js/translated/order.js:1997 templates/js/translated/part.js:228 #: templates/js/translated/part.js:1013 msgid "SKU" msgstr "" @@ -2955,17 +2960,17 @@ msgid "Supplier part description" msgstr "" #: company/models.py:522 company/templates/company/supplier_part.html:146 -#: part/models.py:2620 part/templates/part/upload_bom.html:59 +#: part/models.py:2667 part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401 msgid "Note" msgstr "" -#: company/models.py:526 part/models.py:1742 +#: company/models.py:526 part/models.py:1789 msgid "base cost" msgstr "" -#: company/models.py:526 part/models.py:1742 +#: company/models.py:526 part/models.py:1789 msgid "Minimum charge (e.g. stocking fee)" msgstr "" @@ -2979,7 +2984,7 @@ msgstr "" msgid "Part packaging" msgstr "" -#: company/models.py:530 part/models.py:1744 +#: company/models.py:530 part/models.py:1791 msgid "multiple" msgstr "" @@ -2990,8 +2995,8 @@ msgstr "" #: company/models.py:538 company/templates/company/supplier_part.html:94 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789 -#: templates/js/translated/build.js:2645 templates/js/translated/company.js:979 +#: templates/js/translated/bom.js:911 templates/js/translated/build.js:1821 +#: templates/js/translated/build.js:2678 templates/js/translated/company.js:979 #: templates/js/translated/part.js:600 templates/js/translated/part.js:603 #: templates/js/translated/table_filters.js:186 msgid "Available" @@ -3028,7 +3033,7 @@ msgid "Company" msgstr "" #: company/templates/company/company_base.html:22 -#: templates/js/translated/order.js:540 +#: templates/js/translated/order.js:579 msgid "Create Purchase Order" msgstr "" @@ -3069,7 +3074,7 @@ msgstr "" #: stock/models.py:644 stock/serializers.py:811 #: stock/templates/stock/item_base.html:401 #: templates/email/overdue_sales_order.html:16 -#: templates/js/translated/company.js:393 templates/js/translated/order.js:2513 +#: templates/js/translated/company.js:393 templates/js/translated/order.js:2552 #: templates/js/translated/stock.js:2559 #: templates/js/translated/table_filters.js:427 msgid "Customer" @@ -3105,7 +3110,7 @@ msgstr "" #: company/templates/company/detail.html:19 #: company/templates/company/manufacturer_part.html:123 -#: part/templates/part/detail.html:354 +#: part/templates/part/detail.html:359 msgid "New Supplier Part" msgstr "" @@ -3134,7 +3139,7 @@ msgstr "" msgid "Create new manufacturer part" msgstr "" -#: company/templates/company/detail.html:66 part/templates/part/detail.html:384 +#: company/templates/company/detail.html:66 part/templates/part/detail.html:389 msgid "New Manufacturer Part" msgstr "" @@ -3148,7 +3153,7 @@ msgstr "" #: order/templates/order/order_base.html:13 #: order/templates/order/purchase_orders.html:8 #: order/templates/order/purchase_orders.html:12 -#: part/templates/part/detail.html:79 part/templates/part/part_sidebar.html:37 +#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:37 #: templates/InvenTree/index.html:252 templates/InvenTree/search.html:198 #: templates/InvenTree/settings/sidebar.html:49 #: templates/js/translated/search.js:275 templates/navbar.html:50 @@ -3171,7 +3176,7 @@ msgstr "" #: order/templates/order/sales_order_base.html:13 #: order/templates/order/sales_orders.html:8 #: order/templates/order/sales_orders.html:15 -#: part/templates/part/detail.html:102 part/templates/part/part_sidebar.html:41 +#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:41 #: templates/InvenTree/index.html:283 templates/InvenTree/search.html:218 #: templates/InvenTree/settings/sidebar.html:51 #: templates/js/translated/search.js:299 templates/navbar.html:61 @@ -3190,7 +3195,7 @@ msgid "New Sales Order" msgstr "" #: company/templates/company/detail.html:168 -#: templates/js/translated/build.js:1660 +#: templates/js/translated/build.js:1692 msgid "Assigned Stock" msgstr "" @@ -3206,7 +3211,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:35 #: company/templates/company/supplier_part.html:186 -#: part/templates/part/detail.html:82 part/templates/part/part_base.html:80 +#: part/templates/part/detail.html:87 part/templates/part/part_base.html:80 msgid "Order part" msgstr "" @@ -3237,13 +3242,13 @@ msgid "Suppliers" msgstr "" #: company/templates/company/manufacturer_part.html:136 -#: part/templates/part/detail.html:365 +#: part/templates/part/detail.html:370 msgid "Delete supplier parts" msgstr "" #: company/templates/company/manufacturer_part.html:136 #: company/templates/company/manufacturer_part.html:183 -#: part/templates/part/detail.html:366 part/templates/part/detail.html:396 +#: part/templates/part/detail.html:371 part/templates/part/detail.html:401 #: templates/js/translated/forms.js:453 templates/js/translated/helpers.js:33 #: users/models.py:220 msgid "Delete" @@ -3252,12 +3257,12 @@ msgstr "" #: company/templates/company/manufacturer_part.html:166 #: company/templates/company/manufacturer_part_sidebar.html:5 #: part/templates/part/category_sidebar.html:19 -#: part/templates/part/detail.html:181 part/templates/part/part_sidebar.html:8 +#: part/templates/part/detail.html:186 part/templates/part/part_sidebar.html:8 msgid "Parameters" msgstr "" #: company/templates/company/manufacturer_part.html:170 -#: part/templates/part/detail.html:186 +#: part/templates/part/detail.html:191 #: templates/InvenTree/settings/category.html:12 #: templates/InvenTree/settings/part.html:68 msgid "New Parameter" @@ -3268,7 +3273,7 @@ msgid "Delete parameters" msgstr "" #: company/templates/company/manufacturer_part.html:245 -#: part/templates/part/detail.html:826 +#: part/templates/part/detail.html:840 msgid "Add Parameter" msgstr "" @@ -3291,7 +3296,7 @@ msgstr "" #: company/templates/company/supplier_part.html:7 #: company/templates/company/supplier_part.html:24 stock/models.py:607 #: stock/templates/stock/item_base.html:238 -#: templates/js/translated/company.js:909 templates/js/translated/order.js:935 +#: templates/js/translated/company.js:909 templates/js/translated/order.js:974 #: templates/js/translated/stock.js:1933 msgid "Supplier Part" msgstr "" @@ -3303,7 +3308,7 @@ msgstr "" #: company/templates/company/supplier_part.html:40 #: company/templates/company/supplier_part.html:41 #: company/templates/company/supplier_part.html:187 -#: part/templates/part/detail.html:83 +#: part/templates/part/detail.html:88 msgid "Order Part" msgstr "" @@ -3358,7 +3363,7 @@ msgstr "" #: company/templates/company/supplier_part.html:212 #: company/templates/company/supplier_part.html:326 -#: part/templates/part/prices.html:276 templates/js/translated/part.js:2233 +#: part/templates/part/prices.html:276 templates/js/translated/part.js:2229 msgid "Add Price Break" msgstr "" @@ -3367,12 +3372,12 @@ msgid "No price break information found" msgstr "" #: company/templates/company/supplier_part.html:252 -#: templates/js/translated/part.js:2243 +#: templates/js/translated/part.js:2239 msgid "Delete Price Break" msgstr "" #: company/templates/company/supplier_part.html:266 -#: templates/js/translated/part.js:2257 +#: templates/js/translated/part.js:2253 msgid "Edit Price Break" msgstr "" @@ -3398,10 +3403,9 @@ msgstr "" #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:151 #: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751 -#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460 -#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754 -#: templates/navbar.html:31 +#: templates/js/translated/part.js:751 templates/js/translated/part.js:1299 +#: templates/js/translated/part.js:1460 templates/js/translated/stock.js:959 +#: templates/js/translated/stock.js:1754 templates/navbar.html:31 msgid "Stock" msgstr "" @@ -3554,7 +3558,7 @@ msgid "Company from which the items are being ordered" msgstr "" #: order/models.py:262 order/templates/order/order_base.html:124 -#: templates/js/translated/order.js:1716 +#: templates/js/translated/order.js:1755 msgid "Supplier Reference" msgstr "" @@ -3611,7 +3615,7 @@ msgid "Target date for order completion. Order will be overdue after this date." msgstr "" #: order/models.py:652 order/models.py:1204 -#: templates/js/translated/order.js:2560 templates/js/translated/order.js:2722 +#: templates/js/translated/order.js:2599 templates/js/translated/order.js:2761 msgid "Shipment Date" msgstr "" @@ -3673,7 +3677,7 @@ msgstr "" #: order/models.py:983 order/models.py:1063 order/models.py:1104 #: order/models.py:1198 order/models.py:1330 -#: templates/js/translated/order.js:3178 +#: templates/js/translated/order.js:3217 msgid "Order" msgstr "" @@ -3683,7 +3687,7 @@ msgstr "" #: report/templates/report/inventree_po_report.html:76 #: stock/templates/stock/item_base.html:184 #: templates/email/overdue_purchase_order.html:15 -#: templates/js/translated/order.js:936 templates/js/translated/order.js:1691 +#: templates/js/translated/order.js:975 templates/js/translated/order.js:1730 #: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913 #: templates/js/translated/stock.js:2540 msgid "Purchase Order" @@ -3694,7 +3698,7 @@ msgid "Supplier part" msgstr "" #: order/models.py:1009 order/templates/order/order_base.html:169 -#: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073 +#: templates/js/translated/order.js:1429 templates/js/translated/order.js:2112 #: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091 #: templates/js/translated/table_filters.js:338 msgid "Received" @@ -3880,11 +3884,11 @@ msgstr "" msgid "Select destination location for received items" msgstr "" -#: order/serializers.py:448 templates/js/translated/order.js:1248 +#: order/serializers.py:448 templates/js/translated/order.js:1287 msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:456 templates/js/translated/order.js:1259 +#: order/serializers.py:456 templates/js/translated/order.js:1298 msgid "Enter serial numbers for incoming stock items" msgstr "" @@ -4061,10 +4065,6 @@ msgstr "" msgid "Total cost could not be calculated" msgstr "" -#: order/templates/order/order_base.html:243 -msgid "Edit Purchase Order" -msgstr "" - #: order/templates/order/order_wizard/match_parts.html:12 #: part/templates/part/import_wizard/ajax_match_references.html:12 #: part/templates/part/import_wizard/match_references.html:12 @@ -4091,10 +4091,10 @@ msgstr "" #: part/templates/part/import_wizard/ajax_match_fields.html:64 #: part/templates/part/import_wizard/ajax_match_references.html:42 #: part/templates/part/import_wizard/match_references.html:49 -#: templates/js/translated/bom.js:77 templates/js/translated/build.js:431 -#: templates/js/translated/build.js:583 templates/js/translated/build.js:1974 -#: templates/js/translated/order.js:884 templates/js/translated/order.js:1337 -#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625 +#: templates/js/translated/bom.js:77 templates/js/translated/build.js:463 +#: templates/js/translated/build.js:615 templates/js/translated/build.js:2007 +#: templates/js/translated/order.js:923 templates/js/translated/order.js:1376 +#: templates/js/translated/order.js:2836 templates/js/translated/stock.js:625 #: templates/js/translated/stock.js:793 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" @@ -4130,7 +4130,7 @@ msgstr "" #: order/templates/order/purchase_order_detail.html:26 #: order/templates/order/sales_order_detail.html:22 #: order/templates/order/sales_order_detail.html:255 -#: templates/js/translated/order.js:557 +#: templates/js/translated/order.js:596 msgid "Add Line Item" msgstr "" @@ -4176,7 +4176,7 @@ msgid "Print packing list" msgstr "" #: order/templates/order/sales_order_base.html:60 -#: templates/js/translated/order.js:229 +#: templates/js/translated/order.js:230 msgid "Complete Shipments" msgstr "" @@ -4190,7 +4190,7 @@ msgid "This Sales Order has not been fully allocated" msgstr "" #: order/templates/order/sales_order_base.html:123 -#: templates/js/translated/order.js:2526 +#: templates/js/translated/order.js:2565 msgid "Customer Reference" msgstr "" @@ -4214,8 +4214,8 @@ msgid "Pending Shipments" msgstr "" #: order/templates/order/sales_order_detail.html:72 -#: templates/attachment_table.html:6 templates/js/translated/bom.js:1110 -#: templates/js/translated/build.js:1882 +#: templates/attachment_table.html:6 templates/js/translated/bom.js:1108 +#: templates/js/translated/build.js:1915 msgid "Actions" msgstr "" @@ -4257,35 +4257,35 @@ msgstr "" msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:584 +#: part/api.py:621 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:704 +#: part/api.py:758 msgid "Valid" msgstr "" -#: part/api.py:705 +#: part/api.py:759 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:711 +#: part/api.py:765 msgid "This option must be selected" msgstr "" -#: part/api.py:1134 +#: part/api.py:1188 msgid "Must be greater than zero" msgstr "" -#: part/api.py:1138 +#: part/api.py:1192 msgid "Must be a valid quantity" msgstr "" -#: part/api.py:1153 +#: part/api.py:1207 msgid "Specify location for initial part stock" msgstr "" -#: part/api.py:1184 part/api.py:1188 part/api.py:1203 part/api.py:1207 +#: part/api.py:1238 part/api.py:1242 part/api.py:1257 part/api.py:1261 msgid "This field is required" msgstr "" @@ -4299,14 +4299,14 @@ msgid "Total Stock" msgstr "" #: part/bom.py:129 part/templates/part/part_base.html:189 -#: templates/js/translated/order.js:3618 +#: templates/js/translated/order.js:3657 msgid "Available Stock" msgstr "" #: part/bom.py:130 part/templates/part/part_base.html:207 -#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590 +#: templates/js/translated/bom.js:945 templates/js/translated/part.js:590 #: templates/js/translated/part.js:610 templates/js/translated/part.js:1302 -#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490 +#: templates/js/translated/part.js:1483 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "" @@ -4335,7 +4335,7 @@ msgstr "" msgid "Icon (optional)" msgstr "" -#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16 +#: part/models.py:122 part/models.py:2509 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" @@ -4352,7 +4352,7 @@ msgstr "" #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82 #: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:1955 templates/js/translated/search.js:144 +#: templates/js/translated/part.js:1951 templates/js/translated/search.js:144 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "" @@ -4382,7 +4382,7 @@ msgstr "" msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:745 part/models.py:2516 +#: part/models.py:745 part/models.py:2563 msgid "Part name" msgstr "" @@ -4415,11 +4415,11 @@ msgstr "" msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:783 part/models.py:2218 part/models.py:2461 +#: part/models.py:783 part/models.py:2265 part/models.py:2508 #: part/templates/part/part_base.html:257 #: templates/InvenTree/settings/settings.html:232 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1668 +#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1664 msgid "Category" msgstr "" @@ -4530,245 +4530,245 @@ msgstr "" msgid "Creation User" msgstr "" -#: part/models.py:1744 +#: part/models.py:1791 msgid "Sell multiple" msgstr "" -#: part/models.py:2265 +#: part/models.py:2312 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:2282 +#: part/models.py:2329 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:2302 templates/js/translated/part.js:2006 +#: part/models.py:2349 templates/js/translated/part.js:2002 #: templates/js/translated/stock.js:1340 msgid "Test Name" msgstr "" -#: part/models.py:2303 +#: part/models.py:2350 msgid "Enter a name for the test" msgstr "" -#: part/models.py:2308 +#: part/models.py:2355 msgid "Test Description" msgstr "" -#: part/models.py:2309 +#: part/models.py:2356 msgid "Enter description for this test" msgstr "" -#: part/models.py:2314 templates/js/translated/part.js:2015 +#: part/models.py:2361 templates/js/translated/part.js:2011 #: templates/js/translated/table_filters.js:302 msgid "Required" msgstr "" -#: part/models.py:2315 +#: part/models.py:2362 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:2320 templates/js/translated/part.js:2023 +#: part/models.py:2367 templates/js/translated/part.js:2019 msgid "Requires Value" msgstr "" -#: part/models.py:2321 +#: part/models.py:2368 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:2326 templates/js/translated/part.js:2030 +#: part/models.py:2373 templates/js/translated/part.js:2026 msgid "Requires Attachment" msgstr "" -#: part/models.py:2327 +#: part/models.py:2374 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:2335 +#: part/models.py:2382 #, python-brace-format msgid "Illegal character in template name ({c})" msgstr "" -#: part/models.py:2371 +#: part/models.py:2418 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:2379 +#: part/models.py:2426 msgid "Parameter Name" msgstr "" -#: part/models.py:2386 +#: part/models.py:2433 msgid "Parameter Units" msgstr "" -#: part/models.py:2417 +#: part/models.py:2464 msgid "Parent Part" msgstr "" -#: part/models.py:2419 part/models.py:2467 part/models.py:2468 +#: part/models.py:2466 part/models.py:2514 part/models.py:2515 #: templates/InvenTree/settings/settings.html:227 msgid "Parameter Template" msgstr "" -#: part/models.py:2421 +#: part/models.py:2468 msgid "Data" msgstr "" -#: part/models.py:2421 +#: part/models.py:2468 msgid "Parameter Value" msgstr "" -#: part/models.py:2472 templates/InvenTree/settings/settings.html:236 +#: part/models.py:2519 templates/InvenTree/settings/settings.html:236 msgid "Default Value" msgstr "" -#: part/models.py:2473 +#: part/models.py:2520 msgid "Default Parameter Value" msgstr "" -#: part/models.py:2508 +#: part/models.py:2555 msgid "Part ID or part name" msgstr "" -#: part/models.py:2511 templates/js/translated/model_renderers.js:212 +#: part/models.py:2558 templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "" -#: part/models.py:2512 +#: part/models.py:2559 msgid "Unique part ID value" msgstr "" -#: part/models.py:2515 +#: part/models.py:2562 msgid "Part Name" msgstr "" -#: part/models.py:2519 +#: part/models.py:2566 msgid "Part IPN" msgstr "" -#: part/models.py:2520 +#: part/models.py:2567 msgid "Part IPN value" msgstr "" -#: part/models.py:2523 +#: part/models.py:2570 msgid "Level" msgstr "" -#: part/models.py:2524 +#: part/models.py:2571 msgid "BOM level" msgstr "" -#: part/models.py:2593 +#: part/models.py:2640 msgid "Select parent part" msgstr "" -#: part/models.py:2601 +#: part/models.py:2648 msgid "Sub part" msgstr "" -#: part/models.py:2602 +#: part/models.py:2649 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:2608 +#: part/models.py:2655 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:2610 part/templates/part/upload_bom.html:58 -#: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999 +#: part/models.py:2657 part/templates/part/upload_bom.html:58 +#: templates/js/translated/bom.js:872 templates/js/translated/bom.js:997 #: templates/js/translated/table_filters.js:100 msgid "Optional" msgstr "" -#: part/models.py:2610 +#: part/models.py:2657 msgid "This BOM item is optional" msgstr "" -#: part/models.py:2613 part/templates/part/upload_bom.html:55 +#: part/models.py:2660 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:2614 +#: part/models.py:2661 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:2617 +#: part/models.py:2664 msgid "BOM item reference" msgstr "" -#: part/models.py:2620 +#: part/models.py:2667 msgid "BOM item notes" msgstr "" -#: part/models.py:2622 +#: part/models.py:2669 msgid "Checksum" msgstr "" -#: part/models.py:2622 +#: part/models.py:2669 msgid "BOM line checksum" msgstr "" -#: part/models.py:2626 part/templates/part/upload_bom.html:57 -#: templates/js/translated/bom.js:1016 +#: part/models.py:2673 part/templates/part/upload_bom.html:57 +#: templates/js/translated/bom.js:1014 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:96 msgid "Inherited" msgstr "" -#: part/models.py:2627 +#: part/models.py:2674 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:2632 part/templates/part/upload_bom.html:56 -#: templates/js/translated/bom.js:1008 +#: part/models.py:2679 part/templates/part/upload_bom.html:56 +#: templates/js/translated/bom.js:1006 msgid "Allow Variants" msgstr "" -#: part/models.py:2633 +#: part/models.py:2680 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:2711 stock/models.py:468 +#: part/models.py:2758 stock/models.py:468 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:2720 part/models.py:2722 +#: part/models.py:2767 part/models.py:2769 msgid "Sub part must be specified" msgstr "" -#: part/models.py:2827 +#: part/models.py:2874 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:2848 +#: part/models.py:2895 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:2861 +#: part/models.py:2908 msgid "Parent BOM item" msgstr "" -#: part/models.py:2869 +#: part/models.py:2916 msgid "Substitute part" msgstr "" -#: part/models.py:2884 +#: part/models.py:2931 msgid "Part 1" msgstr "" -#: part/models.py:2888 +#: part/models.py:2935 msgid "Part 2" msgstr "" -#: part/models.py:2888 +#: part/models.py:2935 msgid "Select Related Part" msgstr "" -#: part/models.py:2906 +#: part/models.py:2953 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:2910 +#: part/models.py:2957 msgid "Duplicate relationship already exists" msgstr "" @@ -4876,7 +4876,7 @@ msgstr "" msgid "The BOM for %(part)s has not been validated." msgstr "" -#: part/templates/part/bom.html:30 part/templates/part/detail.html:264 +#: part/templates/part/bom.html:30 part/templates/part/detail.html:269 msgid "BOM actions" msgstr "" @@ -4945,8 +4945,8 @@ msgstr "" msgid "New Part" msgstr "" -#: part/templates/part/category.html:174 part/templates/part/detail.html:363 -#: part/templates/part/detail.html:394 +#: part/templates/part/category.html:174 part/templates/part/detail.html:368 +#: part/templates/part/detail.html:399 msgid "Options" msgstr "" @@ -5014,138 +5014,146 @@ msgstr "" msgid "Part Stock" msgstr "" -#: part/templates/part/detail.html:54 -msgid "Part Test Templates" +#: part/templates/part/detail.html:44 +msgid "Refresh scheduling data" +msgstr "" + +#: part/templates/part/detail.html:45 templates/js/translated/tables.js:558 +msgid "Refresh" msgstr "" #: part/templates/part/detail.html:59 +msgid "Part Test Templates" +msgstr "" + +#: part/templates/part/detail.html:64 msgid "Add Test Template" msgstr "" -#: part/templates/part/detail.html:116 stock/templates/stock/item.html:53 +#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53 msgid "Sales Order Allocations" msgstr "" -#: part/templates/part/detail.html:138 +#: part/templates/part/detail.html:143 msgid "Part Notes" msgstr "" -#: part/templates/part/detail.html:153 +#: part/templates/part/detail.html:158 msgid "Part Variants" msgstr "" -#: part/templates/part/detail.html:157 +#: part/templates/part/detail.html:162 msgid "Create new variant" msgstr "" -#: part/templates/part/detail.html:158 +#: part/templates/part/detail.html:163 msgid "New Variant" msgstr "" -#: part/templates/part/detail.html:185 +#: part/templates/part/detail.html:190 msgid "Add new parameter" msgstr "" -#: part/templates/part/detail.html:222 part/templates/part/part_sidebar.html:54 +#: part/templates/part/detail.html:227 part/templates/part/part_sidebar.html:54 msgid "Related Parts" msgstr "" -#: part/templates/part/detail.html:226 part/templates/part/detail.html:227 +#: part/templates/part/detail.html:231 part/templates/part/detail.html:232 msgid "Add Related" msgstr "" -#: part/templates/part/detail.html:247 part/templates/part/part_sidebar.html:17 +#: part/templates/part/detail.html:252 part/templates/part/part_sidebar.html:17 msgid "Bill of Materials" msgstr "" -#: part/templates/part/detail.html:252 +#: part/templates/part/detail.html:257 msgid "Export actions" msgstr "" -#: part/templates/part/detail.html:256 templates/js/translated/bom.js:284 +#: part/templates/part/detail.html:261 templates/js/translated/bom.js:284 msgid "Export BOM" msgstr "" -#: part/templates/part/detail.html:258 +#: part/templates/part/detail.html:263 msgid "Print BOM Report" msgstr "" -#: part/templates/part/detail.html:268 +#: part/templates/part/detail.html:273 msgid "Upload BOM" msgstr "" -#: part/templates/part/detail.html:269 templates/js/translated/part.js:274 +#: part/templates/part/detail.html:274 templates/js/translated/part.js:274 msgid "Copy BOM" msgstr "" -#: part/templates/part/detail.html:270 +#: part/templates/part/detail.html:275 msgid "Validate BOM" msgstr "" -#: part/templates/part/detail.html:275 +#: part/templates/part/detail.html:280 msgid "New BOM Item" msgstr "" -#: part/templates/part/detail.html:276 +#: part/templates/part/detail.html:281 msgid "Add BOM Item" msgstr "" -#: part/templates/part/detail.html:289 +#: part/templates/part/detail.html:294 msgid "Assemblies" msgstr "" -#: part/templates/part/detail.html:307 +#: part/templates/part/detail.html:312 msgid "Part Builds" msgstr "" -#: part/templates/part/detail.html:334 stock/templates/stock/item.html:38 +#: part/templates/part/detail.html:339 stock/templates/stock/item.html:38 msgid "Build Order Allocations" msgstr "" -#: part/templates/part/detail.html:350 +#: part/templates/part/detail.html:355 msgid "Part Suppliers" msgstr "" -#: part/templates/part/detail.html:380 +#: part/templates/part/detail.html:385 msgid "Part Manufacturers" msgstr "" -#: part/templates/part/detail.html:396 +#: part/templates/part/detail.html:401 msgid "Delete manufacturer parts" msgstr "" -#: part/templates/part/detail.html:612 +#: part/templates/part/detail.html:626 msgid "Create BOM Item" msgstr "" -#: part/templates/part/detail.html:656 +#: part/templates/part/detail.html:670 msgid "Related Part" msgstr "" -#: part/templates/part/detail.html:664 +#: part/templates/part/detail.html:678 msgid "Add Related Part" msgstr "" -#: part/templates/part/detail.html:756 +#: part/templates/part/detail.html:770 msgid "Add Test Result Template" msgstr "" -#: part/templates/part/detail.html:900 +#: part/templates/part/detail.html:914 #, python-format msgid "Purchase Unit Price - %(currency)s" msgstr "" -#: part/templates/part/detail.html:912 +#: part/templates/part/detail.html:926 #, python-format msgid "Unit Price-Cost Difference - %(currency)s" msgstr "" -#: part/templates/part/detail.html:924 +#: part/templates/part/detail.html:938 #, python-format msgid "Supplier Unit Cost - %(currency)s" msgstr "" -#: part/templates/part/detail.html:1013 +#: part/templates/part/detail.html:1027 #, python-format msgid "Unit Price - %(currency)s" msgstr "" @@ -5321,13 +5329,13 @@ msgstr "" msgid "Allocated to Sales Orders" msgstr "" -#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1037 +#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1035 msgid "Can Build" msgstr "" #: part/templates/part/part_base.html:238 templates/js/translated/part.js:593 #: templates/js/translated/part.js:613 templates/js/translated/part.js:1306 -#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1494 +#: templates/js/translated/part.js:1490 msgid "Building" msgstr "" @@ -5379,7 +5387,7 @@ msgid "Total Cost" msgstr "" #: part/templates/part/part_pricing.html:40 part/templates/part/prices.html:43 -#: templates/js/translated/bom.js:991 +#: templates/js/translated/bom.js:989 msgid "No supplier pricing available" msgstr "" @@ -5414,6 +5422,18 @@ msgstr "" msgid "No pricing information is available for this part." msgstr "" +#: part/templates/part/part_scheduling.html:13 +#: report/templates/report/inventree_test_report_base.html:97 +#: templates/InvenTree/settings/plugin.html:53 +#: templates/InvenTree/settings/plugin_settings.html:38 +#: templates/js/translated/order.js:1772 templates/js/translated/stock.js:2468 +msgid "Date" +msgstr "" + +#: part/templates/part/part_scheduling.html:14 +msgid "Scheduled Quantity" +msgstr "" + #: part/templates/part/part_sidebar.html:11 msgid "Variants" msgstr "" @@ -5462,7 +5482,7 @@ msgstr "" msgid "Calculation parameters" msgstr "" -#: part/templates/part/prices.html:160 templates/js/translated/bom.js:985 +#: part/templates/part/prices.html:160 templates/js/translated/bom.js:983 msgid "Supplier Cost" msgstr "" @@ -5501,7 +5521,7 @@ msgid "No sale pice history available for this part." msgstr "" #: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616 -#: templates/js/translated/part.js:1294 templates/js/translated/part.js:1498 +#: templates/js/translated/part.js:1294 msgid "No Stock" msgstr "" @@ -5893,11 +5913,11 @@ msgstr "" #: report/templates/report/inventree_test_report_base.html:79 #: stock/models.py:648 stock/templates/stock/item_base.html:322 -#: templates/js/translated/build.js:424 templates/js/translated/build.js:576 -#: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673 +#: templates/js/translated/build.js:456 templates/js/translated/build.js:608 +#: templates/js/translated/build.js:1208 templates/js/translated/build.js:1705 #: templates/js/translated/model_renderers.js:118 -#: templates/js/translated/order.js:118 templates/js/translated/order.js:3297 -#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490 +#: templates/js/translated/order.js:119 templates/js/translated/order.js:3336 +#: templates/js/translated/order.js:3423 templates/js/translated/stock.js:490 msgid "Serial Number" msgstr "" @@ -5915,13 +5935,6 @@ msgstr "" msgid "Result" msgstr "" -#: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:53 -#: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468 -msgid "Date" -msgstr "" - #: report/templates/report/inventree_test_report_base.html:108 msgid "Pass" msgstr "" @@ -6519,7 +6532,7 @@ msgid "Available Quantity" msgstr "" #: stock/templates/stock/item_base.html:394 -#: templates/js/translated/build.js:1695 +#: templates/js/translated/build.js:1727 msgid "No location set" msgstr "" @@ -7702,7 +7715,7 @@ msgid "The following parts are low on required stock" msgstr "" #: templates/email/build_order_required_stock.html:18 -#: templates/js/translated/bom.js:1483 +#: templates/js/translated/bom.js:1481 msgid "Required Quantity" msgstr "" @@ -7716,6 +7729,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:19 +#: templates/js/translated/part.js:2498 msgid "Minimum Quantity" msgstr "" @@ -7917,10 +7931,10 @@ msgstr "" msgid "Row Data" msgstr "" -#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:622 +#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:620 #: templates/js/translated/modals.js:56 templates/js/translated/modals.js:601 #: templates/js/translated/modals.js:695 templates/js/translated/modals.js:1003 -#: templates/js/translated/order.js:979 templates/modals.html:15 +#: templates/js/translated/order.js:1018 templates/modals.html:15 #: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50 msgid "Close" msgstr "" @@ -7930,12 +7944,12 @@ msgid "Download BOM Template" msgstr "" #: templates/js/translated/bom.js:253 templates/js/translated/bom.js:287 -#: templates/js/translated/order.js:760 templates/js/translated/tables.js:145 +#: templates/js/translated/order.js:799 templates/js/translated/tables.js:145 msgid "Format" msgstr "" #: templates/js/translated/bom.js:254 templates/js/translated/bom.js:288 -#: templates/js/translated/order.js:761 +#: templates/js/translated/order.js:800 msgid "Select file format" msgstr "" @@ -7991,390 +8005,390 @@ msgstr "" msgid "Remove substitute part" msgstr "" -#: templates/js/translated/bom.js:567 +#: templates/js/translated/bom.js:565 msgid "Select and add a new substitute part using the input below" msgstr "" -#: templates/js/translated/bom.js:578 +#: templates/js/translated/bom.js:576 msgid "Are you sure you wish to remove this substitute part link?" msgstr "" -#: templates/js/translated/bom.js:584 +#: templates/js/translated/bom.js:582 msgid "Remove Substitute Part" msgstr "" -#: templates/js/translated/bom.js:623 +#: templates/js/translated/bom.js:621 msgid "Add Substitute" msgstr "" -#: templates/js/translated/bom.js:624 +#: templates/js/translated/bom.js:622 msgid "Edit BOM Item Substitutes" msgstr "" -#: templates/js/translated/bom.js:686 +#: templates/js/translated/bom.js:684 msgid "All selected BOM items will be deleted" msgstr "" -#: templates/js/translated/bom.js:702 +#: templates/js/translated/bom.js:700 msgid "Delete selected BOM items?" msgstr "" -#: templates/js/translated/bom.js:821 +#: templates/js/translated/bom.js:819 msgid "Load BOM for subassembly" msgstr "" -#: templates/js/translated/bom.js:831 +#: templates/js/translated/bom.js:829 msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:835 templates/js/translated/build.js:1771 +#: templates/js/translated/bom.js:833 templates/js/translated/build.js:1803 msgid "Variant stock allowed" msgstr "" -#: templates/js/translated/bom.js:929 templates/js/translated/build.js:1816 -#: templates/js/translated/order.js:3632 +#: templates/js/translated/bom.js:927 templates/js/translated/build.js:1849 +#: templates/js/translated/order.js:3671 msgid "No Stock Available" msgstr "" -#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1820 +#: templates/js/translated/bom.js:932 templates/js/translated/build.js:1853 msgid "Includes variant and substitute stock" msgstr "" -#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822 +#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1855 #: templates/js/translated/part.js:763 msgid "Includes variant stock" msgstr "" -#: templates/js/translated/bom.js:938 templates/js/translated/build.js:1824 +#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1857 msgid "Includes substitute stock" msgstr "" -#: templates/js/translated/bom.js:956 +#: templates/js/translated/bom.js:954 msgid "Substitutes" msgstr "" -#: templates/js/translated/bom.js:971 +#: templates/js/translated/bom.js:969 msgid "Purchase Price Range" msgstr "" -#: templates/js/translated/bom.js:978 +#: templates/js/translated/bom.js:976 msgid "Purchase Price Average" msgstr "" -#: templates/js/translated/bom.js:1027 templates/js/translated/bom.js:1147 +#: templates/js/translated/bom.js:1025 templates/js/translated/bom.js:1145 msgid "View BOM" msgstr "" -#: templates/js/translated/bom.js:1054 +#: templates/js/translated/bom.js:1052 msgid "Including On Order" msgstr "" -#: templates/js/translated/bom.js:1118 +#: templates/js/translated/bom.js:1116 msgid "Validate BOM Item" msgstr "" -#: templates/js/translated/bom.js:1120 +#: templates/js/translated/bom.js:1118 msgid "This line has been validated" msgstr "" -#: templates/js/translated/bom.js:1122 +#: templates/js/translated/bom.js:1120 msgid "Edit substitute parts" msgstr "" -#: templates/js/translated/bom.js:1124 templates/js/translated/bom.js:1286 +#: templates/js/translated/bom.js:1122 templates/js/translated/bom.js:1284 msgid "Edit BOM Item" msgstr "" -#: templates/js/translated/bom.js:1126 +#: templates/js/translated/bom.js:1124 msgid "Delete BOM Item" msgstr "" -#: templates/js/translated/bom.js:1222 templates/js/translated/build.js:1617 +#: templates/js/translated/bom.js:1220 templates/js/translated/build.js:1649 msgid "No BOM items found" msgstr "" -#: templates/js/translated/bom.js:1466 templates/js/translated/build.js:1755 +#: templates/js/translated/bom.js:1464 templates/js/translated/build.js:1787 msgid "Required Part" msgstr "" -#: templates/js/translated/bom.js:1488 +#: templates/js/translated/bom.js:1486 msgid "Inherited from parent BOM" msgstr "" -#: templates/js/translated/build.js:86 +#: templates/js/translated/build.js:89 msgid "Edit Build Order" msgstr "" -#: templates/js/translated/build.js:120 +#: templates/js/translated/build.js:132 msgid "Create Build Order" msgstr "" -#: templates/js/translated/build.js:133 +#: templates/js/translated/build.js:165 msgid "Cancel Build Order" msgstr "" -#: templates/js/translated/build.js:142 +#: templates/js/translated/build.js:174 msgid "Are you sure you wish to cancel this build?" msgstr "" -#: templates/js/translated/build.js:148 +#: templates/js/translated/build.js:180 msgid "Stock items have been allocated to this build order" msgstr "" -#: templates/js/translated/build.js:155 +#: templates/js/translated/build.js:187 msgid "There are incomplete outputs remaining for this build order" msgstr "" -#: templates/js/translated/build.js:185 +#: templates/js/translated/build.js:217 msgid "Build order is ready to be completed" msgstr "" -#: templates/js/translated/build.js:190 +#: templates/js/translated/build.js:222 msgid "Build Order is incomplete" msgstr "" -#: templates/js/translated/build.js:222 +#: templates/js/translated/build.js:254 msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:263 templates/js/translated/stock.js:92 +#: templates/js/translated/build.js:295 templates/js/translated/stock.js:92 #: templates/js/translated/stock.js:214 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:265 templates/js/translated/stock.js:94 +#: templates/js/translated/build.js:297 templates/js/translated/stock.js:94 #: templates/js/translated/stock.js:216 msgid "Latest serial number" msgstr "" -#: templates/js/translated/build.js:274 +#: templates/js/translated/build.js:306 msgid "The Bill of Materials contains trackable parts" msgstr "" -#: templates/js/translated/build.js:275 +#: templates/js/translated/build.js:307 msgid "Build outputs must be generated individually" msgstr "" -#: templates/js/translated/build.js:283 +#: templates/js/translated/build.js:315 msgid "Trackable parts can have serial numbers specified" msgstr "" -#: templates/js/translated/build.js:284 +#: templates/js/translated/build.js:316 msgid "Enter serial numbers to generate multiple single build outputs" msgstr "" -#: templates/js/translated/build.js:291 +#: templates/js/translated/build.js:323 msgid "Create Build Output" msgstr "" -#: templates/js/translated/build.js:322 +#: templates/js/translated/build.js:354 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:333 +#: templates/js/translated/build.js:365 msgid "Unallocate stock from build output" msgstr "" -#: templates/js/translated/build.js:342 +#: templates/js/translated/build.js:374 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:350 +#: templates/js/translated/build.js:382 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:373 +#: templates/js/translated/build.js:405 msgid "Are you sure you wish to unallocate stock items from this build?" msgstr "" -#: templates/js/translated/build.js:391 +#: templates/js/translated/build.js:423 msgid "Unallocate Stock Items" msgstr "" -#: templates/js/translated/build.js:411 templates/js/translated/build.js:563 +#: templates/js/translated/build.js:443 templates/js/translated/build.js:595 msgid "Select Build Outputs" msgstr "" -#: templates/js/translated/build.js:412 templates/js/translated/build.js:564 +#: templates/js/translated/build.js:444 templates/js/translated/build.js:596 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:466 templates/js/translated/build.js:618 +#: templates/js/translated/build.js:498 templates/js/translated/build.js:650 msgid "Output" msgstr "" -#: templates/js/translated/build.js:484 +#: templates/js/translated/build.js:516 msgid "Complete Build Outputs" msgstr "" -#: templates/js/translated/build.js:631 +#: templates/js/translated/build.js:663 msgid "Delete Build Outputs" msgstr "" -#: templates/js/translated/build.js:720 +#: templates/js/translated/build.js:752 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:757 +#: templates/js/translated/build.js:789 msgid "Location not specified" msgstr "" -#: templates/js/translated/build.js:1136 +#: templates/js/translated/build.js:1168 msgid "No active build outputs found" msgstr "" -#: templates/js/translated/build.js:1205 +#: templates/js/translated/build.js:1237 msgid "Allocated Stock" msgstr "" -#: templates/js/translated/build.js:1212 +#: templates/js/translated/build.js:1244 msgid "No tracked BOM items for this build" msgstr "" -#: templates/js/translated/build.js:1234 +#: templates/js/translated/build.js:1266 msgid "Completed Tests" msgstr "" -#: templates/js/translated/build.js:1239 +#: templates/js/translated/build.js:1271 msgid "No required tests for this build" msgstr "" -#: templates/js/translated/build.js:1712 templates/js/translated/build.js:2656 -#: templates/js/translated/order.js:3332 +#: templates/js/translated/build.js:1744 templates/js/translated/build.js:2689 +#: templates/js/translated/order.js:3371 msgid "Edit stock allocation" msgstr "" -#: templates/js/translated/build.js:1714 templates/js/translated/build.js:2657 -#: templates/js/translated/order.js:3333 +#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2690 +#: templates/js/translated/order.js:3372 msgid "Delete stock allocation" msgstr "" -#: templates/js/translated/build.js:1732 +#: templates/js/translated/build.js:1764 msgid "Edit Allocation" msgstr "" -#: templates/js/translated/build.js:1742 +#: templates/js/translated/build.js:1774 msgid "Remove Allocation" msgstr "" -#: templates/js/translated/build.js:1767 +#: templates/js/translated/build.js:1799 msgid "Substitute parts available" msgstr "" -#: templates/js/translated/build.js:1784 +#: templates/js/translated/build.js:1816 msgid "Quantity Per" msgstr "" -#: templates/js/translated/build.js:1810 templates/js/translated/order.js:3639 +#: templates/js/translated/build.js:1843 templates/js/translated/order.js:3678 msgid "Insufficient stock available" msgstr "" -#: templates/js/translated/build.js:1812 templates/js/translated/order.js:3637 +#: templates/js/translated/build.js:1845 templates/js/translated/order.js:3676 msgid "Sufficient stock available" msgstr "" -#: templates/js/translated/build.js:1841 templates/js/translated/build.js:2086 -#: templates/js/translated/build.js:2652 templates/js/translated/order.js:3651 +#: templates/js/translated/build.js:1874 templates/js/translated/build.js:2119 +#: templates/js/translated/build.js:2685 templates/js/translated/order.js:3690 msgid "Allocated" msgstr "" -#: templates/js/translated/build.js:1889 templates/js/translated/order.js:3731 +#: templates/js/translated/build.js:1922 templates/js/translated/order.js:3770 msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:1893 templates/stock_table.html:50 +#: templates/js/translated/build.js:1926 templates/stock_table.html:50 msgid "Order stock" msgstr "" -#: templates/js/translated/build.js:1896 templates/js/translated/order.js:3724 +#: templates/js/translated/build.js:1929 templates/js/translated/order.js:3763 msgid "Allocate stock" msgstr "" -#: templates/js/translated/build.js:1935 templates/js/translated/label.js:172 -#: templates/js/translated/order.js:807 templates/js/translated/order.js:2859 +#: templates/js/translated/build.js:1968 templates/js/translated/label.js:172 +#: templates/js/translated/order.js:846 templates/js/translated/order.js:2898 #: templates/js/translated/report.js:225 msgid "Select Parts" msgstr "" -#: templates/js/translated/build.js:1936 templates/js/translated/order.js:2860 +#: templates/js/translated/build.js:1969 templates/js/translated/order.js:2899 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1985 templates/js/translated/order.js:2808 +#: templates/js/translated/build.js:2018 templates/js/translated/order.js:2847 msgid "Specify stock allocation quantity" msgstr "" -#: templates/js/translated/build.js:2059 +#: templates/js/translated/build.js:2092 msgid "All Parts Allocated" msgstr "" -#: templates/js/translated/build.js:2060 +#: templates/js/translated/build.js:2093 msgid "All selected parts have been fully allocated" msgstr "" -#: templates/js/translated/build.js:2074 templates/js/translated/order.js:2874 +#: templates/js/translated/build.js:2107 templates/js/translated/order.js:2913 msgid "Select source location (leave blank to take from all locations)" msgstr "" -#: templates/js/translated/build.js:2102 +#: templates/js/translated/build.js:2135 msgid "Allocate Stock Items to Build Order" msgstr "" -#: templates/js/translated/build.js:2113 templates/js/translated/order.js:2971 +#: templates/js/translated/build.js:2146 templates/js/translated/order.js:3010 msgid "No matching stock locations" msgstr "" -#: templates/js/translated/build.js:2185 templates/js/translated/order.js:3048 +#: templates/js/translated/build.js:2218 templates/js/translated/order.js:3087 msgid "No matching stock items" msgstr "" -#: templates/js/translated/build.js:2282 +#: templates/js/translated/build.js:2315 msgid "Automatic Stock Allocation" msgstr "" -#: templates/js/translated/build.js:2283 +#: templates/js/translated/build.js:2316 msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines" msgstr "" -#: templates/js/translated/build.js:2285 +#: templates/js/translated/build.js:2318 msgid "If a location is specifed, stock will only be allocated from that location" msgstr "" -#: templates/js/translated/build.js:2286 +#: templates/js/translated/build.js:2319 msgid "If stock is considered interchangeable, it will be allocated from the first location it is found" msgstr "" -#: templates/js/translated/build.js:2287 +#: templates/js/translated/build.js:2320 msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found" msgstr "" -#: templates/js/translated/build.js:2308 +#: templates/js/translated/build.js:2341 msgid "Allocate Stock Items" msgstr "" -#: templates/js/translated/build.js:2414 +#: templates/js/translated/build.js:2447 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387 -#: templates/js/translated/part.js:1899 templates/js/translated/stock.js:1686 +#: templates/js/translated/build.js:2482 templates/js/translated/part.js:1387 +#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1686 #: templates/js/translated/stock.js:2386 msgid "Select" msgstr "" -#: templates/js/translated/build.js:2463 +#: templates/js/translated/build.js:2496 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:2491 +#: templates/js/translated/build.js:2524 msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647 +#: templates/js/translated/build.js:2560 templates/js/translated/stock.js:2647 msgid "No user information" msgstr "" -#: templates/js/translated/build.js:2633 +#: templates/js/translated/build.js:2666 msgid "No parts allocated for" msgstr "" @@ -8390,11 +8404,11 @@ msgstr "" msgid "Edit Manufacturer Part" msgstr "" -#: templates/js/translated/company.js:167 templates/js/translated/order.js:509 +#: templates/js/translated/company.js:167 templates/js/translated/order.js:510 msgid "Add Supplier" msgstr "" -#: templates/js/translated/company.js:195 templates/js/translated/order.js:628 +#: templates/js/translated/company.js:195 templates/js/translated/order.js:667 msgid "Add Supplier Part" msgstr "" @@ -8765,381 +8779,385 @@ msgstr "" msgid "Notifications will load here" msgstr "" -#: templates/js/translated/order.js:94 +#: templates/js/translated/order.js:95 msgid "No stock items have been allocated to this shipment" msgstr "" -#: templates/js/translated/order.js:99 +#: templates/js/translated/order.js:100 msgid "The following stock items will be shipped" msgstr "" -#: templates/js/translated/order.js:139 +#: templates/js/translated/order.js:140 msgid "Complete Shipment" msgstr "" -#: templates/js/translated/order.js:159 +#: templates/js/translated/order.js:160 msgid "Confirm Shipment" msgstr "" -#: templates/js/translated/order.js:215 +#: templates/js/translated/order.js:216 msgid "No pending shipments found" msgstr "" -#: templates/js/translated/order.js:219 +#: templates/js/translated/order.js:220 msgid "No stock items have been allocated to pending shipments" msgstr "" -#: templates/js/translated/order.js:251 +#: templates/js/translated/order.js:252 msgid "Skip" msgstr "" -#: templates/js/translated/order.js:281 +#: templates/js/translated/order.js:282 msgid "Complete Purchase Order" msgstr "" -#: templates/js/translated/order.js:287 +#: templates/js/translated/order.js:288 msgid "Mark this order as complete?" msgstr "" -#: templates/js/translated/order.js:293 +#: templates/js/translated/order.js:294 msgid "All line items have been received" msgstr "" -#: templates/js/translated/order.js:298 +#: templates/js/translated/order.js:299 msgid "This order has line items which have not been marked as received." msgstr "" -#: templates/js/translated/order.js:299 +#: templates/js/translated/order.js:300 msgid "Completing this order means that the order and line items will no longer be editable." msgstr "" -#: templates/js/translated/order.js:322 +#: templates/js/translated/order.js:323 msgid "Cancel Purchase Order" msgstr "" -#: templates/js/translated/order.js:327 +#: templates/js/translated/order.js:328 msgid "Are you sure you wish to cancel this purchase order?" msgstr "" -#: templates/js/translated/order.js:333 +#: templates/js/translated/order.js:334 msgid "This purchase order can not be cancelled" msgstr "" -#: templates/js/translated/order.js:356 +#: templates/js/translated/order.js:357 msgid "Issue Purchase Order" msgstr "" -#: templates/js/translated/order.js:361 +#: templates/js/translated/order.js:362 msgid "After placing this purchase order, line items will no longer be editable." msgstr "" -#: templates/js/translated/order.js:383 +#: templates/js/translated/order.js:384 msgid "Cancel Sales Order" msgstr "" -#: templates/js/translated/order.js:388 +#: templates/js/translated/order.js:389 msgid "Cancelling this order means that the order will no longer be editable." msgstr "" -#: templates/js/translated/order.js:442 +#: templates/js/translated/order.js:443 msgid "Create New Shipment" msgstr "" -#: templates/js/translated/order.js:467 +#: templates/js/translated/order.js:468 msgid "Add Customer" msgstr "" -#: templates/js/translated/order.js:492 +#: templates/js/translated/order.js:493 msgid "Create Sales Order" msgstr "" -#: templates/js/translated/order.js:757 +#: templates/js/translated/order.js:554 +msgid "Edit Purchase Order" +msgstr "" + +#: templates/js/translated/order.js:796 msgid "Export Order" msgstr "" -#: templates/js/translated/order.js:808 +#: templates/js/translated/order.js:847 msgid "At least one purchaseable part must be selected" msgstr "" -#: templates/js/translated/order.js:833 +#: templates/js/translated/order.js:872 msgid "Quantity to order" msgstr "" -#: templates/js/translated/order.js:842 +#: templates/js/translated/order.js:881 msgid "New supplier part" msgstr "" -#: templates/js/translated/order.js:860 +#: templates/js/translated/order.js:899 msgid "New purchase order" msgstr "" -#: templates/js/translated/order.js:893 +#: templates/js/translated/order.js:932 msgid "Add to purchase order" msgstr "" -#: templates/js/translated/order.js:1002 +#: templates/js/translated/order.js:1041 msgid "No matching supplier parts" msgstr "" -#: templates/js/translated/order.js:1017 +#: templates/js/translated/order.js:1056 msgid "No matching purchase orders" msgstr "" -#: templates/js/translated/order.js:1194 +#: templates/js/translated/order.js:1233 msgid "Select Line Items" msgstr "" -#: templates/js/translated/order.js:1195 +#: templates/js/translated/order.js:1234 msgid "At least one line item must be selected" msgstr "" -#: templates/js/translated/order.js:1215 templates/js/translated/order.js:1314 +#: templates/js/translated/order.js:1254 templates/js/translated/order.js:1353 msgid "Add batch code" msgstr "" -#: templates/js/translated/order.js:1221 templates/js/translated/order.js:1325 +#: templates/js/translated/order.js:1260 templates/js/translated/order.js:1364 msgid "Add serial numbers" msgstr "" -#: templates/js/translated/order.js:1233 +#: templates/js/translated/order.js:1272 msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144 +#: templates/js/translated/order.js:1336 templates/js/translated/stock.js:2144 msgid "Stock Status" msgstr "" -#: templates/js/translated/order.js:1388 +#: templates/js/translated/order.js:1427 msgid "Order Code" msgstr "" -#: templates/js/translated/order.js:1389 +#: templates/js/translated/order.js:1428 msgid "Ordered" msgstr "" -#: templates/js/translated/order.js:1391 +#: templates/js/translated/order.js:1430 msgid "Quantity to Receive" msgstr "" -#: templates/js/translated/order.js:1410 +#: templates/js/translated/order.js:1449 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/order.js:1411 +#: templates/js/translated/order.js:1450 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943 +#: templates/js/translated/order.js:1711 templates/js/translated/part.js:943 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/order.js:1699 templates/js/translated/order.js:2503 +#: templates/js/translated/order.js:1738 templates/js/translated/order.js:2542 msgid "Order is overdue" msgstr "" -#: templates/js/translated/order.js:1749 templates/js/translated/order.js:2568 -#: templates/js/translated/order.js:2709 +#: templates/js/translated/order.js:1788 templates/js/translated/order.js:2607 +#: templates/js/translated/order.js:2748 msgid "Items" msgstr "" -#: templates/js/translated/order.js:1847 templates/js/translated/order.js:3783 +#: templates/js/translated/order.js:1886 templates/js/translated/order.js:3822 msgid "Duplicate Line Item" msgstr "" -#: templates/js/translated/order.js:1864 templates/js/translated/order.js:3805 +#: templates/js/translated/order.js:1903 templates/js/translated/order.js:3844 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/order.js:1877 templates/js/translated/order.js:3816 +#: templates/js/translated/order.js:1916 templates/js/translated/order.js:3855 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/order.js:1920 +#: templates/js/translated/order.js:1959 msgid "No line items found" msgstr "" -#: templates/js/translated/order.js:1947 templates/js/translated/order.js:3517 +#: templates/js/translated/order.js:1986 templates/js/translated/order.js:3556 msgid "Total" msgstr "" -#: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203 -#: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050 -#: templates/js/translated/part.js:2135 templates/js/translated/part.js:2488 +#: templates/js/translated/order.js:2040 templates/js/translated/order.js:2242 +#: templates/js/translated/order.js:3581 templates/js/translated/order.js:4089 +#: templates/js/translated/part.js:2131 templates/js/translated/part.js:2703 msgid "Unit Price" msgstr "" -#: templates/js/translated/order.js:2016 templates/js/translated/order.js:2219 -#: templates/js/translated/order.js:3558 templates/js/translated/order.js:4066 +#: templates/js/translated/order.js:2055 templates/js/translated/order.js:2258 +#: templates/js/translated/order.js:3597 templates/js/translated/order.js:4105 msgid "Total Price" msgstr "" -#: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600 +#: templates/js/translated/order.js:2096 templates/js/translated/order.js:3639 #: templates/js/translated/part.js:1050 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096 +#: templates/js/translated/order.js:2155 templates/js/translated/part.js:1096 msgid "Receive line item" msgstr "" -#: templates/js/translated/order.js:2120 templates/js/translated/order.js:3737 +#: templates/js/translated/order.js:2159 templates/js/translated/order.js:3776 msgid "Duplicate line item" msgstr "" -#: templates/js/translated/order.js:2121 templates/js/translated/order.js:3738 +#: templates/js/translated/order.js:2160 templates/js/translated/order.js:3777 msgid "Edit line item" msgstr "" -#: templates/js/translated/order.js:2122 templates/js/translated/order.js:3742 +#: templates/js/translated/order.js:2161 templates/js/translated/order.js:3781 msgid "Delete line item" msgstr "" -#: templates/js/translated/order.js:2268 templates/js/translated/order.js:4115 +#: templates/js/translated/order.js:2307 templates/js/translated/order.js:4154 msgid "Duplicate line" msgstr "" -#: templates/js/translated/order.js:2269 templates/js/translated/order.js:4116 +#: templates/js/translated/order.js:2308 templates/js/translated/order.js:4155 msgid "Edit line" msgstr "" -#: templates/js/translated/order.js:2270 templates/js/translated/order.js:4117 +#: templates/js/translated/order.js:2309 templates/js/translated/order.js:4156 msgid "Delete line" msgstr "" -#: templates/js/translated/order.js:2300 templates/js/translated/order.js:4147 +#: templates/js/translated/order.js:2339 templates/js/translated/order.js:4186 msgid "Duplicate Line" msgstr "" -#: templates/js/translated/order.js:2321 templates/js/translated/order.js:4168 +#: templates/js/translated/order.js:2360 templates/js/translated/order.js:4207 msgid "Edit Line" msgstr "" -#: templates/js/translated/order.js:2332 templates/js/translated/order.js:4179 +#: templates/js/translated/order.js:2371 templates/js/translated/order.js:4218 msgid "Delete Line" msgstr "" -#: templates/js/translated/order.js:2343 +#: templates/js/translated/order.js:2382 msgid "No matching line" msgstr "" -#: templates/js/translated/order.js:2454 +#: templates/js/translated/order.js:2493 msgid "No sales orders found" msgstr "" -#: templates/js/translated/order.js:2517 +#: templates/js/translated/order.js:2556 msgid "Invalid Customer" msgstr "" -#: templates/js/translated/order.js:2615 +#: templates/js/translated/order.js:2654 msgid "Edit shipment" msgstr "" -#: templates/js/translated/order.js:2618 +#: templates/js/translated/order.js:2657 msgid "Complete shipment" msgstr "" -#: templates/js/translated/order.js:2623 +#: templates/js/translated/order.js:2662 msgid "Delete shipment" msgstr "" -#: templates/js/translated/order.js:2643 +#: templates/js/translated/order.js:2682 msgid "Edit Shipment" msgstr "" -#: templates/js/translated/order.js:2660 +#: templates/js/translated/order.js:2699 msgid "Delete Shipment" msgstr "" -#: templates/js/translated/order.js:2694 +#: templates/js/translated/order.js:2733 msgid "No matching shipments found" msgstr "" -#: templates/js/translated/order.js:2704 +#: templates/js/translated/order.js:2743 msgid "Shipment Reference" msgstr "" -#: templates/js/translated/order.js:2728 +#: templates/js/translated/order.js:2767 msgid "Not shipped" msgstr "" -#: templates/js/translated/order.js:2734 +#: templates/js/translated/order.js:2773 msgid "Tracking" msgstr "" -#: templates/js/translated/order.js:2738 +#: templates/js/translated/order.js:2777 msgid "Invoice" msgstr "" -#: templates/js/translated/order.js:2907 +#: templates/js/translated/order.js:2946 msgid "Add Shipment" msgstr "" -#: templates/js/translated/order.js:2958 +#: templates/js/translated/order.js:2997 msgid "Confirm stock allocation" msgstr "" -#: templates/js/translated/order.js:2959 +#: templates/js/translated/order.js:2998 msgid "Allocate Stock Items to Sales Order" msgstr "" -#: templates/js/translated/order.js:3167 +#: templates/js/translated/order.js:3206 msgid "No sales order allocations found" msgstr "" -#: templates/js/translated/order.js:3246 +#: templates/js/translated/order.js:3285 msgid "Edit Stock Allocation" msgstr "" -#: templates/js/translated/order.js:3263 +#: templates/js/translated/order.js:3302 msgid "Confirm Delete Operation" msgstr "" -#: templates/js/translated/order.js:3264 +#: templates/js/translated/order.js:3303 msgid "Delete Stock Allocation" msgstr "" -#: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398 +#: templates/js/translated/order.js:3348 templates/js/translated/order.js:3437 #: templates/js/translated/stock.js:1602 msgid "Shipped to customer" msgstr "" -#: templates/js/translated/order.js:3317 templates/js/translated/order.js:3407 +#: templates/js/translated/order.js:3356 templates/js/translated/order.js:3446 msgid "Stock location not specified" msgstr "" -#: templates/js/translated/order.js:3721 +#: templates/js/translated/order.js:3760 msgid "Allocate serial numbers" msgstr "" -#: templates/js/translated/order.js:3727 +#: templates/js/translated/order.js:3766 msgid "Purchase stock" msgstr "" -#: templates/js/translated/order.js:3734 templates/js/translated/order.js:3932 +#: templates/js/translated/order.js:3773 templates/js/translated/order.js:3971 msgid "Calculate price" msgstr "" -#: templates/js/translated/order.js:3746 +#: templates/js/translated/order.js:3785 msgid "Cannot be deleted as items have been shipped" msgstr "" -#: templates/js/translated/order.js:3749 +#: templates/js/translated/order.js:3788 msgid "Cannot be deleted as items have been allocated" msgstr "" -#: templates/js/translated/order.js:3831 +#: templates/js/translated/order.js:3870 msgid "Allocate Serial Numbers" msgstr "" -#: templates/js/translated/order.js:3940 +#: templates/js/translated/order.js:3979 msgid "Update Unit Price" msgstr "" -#: templates/js/translated/order.js:3954 +#: templates/js/translated/order.js:3993 msgid "No matching line items" msgstr "" -#: templates/js/translated/order.js:4190 +#: templates/js/translated/order.js:4229 msgid "No matching lines" msgstr "" @@ -9319,12 +9337,12 @@ msgstr "" msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:586 templates/js/translated/part.js:1470 +#: templates/js/translated/part.js:586 templates/js/translated/part.js:1478 #: templates/js/translated/table_filters.js:468 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:596 templates/js/translated/part.js:1482 +#: templates/js/translated/part.js:596 msgid "No stock available" msgstr "" @@ -9356,7 +9374,7 @@ msgstr "" msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1553 +#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1549 msgid "No parts found" msgstr "" @@ -9368,100 +9386,124 @@ msgstr "" msgid "No category" msgstr "" -#: templates/js/translated/part.js:1577 templates/js/translated/part.js:1820 +#: templates/js/translated/part.js:1476 +msgid "No stock" +msgstr "" + +#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816 #: templates/js/translated/stock.js:2347 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:1593 +#: templates/js/translated/part.js:1589 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:1659 +#: templates/js/translated/part.js:1655 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:1664 +#: templates/js/translated/part.js:1660 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:1669 +#: templates/js/translated/part.js:1665 msgid "Select Part Category" msgstr "" -#: templates/js/translated/part.js:1682 +#: templates/js/translated/part.js:1678 msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1839 templates/js/translated/stock.js:2366 +#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2366 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:1918 +#: templates/js/translated/part.js:1914 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:1934 +#: templates/js/translated/part.js:1930 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:1992 +#: templates/js/translated/part.js:1988 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2043 templates/js/translated/stock.js:1299 +#: templates/js/translated/part.js:2039 templates/js/translated/stock.js:1299 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:2044 templates/js/translated/stock.js:1300 +#: templates/js/translated/part.js:2040 templates/js/translated/stock.js:1300 #: templates/js/translated/stock.js:1560 msgid "Delete test result" msgstr "" -#: templates/js/translated/part.js:2050 +#: templates/js/translated/part.js:2046 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2072 +#: templates/js/translated/part.js:2068 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2086 +#: templates/js/translated/part.js:2082 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2111 +#: templates/js/translated/part.js:2107 #, python-brace-format msgid "No ${human_name} information found" msgstr "" -#: templates/js/translated/part.js:2168 +#: templates/js/translated/part.js:2164 #, python-brace-format msgid "Edit ${human_name}" msgstr "" -#: templates/js/translated/part.js:2169 +#: templates/js/translated/part.js:2165 #, python-brace-format msgid "Delete ${human_name}" msgstr "" -#: templates/js/translated/part.js:2283 -msgid "Current Stock" +#: templates/js/translated/part.js:2330 templates/js/translated/part.js:2331 +msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:2316 +#: templates/js/translated/part.js:2333 +msgid "Specified date is in the past" +msgstr "" + +#: templates/js/translated/part.js:2339 +msgid "Speculative" +msgstr "" + +#: templates/js/translated/part.js:2389 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2342 +#: templates/js/translated/part.js:2395 +msgid "Error fetching scheduling information for this part" +msgstr "" + +#: templates/js/translated/part.js:2491 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2412 +#: templates/js/translated/part.js:2507 +msgid "Maximum Quantity" +msgstr "" + +#: templates/js/translated/part.js:2533 +msgid "Minimum Stock Level" +msgstr "" + +#: templates/js/translated/part.js:2627 msgid "Single Price" msgstr "" -#: templates/js/translated/part.js:2431 +#: templates/js/translated/part.js:2646 msgid "Single Price Difference" msgstr "" @@ -10222,10 +10264,6 @@ msgstr "" msgid "Hide/Show pagination" msgstr "" -#: templates/js/translated/tables.js:558 -msgid "Refresh" -msgstr "" - #: templates/js/translated/tables.js:561 msgid "Toggle" msgstr "" diff --git a/InvenTree/locale/de/LC_MESSAGES/django.po b/InvenTree/locale/de/LC_MESSAGES/django.po index e978214c03..c7951c5d42 100644 --- a/InvenTree/locale/de/LC_MESSAGES/django.po +++ b/InvenTree/locale/de/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-16 11:53+0000\n" -"PO-Revision-Date: 2022-08-16 21:36\n" +"POT-Creation-Date: 2022-08-18 05:14+0000\n" +"PO-Revision-Date: 2022-08-18 21:39\n" "Last-Translator: \n" "Language-Team: German\n" "Language: de_DE\n" @@ -40,10 +40,10 @@ msgstr "Datum eingeben" #: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825 #: stock/serializers.py:924 stock/serializers.py:1056 #: stock/templates/stock/stock_sidebar.html:25 -#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101 -#: templates/js/translated/company.js:964 templates/js/translated/order.js:2104 -#: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753 -#: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102 +#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1099 +#: templates/js/translated/company.js:964 templates/js/translated/order.js:2143 +#: templates/js/translated/order.js:2294 templates/js/translated/order.js:2792 +#: templates/js/translated/order.js:3743 templates/js/translated/order.js:4141 #: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980 msgid "Notes" msgstr "Notizen" @@ -211,11 +211,11 @@ msgstr "Datei zum Anhängen auswählen" #: InvenTree/models.py:402 company/models.py:124 company/models.py:276 #: company/models.py:510 order/models.py:84 order/models.py:1245 -#: part/models.py:802 +#: part/models.py:802 part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_base.html:164 #: templates/js/translated/company.js:656 -#: templates/js/translated/company.js:948 templates/js/translated/order.js:2742 -#: templates/js/translated/part.js:1514 +#: templates/js/translated/company.js:948 templates/js/translated/order.js:2781 +#: templates/js/translated/part.js:1510 msgid "Link" msgstr "Link" @@ -235,8 +235,8 @@ msgstr "Datei-Kommentar" #: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665 #: common/models.py:1666 common/models.py:1889 common/models.py:1890 -#: common/models.py:2152 common/models.py:2153 part/models.py:2200 -#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257 +#: common/models.py:2152 common/models.py:2153 part/models.py:2247 +#: part/models.py:2267 plugin/models.py:256 plugin/models.py:257 #: report/templates/report/inventree_test_report_base.html:96 #: templates/js/translated/stock.js:2641 msgid "User" @@ -277,7 +277,7 @@ msgstr "Ungültige Auswahl" #: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875 #: company/models.py:358 label/models.py:101 part/models.py:746 -#: part/models.py:2378 plugin/models.py:94 report/models.py:152 +#: part/models.py:2425 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 #: templates/InvenTree/settings/plugin.html:51 #: templates/InvenTree/settings/plugin.html:134 @@ -287,7 +287,7 @@ msgstr "Ungültige Auswahl" #: templates/js/translated/company.js:758 #: templates/js/translated/notification.js:71 #: templates/js/translated/part.js:688 templates/js/translated/part.js:840 -#: templates/js/translated/part.js:1906 templates/js/translated/stock.js:2392 +#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2392 msgid "Name" msgstr "Name" @@ -297,19 +297,20 @@ msgstr "Name" #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:87 label/models.py:108 #: order/models.py:82 part/models.py:769 part/templates/part/category.html:80 -#: part/templates/part/part_base.html:167 report/models.py:165 +#: part/templates/part/part_base.html:167 +#: part/templates/part/part_scheduling.html:12 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 #: stock/templates/stock/location.html:108 #: templates/InvenTree/settings/plugin_settings.html:33 -#: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848 -#: templates/js/translated/build.js:2471 templates/js/translated/company.js:409 +#: templates/js/translated/bom.js:553 templates/js/translated/bom.js:846 +#: templates/js/translated/build.js:2504 templates/js/translated/company.js:409 #: templates/js/translated/company.js:667 -#: templates/js/translated/company.js:959 templates/js/translated/order.js:1720 -#: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531 +#: templates/js/translated/company.js:959 templates/js/translated/order.js:1759 +#: templates/js/translated/order.js:1991 templates/js/translated/order.js:2570 #: templates/js/translated/part.js:747 templates/js/translated/part.js:1153 -#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1942 -#: templates/js/translated/part.js:2011 templates/js/translated/stock.js:1743 +#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1938 +#: templates/js/translated/part.js:2007 templates/js/translated/stock.js:1743 #: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478 msgid "Description" msgstr "Beschreibung" @@ -323,7 +324,7 @@ msgid "parent" msgstr "Eltern" #: InvenTree/models.py:560 InvenTree/models.py:561 -#: templates/js/translated/part.js:1948 templates/js/translated/stock.js:2430 +#: templates/js/translated/part.js:1944 templates/js/translated/stock.js:2430 msgid "Path" msgstr "Pfad" @@ -335,7 +336,7 @@ msgstr "Serverfehler" msgid "An error has been logged by the server." msgstr "Ein Fehler wurde vom Server protokolliert." -#: InvenTree/serializers.py:55 part/models.py:2699 +#: InvenTree/serializers.py:55 part/models.py:2746 msgid "Must be a valid number" msgstr "Muss eine gültige Nummer sein" @@ -541,7 +542,7 @@ msgid "Returned" msgstr "Zurückgegeben" #: InvenTree/status_codes.py:141 order/models.py:1128 -#: templates/js/translated/order.js:3330 templates/js/translated/order.js:3679 +#: templates/js/translated/order.js:3369 templates/js/translated/order.js:3718 msgid "Shipped" msgstr "Versendet" @@ -728,7 +729,7 @@ msgstr "Ungültige Wahl für übergeordneten Bauauftrag" #: report/templates/report/inventree_build_order_base.html:105 #: templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 -#: templates/js/translated/build.js:731 +#: templates/js/translated/build.js:763 msgid "Build Order" msgstr "Bauauftrag" @@ -747,14 +748,14 @@ msgid "Build Order Reference" msgstr "Bauauftragsreferenz" #: build/models.py:166 order/models.py:240 order/models.py:623 -#: order/models.py:904 part/models.py:2617 +#: order/models.py:904 part/models.py:2664 #: part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 -#: templates/js/translated/bom.js:692 templates/js/translated/bom.js:855 -#: templates/js/translated/build.js:1779 templates/js/translated/order.js:1983 -#: templates/js/translated/order.js:2184 templates/js/translated/order.js:3523 -#: templates/js/translated/order.js:4031 +#: templates/js/translated/bom.js:690 templates/js/translated/bom.js:853 +#: templates/js/translated/build.js:1811 templates/js/translated/order.js:2022 +#: templates/js/translated/order.js:2223 templates/js/translated/order.js:3562 +#: templates/js/translated/order.js:4070 msgid "Reference" msgstr "Referenz" @@ -762,7 +763,7 @@ msgstr "Referenz" msgid "Brief description of the build" msgstr "Kurze Beschreibung des Baus" -#: build/models.py:185 build/templates/build/build_base.html:169 +#: build/models.py:185 build/templates/build/build_base.html:172 #: build/templates/build/detail.html:87 msgid "Parent Build" msgstr "Eltern-Bauauftrag" @@ -771,13 +772,13 @@ msgstr "Eltern-Bauauftrag" msgid "BuildOrder to which this build is allocated" msgstr "Bauauftrag, zu dem dieser Bauauftrag zugwiesen ist" -#: build/models.py:191 build/templates/build/build_base.html:77 +#: build/models.py:191 build/templates/build/build_base.html:80 #: build/templates/build/detail.html:29 company/models.py:670 #: order/models.py:1001 order/models.py:1112 order/models.py:1113 -#: part/models.py:343 part/models.py:2146 part/models.py:2161 -#: part/models.py:2180 part/models.py:2198 part/models.py:2297 -#: part/models.py:2417 part/models.py:2507 part/models.py:2592 -#: part/models.py:2868 part/serializers.py:813 +#: part/models.py:343 part/models.py:2193 part/models.py:2208 +#: part/models.py:2227 part/models.py:2245 part/models.py:2344 +#: part/models.py:2464 part/models.py:2554 part/models.py:2639 +#: part/models.py:2915 part/serializers.py:813 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -789,17 +790,17 @@ msgstr "Bauauftrag, zu dem dieser Bauauftrag zugwiesen ist" #: templates/email/build_order_required_stock.html:17 #: templates/email/low_stock_notification.html:16 #: templates/email/overdue_build_order.html:16 -#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:553 -#: templates/js/translated/bom.js:691 templates/js/translated/bom.js:802 -#: templates/js/translated/build.js:1156 templates/js/translated/build.js:1649 -#: templates/js/translated/build.js:2085 templates/js/translated/build.js:2476 +#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:552 +#: templates/js/translated/bom.js:689 templates/js/translated/bom.js:800 +#: templates/js/translated/build.js:1188 templates/js/translated/build.js:1681 +#: templates/js/translated/build.js:2118 templates/js/translated/build.js:2509 #: templates/js/translated/company.js:266 #: templates/js/translated/company.js:496 #: templates/js/translated/company.js:608 -#: templates/js/translated/company.js:868 templates/js/translated/order.js:103 -#: templates/js/translated/order.js:934 templates/js/translated/order.js:1387 -#: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885 -#: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507 +#: templates/js/translated/company.js:868 templates/js/translated/order.js:104 +#: templates/js/translated/order.js:973 templates/js/translated/order.js:1426 +#: templates/js/translated/order.js:1976 templates/js/translated/order.js:2924 +#: templates/js/translated/order.js:3320 templates/js/translated/order.js:3546 #: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210 #: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586 #: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958 @@ -821,7 +822,7 @@ msgid "SalesOrder to which this build is allocated" msgstr "Bestellung, die diesem Bauauftrag zugewiesen ist" #: build/models.py:213 build/serializers.py:800 -#: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873 +#: templates/js/translated/build.js:2106 templates/js/translated/order.js:2912 msgid "Source Location" msgstr "Quell-Lagerort" @@ -862,7 +863,7 @@ msgid "Build status code" msgstr "Bau-Statuscode" #: build/models.py:251 build/serializers.py:225 order/serializers.py:447 -#: stock/models.py:662 templates/js/translated/order.js:1247 +#: stock/models.py:662 templates/js/translated/order.js:1286 msgid "Batch Code" msgstr "Losnummer" @@ -871,7 +872,7 @@ msgid "Batch code for this build output" msgstr "Losnummer für dieses Endprodukt" #: build/models.py:258 order/models.py:86 part/models.py:938 -#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544 +#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2583 msgid "Creation Date" msgstr "Erstelldatum" @@ -884,7 +885,7 @@ msgid "Target date for build completion. Build will be overdue after this date." msgstr "Zieldatum für Bauauftrag-Fertigstellung." #: build/models.py:266 order/models.py:286 -#: templates/js/translated/build.js:2553 +#: templates/js/translated/build.js:2586 msgid "Completion Date" msgstr "Fertigstellungsdatum" @@ -892,7 +893,7 @@ msgstr "Fertigstellungsdatum" msgid "completed by" msgstr "Fertiggestellt von" -#: build/models.py:280 templates/js/translated/build.js:2521 +#: build/models.py:280 templates/js/translated/build.js:2554 msgid "Issued by" msgstr "Aufgegeben von" @@ -900,12 +901,12 @@ msgstr "Aufgegeben von" msgid "User who issued this build order" msgstr "Nutzer der diesen Bauauftrag erstellt hat" -#: build/models.py:289 build/templates/build/build_base.html:190 +#: build/models.py:289 build/templates/build/build_base.html:193 #: build/templates/build/detail.html:115 order/models.py:100 #: order/templates/order/order_base.html:176 #: order/templates/order/sales_order_base.html:183 part/models.py:942 #: report/templates/report/inventree_build_order_base.html:158 -#: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754 +#: templates/js/translated/build.js:2566 templates/js/translated/order.js:1793 msgid "Responsible" msgstr "Verantwortlicher Benutzer" @@ -972,7 +973,7 @@ msgid "Selected stock item not found in BOM" msgstr "Ausgewähltes Bestands-Objekt nicht in Stückliste für Teil '{p}' gefunden" #: build/models.py:1328 stock/templates/stock/item_base.html:177 -#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2455 +#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2488 #: templates/navbar.html:38 msgid "Build" msgstr "Bauauftrag" @@ -986,11 +987,11 @@ msgstr "Bauauftrag starten um Teile zuzuweisen" #: stock/serializers.py:882 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:199 -#: templates/js/translated/build.js:741 templates/js/translated/build.js:746 -#: templates/js/translated/build.js:2087 templates/js/translated/build.js:2638 -#: templates/js/translated/order.js:104 templates/js/translated/order.js:2886 -#: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193 -#: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380 +#: templates/js/translated/build.js:773 templates/js/translated/build.js:778 +#: templates/js/translated/build.js:2120 templates/js/translated/build.js:2671 +#: templates/js/translated/order.js:105 templates/js/translated/order.js:2925 +#: templates/js/translated/order.js:3227 templates/js/translated/order.js:3232 +#: templates/js/translated/order.js:3327 templates/js/translated/order.js:3419 #: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752 #: templates/js/translated/stock.js:2577 msgid "Stock Item" @@ -1001,13 +1002,13 @@ msgid "Source stock item" msgstr "Quell-Lagerartikel" #: build/models.py:1358 build/serializers.py:193 -#: build/templates/build/build_base.html:82 +#: build/templates/build/build_base.html:85 #: build/templates/build/detail.html:34 common/models.py:1697 #: company/templates/company/supplier_part.html:279 order/models.py:897 #: order/models.py:1423 order/serializers.py:1155 #: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40 -#: part/models.py:2608 part/templates/part/detail.html:937 -#: part/templates/part/detail.html:1023 +#: part/models.py:2655 part/templates/part/detail.html:951 +#: part/templates/part/detail.html:1037 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 #: report/templates/report/inventree_build_order_base.html:113 @@ -1018,20 +1019,20 @@ msgstr "Quell-Lagerartikel" #: stock/serializers.py:293 stock/templates/stock/item_base.html:292 #: stock/templates/stock/item_base.html:300 #: templates/email/build_order_completed.html:18 -#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:693 -#: templates/js/translated/bom.js:863 templates/js/translated/build.js:426 -#: templates/js/translated/build.js:578 templates/js/translated/build.js:768 -#: templates/js/translated/build.js:1178 templates/js/translated/build.js:1675 -#: templates/js/translated/build.js:2088 +#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:691 +#: templates/js/translated/bom.js:861 templates/js/translated/build.js:458 +#: templates/js/translated/build.js:610 templates/js/translated/build.js:800 +#: templates/js/translated/build.js:1210 templates/js/translated/build.js:1707 +#: templates/js/translated/build.js:2121 #: templates/js/translated/model_renderers.js:120 -#: templates/js/translated/order.js:120 templates/js/translated/order.js:937 -#: templates/js/translated/order.js:1989 templates/js/translated/order.js:2190 -#: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207 -#: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386 -#: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037 -#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2156 -#: templates/js/translated/part.js:2387 templates/js/translated/part.js:2421 -#: templates/js/translated/part.js:2499 templates/js/translated/stock.js:458 +#: templates/js/translated/order.js:121 templates/js/translated/order.js:976 +#: templates/js/translated/order.js:2028 templates/js/translated/order.js:2229 +#: templates/js/translated/order.js:2926 templates/js/translated/order.js:3246 +#: templates/js/translated/order.js:3333 templates/js/translated/order.js:3425 +#: templates/js/translated/order.js:3568 templates/js/translated/order.js:4076 +#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2152 +#: templates/js/translated/part.js:2602 templates/js/translated/part.js:2636 +#: templates/js/translated/part.js:2714 templates/js/translated/stock.js:458 #: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782 #: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711 msgid "Quantity" @@ -1050,7 +1051,7 @@ msgid "Destination stock item" msgstr "Ziel-Lagerartikel" #: build/serializers.py:138 build/serializers.py:674 -#: templates/js/translated/build.js:1166 +#: templates/js/translated/build.js:1198 msgid "Build Output" msgstr "Endprodukt" @@ -1090,7 +1091,7 @@ msgid "Integer quantity required, as the bill of materials contains trackable pa msgstr "Ganzzahl erforderlich da die Stückliste nachverfolgbare Teile enthält" #: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159 -#: stock/serializers.py:311 templates/js/translated/order.js:1258 +#: stock/serializers.py:311 templates/js/translated/order.js:1297 #: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459 msgid "Serial Numbers" msgstr "Seriennummer" @@ -1120,10 +1121,10 @@ msgstr "Eine Liste von Endprodukten muss angegeben werden" #: stock/serializers.py:917 stock/serializers.py:1150 #: stock/templates/stock/item_base.html:390 #: templates/js/translated/barcode.js:436 -#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753 -#: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285 -#: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305 -#: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394 +#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:785 +#: templates/js/translated/build.js:1719 templates/js/translated/order.js:1324 +#: templates/js/translated/order.js:3239 templates/js/translated/order.js:3344 +#: templates/js/translated/order.js:3352 templates/js/translated/order.js:3433 #: templates/js/translated/part.js:181 templates/js/translated/stock.js:588 #: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960 #: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518 @@ -1134,12 +1135,12 @@ msgstr "Lagerort" msgid "Location for completed build outputs" msgstr "Lagerort für fertige Endprodukte" -#: build/serializers.py:373 build/templates/build/build_base.html:142 +#: build/serializers.py:373 build/templates/build/build_base.html:145 #: build/templates/build/detail.html:62 order/models.py:642 #: order/serializers.py:465 stock/templates/stock/item_base.html:423 -#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505 -#: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724 -#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829 +#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2538 +#: templates/js/translated/order.js:1431 templates/js/translated/order.js:1763 +#: templates/js/translated/order.js:2575 templates/js/translated/stock.js:1829 #: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727 msgid "Status" msgstr "Status" @@ -1196,7 +1197,7 @@ msgstr "Nicht zugewiesene akzeptieren" msgid "Accept that stock items have not been fully allocated to this build order" msgstr "Akzeptieren, dass Lagerartikel diesem Bauauftrag nicht vollständig zugewiesen wurden" -#: build/serializers.py:522 templates/js/translated/build.js:195 +#: build/serializers.py:522 templates/js/translated/build.js:227 msgid "Required stock has not been fully allocated" msgstr "Benötigter Bestand wurde nicht vollständig zugewiesen" @@ -1208,7 +1209,7 @@ msgstr "Unvollständig Zuweisung akzeptieren" msgid "Accept that the required number of build outputs have not been completed" msgstr "Akzeptieren, dass die erforderliche Anzahl der Bauaufträge nicht abgeschlossen ist" -#: build/serializers.py:538 templates/js/translated/build.js:199 +#: build/serializers.py:538 templates/js/translated/build.js:231 msgid "Required build quantity has not been completed" msgstr "Benötigte Teil-Anzahl wurde noch nicht fertiggestellt" @@ -1216,8 +1217,8 @@ msgstr "Benötigte Teil-Anzahl wurde noch nicht fertiggestellt" msgid "Build order has incomplete outputs" msgstr "Bauauftrag hat unvollständige Aufbauten" -#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726 -#: part/models.py:2860 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2773 +#: part/models.py:2907 msgid "BOM Item" msgstr "Stücklisten-Position" @@ -1322,66 +1323,70 @@ msgid "Cancel Build" msgstr "Bauauftrag abbrechen" #: build/templates/build/build_base.html:59 +msgid "Duplicate Build" +msgstr "" + +#: build/templates/build/build_base.html:62 msgid "Delete Build" msgstr "Bauauftrag löschen" -#: build/templates/build/build_base.html:64 -#: build/templates/build/build_base.html:65 +#: build/templates/build/build_base.html:67 +#: build/templates/build/build_base.html:68 msgid "Complete Build" msgstr "Bauauftrag fertigstellen" -#: build/templates/build/build_base.html:87 +#: build/templates/build/build_base.html:90 msgid "Build Description" msgstr "Baubeschreibung" -#: build/templates/build/build_base.html:95 +#: build/templates/build/build_base.html:98 msgid "No build outputs have been created for this build order" msgstr "Es wurden keine Endprodukte für diesen Bauauftrag erstellt" -#: build/templates/build/build_base.html:101 +#: build/templates/build/build_base.html:104 #, python-format msgid "This Build Order is allocated to Sales Order %(link)s" msgstr "Dieser Bauauftrag ist dem Auftrag %(link)s zugeordnet" -#: build/templates/build/build_base.html:108 +#: build/templates/build/build_base.html:111 #, python-format msgid "This Build Order is a child of Build Order %(link)s" msgstr "Dieser Bauauftrag ist dem Bauauftrag %(link)s untergeordnet" -#: build/templates/build/build_base.html:115 +#: build/templates/build/build_base.html:118 msgid "Build Order is ready to mark as completed" msgstr "Bauauftrag ist bereit abgeschlossen zu werden" -#: build/templates/build/build_base.html:120 +#: build/templates/build/build_base.html:123 msgid "Build Order cannot be completed as outstanding outputs remain" msgstr "Bauauftrag kann nicht abgeschlossen werden, da es noch ausstehende Endprodukte gibt" -#: build/templates/build/build_base.html:125 +#: build/templates/build/build_base.html:128 msgid "Required build quantity has not yet been completed" msgstr "Benötigte Teil-Anzahl wurde noch nicht fertiggestellt" -#: build/templates/build/build_base.html:130 +#: build/templates/build/build_base.html:133 msgid "Stock has not been fully allocated to this Build Order" msgstr "Bestand wurde Bauauftrag noch nicht vollständig zugewiesen" -#: build/templates/build/build_base.html:151 +#: build/templates/build/build_base.html:154 #: build/templates/build/detail.html:131 order/models.py:910 #: order/templates/order/order_base.html:162 #: order/templates/order/sales_order_base.html:164 #: report/templates/report/inventree_build_order_base.html:125 -#: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741 -#: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552 -#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042 +#: templates/js/translated/build.js:2578 templates/js/translated/order.js:1780 +#: templates/js/translated/order.js:2090 templates/js/translated/order.js:2591 +#: templates/js/translated/order.js:3631 templates/js/translated/part.js:1042 msgid "Target Date" msgstr "Zieldatum" -#: build/templates/build/build_base.html:156 +#: build/templates/build/build_base.html:159 #, python-format msgid "This build was due on %(target)s" msgstr "Bauauftrag war fällig am %(target)s" -#: build/templates/build/build_base.html:156 -#: build/templates/build/build_base.html:201 +#: build/templates/build/build_base.html:159 +#: build/templates/build/build_base.html:204 #: order/templates/order/order_base.html:98 #: order/templates/order/sales_order_base.html:94 #: templates/js/translated/table_filters.js:320 @@ -1390,14 +1395,14 @@ msgstr "Bauauftrag war fällig am %(target)s" msgid "Overdue" msgstr "Überfällig" -#: build/templates/build/build_base.html:163 +#: build/templates/build/build_base.html:166 #: build/templates/build/detail.html:67 build/templates/build/detail.html:142 #: order/templates/order/sales_order_base.html:171 #: templates/js/translated/table_filters.js:400 msgid "Completed" msgstr "Fertig" -#: build/templates/build/build_base.html:176 +#: build/templates/build/build_base.html:179 #: build/templates/build/detail.html:94 order/models.py:1105 #: order/models.py:1199 order/models.py:1330 #: order/templates/order/sales_order_base.html:9 @@ -1406,17 +1411,17 @@ msgstr "Fertig" #: report/templates/report/inventree_so_report.html:77 #: stock/templates/stock/item_base.html:370 #: templates/email/overdue_sales_order.html:15 -#: templates/js/translated/order.js:2498 +#: templates/js/translated/order.js:2537 msgid "Sales Order" msgstr "Auftrag" -#: build/templates/build/build_base.html:183 +#: build/templates/build/build_base.html:186 #: build/templates/build/detail.html:108 #: report/templates/report/inventree_build_order_base.html:152 msgid "Issued By" msgstr "Aufgegeben von" -#: build/templates/build/build_base.html:245 +#: build/templates/build/build_base.html:256 msgid "Delete Build Order" msgstr "Bauauftrag löschen" @@ -1433,7 +1438,7 @@ msgid "Stock can be taken from any available location." msgstr "Bestand kann jedem verfügbaren Lagerort entnommen werden." #: build/templates/build/detail.html:49 order/models.py:1023 -#: templates/js/translated/order.js:1393 templates/js/translated/order.js:2093 +#: templates/js/translated/order.js:1432 templates/js/translated/order.js:2132 msgid "Destination" msgstr "Ziel-Lager" @@ -1447,7 +1452,7 @@ msgstr "Zugewiesene Teile" #: build/templates/build/detail.html:80 #: stock/templates/stock/item_base.html:170 -#: templates/js/translated/build.js:1182 +#: templates/js/translated/build.js:1214 #: templates/js/translated/model_renderers.js:124 #: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843 #: templates/js/translated/stock.js:2734 @@ -1459,7 +1464,7 @@ msgstr "Losnummer" #: build/templates/build/detail.html:126 #: order/templates/order/order_base.html:149 #: order/templates/order/sales_order_base.html:158 -#: templates/js/translated/build.js:2513 +#: templates/js/translated/build.js:2546 msgid "Created" msgstr "Erstellt" @@ -1479,7 +1484,7 @@ msgstr "Unter-Bauaufträge" msgid "Allocate Stock to Build" msgstr "Bestand Bauauftrag zuweisen" -#: build/templates/build/detail.html:176 templates/js/translated/build.js:1901 +#: build/templates/build/detail.html:176 templates/js/translated/build.js:1934 msgid "Unallocate stock" msgstr "Bestandszuordnung aufheben" @@ -1510,7 +1515,7 @@ msgstr "Benötigte Teile bestellen" #: build/templates/build/detail.html:187 #: company/templates/company/detail.html:37 #: company/templates/company/detail.html:85 -#: part/templates/part/category.html:183 templates/js/translated/order.js:977 +#: part/templates/part/category.html:183 templates/js/translated/order.js:1016 msgid "Order Parts" msgstr "Teile bestellen" @@ -1582,7 +1587,7 @@ msgstr "Fertiggestellte Endprodukte" #: order/templates/order/po_sidebar.html:9 #: order/templates/order/purchase_order_detail.html:82 #: order/templates/order/sales_order_detail.html:135 -#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:207 +#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:212 #: part/templates/part/part_sidebar.html:57 stock/templates/stock/item.html:117 #: stock/templates/stock/stock_sidebar.html:23 msgid "Attachments" @@ -1600,7 +1605,7 @@ msgstr "Zuordnung abgeschlossen" msgid "All untracked stock items have been allocated" msgstr "Alle nicht verfolgten Lagerartikel wurden zugewiesen" -#: build/templates/build/index.html:18 part/templates/part/detail.html:313 +#: build/templates/build/index.html:18 part/templates/part/detail.html:318 msgid "New Build Order" msgstr "Neuer Bauauftrag" @@ -1845,7 +1850,7 @@ msgstr "Kategorie-Parametervorlage kopieren" msgid "Copy category parameter templates when creating a part" msgstr "Kategorie-Parameter Vorlagen kopieren wenn ein Teil angelegt wird" -#: common/models.py:951 part/models.py:2419 report/models.py:158 +#: common/models.py:951 part/models.py:2466 report/models.py:158 #: templates/js/translated/table_filters.js:38 #: templates/js/translated/table_filters.js:484 msgid "Template" @@ -1855,7 +1860,7 @@ msgstr "Vorlage" msgid "Parts are templates by default" msgstr "Teile sind standardmäßig Vorlagen" -#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448 +#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1446 #: templates/js/translated/table_filters.js:176 #: templates/js/translated/table_filters.js:447 msgid "Assembly" @@ -2591,7 +2596,7 @@ msgstr "Preisstaffelungs Anzahl" #: common/models.py:1705 company/serializers.py:366 #: company/templates/company/supplier_part.html:284 order/models.py:938 -#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2161 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2157 msgid "Price" msgstr "Preis" @@ -2830,7 +2835,7 @@ msgstr "Standard-Währung für diese Firma" #: company/models.py:248 company/models.py:481 stock/models.py:598 #: stock/serializers.py:87 stock/templates/stock/item_base.html:148 -#: templates/js/translated/bom.js:543 +#: templates/js/translated/bom.js:542 msgid "Base Part" msgstr "Basisteil" @@ -2859,7 +2864,7 @@ msgstr "Hersteller auswählen" #: templates/js/translated/company.js:269 #: templates/js/translated/company.js:497 #: templates/js/translated/company.js:649 -#: templates/js/translated/company.js:937 templates/js/translated/order.js:1971 +#: templates/js/translated/company.js:937 templates/js/translated/order.js:2010 #: templates/js/translated/part.js:247 templates/js/translated/part.js:1027 msgid "MPN" msgstr "MPN" @@ -2899,7 +2904,7 @@ msgstr "Wert" msgid "Parameter value" msgstr "Parameterwert" -#: company/models.py:372 part/models.py:888 part/models.py:2386 +#: company/models.py:372 part/models.py:888 part/models.py:2433 #: part/templates/part/part_base.html:280 #: templates/InvenTree/settings/settings.html:352 #: templates/js/translated/company.js:770 templates/js/translated/part.js:855 @@ -2921,7 +2926,7 @@ msgstr "Verlinktes Herstellerteil muss dasselbe Basisteil referenzieren" #: templates/email/overdue_purchase_order.html:16 #: templates/js/translated/company.js:268 #: templates/js/translated/company.js:401 -#: templates/js/translated/company.js:893 templates/js/translated/order.js:1707 +#: templates/js/translated/company.js:893 templates/js/translated/order.js:1746 #: templates/js/translated/part.js:217 templates/js/translated/part.js:995 #: templates/js/translated/table_filters.js:423 msgid "Supplier" @@ -2933,7 +2938,7 @@ msgstr "Zulieferer auswählen" #: company/models.py:497 company/templates/company/supplier_part.html:118 #: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267 -#: templates/js/translated/order.js:1958 templates/js/translated/part.js:228 +#: templates/js/translated/order.js:1997 templates/js/translated/part.js:228 #: templates/js/translated/part.js:1013 msgid "SKU" msgstr "SKU (Lagerbestandseinheit)" @@ -2955,17 +2960,17 @@ msgid "Supplier part description" msgstr "Zuliefererbeschreibung des Teils" #: company/models.py:522 company/templates/company/supplier_part.html:146 -#: part/models.py:2620 part/templates/part/upload_bom.html:59 +#: part/models.py:2667 part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401 msgid "Note" msgstr "Notiz" -#: company/models.py:526 part/models.py:1742 +#: company/models.py:526 part/models.py:1789 msgid "base cost" msgstr "Basiskosten" -#: company/models.py:526 part/models.py:1742 +#: company/models.py:526 part/models.py:1789 msgid "Minimum charge (e.g. stocking fee)" msgstr "Mindestpreis" @@ -2979,7 +2984,7 @@ msgstr "Verpackungen" msgid "Part packaging" msgstr "Teile-Verpackungen" -#: company/models.py:530 part/models.py:1744 +#: company/models.py:530 part/models.py:1791 msgid "multiple" msgstr "Vielfache" @@ -2990,8 +2995,8 @@ msgstr "Mehrere bestellen" #: company/models.py:538 company/templates/company/supplier_part.html:94 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789 -#: templates/js/translated/build.js:2645 templates/js/translated/company.js:979 +#: templates/js/translated/bom.js:911 templates/js/translated/build.js:1821 +#: templates/js/translated/build.js:2678 templates/js/translated/company.js:979 #: templates/js/translated/part.js:600 templates/js/translated/part.js:603 #: templates/js/translated/table_filters.js:186 msgid "Available" @@ -3028,7 +3033,7 @@ msgid "Company" msgstr "Firma" #: company/templates/company/company_base.html:22 -#: templates/js/translated/order.js:540 +#: templates/js/translated/order.js:579 msgid "Create Purchase Order" msgstr "Bestellung anlegen" @@ -3069,7 +3074,7 @@ msgstr "Bild von URL herunterladen" #: stock/models.py:644 stock/serializers.py:811 #: stock/templates/stock/item_base.html:401 #: templates/email/overdue_sales_order.html:16 -#: templates/js/translated/company.js:393 templates/js/translated/order.js:2513 +#: templates/js/translated/company.js:393 templates/js/translated/order.js:2552 #: templates/js/translated/stock.js:2559 #: templates/js/translated/table_filters.js:427 msgid "Customer" @@ -3105,7 +3110,7 @@ msgstr "Neues Zuliefererteil anlegen" #: company/templates/company/detail.html:19 #: company/templates/company/manufacturer_part.html:123 -#: part/templates/part/detail.html:354 +#: part/templates/part/detail.html:359 msgid "New Supplier Part" msgstr "Neues Zuliefererteil" @@ -3134,7 +3139,7 @@ msgstr "Herstellerteile" msgid "Create new manufacturer part" msgstr "Neues Herstellerteil anlegen" -#: company/templates/company/detail.html:66 part/templates/part/detail.html:384 +#: company/templates/company/detail.html:66 part/templates/part/detail.html:389 msgid "New Manufacturer Part" msgstr "Neues Herstellerteil" @@ -3148,7 +3153,7 @@ msgstr "Zulieferer-Bestand" #: order/templates/order/order_base.html:13 #: order/templates/order/purchase_orders.html:8 #: order/templates/order/purchase_orders.html:12 -#: part/templates/part/detail.html:79 part/templates/part/part_sidebar.html:37 +#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:37 #: templates/InvenTree/index.html:252 templates/InvenTree/search.html:198 #: templates/InvenTree/settings/sidebar.html:49 #: templates/js/translated/search.js:275 templates/navbar.html:50 @@ -3171,7 +3176,7 @@ msgstr "Neue Bestellung" #: order/templates/order/sales_order_base.html:13 #: order/templates/order/sales_orders.html:8 #: order/templates/order/sales_orders.html:15 -#: part/templates/part/detail.html:102 part/templates/part/part_sidebar.html:41 +#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:41 #: templates/InvenTree/index.html:283 templates/InvenTree/search.html:218 #: templates/InvenTree/settings/sidebar.html:51 #: templates/js/translated/search.js:299 templates/navbar.html:61 @@ -3190,7 +3195,7 @@ msgid "New Sales Order" msgstr "Neuer Auftrag" #: company/templates/company/detail.html:168 -#: templates/js/translated/build.js:1660 +#: templates/js/translated/build.js:1692 msgid "Assigned Stock" msgstr "Zugeordneter Bestand" @@ -3206,7 +3211,7 @@ msgstr "Hersteller" #: company/templates/company/manufacturer_part.html:35 #: company/templates/company/supplier_part.html:186 -#: part/templates/part/detail.html:82 part/templates/part/part_base.html:80 +#: part/templates/part/detail.html:87 part/templates/part/part_base.html:80 msgid "Order part" msgstr "Teil bestellen" @@ -3237,13 +3242,13 @@ msgid "Suppliers" msgstr "Zulieferer" #: company/templates/company/manufacturer_part.html:136 -#: part/templates/part/detail.html:365 +#: part/templates/part/detail.html:370 msgid "Delete supplier parts" msgstr "Zuliefererteil entfernen" #: company/templates/company/manufacturer_part.html:136 #: company/templates/company/manufacturer_part.html:183 -#: part/templates/part/detail.html:366 part/templates/part/detail.html:396 +#: part/templates/part/detail.html:371 part/templates/part/detail.html:401 #: templates/js/translated/forms.js:453 templates/js/translated/helpers.js:33 #: users/models.py:220 msgid "Delete" @@ -3252,12 +3257,12 @@ msgstr "Löschen" #: company/templates/company/manufacturer_part.html:166 #: company/templates/company/manufacturer_part_sidebar.html:5 #: part/templates/part/category_sidebar.html:19 -#: part/templates/part/detail.html:181 part/templates/part/part_sidebar.html:8 +#: part/templates/part/detail.html:186 part/templates/part/part_sidebar.html:8 msgid "Parameters" msgstr "Parameter" #: company/templates/company/manufacturer_part.html:170 -#: part/templates/part/detail.html:186 +#: part/templates/part/detail.html:191 #: templates/InvenTree/settings/category.html:12 #: templates/InvenTree/settings/part.html:68 msgid "New Parameter" @@ -3268,7 +3273,7 @@ msgid "Delete parameters" msgstr "Parameter löschen" #: company/templates/company/manufacturer_part.html:245 -#: part/templates/part/detail.html:826 +#: part/templates/part/detail.html:840 msgid "Add Parameter" msgstr "Parameter hinzufügen" @@ -3291,7 +3296,7 @@ msgstr "Zugewiesene Lagerartikel" #: company/templates/company/supplier_part.html:7 #: company/templates/company/supplier_part.html:24 stock/models.py:607 #: stock/templates/stock/item_base.html:238 -#: templates/js/translated/company.js:909 templates/js/translated/order.js:935 +#: templates/js/translated/company.js:909 templates/js/translated/order.js:974 #: templates/js/translated/stock.js:1933 msgid "Supplier Part" msgstr "Zuliefererteil" @@ -3303,7 +3308,7 @@ msgstr "" #: company/templates/company/supplier_part.html:40 #: company/templates/company/supplier_part.html:41 #: company/templates/company/supplier_part.html:187 -#: part/templates/part/detail.html:83 +#: part/templates/part/detail.html:88 msgid "Order Part" msgstr "Teil bestellen" @@ -3358,7 +3363,7 @@ msgstr "Preisinformationen ansehen" #: company/templates/company/supplier_part.html:212 #: company/templates/company/supplier_part.html:326 -#: part/templates/part/prices.html:276 templates/js/translated/part.js:2233 +#: part/templates/part/prices.html:276 templates/js/translated/part.js:2229 msgid "Add Price Break" msgstr "Preisstaffel hinzufügen" @@ -3367,12 +3372,12 @@ msgid "No price break information found" msgstr "Keine Informationen zur Preisstaffel gefunden" #: company/templates/company/supplier_part.html:252 -#: templates/js/translated/part.js:2243 +#: templates/js/translated/part.js:2239 msgid "Delete Price Break" msgstr "Preisstaffel löschen" #: company/templates/company/supplier_part.html:266 -#: templates/js/translated/part.js:2257 +#: templates/js/translated/part.js:2253 msgid "Edit Price Break" msgstr "Preisstaffel bearbeiten" @@ -3398,10 +3403,9 @@ msgstr "Teilverfügbarkeit aktualisieren" #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:151 #: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751 -#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460 -#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754 -#: templates/navbar.html:31 +#: templates/js/translated/part.js:751 templates/js/translated/part.js:1299 +#: templates/js/translated/part.js:1460 templates/js/translated/stock.js:959 +#: templates/js/translated/stock.js:1754 templates/navbar.html:31 msgid "Stock" msgstr "Bestand" @@ -3554,7 +3558,7 @@ msgid "Company from which the items are being ordered" msgstr "Firma bei der die Teile bestellt werden" #: order/models.py:262 order/templates/order/order_base.html:124 -#: templates/js/translated/order.js:1716 +#: templates/js/translated/order.js:1755 msgid "Supplier Reference" msgstr "Zulieferer-Referenz" @@ -3611,7 +3615,7 @@ msgid "Target date for order completion. Order will be overdue after this date." msgstr "Zieldatum für Auftrags-Fertigstellung." #: order/models.py:652 order/models.py:1204 -#: templates/js/translated/order.js:2560 templates/js/translated/order.js:2722 +#: templates/js/translated/order.js:2599 templates/js/translated/order.js:2761 msgid "Shipment Date" msgstr "Versanddatum" @@ -3673,7 +3677,7 @@ msgstr "gelöscht" #: order/models.py:983 order/models.py:1063 order/models.py:1104 #: order/models.py:1198 order/models.py:1330 -#: templates/js/translated/order.js:3178 +#: templates/js/translated/order.js:3217 msgid "Order" msgstr "Bestellung" @@ -3683,7 +3687,7 @@ msgstr "Bestellung" #: report/templates/report/inventree_po_report.html:76 #: stock/templates/stock/item_base.html:184 #: templates/email/overdue_purchase_order.html:15 -#: templates/js/translated/order.js:936 templates/js/translated/order.js:1691 +#: templates/js/translated/order.js:975 templates/js/translated/order.js:1730 #: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913 #: templates/js/translated/stock.js:2540 msgid "Purchase Order" @@ -3694,7 +3698,7 @@ msgid "Supplier part" msgstr "Zuliefererteil" #: order/models.py:1009 order/templates/order/order_base.html:169 -#: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073 +#: templates/js/translated/order.js:1429 templates/js/translated/order.js:2112 #: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091 #: templates/js/translated/table_filters.js:338 msgid "Received" @@ -3880,11 +3884,11 @@ msgstr "Position stimmt nicht mit Kaufauftrag überein" msgid "Select destination location for received items" msgstr "Zielort für empfangene Teile auswählen" -#: order/serializers.py:448 templates/js/translated/order.js:1248 +#: order/serializers.py:448 templates/js/translated/order.js:1287 msgid "Enter batch code for incoming stock items" msgstr "Losnummer für eingehende Lagerartikel" -#: order/serializers.py:456 templates/js/translated/order.js:1259 +#: order/serializers.py:456 templates/js/translated/order.js:1298 msgid "Enter serial numbers for incoming stock items" msgstr "Seriennummern für eingehende Lagerartikel" @@ -4061,10 +4065,6 @@ msgstr "Gesamtsumme" msgid "Total cost could not be calculated" msgstr "Gesamtkosten konnten nicht berechnet werden" -#: order/templates/order/order_base.html:243 -msgid "Edit Purchase Order" -msgstr "Bestellung bearbeiten" - #: order/templates/order/order_wizard/match_parts.html:12 #: part/templates/part/import_wizard/ajax_match_references.html:12 #: part/templates/part/import_wizard/match_references.html:12 @@ -4091,10 +4091,10 @@ msgstr "Zulieferer-Teil auswählen" #: part/templates/part/import_wizard/ajax_match_fields.html:64 #: part/templates/part/import_wizard/ajax_match_references.html:42 #: part/templates/part/import_wizard/match_references.html:49 -#: templates/js/translated/bom.js:77 templates/js/translated/build.js:431 -#: templates/js/translated/build.js:583 templates/js/translated/build.js:1974 -#: templates/js/translated/order.js:884 templates/js/translated/order.js:1337 -#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625 +#: templates/js/translated/bom.js:77 templates/js/translated/build.js:463 +#: templates/js/translated/build.js:615 templates/js/translated/build.js:2007 +#: templates/js/translated/order.js:923 templates/js/translated/order.js:1376 +#: templates/js/translated/order.js:2836 templates/js/translated/stock.js:625 #: templates/js/translated/stock.js:793 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" @@ -4130,7 +4130,7 @@ msgstr "Bestellungs-Positionen" #: order/templates/order/purchase_order_detail.html:26 #: order/templates/order/sales_order_detail.html:22 #: order/templates/order/sales_order_detail.html:255 -#: templates/js/translated/order.js:557 +#: templates/js/translated/order.js:596 msgid "Add Line Item" msgstr "Position hinzufügen" @@ -4176,7 +4176,7 @@ msgid "Print packing list" msgstr "Paketliste drucken" #: order/templates/order/sales_order_base.html:60 -#: templates/js/translated/order.js:229 +#: templates/js/translated/order.js:230 msgid "Complete Shipments" msgstr "Abgeschlossene Sendungen" @@ -4190,7 +4190,7 @@ msgid "This Sales Order has not been fully allocated" msgstr "Dieser Auftrag ist nicht vollständig zugeordnet" #: order/templates/order/sales_order_base.html:123 -#: templates/js/translated/order.js:2526 +#: templates/js/translated/order.js:2565 msgid "Customer Reference" msgstr "Kundenreferenz" @@ -4214,8 +4214,8 @@ msgid "Pending Shipments" msgstr "Ausstehende Sendungen" #: order/templates/order/sales_order_detail.html:72 -#: templates/attachment_table.html:6 templates/js/translated/bom.js:1110 -#: templates/js/translated/build.js:1882 +#: templates/attachment_table.html:6 templates/js/translated/bom.js:1108 +#: templates/js/translated/build.js:1915 msgid "Actions" msgstr "Aktionen" @@ -4257,35 +4257,35 @@ msgstr "Ausgehender Auftrag" msgid "Stock produced by Build Order" msgstr "Lagerartikel produziert von Bauauftrag" -#: part/api.py:584 +#: part/api.py:621 msgid "Stock required for Build Order" msgstr "Lagerartikel für Bauauftrag benötigt" -#: part/api.py:704 +#: part/api.py:758 msgid "Valid" msgstr "Gültig" -#: part/api.py:705 +#: part/api.py:759 msgid "Validate entire Bill of Materials" msgstr "Gesamte Stückliste validieren" -#: part/api.py:711 +#: part/api.py:765 msgid "This option must be selected" msgstr "Diese Option muss ausgewählt werden" -#: part/api.py:1134 +#: part/api.py:1188 msgid "Must be greater than zero" msgstr "Muss größer als 0 sein" -#: part/api.py:1138 +#: part/api.py:1192 msgid "Must be a valid quantity" msgstr "Muss eine gültige Nummer sein" -#: part/api.py:1153 +#: part/api.py:1207 msgid "Specify location for initial part stock" msgstr "Standort für anfänglichen Bestand angeben" -#: part/api.py:1184 part/api.py:1188 part/api.py:1203 part/api.py:1207 +#: part/api.py:1238 part/api.py:1242 part/api.py:1257 part/api.py:1261 msgid "This field is required" msgstr "Dieses Feld ist erforderlich" @@ -4299,14 +4299,14 @@ msgid "Total Stock" msgstr "Gesamtbestand" #: part/bom.py:129 part/templates/part/part_base.html:189 -#: templates/js/translated/order.js:3618 +#: templates/js/translated/order.js:3657 msgid "Available Stock" msgstr "Verfügbarer Bestand" #: part/bom.py:130 part/templates/part/part_base.html:207 -#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590 +#: templates/js/translated/bom.js:945 templates/js/translated/part.js:590 #: templates/js/translated/part.js:610 templates/js/translated/part.js:1302 -#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490 +#: templates/js/translated/part.js:1483 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "Bestellt" @@ -4335,7 +4335,7 @@ msgstr "" msgid "Icon (optional)" msgstr "" -#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16 +#: part/models.py:122 part/models.py:2509 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "Teil-Kategorie" @@ -4352,7 +4352,7 @@ msgstr "Teil-Kategorien" #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82 #: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:1955 templates/js/translated/search.js:144 +#: templates/js/translated/part.js:1951 templates/js/translated/search.js:144 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "Teile" @@ -4382,7 +4382,7 @@ msgstr "Die neuste Seriennummer ist" msgid "Duplicate IPN not allowed in part settings" msgstr "Doppelte IPN in den Teil-Einstellungen nicht erlaubt" -#: part/models.py:745 part/models.py:2516 +#: part/models.py:745 part/models.py:2563 msgid "Part name" msgstr "Name des Teils" @@ -4415,11 +4415,11 @@ msgstr "Schlüsselwörter" msgid "Part keywords to improve visibility in search results" msgstr "Schlüsselworte um die Sichtbarkeit in Suchergebnissen zu verbessern" -#: part/models.py:783 part/models.py:2218 part/models.py:2461 +#: part/models.py:783 part/models.py:2265 part/models.py:2508 #: part/templates/part/part_base.html:257 #: templates/InvenTree/settings/settings.html:232 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1668 +#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1664 msgid "Category" msgstr "Kategorie" @@ -4530,245 +4530,245 @@ msgstr "BOM Kontrolldatum" msgid "Creation User" msgstr "Erstellungs-Nutzer" -#: part/models.py:1744 +#: part/models.py:1791 msgid "Sell multiple" msgstr "Mehrere verkaufen" -#: part/models.py:2265 +#: part/models.py:2312 msgid "Test templates can only be created for trackable parts" msgstr "Test-Vorlagen können nur für verfolgbare Teile angelegt werden" -#: part/models.py:2282 +#: part/models.py:2329 msgid "Test with this name already exists for this part" msgstr "Ein Test mit diesem Namen besteht bereits für dieses Teil" -#: part/models.py:2302 templates/js/translated/part.js:2006 +#: part/models.py:2349 templates/js/translated/part.js:2002 #: templates/js/translated/stock.js:1340 msgid "Test Name" msgstr "Test-Name" -#: part/models.py:2303 +#: part/models.py:2350 msgid "Enter a name for the test" msgstr "Namen für diesen Test eingeben" -#: part/models.py:2308 +#: part/models.py:2355 msgid "Test Description" msgstr "Test-Beschreibung" -#: part/models.py:2309 +#: part/models.py:2356 msgid "Enter description for this test" msgstr "Beschreibung für diesen Test eingeben" -#: part/models.py:2314 templates/js/translated/part.js:2015 +#: part/models.py:2361 templates/js/translated/part.js:2011 #: templates/js/translated/table_filters.js:302 msgid "Required" msgstr "Benötigt" -#: part/models.py:2315 +#: part/models.py:2362 msgid "Is this test required to pass?" msgstr "Muss dieser Test erfolgreich sein?" -#: part/models.py:2320 templates/js/translated/part.js:2023 +#: part/models.py:2367 templates/js/translated/part.js:2019 msgid "Requires Value" msgstr "Erfordert Wert" -#: part/models.py:2321 +#: part/models.py:2368 msgid "Does this test require a value when adding a test result?" msgstr "Muss für diesen Test ein Wert für das Test-Ergebnis eingetragen werden?" -#: part/models.py:2326 templates/js/translated/part.js:2030 +#: part/models.py:2373 templates/js/translated/part.js:2026 msgid "Requires Attachment" msgstr "Anhang muss eingegeben werden" -#: part/models.py:2327 +#: part/models.py:2374 msgid "Does this test require a file attachment when adding a test result?" msgstr "Muss für diesen Test ein Anhang für das Test-Ergebnis hinzugefügt werden?" -#: part/models.py:2335 +#: part/models.py:2382 #, python-brace-format msgid "Illegal character in template name ({c})" msgstr "Ungültiges Zeichen im Vorlagename ({c})" -#: part/models.py:2371 +#: part/models.py:2418 msgid "Parameter template name must be unique" msgstr "Vorlagen-Name des Parameters muss eindeutig sein" -#: part/models.py:2379 +#: part/models.py:2426 msgid "Parameter Name" msgstr "Name des Parameters" -#: part/models.py:2386 +#: part/models.py:2433 msgid "Parameter Units" msgstr "Einheit des Parameters" -#: part/models.py:2417 +#: part/models.py:2464 msgid "Parent Part" msgstr "Ausgangsteil" -#: part/models.py:2419 part/models.py:2467 part/models.py:2468 +#: part/models.py:2466 part/models.py:2514 part/models.py:2515 #: templates/InvenTree/settings/settings.html:227 msgid "Parameter Template" msgstr "Parameter Vorlage" -#: part/models.py:2421 +#: part/models.py:2468 msgid "Data" msgstr "Wert" -#: part/models.py:2421 +#: part/models.py:2468 msgid "Parameter Value" msgstr "Parameter Wert" -#: part/models.py:2472 templates/InvenTree/settings/settings.html:236 +#: part/models.py:2519 templates/InvenTree/settings/settings.html:236 msgid "Default Value" msgstr "Standard-Wert" -#: part/models.py:2473 +#: part/models.py:2520 msgid "Default Parameter Value" msgstr "Standard Parameter Wert" -#: part/models.py:2508 +#: part/models.py:2555 msgid "Part ID or part name" msgstr "Teilnummer oder Teilname" -#: part/models.py:2511 templates/js/translated/model_renderers.js:212 +#: part/models.py:2558 templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "Teil-ID" -#: part/models.py:2512 +#: part/models.py:2559 msgid "Unique part ID value" msgstr "Eindeutige Teil-ID" -#: part/models.py:2515 +#: part/models.py:2562 msgid "Part Name" msgstr "Name des Teils" -#: part/models.py:2519 +#: part/models.py:2566 msgid "Part IPN" msgstr "Teil-ID" -#: part/models.py:2520 +#: part/models.py:2567 msgid "Part IPN value" msgstr "IPN-Wert des Teils" -#: part/models.py:2523 +#: part/models.py:2570 msgid "Level" msgstr "Stufe" -#: part/models.py:2524 +#: part/models.py:2571 msgid "BOM level" msgstr "Stücklistenebene" -#: part/models.py:2593 +#: part/models.py:2640 msgid "Select parent part" msgstr "Ausgangsteil auswählen" -#: part/models.py:2601 +#: part/models.py:2648 msgid "Sub part" msgstr "Untergeordnetes Teil" -#: part/models.py:2602 +#: part/models.py:2649 msgid "Select part to be used in BOM" msgstr "Teil für die Nutzung in der Stückliste auswählen" -#: part/models.py:2608 +#: part/models.py:2655 msgid "BOM quantity for this BOM item" msgstr "Stücklisten-Anzahl für dieses Stücklisten-Teil" -#: part/models.py:2610 part/templates/part/upload_bom.html:58 -#: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999 +#: part/models.py:2657 part/templates/part/upload_bom.html:58 +#: templates/js/translated/bom.js:872 templates/js/translated/bom.js:997 #: templates/js/translated/table_filters.js:100 msgid "Optional" msgstr "Optional" -#: part/models.py:2610 +#: part/models.py:2657 msgid "This BOM item is optional" msgstr "Diese Stücklisten-Position ist optional" -#: part/models.py:2613 part/templates/part/upload_bom.html:55 +#: part/models.py:2660 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "Überschuss" -#: part/models.py:2614 +#: part/models.py:2661 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "Geschätzter Ausschuss (absolut oder prozentual)" -#: part/models.py:2617 +#: part/models.py:2664 msgid "BOM item reference" msgstr "Referenz der Postion auf der Stückliste" -#: part/models.py:2620 +#: part/models.py:2667 msgid "BOM item notes" msgstr "Notizen zur Stücklisten-Position" -#: part/models.py:2622 +#: part/models.py:2669 msgid "Checksum" msgstr "Prüfsumme" -#: part/models.py:2622 +#: part/models.py:2669 msgid "BOM line checksum" msgstr "Prüfsumme der Stückliste" -#: part/models.py:2626 part/templates/part/upload_bom.html:57 -#: templates/js/translated/bom.js:1016 +#: part/models.py:2673 part/templates/part/upload_bom.html:57 +#: templates/js/translated/bom.js:1014 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:96 msgid "Inherited" msgstr "Geerbt" -#: part/models.py:2627 +#: part/models.py:2674 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "Diese Stücklisten-Position wird in die Stücklisten von Teil-Varianten vererbt" -#: part/models.py:2632 part/templates/part/upload_bom.html:56 -#: templates/js/translated/bom.js:1008 +#: part/models.py:2679 part/templates/part/upload_bom.html:56 +#: templates/js/translated/bom.js:1006 msgid "Allow Variants" msgstr "Varianten zulassen" -#: part/models.py:2633 +#: part/models.py:2680 msgid "Stock items for variant parts can be used for this BOM item" msgstr "Bestand von Varianten kann für diese Stücklisten-Position verwendet werden" -#: part/models.py:2711 stock/models.py:468 +#: part/models.py:2758 stock/models.py:468 msgid "Quantity must be integer value for trackable parts" msgstr "Menge muss eine Ganzzahl sein" -#: part/models.py:2720 part/models.py:2722 +#: part/models.py:2767 part/models.py:2769 msgid "Sub part must be specified" msgstr "Zuliefererteil muss festgelegt sein" -#: part/models.py:2827 +#: part/models.py:2874 msgid "BOM Item Substitute" msgstr "Stücklisten Ersatzteile" -#: part/models.py:2848 +#: part/models.py:2895 msgid "Substitute part cannot be the same as the master part" msgstr "Ersatzteil kann nicht identisch mit dem Hauptteil sein" -#: part/models.py:2861 +#: part/models.py:2908 msgid "Parent BOM item" msgstr "Übergeordnete Stücklisten Position" -#: part/models.py:2869 +#: part/models.py:2916 msgid "Substitute part" msgstr "Ersatzteil" -#: part/models.py:2884 +#: part/models.py:2931 msgid "Part 1" msgstr "Teil 1" -#: part/models.py:2888 +#: part/models.py:2935 msgid "Part 2" msgstr "Teil 2" -#: part/models.py:2888 +#: part/models.py:2935 msgid "Select Related Part" msgstr "verknüpftes Teil auswählen" -#: part/models.py:2906 +#: part/models.py:2953 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:2910 +#: part/models.py:2957 msgid "Duplicate relationship already exists" msgstr "Doppelte Beziehung existiert bereits" @@ -4876,7 +4876,7 @@ msgstr "Die Stückliste für %(part)s wurde zuletzt von %(checker)s am msgid "The BOM for %(part)s has not been validated." msgstr "Die Stückliste für %(part)s wurde noch nicht kontrolliert." -#: part/templates/part/bom.html:30 part/templates/part/detail.html:264 +#: part/templates/part/bom.html:30 part/templates/part/detail.html:269 msgid "BOM actions" msgstr "Stücklisten-Aktionen" @@ -4945,8 +4945,8 @@ msgstr "Neues Teil anlegen" msgid "New Part" msgstr "Neues Teil" -#: part/templates/part/category.html:174 part/templates/part/detail.html:363 -#: part/templates/part/detail.html:394 +#: part/templates/part/category.html:174 part/templates/part/detail.html:368 +#: part/templates/part/detail.html:399 msgid "Options" msgstr "Optionen" @@ -5014,138 +5014,146 @@ msgstr "%(full_name)s - %(desc)s (%(match_per)s%% übereinstimmend)" msgid "Part Stock" msgstr "Teilbestand" -#: part/templates/part/detail.html:54 +#: part/templates/part/detail.html:44 +msgid "Refresh scheduling data" +msgstr "" + +#: part/templates/part/detail.html:45 templates/js/translated/tables.js:558 +msgid "Refresh" +msgstr "Neu laden" + +#: part/templates/part/detail.html:59 msgid "Part Test Templates" msgstr "Teil Test-Vorlagen" -#: part/templates/part/detail.html:59 +#: part/templates/part/detail.html:64 msgid "Add Test Template" msgstr "Test Vorlage hinzufügen" -#: part/templates/part/detail.html:116 stock/templates/stock/item.html:53 +#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53 msgid "Sales Order Allocations" msgstr "Verkaufsauftragszuweisungen" -#: part/templates/part/detail.html:138 +#: part/templates/part/detail.html:143 msgid "Part Notes" msgstr "Teile-Notizen" -#: part/templates/part/detail.html:153 +#: part/templates/part/detail.html:158 msgid "Part Variants" msgstr "Teil Varianten" -#: part/templates/part/detail.html:157 +#: part/templates/part/detail.html:162 msgid "Create new variant" msgstr "Neue Variante anlegen" -#: part/templates/part/detail.html:158 +#: part/templates/part/detail.html:163 msgid "New Variant" msgstr "neue Variante anlegen" -#: part/templates/part/detail.html:185 +#: part/templates/part/detail.html:190 msgid "Add new parameter" msgstr "Parameter hinzufügen" -#: part/templates/part/detail.html:222 part/templates/part/part_sidebar.html:54 +#: part/templates/part/detail.html:227 part/templates/part/part_sidebar.html:54 msgid "Related Parts" msgstr "Verknüpfte Teile" -#: part/templates/part/detail.html:226 part/templates/part/detail.html:227 +#: part/templates/part/detail.html:231 part/templates/part/detail.html:232 msgid "Add Related" msgstr "Verknüpftes Teil hinzufügen" -#: part/templates/part/detail.html:247 part/templates/part/part_sidebar.html:17 +#: part/templates/part/detail.html:252 part/templates/part/part_sidebar.html:17 msgid "Bill of Materials" msgstr "Stückliste" -#: part/templates/part/detail.html:252 +#: part/templates/part/detail.html:257 msgid "Export actions" msgstr "Export-Aktionen" -#: part/templates/part/detail.html:256 templates/js/translated/bom.js:284 +#: part/templates/part/detail.html:261 templates/js/translated/bom.js:284 msgid "Export BOM" msgstr "Stückliste exportieren" -#: part/templates/part/detail.html:258 +#: part/templates/part/detail.html:263 msgid "Print BOM Report" msgstr "Stücklisten-Bericht drucken" -#: part/templates/part/detail.html:268 +#: part/templates/part/detail.html:273 msgid "Upload BOM" msgstr "Stückliste hochladen" -#: part/templates/part/detail.html:269 templates/js/translated/part.js:274 +#: part/templates/part/detail.html:274 templates/js/translated/part.js:274 msgid "Copy BOM" msgstr "Stückliste kopieren" -#: part/templates/part/detail.html:270 +#: part/templates/part/detail.html:275 msgid "Validate BOM" msgstr "Stückliste überprüfen" -#: part/templates/part/detail.html:275 +#: part/templates/part/detail.html:280 msgid "New BOM Item" msgstr "Neue Stücklisten-Position" -#: part/templates/part/detail.html:276 +#: part/templates/part/detail.html:281 msgid "Add BOM Item" msgstr "Stücklisten-Position hinzufügen" -#: part/templates/part/detail.html:289 +#: part/templates/part/detail.html:294 msgid "Assemblies" msgstr "Baugruppen" -#: part/templates/part/detail.html:307 +#: part/templates/part/detail.html:312 msgid "Part Builds" msgstr "Gefertigte Teile" -#: part/templates/part/detail.html:334 stock/templates/stock/item.html:38 +#: part/templates/part/detail.html:339 stock/templates/stock/item.html:38 msgid "Build Order Allocations" msgstr "Bauauftragszuweisungen" -#: part/templates/part/detail.html:350 +#: part/templates/part/detail.html:355 msgid "Part Suppliers" msgstr "Zulieferer" -#: part/templates/part/detail.html:380 +#: part/templates/part/detail.html:385 msgid "Part Manufacturers" msgstr "Teil-Hersteller" -#: part/templates/part/detail.html:396 +#: part/templates/part/detail.html:401 msgid "Delete manufacturer parts" msgstr "Herstellerteile löschen" -#: part/templates/part/detail.html:612 +#: part/templates/part/detail.html:626 msgid "Create BOM Item" msgstr "Stücklisten-Position anlegen" -#: part/templates/part/detail.html:656 +#: part/templates/part/detail.html:670 msgid "Related Part" msgstr "verknüpftes Teil" -#: part/templates/part/detail.html:664 +#: part/templates/part/detail.html:678 msgid "Add Related Part" msgstr "verknüpftes Teil hinzufügen" -#: part/templates/part/detail.html:756 +#: part/templates/part/detail.html:770 msgid "Add Test Result Template" msgstr "Testergebnis-Vorlage hinzufügen" -#: part/templates/part/detail.html:900 +#: part/templates/part/detail.html:914 #, python-format msgid "Purchase Unit Price - %(currency)s" msgstr "Stückpreis Einkauf - %(currency)s" -#: part/templates/part/detail.html:912 +#: part/templates/part/detail.html:926 #, python-format msgid "Unit Price-Cost Difference - %(currency)s" msgstr "Stückpreis Differenz - %(currency)s" -#: part/templates/part/detail.html:924 +#: part/templates/part/detail.html:938 #, python-format msgid "Supplier Unit Cost - %(currency)s" msgstr "Stückpreis Zulieferer - %(currency)s" -#: part/templates/part/detail.html:1013 +#: part/templates/part/detail.html:1027 #, python-format msgid "Unit Price - %(currency)s" msgstr "Stückpreis - %(currency)s" @@ -5321,13 +5329,13 @@ msgstr "Zu Bauaufträgen zugeordnet" msgid "Allocated to Sales Orders" msgstr "Zur Bestellung zugeordnet" -#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1037 +#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1035 msgid "Can Build" msgstr "Herstellbar" #: part/templates/part/part_base.html:238 templates/js/translated/part.js:593 #: templates/js/translated/part.js:613 templates/js/translated/part.js:1306 -#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1494 +#: templates/js/translated/part.js:1490 msgid "Building" msgstr "Im Bau" @@ -5379,7 +5387,7 @@ msgid "Total Cost" msgstr "Gesamtkosten" #: part/templates/part/part_pricing.html:40 part/templates/part/prices.html:43 -#: templates/js/translated/bom.js:991 +#: templates/js/translated/bom.js:989 msgid "No supplier pricing available" msgstr "Keine Zulieferer-Preise verfügbar" @@ -5414,6 +5422,18 @@ msgstr "Interner Preis" msgid "No pricing information is available for this part." msgstr "Keine Preise für dieses Teil verfügbar" +#: part/templates/part/part_scheduling.html:13 +#: report/templates/report/inventree_test_report_base.html:97 +#: templates/InvenTree/settings/plugin.html:53 +#: templates/InvenTree/settings/plugin_settings.html:38 +#: templates/js/translated/order.js:1772 templates/js/translated/stock.js:2468 +msgid "Date" +msgstr "Datum" + +#: part/templates/part/part_scheduling.html:14 +msgid "Scheduled Quantity" +msgstr "" + #: part/templates/part/part_sidebar.html:11 msgid "Variants" msgstr "Varianten" @@ -5462,7 +5482,7 @@ msgstr "Verkaufspreis anzeigen" msgid "Calculation parameters" msgstr "Berechnungsparameter" -#: part/templates/part/prices.html:160 templates/js/translated/bom.js:985 +#: part/templates/part/prices.html:160 templates/js/translated/bom.js:983 msgid "Supplier Cost" msgstr "Zuliefererkosten" @@ -5501,7 +5521,7 @@ msgid "No sale pice history available for this part." msgstr "Keine Verkaufsgeschichte für diesen Teil verfügbar." #: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616 -#: templates/js/translated/part.js:1294 templates/js/translated/part.js:1498 +#: templates/js/translated/part.js:1294 msgid "No Stock" msgstr "Kein Bestand" @@ -5893,11 +5913,11 @@ msgstr "Lagerartikel Test-Bericht" #: report/templates/report/inventree_test_report_base.html:79 #: stock/models.py:648 stock/templates/stock/item_base.html:322 -#: templates/js/translated/build.js:424 templates/js/translated/build.js:576 -#: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673 +#: templates/js/translated/build.js:456 templates/js/translated/build.js:608 +#: templates/js/translated/build.js:1208 templates/js/translated/build.js:1705 #: templates/js/translated/model_renderers.js:118 -#: templates/js/translated/order.js:118 templates/js/translated/order.js:3297 -#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490 +#: templates/js/translated/order.js:119 templates/js/translated/order.js:3336 +#: templates/js/translated/order.js:3423 templates/js/translated/stock.js:490 msgid "Serial Number" msgstr "Seriennummer" @@ -5915,13 +5935,6 @@ msgstr "Test" msgid "Result" msgstr "Ergebnis" -#: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:53 -#: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468 -msgid "Date" -msgstr "Datum" - #: report/templates/report/inventree_test_report_base.html:108 msgid "Pass" msgstr "bestanden" @@ -6519,7 +6532,7 @@ msgid "Available Quantity" msgstr "Verfügbare Menge" #: stock/templates/stock/item_base.html:394 -#: templates/js/translated/build.js:1695 +#: templates/js/translated/build.js:1727 msgid "No location set" msgstr "Kein Lagerort gesetzt" @@ -7702,7 +7715,7 @@ msgid "The following parts are low on required stock" msgstr "Bei den folgenden Teilen gibt es wenige Lagerartikel" #: templates/email/build_order_required_stock.html:18 -#: templates/js/translated/bom.js:1483 +#: templates/js/translated/bom.js:1481 msgid "Required Quantity" msgstr "Benötigte Menge" @@ -7716,6 +7729,7 @@ msgid "Click on the following link to view this part" msgstr "Klicken Sie auf den folgenden Link, um diesen Teil anzuzeigen" #: templates/email/low_stock_notification.html:19 +#: templates/js/translated/part.js:2498 msgid "Minimum Quantity" msgstr "Mindestmenge" @@ -7917,10 +7931,10 @@ msgstr "Zeilendaten anzeigen" msgid "Row Data" msgstr "Zeilendaten" -#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:622 +#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:620 #: templates/js/translated/modals.js:56 templates/js/translated/modals.js:601 #: templates/js/translated/modals.js:695 templates/js/translated/modals.js:1003 -#: templates/js/translated/order.js:979 templates/modals.html:15 +#: templates/js/translated/order.js:1018 templates/modals.html:15 #: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50 msgid "Close" msgstr "Schliessen" @@ -7930,12 +7944,12 @@ msgid "Download BOM Template" msgstr "Vorlage einer Stückliste herunterladen" #: templates/js/translated/bom.js:253 templates/js/translated/bom.js:287 -#: templates/js/translated/order.js:760 templates/js/translated/tables.js:145 +#: templates/js/translated/order.js:799 templates/js/translated/tables.js:145 msgid "Format" msgstr "Format" #: templates/js/translated/bom.js:254 templates/js/translated/bom.js:288 -#: templates/js/translated/order.js:761 +#: templates/js/translated/order.js:800 msgid "Select file format" msgstr "Dateiformat auswählen" @@ -7991,390 +8005,390 @@ msgstr "Zulieferer-Daten in Stückliste-Export einschließen" msgid "Remove substitute part" msgstr "Ersatzteil entfernen" -#: templates/js/translated/bom.js:567 +#: templates/js/translated/bom.js:565 msgid "Select and add a new substitute part using the input below" msgstr "Wählen Sie ein neues Ersatzteil aus und fügen Sie sie mit den folgenden Eingaben hinzu" -#: templates/js/translated/bom.js:578 +#: templates/js/translated/bom.js:576 msgid "Are you sure you wish to remove this substitute part link?" msgstr "Sind Sie sicher, dass Sie dieses Ersatzteil entfernen möchten?" -#: templates/js/translated/bom.js:584 +#: templates/js/translated/bom.js:582 msgid "Remove Substitute Part" msgstr "Ersatzteil entfernen" -#: templates/js/translated/bom.js:623 +#: templates/js/translated/bom.js:621 msgid "Add Substitute" msgstr "Ersatzteil hinzufügen" -#: templates/js/translated/bom.js:624 +#: templates/js/translated/bom.js:622 msgid "Edit BOM Item Substitutes" msgstr "Stücklisten Ersatzteile bearbeiten" -#: templates/js/translated/bom.js:686 +#: templates/js/translated/bom.js:684 msgid "All selected BOM items will be deleted" msgstr "Alle ausgewählte Stücklistenpositionen werden gelöscht" -#: templates/js/translated/bom.js:702 +#: templates/js/translated/bom.js:700 msgid "Delete selected BOM items?" msgstr "Ausgewählte Stücklistenpositionen löschen?" -#: templates/js/translated/bom.js:821 +#: templates/js/translated/bom.js:819 msgid "Load BOM for subassembly" msgstr "Stückliste für Bauteile laden" -#: templates/js/translated/bom.js:831 +#: templates/js/translated/bom.js:829 msgid "Substitutes Available" msgstr "Ersatzteile verfügbar" -#: templates/js/translated/bom.js:835 templates/js/translated/build.js:1771 +#: templates/js/translated/bom.js:833 templates/js/translated/build.js:1803 msgid "Variant stock allowed" msgstr "Varianten erlaubt" -#: templates/js/translated/bom.js:929 templates/js/translated/build.js:1816 -#: templates/js/translated/order.js:3632 +#: templates/js/translated/bom.js:927 templates/js/translated/build.js:1849 +#: templates/js/translated/order.js:3671 msgid "No Stock Available" msgstr "Kein Lagerbestand verfügbar" -#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1820 +#: templates/js/translated/bom.js:932 templates/js/translated/build.js:1853 msgid "Includes variant and substitute stock" msgstr "Beinhaltet Variante und Ersatzbestand" -#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822 +#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1855 #: templates/js/translated/part.js:763 msgid "Includes variant stock" msgstr "Beinhaltet Variantenbestand" -#: templates/js/translated/bom.js:938 templates/js/translated/build.js:1824 +#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1857 msgid "Includes substitute stock" msgstr "Enthält Ersatzbestand" -#: templates/js/translated/bom.js:956 +#: templates/js/translated/bom.js:954 msgid "Substitutes" msgstr "Ersatzteile" -#: templates/js/translated/bom.js:971 +#: templates/js/translated/bom.js:969 msgid "Purchase Price Range" msgstr "Kaufpreisspanne" -#: templates/js/translated/bom.js:978 +#: templates/js/translated/bom.js:976 msgid "Purchase Price Average" msgstr "Durchschnittlicher Kaufpreis" -#: templates/js/translated/bom.js:1027 templates/js/translated/bom.js:1147 +#: templates/js/translated/bom.js:1025 templates/js/translated/bom.js:1145 msgid "View BOM" msgstr "Stückliste anzeigen" -#: templates/js/translated/bom.js:1054 +#: templates/js/translated/bom.js:1052 msgid "Including On Order" msgstr "" -#: templates/js/translated/bom.js:1118 +#: templates/js/translated/bom.js:1116 msgid "Validate BOM Item" msgstr "Stücklisten-Position kontrollieren" -#: templates/js/translated/bom.js:1120 +#: templates/js/translated/bom.js:1118 msgid "This line has been validated" msgstr "Diese Position wurde kontrolliert" -#: templates/js/translated/bom.js:1122 +#: templates/js/translated/bom.js:1120 msgid "Edit substitute parts" msgstr "Ersatzteile bearbeiten" -#: templates/js/translated/bom.js:1124 templates/js/translated/bom.js:1286 +#: templates/js/translated/bom.js:1122 templates/js/translated/bom.js:1284 msgid "Edit BOM Item" msgstr "Stücklisten-Position bearbeiten" -#: templates/js/translated/bom.js:1126 +#: templates/js/translated/bom.js:1124 msgid "Delete BOM Item" msgstr "Stücklisten-Position löschen" -#: templates/js/translated/bom.js:1222 templates/js/translated/build.js:1617 +#: templates/js/translated/bom.js:1220 templates/js/translated/build.js:1649 msgid "No BOM items found" msgstr "Keine Stücklisten-Position(en) gefunden" -#: templates/js/translated/bom.js:1466 templates/js/translated/build.js:1755 +#: templates/js/translated/bom.js:1464 templates/js/translated/build.js:1787 msgid "Required Part" msgstr "benötigtes Teil" -#: templates/js/translated/bom.js:1488 +#: templates/js/translated/bom.js:1486 msgid "Inherited from parent BOM" msgstr "Geerbt von übergeordneter Stückliste" -#: templates/js/translated/build.js:86 +#: templates/js/translated/build.js:89 msgid "Edit Build Order" msgstr "Bauauftrag bearbeiten" -#: templates/js/translated/build.js:120 +#: templates/js/translated/build.js:132 msgid "Create Build Order" msgstr "Bauauftrag erstellen" -#: templates/js/translated/build.js:133 +#: templates/js/translated/build.js:165 msgid "Cancel Build Order" msgstr "Bauauftrag abbrechen" -#: templates/js/translated/build.js:142 +#: templates/js/translated/build.js:174 msgid "Are you sure you wish to cancel this build?" msgstr "Sind Sie sicher, dass sie diesen Bauauftrag abbrechen möchten?" -#: templates/js/translated/build.js:148 +#: templates/js/translated/build.js:180 msgid "Stock items have been allocated to this build order" msgstr "Lagerbestand wurde zu diesem Bauauftrag hinzugefügt" -#: templates/js/translated/build.js:155 +#: templates/js/translated/build.js:187 msgid "There are incomplete outputs remaining for this build order" msgstr "Für diesen Bau-Auftrag sind noch unvollständige Endprodukte vorhanden" -#: templates/js/translated/build.js:185 +#: templates/js/translated/build.js:217 msgid "Build order is ready to be completed" msgstr "Bauauftrag ist bereit abgeschlossen zu werden" -#: templates/js/translated/build.js:190 +#: templates/js/translated/build.js:222 msgid "Build Order is incomplete" msgstr "Bauauftrag ist unvollständig" -#: templates/js/translated/build.js:222 +#: templates/js/translated/build.js:254 msgid "Complete Build Order" msgstr "Bauauftrag fertigstellen" -#: templates/js/translated/build.js:263 templates/js/translated/stock.js:92 +#: templates/js/translated/build.js:295 templates/js/translated/stock.js:92 #: templates/js/translated/stock.js:214 msgid "Next available serial number" msgstr "Nächste verfügbare Seriennummer" -#: templates/js/translated/build.js:265 templates/js/translated/stock.js:94 +#: templates/js/translated/build.js:297 templates/js/translated/stock.js:94 #: templates/js/translated/stock.js:216 msgid "Latest serial number" msgstr "Letzte Seriennummer" -#: templates/js/translated/build.js:274 +#: templates/js/translated/build.js:306 msgid "The Bill of Materials contains trackable parts" msgstr "Die Stückliste enthält verfolgbare Teile" -#: templates/js/translated/build.js:275 +#: templates/js/translated/build.js:307 msgid "Build outputs must be generated individually" msgstr "Endprodukte müssen individuell angelegt werden" -#: templates/js/translated/build.js:283 +#: templates/js/translated/build.js:315 msgid "Trackable parts can have serial numbers specified" msgstr "Nachverfolgbare Teile können Seriennummern haben" -#: templates/js/translated/build.js:284 +#: templates/js/translated/build.js:316 msgid "Enter serial numbers to generate multiple single build outputs" msgstr "Seriennummeren für mehrere einzelne Endprodukte angeben" -#: templates/js/translated/build.js:291 +#: templates/js/translated/build.js:323 msgid "Create Build Output" msgstr "Endprodukt anlegen" -#: templates/js/translated/build.js:322 +#: templates/js/translated/build.js:354 msgid "Allocate stock items to this build output" msgstr "Lagerartikel zu diesem Endprodukt zuweisen" -#: templates/js/translated/build.js:333 +#: templates/js/translated/build.js:365 msgid "Unallocate stock from build output" msgstr "Bestand von Endpordukt zurücknehmen" -#: templates/js/translated/build.js:342 +#: templates/js/translated/build.js:374 msgid "Complete build output" msgstr "Endprodukt fertigstellen" -#: templates/js/translated/build.js:350 +#: templates/js/translated/build.js:382 msgid "Delete build output" msgstr "Endprodukt entfernen" -#: templates/js/translated/build.js:373 +#: templates/js/translated/build.js:405 msgid "Are you sure you wish to unallocate stock items from this build?" msgstr "Sind Sie sicher, dass sie alle Lagerartikel von diesem Bauauftrag entfernen möchten?" -#: templates/js/translated/build.js:391 +#: templates/js/translated/build.js:423 msgid "Unallocate Stock Items" msgstr "Lagerartikel zurücknehmen" -#: templates/js/translated/build.js:411 templates/js/translated/build.js:563 +#: templates/js/translated/build.js:443 templates/js/translated/build.js:595 msgid "Select Build Outputs" msgstr "Endprodukte auswählen" -#: templates/js/translated/build.js:412 templates/js/translated/build.js:564 +#: templates/js/translated/build.js:444 templates/js/translated/build.js:596 msgid "At least one build output must be selected" msgstr "Mindestens ein Endprodukt muss ausgewählt werden" -#: templates/js/translated/build.js:466 templates/js/translated/build.js:618 +#: templates/js/translated/build.js:498 templates/js/translated/build.js:650 msgid "Output" msgstr "Endprodukt" -#: templates/js/translated/build.js:484 +#: templates/js/translated/build.js:516 msgid "Complete Build Outputs" msgstr "Endprodukte fertigstellen" -#: templates/js/translated/build.js:631 +#: templates/js/translated/build.js:663 msgid "Delete Build Outputs" msgstr "Endprodukte entfernen" -#: templates/js/translated/build.js:720 +#: templates/js/translated/build.js:752 msgid "No build order allocations found" msgstr "Keine Allokationen für Bauauftrag gefunden" -#: templates/js/translated/build.js:757 +#: templates/js/translated/build.js:789 msgid "Location not specified" msgstr "Standort nicht angegeben" -#: templates/js/translated/build.js:1136 +#: templates/js/translated/build.js:1168 msgid "No active build outputs found" msgstr "Keine aktiven Endprodukte gefunden" -#: templates/js/translated/build.js:1205 +#: templates/js/translated/build.js:1237 msgid "Allocated Stock" msgstr "Bestand zuteilen" -#: templates/js/translated/build.js:1212 +#: templates/js/translated/build.js:1244 msgid "No tracked BOM items for this build" msgstr "Keine nachverfolgten Stücklisten-Einträge für diesen Bauauftrag" -#: templates/js/translated/build.js:1234 +#: templates/js/translated/build.js:1266 msgid "Completed Tests" msgstr "Abgeschlossene Tests" -#: templates/js/translated/build.js:1239 +#: templates/js/translated/build.js:1271 msgid "No required tests for this build" msgstr "Keine erforderlichen Tests für diesen Bauauftrag" -#: templates/js/translated/build.js:1712 templates/js/translated/build.js:2656 -#: templates/js/translated/order.js:3332 +#: templates/js/translated/build.js:1744 templates/js/translated/build.js:2689 +#: templates/js/translated/order.js:3371 msgid "Edit stock allocation" msgstr "Bestands-Zuordnung bearbeiten" -#: templates/js/translated/build.js:1714 templates/js/translated/build.js:2657 -#: templates/js/translated/order.js:3333 +#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2690 +#: templates/js/translated/order.js:3372 msgid "Delete stock allocation" msgstr "Bestands-Zuordnung löschen" -#: templates/js/translated/build.js:1732 +#: templates/js/translated/build.js:1764 msgid "Edit Allocation" msgstr "Zuordnung bearbeiten" -#: templates/js/translated/build.js:1742 +#: templates/js/translated/build.js:1774 msgid "Remove Allocation" msgstr "Zuordnung entfernen" -#: templates/js/translated/build.js:1767 +#: templates/js/translated/build.js:1799 msgid "Substitute parts available" msgstr "Ersatzteile verfügbar" -#: templates/js/translated/build.js:1784 +#: templates/js/translated/build.js:1816 msgid "Quantity Per" msgstr "Anzahl pro" -#: templates/js/translated/build.js:1810 templates/js/translated/order.js:3639 +#: templates/js/translated/build.js:1843 templates/js/translated/order.js:3678 msgid "Insufficient stock available" msgstr "Unzureichender Bestand verfügbar" -#: templates/js/translated/build.js:1812 templates/js/translated/order.js:3637 +#: templates/js/translated/build.js:1845 templates/js/translated/order.js:3676 msgid "Sufficient stock available" msgstr "Ausreichender Bestand verfügbar" -#: templates/js/translated/build.js:1841 templates/js/translated/build.js:2086 -#: templates/js/translated/build.js:2652 templates/js/translated/order.js:3651 +#: templates/js/translated/build.js:1874 templates/js/translated/build.js:2119 +#: templates/js/translated/build.js:2685 templates/js/translated/order.js:3690 msgid "Allocated" msgstr "Zugeordnet" -#: templates/js/translated/build.js:1889 templates/js/translated/order.js:3731 +#: templates/js/translated/build.js:1922 templates/js/translated/order.js:3770 msgid "Build stock" msgstr "Bestand bauen" -#: templates/js/translated/build.js:1893 templates/stock_table.html:50 +#: templates/js/translated/build.js:1926 templates/stock_table.html:50 msgid "Order stock" msgstr "Bestand bestellen" -#: templates/js/translated/build.js:1896 templates/js/translated/order.js:3724 +#: templates/js/translated/build.js:1929 templates/js/translated/order.js:3763 msgid "Allocate stock" msgstr "Bestand zuweisen" -#: templates/js/translated/build.js:1935 templates/js/translated/label.js:172 -#: templates/js/translated/order.js:807 templates/js/translated/order.js:2859 +#: templates/js/translated/build.js:1968 templates/js/translated/label.js:172 +#: templates/js/translated/order.js:846 templates/js/translated/order.js:2898 #: templates/js/translated/report.js:225 msgid "Select Parts" msgstr "Teile auswählen" -#: templates/js/translated/build.js:1936 templates/js/translated/order.js:2860 +#: templates/js/translated/build.js:1969 templates/js/translated/order.js:2899 msgid "You must select at least one part to allocate" msgstr "Sie müssen mindestens ein Teil auswählen" -#: templates/js/translated/build.js:1985 templates/js/translated/order.js:2808 +#: templates/js/translated/build.js:2018 templates/js/translated/order.js:2847 msgid "Specify stock allocation quantity" msgstr "Anzahl für Bestandszuordnung eingeben" -#: templates/js/translated/build.js:2059 +#: templates/js/translated/build.js:2092 msgid "All Parts Allocated" msgstr "Alle Teile zugeordnet" -#: templates/js/translated/build.js:2060 +#: templates/js/translated/build.js:2093 msgid "All selected parts have been fully allocated" msgstr "Alle ausgewählten Teile wurden vollständig zugeordnet" -#: templates/js/translated/build.js:2074 templates/js/translated/order.js:2874 +#: templates/js/translated/build.js:2107 templates/js/translated/order.js:2913 msgid "Select source location (leave blank to take from all locations)" msgstr "Wählen Sie den Quellort aus (leer lassen um von allen Standorten zu nehmen)" -#: templates/js/translated/build.js:2102 +#: templates/js/translated/build.js:2135 msgid "Allocate Stock Items to Build Order" msgstr "Lagerartikel für Bauauftrag zuweisen" -#: templates/js/translated/build.js:2113 templates/js/translated/order.js:2971 +#: templates/js/translated/build.js:2146 templates/js/translated/order.js:3010 msgid "No matching stock locations" msgstr "Keine passenden Lagerstandorte" -#: templates/js/translated/build.js:2185 templates/js/translated/order.js:3048 +#: templates/js/translated/build.js:2218 templates/js/translated/order.js:3087 msgid "No matching stock items" msgstr "Keine passenden Lagerbestände" -#: templates/js/translated/build.js:2282 +#: templates/js/translated/build.js:2315 msgid "Automatic Stock Allocation" msgstr "Automatische Lagerzuordnung" -#: templates/js/translated/build.js:2283 +#: templates/js/translated/build.js:2316 msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines" msgstr "Lagerartikel werden automatisch diesem Bauauftrag zugewiesen, entsprechend den angegebenen Richtlinien" -#: templates/js/translated/build.js:2285 +#: templates/js/translated/build.js:2318 msgid "If a location is specifed, stock will only be allocated from that location" msgstr "Wenn ein Standort angegeben ist, wird der Lagerbestand nur von diesem Ort zugewiesen" -#: templates/js/translated/build.js:2286 +#: templates/js/translated/build.js:2319 msgid "If stock is considered interchangeable, it will be allocated from the first location it is found" msgstr "Wenn der Lagerbestand als austauschbar gilt, wird er vom ersten Standort zugewiesen, an dem er gefunden wird" -#: templates/js/translated/build.js:2287 +#: templates/js/translated/build.js:2320 msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found" msgstr "Wenn ein Ersatzbestand erlaubt ist, wird es dort verwendet, wo kein Vorrat des Primärteils gefunden werden kann" -#: templates/js/translated/build.js:2308 +#: templates/js/translated/build.js:2341 msgid "Allocate Stock Items" msgstr "Lagerartikel zuordnen" -#: templates/js/translated/build.js:2414 +#: templates/js/translated/build.js:2447 msgid "No builds matching query" msgstr "Keine Bauaufträge passen zur Anfrage" -#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387 -#: templates/js/translated/part.js:1899 templates/js/translated/stock.js:1686 +#: templates/js/translated/build.js:2482 templates/js/translated/part.js:1387 +#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1686 #: templates/js/translated/stock.js:2386 msgid "Select" msgstr "Auswählen" -#: templates/js/translated/build.js:2463 +#: templates/js/translated/build.js:2496 msgid "Build order is overdue" msgstr "Bauauftrag ist überfällig" -#: templates/js/translated/build.js:2491 +#: templates/js/translated/build.js:2524 msgid "Progress" msgstr "Fortschritt" -#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647 +#: templates/js/translated/build.js:2560 templates/js/translated/stock.js:2647 msgid "No user information" msgstr "Keine Benutzerinformation" -#: templates/js/translated/build.js:2633 +#: templates/js/translated/build.js:2666 msgid "No parts allocated for" msgstr "Keine Teile zugeordnet zu" @@ -8390,11 +8404,11 @@ msgstr "Herstellerteil hinzufügen" msgid "Edit Manufacturer Part" msgstr "Herstellerteil ändern" -#: templates/js/translated/company.js:167 templates/js/translated/order.js:509 +#: templates/js/translated/company.js:167 templates/js/translated/order.js:510 msgid "Add Supplier" msgstr "Zulieferer hinzufügen" -#: templates/js/translated/company.js:195 templates/js/translated/order.js:628 +#: templates/js/translated/company.js:195 templates/js/translated/order.js:667 msgid "Add Supplier Part" msgstr "Zuliefererteil hinzufügen" @@ -8765,381 +8779,385 @@ msgstr "Keine ungelesenen Benachrichtigungen" msgid "Notifications will load here" msgstr "Benachrichtigungen erscheinen hier" -#: templates/js/translated/order.js:94 +#: templates/js/translated/order.js:95 msgid "No stock items have been allocated to this shipment" msgstr "Dieser Sendung wurden keine Artikel zugewiesen" -#: templates/js/translated/order.js:99 +#: templates/js/translated/order.js:100 msgid "The following stock items will be shipped" msgstr "Die folgenden Artikel werden verschickt" -#: templates/js/translated/order.js:139 +#: templates/js/translated/order.js:140 msgid "Complete Shipment" msgstr "Sendung fertigstellen" -#: templates/js/translated/order.js:159 +#: templates/js/translated/order.js:160 msgid "Confirm Shipment" msgstr "Sendung bestätigen" -#: templates/js/translated/order.js:215 +#: templates/js/translated/order.js:216 msgid "No pending shipments found" msgstr "Keine ausstehenden Sendungen gefunden" -#: templates/js/translated/order.js:219 +#: templates/js/translated/order.js:220 msgid "No stock items have been allocated to pending shipments" msgstr "Keine Lagerartikel für offene Sendungen zugewiesen" -#: templates/js/translated/order.js:251 +#: templates/js/translated/order.js:252 msgid "Skip" msgstr "Überspringen" -#: templates/js/translated/order.js:281 +#: templates/js/translated/order.js:282 msgid "Complete Purchase Order" msgstr "Bestellung vervollständigen" -#: templates/js/translated/order.js:287 +#: templates/js/translated/order.js:288 msgid "Mark this order as complete?" msgstr "Diese Bestellung als vollständig markieren?" -#: templates/js/translated/order.js:293 +#: templates/js/translated/order.js:294 msgid "All line items have been received" msgstr "Alle Einträge wurden erhalten" -#: templates/js/translated/order.js:298 +#: templates/js/translated/order.js:299 msgid "This order has line items which have not been marked as received." msgstr "Diese Bestellung enthält Positionen, die nicht als empfangen markiert wurden." -#: templates/js/translated/order.js:299 +#: templates/js/translated/order.js:300 msgid "Completing this order means that the order and line items will no longer be editable." msgstr "Fertigstellen dieser Bestellung bedeutet, dass sie und ihre Positionen nicht länger bearbeitbar sind." -#: templates/js/translated/order.js:322 +#: templates/js/translated/order.js:323 msgid "Cancel Purchase Order" msgstr "Bestellung abbrechen" -#: templates/js/translated/order.js:327 +#: templates/js/translated/order.js:328 msgid "Are you sure you wish to cancel this purchase order?" msgstr "Sind Sie sicher, dass Sie diese Bestellung abbrechen möchten?" -#: templates/js/translated/order.js:333 +#: templates/js/translated/order.js:334 msgid "This purchase order can not be cancelled" msgstr "Diese Bestellung kann nicht storniert werden" -#: templates/js/translated/order.js:356 +#: templates/js/translated/order.js:357 msgid "Issue Purchase Order" msgstr "Bestellung aufgeben" -#: templates/js/translated/order.js:361 +#: templates/js/translated/order.js:362 msgid "After placing this purchase order, line items will no longer be editable." msgstr "Nachdem diese Bestellung plaziert ist können die Positionen nicht länger bearbeitbar ist." -#: templates/js/translated/order.js:383 +#: templates/js/translated/order.js:384 msgid "Cancel Sales Order" msgstr "Auftrag stornieren" -#: templates/js/translated/order.js:388 +#: templates/js/translated/order.js:389 msgid "Cancelling this order means that the order will no longer be editable." msgstr "Abbruch dieser Bestellung bedeutet, dass sie nicht länger bearbeitbar ist." -#: templates/js/translated/order.js:442 +#: templates/js/translated/order.js:443 msgid "Create New Shipment" msgstr "Sendung anlegen" -#: templates/js/translated/order.js:467 +#: templates/js/translated/order.js:468 msgid "Add Customer" msgstr "Kunden hinzufügen" -#: templates/js/translated/order.js:492 +#: templates/js/translated/order.js:493 msgid "Create Sales Order" msgstr "Auftrag anlegen" -#: templates/js/translated/order.js:757 +#: templates/js/translated/order.js:554 +msgid "Edit Purchase Order" +msgstr "Bestellung bearbeiten" + +#: templates/js/translated/order.js:796 msgid "Export Order" msgstr "Bestellung exportieren" -#: templates/js/translated/order.js:808 +#: templates/js/translated/order.js:847 msgid "At least one purchaseable part must be selected" msgstr "Mindestens ein kaufbares Teil muss ausgewählt werden" -#: templates/js/translated/order.js:833 +#: templates/js/translated/order.js:872 msgid "Quantity to order" msgstr "Zu bestellende Menge" -#: templates/js/translated/order.js:842 +#: templates/js/translated/order.js:881 msgid "New supplier part" msgstr "Neues Zuliefererteil" -#: templates/js/translated/order.js:860 +#: templates/js/translated/order.js:899 msgid "New purchase order" msgstr "Neue Bestellung" -#: templates/js/translated/order.js:893 +#: templates/js/translated/order.js:932 msgid "Add to purchase order" msgstr "Zur Bestellung hinzufügen" -#: templates/js/translated/order.js:1002 +#: templates/js/translated/order.js:1041 msgid "No matching supplier parts" msgstr "Keine passenden Lieferantenteile" -#: templates/js/translated/order.js:1017 +#: templates/js/translated/order.js:1056 msgid "No matching purchase orders" msgstr "Keine passenden Bestellungen" -#: templates/js/translated/order.js:1194 +#: templates/js/translated/order.js:1233 msgid "Select Line Items" msgstr "Positionen auswählen" -#: templates/js/translated/order.js:1195 +#: templates/js/translated/order.js:1234 msgid "At least one line item must be selected" msgstr "Mindestens eine Position muss ausgewählt werden" -#: templates/js/translated/order.js:1215 templates/js/translated/order.js:1314 +#: templates/js/translated/order.js:1254 templates/js/translated/order.js:1353 msgid "Add batch code" msgstr "Losnummer hinzufügen" -#: templates/js/translated/order.js:1221 templates/js/translated/order.js:1325 +#: templates/js/translated/order.js:1260 templates/js/translated/order.js:1364 msgid "Add serial numbers" msgstr "Seriennummern hinzufügen" -#: templates/js/translated/order.js:1233 +#: templates/js/translated/order.js:1272 msgid "Quantity to receive" msgstr "Zu erhaltende Menge" -#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144 +#: templates/js/translated/order.js:1336 templates/js/translated/stock.js:2144 msgid "Stock Status" msgstr "Status" -#: templates/js/translated/order.js:1388 +#: templates/js/translated/order.js:1427 msgid "Order Code" msgstr "Bestellnummer" -#: templates/js/translated/order.js:1389 +#: templates/js/translated/order.js:1428 msgid "Ordered" msgstr "Bestellt" -#: templates/js/translated/order.js:1391 +#: templates/js/translated/order.js:1430 msgid "Quantity to Receive" msgstr "Zu erhaltende Menge" -#: templates/js/translated/order.js:1410 +#: templates/js/translated/order.js:1449 msgid "Confirm receipt of items" msgstr "Empfang der Teile bestätigen" -#: templates/js/translated/order.js:1411 +#: templates/js/translated/order.js:1450 msgid "Receive Purchase Order Items" msgstr "Bestellpositionen erhalten" -#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943 +#: templates/js/translated/order.js:1711 templates/js/translated/part.js:943 msgid "No purchase orders found" msgstr "Keine Bestellungen gefunden" -#: templates/js/translated/order.js:1699 templates/js/translated/order.js:2503 +#: templates/js/translated/order.js:1738 templates/js/translated/order.js:2542 msgid "Order is overdue" msgstr "Bestellung überfällig" -#: templates/js/translated/order.js:1749 templates/js/translated/order.js:2568 -#: templates/js/translated/order.js:2709 +#: templates/js/translated/order.js:1788 templates/js/translated/order.js:2607 +#: templates/js/translated/order.js:2748 msgid "Items" msgstr "Positionen" -#: templates/js/translated/order.js:1847 templates/js/translated/order.js:3783 +#: templates/js/translated/order.js:1886 templates/js/translated/order.js:3822 msgid "Duplicate Line Item" msgstr "Position duplizieren" -#: templates/js/translated/order.js:1864 templates/js/translated/order.js:3805 +#: templates/js/translated/order.js:1903 templates/js/translated/order.js:3844 msgid "Edit Line Item" msgstr "Position bearbeiten" -#: templates/js/translated/order.js:1877 templates/js/translated/order.js:3816 +#: templates/js/translated/order.js:1916 templates/js/translated/order.js:3855 msgid "Delete Line Item" msgstr "Position löschen" -#: templates/js/translated/order.js:1920 +#: templates/js/translated/order.js:1959 msgid "No line items found" msgstr "Keine Positionen gefunden" -#: templates/js/translated/order.js:1947 templates/js/translated/order.js:3517 +#: templates/js/translated/order.js:1986 templates/js/translated/order.js:3556 msgid "Total" msgstr "Summe" -#: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203 -#: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050 -#: templates/js/translated/part.js:2135 templates/js/translated/part.js:2488 +#: templates/js/translated/order.js:2040 templates/js/translated/order.js:2242 +#: templates/js/translated/order.js:3581 templates/js/translated/order.js:4089 +#: templates/js/translated/part.js:2131 templates/js/translated/part.js:2703 msgid "Unit Price" msgstr "Stück-Preis" -#: templates/js/translated/order.js:2016 templates/js/translated/order.js:2219 -#: templates/js/translated/order.js:3558 templates/js/translated/order.js:4066 +#: templates/js/translated/order.js:2055 templates/js/translated/order.js:2258 +#: templates/js/translated/order.js:3597 templates/js/translated/order.js:4105 msgid "Total Price" msgstr "Gesamtpreis" -#: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600 +#: templates/js/translated/order.js:2096 templates/js/translated/order.js:3639 #: templates/js/translated/part.js:1050 msgid "This line item is overdue" msgstr "Diese Position ist überfällig" -#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096 +#: templates/js/translated/order.js:2155 templates/js/translated/part.js:1096 msgid "Receive line item" msgstr "Position empfangen" -#: templates/js/translated/order.js:2120 templates/js/translated/order.js:3737 +#: templates/js/translated/order.js:2159 templates/js/translated/order.js:3776 msgid "Duplicate line item" msgstr "Position duplizieren" -#: templates/js/translated/order.js:2121 templates/js/translated/order.js:3738 +#: templates/js/translated/order.js:2160 templates/js/translated/order.js:3777 msgid "Edit line item" msgstr "Position bearbeiten" -#: templates/js/translated/order.js:2122 templates/js/translated/order.js:3742 +#: templates/js/translated/order.js:2161 templates/js/translated/order.js:3781 msgid "Delete line item" msgstr "Position löschen" -#: templates/js/translated/order.js:2268 templates/js/translated/order.js:4115 +#: templates/js/translated/order.js:2307 templates/js/translated/order.js:4154 msgid "Duplicate line" msgstr "Position duplizieren" -#: templates/js/translated/order.js:2269 templates/js/translated/order.js:4116 +#: templates/js/translated/order.js:2308 templates/js/translated/order.js:4155 msgid "Edit line" msgstr "Zeile bearbeiten" -#: templates/js/translated/order.js:2270 templates/js/translated/order.js:4117 +#: templates/js/translated/order.js:2309 templates/js/translated/order.js:4156 msgid "Delete line" msgstr "Zeile löschen" -#: templates/js/translated/order.js:2300 templates/js/translated/order.js:4147 +#: templates/js/translated/order.js:2339 templates/js/translated/order.js:4186 msgid "Duplicate Line" msgstr "Position duplizieren" -#: templates/js/translated/order.js:2321 templates/js/translated/order.js:4168 +#: templates/js/translated/order.js:2360 templates/js/translated/order.js:4207 msgid "Edit Line" msgstr "Zeile bearbeiten" -#: templates/js/translated/order.js:2332 templates/js/translated/order.js:4179 +#: templates/js/translated/order.js:2371 templates/js/translated/order.js:4218 msgid "Delete Line" msgstr "Zeile löschen" -#: templates/js/translated/order.js:2343 +#: templates/js/translated/order.js:2382 msgid "No matching line" msgstr "Keine passenden Positionen gefunden" -#: templates/js/translated/order.js:2454 +#: templates/js/translated/order.js:2493 msgid "No sales orders found" msgstr "Keine Aufträge gefunden" -#: templates/js/translated/order.js:2517 +#: templates/js/translated/order.js:2556 msgid "Invalid Customer" msgstr "Ungültiger Kunde" -#: templates/js/translated/order.js:2615 +#: templates/js/translated/order.js:2654 msgid "Edit shipment" msgstr "Sendung bearbeiten" -#: templates/js/translated/order.js:2618 +#: templates/js/translated/order.js:2657 msgid "Complete shipment" msgstr "Sendung fertigstellen" -#: templates/js/translated/order.js:2623 +#: templates/js/translated/order.js:2662 msgid "Delete shipment" msgstr "Sendung löschen" -#: templates/js/translated/order.js:2643 +#: templates/js/translated/order.js:2682 msgid "Edit Shipment" msgstr "Sendung bearbeiten" -#: templates/js/translated/order.js:2660 +#: templates/js/translated/order.js:2699 msgid "Delete Shipment" msgstr "Sendung löschen" -#: templates/js/translated/order.js:2694 +#: templates/js/translated/order.js:2733 msgid "No matching shipments found" msgstr "Keine passenden Sendungen gefunden" -#: templates/js/translated/order.js:2704 +#: templates/js/translated/order.js:2743 msgid "Shipment Reference" msgstr "Sendungsreferenz" -#: templates/js/translated/order.js:2728 +#: templates/js/translated/order.js:2767 msgid "Not shipped" msgstr "Nicht versandt" -#: templates/js/translated/order.js:2734 +#: templates/js/translated/order.js:2773 msgid "Tracking" msgstr "Nachverfolgen" -#: templates/js/translated/order.js:2738 +#: templates/js/translated/order.js:2777 msgid "Invoice" msgstr "Rechnung" -#: templates/js/translated/order.js:2907 +#: templates/js/translated/order.js:2946 msgid "Add Shipment" msgstr "Sendung hinzufügen" -#: templates/js/translated/order.js:2958 +#: templates/js/translated/order.js:2997 msgid "Confirm stock allocation" msgstr "Bestandszuordnung bestätigen" -#: templates/js/translated/order.js:2959 +#: templates/js/translated/order.js:2998 msgid "Allocate Stock Items to Sales Order" msgstr "Artikel zu Kundenauftrag zuweisen" -#: templates/js/translated/order.js:3167 +#: templates/js/translated/order.js:3206 msgid "No sales order allocations found" msgstr "Keine Allokationen für Verkaufsaufträge gefunden" -#: templates/js/translated/order.js:3246 +#: templates/js/translated/order.js:3285 msgid "Edit Stock Allocation" msgstr "Bestandszuordnung bearbeiten" -#: templates/js/translated/order.js:3263 +#: templates/js/translated/order.js:3302 msgid "Confirm Delete Operation" msgstr "Löschvorgang bestätigen" -#: templates/js/translated/order.js:3264 +#: templates/js/translated/order.js:3303 msgid "Delete Stock Allocation" msgstr "Bestands-Zuordnung löschen" -#: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398 +#: templates/js/translated/order.js:3348 templates/js/translated/order.js:3437 #: templates/js/translated/stock.js:1602 msgid "Shipped to customer" msgstr "an Kunde versand" -#: templates/js/translated/order.js:3317 templates/js/translated/order.js:3407 +#: templates/js/translated/order.js:3356 templates/js/translated/order.js:3446 msgid "Stock location not specified" msgstr "Lagerstandort nicht angegeben" -#: templates/js/translated/order.js:3721 +#: templates/js/translated/order.js:3760 msgid "Allocate serial numbers" msgstr "Seriennummern zuweisen" -#: templates/js/translated/order.js:3727 +#: templates/js/translated/order.js:3766 msgid "Purchase stock" msgstr "Bestand kaufen" -#: templates/js/translated/order.js:3734 templates/js/translated/order.js:3932 +#: templates/js/translated/order.js:3773 templates/js/translated/order.js:3971 msgid "Calculate price" msgstr "Preis berechnen" -#: templates/js/translated/order.js:3746 +#: templates/js/translated/order.js:3785 msgid "Cannot be deleted as items have been shipped" msgstr "Kann nicht gelöscht werden, da Artikel versandt wurden" -#: templates/js/translated/order.js:3749 +#: templates/js/translated/order.js:3788 msgid "Cannot be deleted as items have been allocated" msgstr "Kann nicht gelöscht werden, da Artikel zugewiesen sind" -#: templates/js/translated/order.js:3831 +#: templates/js/translated/order.js:3870 msgid "Allocate Serial Numbers" msgstr "Seriennummern zuweisen" -#: templates/js/translated/order.js:3940 +#: templates/js/translated/order.js:3979 msgid "Update Unit Price" msgstr "Stückpreis aktualisieren" -#: templates/js/translated/order.js:3954 +#: templates/js/translated/order.js:3993 msgid "No matching line items" msgstr "Keine passenden Positionen gefunden" -#: templates/js/translated/order.js:4190 +#: templates/js/translated/order.js:4229 msgid "No matching lines" msgstr "Keine passenden Positionen gefunden" @@ -9319,12 +9337,12 @@ msgstr "überprüfte Stückliste" msgid "Copy Bill of Materials" msgstr "Stückliste kopieren" -#: templates/js/translated/part.js:586 templates/js/translated/part.js:1470 +#: templates/js/translated/part.js:586 templates/js/translated/part.js:1478 #: templates/js/translated/table_filters.js:468 msgid "Low stock" msgstr "Bestand niedrig" -#: templates/js/translated/part.js:596 templates/js/translated/part.js:1482 +#: templates/js/translated/part.js:596 msgid "No stock available" msgstr "Kein Lagerbestand verfügbar" @@ -9356,7 +9374,7 @@ msgstr "Teile-Beziehung löschen" msgid "Delete Part Relationship" msgstr "Teile-Beziehung löschen" -#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1553 +#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1549 msgid "No parts found" msgstr "Keine Teile gefunden" @@ -9368,100 +9386,124 @@ msgstr "Nicht verfügbar" msgid "No category" msgstr "Keine Kategorie" -#: templates/js/translated/part.js:1577 templates/js/translated/part.js:1820 +#: templates/js/translated/part.js:1476 +msgid "No stock" +msgstr "" + +#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816 #: templates/js/translated/stock.js:2347 msgid "Display as list" msgstr "Listenansicht" -#: templates/js/translated/part.js:1593 +#: templates/js/translated/part.js:1589 msgid "Display as grid" msgstr "Rasteransicht" -#: templates/js/translated/part.js:1659 +#: templates/js/translated/part.js:1655 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:1664 +#: templates/js/translated/part.js:1660 msgid "Set Part Category" msgstr "Teil-Kategorie auswählen" -#: templates/js/translated/part.js:1669 +#: templates/js/translated/part.js:1665 msgid "Select Part Category" msgstr "Teil-Kategorie wählen" -#: templates/js/translated/part.js:1682 +#: templates/js/translated/part.js:1678 msgid "Category is required" msgstr "Kategorie erforderlich" -#: templates/js/translated/part.js:1839 templates/js/translated/stock.js:2366 +#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2366 msgid "Display as tree" msgstr "Baumansicht" -#: templates/js/translated/part.js:1918 +#: templates/js/translated/part.js:1914 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:1934 +#: templates/js/translated/part.js:1930 msgid "Subscribed category" msgstr "Abonnierte Kategorie" -#: templates/js/translated/part.js:1992 +#: templates/js/translated/part.js:1988 msgid "No test templates matching query" msgstr "Keine zur Anfrage passenden Testvorlagen" -#: templates/js/translated/part.js:2043 templates/js/translated/stock.js:1299 +#: templates/js/translated/part.js:2039 templates/js/translated/stock.js:1299 msgid "Edit test result" msgstr "Testergebnis bearbeiten" -#: templates/js/translated/part.js:2044 templates/js/translated/stock.js:1300 +#: templates/js/translated/part.js:2040 templates/js/translated/stock.js:1300 #: templates/js/translated/stock.js:1560 msgid "Delete test result" msgstr "Testergebnis löschen" -#: templates/js/translated/part.js:2050 +#: templates/js/translated/part.js:2046 msgid "This test is defined for a parent part" msgstr "Dieses Testergebnis ist für ein Hauptteil" -#: templates/js/translated/part.js:2072 +#: templates/js/translated/part.js:2068 msgid "Edit Test Result Template" msgstr "Testergebnis-Vorlage bearbeiten" -#: templates/js/translated/part.js:2086 +#: templates/js/translated/part.js:2082 msgid "Delete Test Result Template" msgstr "Testergebnis-Vorlage löschen" -#: templates/js/translated/part.js:2111 +#: templates/js/translated/part.js:2107 #, python-brace-format msgid "No ${human_name} information found" msgstr "Keine ${human_name} Informationen gefunden" -#: templates/js/translated/part.js:2168 +#: templates/js/translated/part.js:2164 #, python-brace-format msgid "Edit ${human_name}" msgstr "${human_name} bearbeiten" -#: templates/js/translated/part.js:2169 +#: templates/js/translated/part.js:2165 #, python-brace-format msgid "Delete ${human_name}" msgstr "${human_name} löschen" -#: templates/js/translated/part.js:2283 -msgid "Current Stock" -msgstr "Aktueller Lagerbestand" +#: templates/js/translated/part.js:2330 templates/js/translated/part.js:2331 +msgid "No date specified" +msgstr "" -#: templates/js/translated/part.js:2316 +#: templates/js/translated/part.js:2333 +msgid "Specified date is in the past" +msgstr "" + +#: templates/js/translated/part.js:2339 +msgid "Speculative" +msgstr "" + +#: templates/js/translated/part.js:2389 msgid "No scheduling information available for this part" msgstr "Keine Zeitplanung für dieses Teil vorhanden" -#: templates/js/translated/part.js:2342 +#: templates/js/translated/part.js:2395 +msgid "Error fetching scheduling information for this part" +msgstr "" + +#: templates/js/translated/part.js:2491 msgid "Scheduled Stock Quantities" msgstr "Geplante Lagermengen" -#: templates/js/translated/part.js:2412 +#: templates/js/translated/part.js:2507 +msgid "Maximum Quantity" +msgstr "" + +#: templates/js/translated/part.js:2533 +msgid "Minimum Stock Level" +msgstr "" + +#: templates/js/translated/part.js:2627 msgid "Single Price" msgstr "Einzelpreis" -#: templates/js/translated/part.js:2431 +#: templates/js/translated/part.js:2646 msgid "Single Price Difference" msgstr "Einzelpreisdifferenz" @@ -10222,10 +10264,6 @@ msgstr "Keine passenden Ergebnisse gefunden" msgid "Hide/Show pagination" msgstr "Zeige/Verstecke Pagination" -#: templates/js/translated/tables.js:558 -msgid "Refresh" -msgstr "Neu laden" - #: templates/js/translated/tables.js:561 msgid "Toggle" msgstr "umschalten" diff --git a/InvenTree/locale/el/LC_MESSAGES/django.po b/InvenTree/locale/el/LC_MESSAGES/django.po index a5056498c6..1e4c029c87 100644 --- a/InvenTree/locale/el/LC_MESSAGES/django.po +++ b/InvenTree/locale/el/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-16 11:53+0000\n" -"PO-Revision-Date: 2022-08-16 21:36\n" +"POT-Creation-Date: 2022-08-18 05:14+0000\n" +"PO-Revision-Date: 2022-08-18 21:39\n" "Last-Translator: \n" "Language-Team: Greek\n" "Language: el_GR\n" @@ -40,10 +40,10 @@ msgstr "" #: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825 #: stock/serializers.py:924 stock/serializers.py:1056 #: stock/templates/stock/stock_sidebar.html:25 -#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101 -#: templates/js/translated/company.js:964 templates/js/translated/order.js:2104 -#: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753 -#: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102 +#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1099 +#: templates/js/translated/company.js:964 templates/js/translated/order.js:2143 +#: templates/js/translated/order.js:2294 templates/js/translated/order.js:2792 +#: templates/js/translated/order.js:3743 templates/js/translated/order.js:4141 #: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980 msgid "Notes" msgstr "" @@ -211,11 +211,11 @@ msgstr "" #: InvenTree/models.py:402 company/models.py:124 company/models.py:276 #: company/models.py:510 order/models.py:84 order/models.py:1245 -#: part/models.py:802 +#: part/models.py:802 part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_base.html:164 #: templates/js/translated/company.js:656 -#: templates/js/translated/company.js:948 templates/js/translated/order.js:2742 -#: templates/js/translated/part.js:1514 +#: templates/js/translated/company.js:948 templates/js/translated/order.js:2781 +#: templates/js/translated/part.js:1510 msgid "Link" msgstr "" @@ -235,8 +235,8 @@ msgstr "" #: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665 #: common/models.py:1666 common/models.py:1889 common/models.py:1890 -#: common/models.py:2152 common/models.py:2153 part/models.py:2200 -#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257 +#: common/models.py:2152 common/models.py:2153 part/models.py:2247 +#: part/models.py:2267 plugin/models.py:256 plugin/models.py:257 #: report/templates/report/inventree_test_report_base.html:96 #: templates/js/translated/stock.js:2641 msgid "User" @@ -277,7 +277,7 @@ msgstr "" #: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875 #: company/models.py:358 label/models.py:101 part/models.py:746 -#: part/models.py:2378 plugin/models.py:94 report/models.py:152 +#: part/models.py:2425 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 #: templates/InvenTree/settings/plugin.html:51 #: templates/InvenTree/settings/plugin.html:134 @@ -287,7 +287,7 @@ msgstr "" #: templates/js/translated/company.js:758 #: templates/js/translated/notification.js:71 #: templates/js/translated/part.js:688 templates/js/translated/part.js:840 -#: templates/js/translated/part.js:1906 templates/js/translated/stock.js:2392 +#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2392 msgid "Name" msgstr "" @@ -297,19 +297,20 @@ msgstr "" #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:87 label/models.py:108 #: order/models.py:82 part/models.py:769 part/templates/part/category.html:80 -#: part/templates/part/part_base.html:167 report/models.py:165 +#: part/templates/part/part_base.html:167 +#: part/templates/part/part_scheduling.html:12 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 #: stock/templates/stock/location.html:108 #: templates/InvenTree/settings/plugin_settings.html:33 -#: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848 -#: templates/js/translated/build.js:2471 templates/js/translated/company.js:409 +#: templates/js/translated/bom.js:553 templates/js/translated/bom.js:846 +#: templates/js/translated/build.js:2504 templates/js/translated/company.js:409 #: templates/js/translated/company.js:667 -#: templates/js/translated/company.js:959 templates/js/translated/order.js:1720 -#: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531 +#: templates/js/translated/company.js:959 templates/js/translated/order.js:1759 +#: templates/js/translated/order.js:1991 templates/js/translated/order.js:2570 #: templates/js/translated/part.js:747 templates/js/translated/part.js:1153 -#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1942 -#: templates/js/translated/part.js:2011 templates/js/translated/stock.js:1743 +#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1938 +#: templates/js/translated/part.js:2007 templates/js/translated/stock.js:1743 #: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478 msgid "Description" msgstr "" @@ -323,7 +324,7 @@ msgid "parent" msgstr "" #: InvenTree/models.py:560 InvenTree/models.py:561 -#: templates/js/translated/part.js:1948 templates/js/translated/stock.js:2430 +#: templates/js/translated/part.js:1944 templates/js/translated/stock.js:2430 msgid "Path" msgstr "" @@ -335,7 +336,7 @@ msgstr "" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:55 part/models.py:2699 +#: InvenTree/serializers.py:55 part/models.py:2746 msgid "Must be a valid number" msgstr "" @@ -541,7 +542,7 @@ msgid "Returned" msgstr "" #: InvenTree/status_codes.py:141 order/models.py:1128 -#: templates/js/translated/order.js:3330 templates/js/translated/order.js:3679 +#: templates/js/translated/order.js:3369 templates/js/translated/order.js:3718 msgid "Shipped" msgstr "" @@ -728,7 +729,7 @@ msgstr "" #: report/templates/report/inventree_build_order_base.html:105 #: templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 -#: templates/js/translated/build.js:731 +#: templates/js/translated/build.js:763 msgid "Build Order" msgstr "" @@ -747,14 +748,14 @@ msgid "Build Order Reference" msgstr "" #: build/models.py:166 order/models.py:240 order/models.py:623 -#: order/models.py:904 part/models.py:2617 +#: order/models.py:904 part/models.py:2664 #: part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 -#: templates/js/translated/bom.js:692 templates/js/translated/bom.js:855 -#: templates/js/translated/build.js:1779 templates/js/translated/order.js:1983 -#: templates/js/translated/order.js:2184 templates/js/translated/order.js:3523 -#: templates/js/translated/order.js:4031 +#: templates/js/translated/bom.js:690 templates/js/translated/bom.js:853 +#: templates/js/translated/build.js:1811 templates/js/translated/order.js:2022 +#: templates/js/translated/order.js:2223 templates/js/translated/order.js:3562 +#: templates/js/translated/order.js:4070 msgid "Reference" msgstr "" @@ -762,7 +763,7 @@ msgstr "" msgid "Brief description of the build" msgstr "" -#: build/models.py:185 build/templates/build/build_base.html:169 +#: build/models.py:185 build/templates/build/build_base.html:172 #: build/templates/build/detail.html:87 msgid "Parent Build" msgstr "" @@ -771,13 +772,13 @@ msgstr "" msgid "BuildOrder to which this build is allocated" msgstr "" -#: build/models.py:191 build/templates/build/build_base.html:77 +#: build/models.py:191 build/templates/build/build_base.html:80 #: build/templates/build/detail.html:29 company/models.py:670 #: order/models.py:1001 order/models.py:1112 order/models.py:1113 -#: part/models.py:343 part/models.py:2146 part/models.py:2161 -#: part/models.py:2180 part/models.py:2198 part/models.py:2297 -#: part/models.py:2417 part/models.py:2507 part/models.py:2592 -#: part/models.py:2868 part/serializers.py:813 +#: part/models.py:343 part/models.py:2193 part/models.py:2208 +#: part/models.py:2227 part/models.py:2245 part/models.py:2344 +#: part/models.py:2464 part/models.py:2554 part/models.py:2639 +#: part/models.py:2915 part/serializers.py:813 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -789,17 +790,17 @@ msgstr "" #: templates/email/build_order_required_stock.html:17 #: templates/email/low_stock_notification.html:16 #: templates/email/overdue_build_order.html:16 -#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:553 -#: templates/js/translated/bom.js:691 templates/js/translated/bom.js:802 -#: templates/js/translated/build.js:1156 templates/js/translated/build.js:1649 -#: templates/js/translated/build.js:2085 templates/js/translated/build.js:2476 +#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:552 +#: templates/js/translated/bom.js:689 templates/js/translated/bom.js:800 +#: templates/js/translated/build.js:1188 templates/js/translated/build.js:1681 +#: templates/js/translated/build.js:2118 templates/js/translated/build.js:2509 #: templates/js/translated/company.js:266 #: templates/js/translated/company.js:496 #: templates/js/translated/company.js:608 -#: templates/js/translated/company.js:868 templates/js/translated/order.js:103 -#: templates/js/translated/order.js:934 templates/js/translated/order.js:1387 -#: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885 -#: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507 +#: templates/js/translated/company.js:868 templates/js/translated/order.js:104 +#: templates/js/translated/order.js:973 templates/js/translated/order.js:1426 +#: templates/js/translated/order.js:1976 templates/js/translated/order.js:2924 +#: templates/js/translated/order.js:3320 templates/js/translated/order.js:3546 #: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210 #: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586 #: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958 @@ -821,7 +822,7 @@ msgid "SalesOrder to which this build is allocated" msgstr "" #: build/models.py:213 build/serializers.py:800 -#: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873 +#: templates/js/translated/build.js:2106 templates/js/translated/order.js:2912 msgid "Source Location" msgstr "" @@ -862,7 +863,7 @@ msgid "Build status code" msgstr "" #: build/models.py:251 build/serializers.py:225 order/serializers.py:447 -#: stock/models.py:662 templates/js/translated/order.js:1247 +#: stock/models.py:662 templates/js/translated/order.js:1286 msgid "Batch Code" msgstr "" @@ -871,7 +872,7 @@ msgid "Batch code for this build output" msgstr "" #: build/models.py:258 order/models.py:86 part/models.py:938 -#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544 +#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2583 msgid "Creation Date" msgstr "" @@ -884,7 +885,7 @@ msgid "Target date for build completion. Build will be overdue after this date." msgstr "" #: build/models.py:266 order/models.py:286 -#: templates/js/translated/build.js:2553 +#: templates/js/translated/build.js:2586 msgid "Completion Date" msgstr "" @@ -892,7 +893,7 @@ msgstr "" msgid "completed by" msgstr "" -#: build/models.py:280 templates/js/translated/build.js:2521 +#: build/models.py:280 templates/js/translated/build.js:2554 msgid "Issued by" msgstr "" @@ -900,12 +901,12 @@ msgstr "" msgid "User who issued this build order" msgstr "" -#: build/models.py:289 build/templates/build/build_base.html:190 +#: build/models.py:289 build/templates/build/build_base.html:193 #: build/templates/build/detail.html:115 order/models.py:100 #: order/templates/order/order_base.html:176 #: order/templates/order/sales_order_base.html:183 part/models.py:942 #: report/templates/report/inventree_build_order_base.html:158 -#: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754 +#: templates/js/translated/build.js:2566 templates/js/translated/order.js:1793 msgid "Responsible" msgstr "" @@ -972,7 +973,7 @@ msgid "Selected stock item not found in BOM" msgstr "" #: build/models.py:1328 stock/templates/stock/item_base.html:177 -#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2455 +#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2488 #: templates/navbar.html:38 msgid "Build" msgstr "" @@ -986,11 +987,11 @@ msgstr "" #: stock/serializers.py:882 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:199 -#: templates/js/translated/build.js:741 templates/js/translated/build.js:746 -#: templates/js/translated/build.js:2087 templates/js/translated/build.js:2638 -#: templates/js/translated/order.js:104 templates/js/translated/order.js:2886 -#: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193 -#: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380 +#: templates/js/translated/build.js:773 templates/js/translated/build.js:778 +#: templates/js/translated/build.js:2120 templates/js/translated/build.js:2671 +#: templates/js/translated/order.js:105 templates/js/translated/order.js:2925 +#: templates/js/translated/order.js:3227 templates/js/translated/order.js:3232 +#: templates/js/translated/order.js:3327 templates/js/translated/order.js:3419 #: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752 #: templates/js/translated/stock.js:2577 msgid "Stock Item" @@ -1001,13 +1002,13 @@ msgid "Source stock item" msgstr "" #: build/models.py:1358 build/serializers.py:193 -#: build/templates/build/build_base.html:82 +#: build/templates/build/build_base.html:85 #: build/templates/build/detail.html:34 common/models.py:1697 #: company/templates/company/supplier_part.html:279 order/models.py:897 #: order/models.py:1423 order/serializers.py:1155 #: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40 -#: part/models.py:2608 part/templates/part/detail.html:937 -#: part/templates/part/detail.html:1023 +#: part/models.py:2655 part/templates/part/detail.html:951 +#: part/templates/part/detail.html:1037 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 #: report/templates/report/inventree_build_order_base.html:113 @@ -1018,20 +1019,20 @@ msgstr "" #: stock/serializers.py:293 stock/templates/stock/item_base.html:292 #: stock/templates/stock/item_base.html:300 #: templates/email/build_order_completed.html:18 -#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:693 -#: templates/js/translated/bom.js:863 templates/js/translated/build.js:426 -#: templates/js/translated/build.js:578 templates/js/translated/build.js:768 -#: templates/js/translated/build.js:1178 templates/js/translated/build.js:1675 -#: templates/js/translated/build.js:2088 +#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:691 +#: templates/js/translated/bom.js:861 templates/js/translated/build.js:458 +#: templates/js/translated/build.js:610 templates/js/translated/build.js:800 +#: templates/js/translated/build.js:1210 templates/js/translated/build.js:1707 +#: templates/js/translated/build.js:2121 #: templates/js/translated/model_renderers.js:120 -#: templates/js/translated/order.js:120 templates/js/translated/order.js:937 -#: templates/js/translated/order.js:1989 templates/js/translated/order.js:2190 -#: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207 -#: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386 -#: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037 -#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2156 -#: templates/js/translated/part.js:2387 templates/js/translated/part.js:2421 -#: templates/js/translated/part.js:2499 templates/js/translated/stock.js:458 +#: templates/js/translated/order.js:121 templates/js/translated/order.js:976 +#: templates/js/translated/order.js:2028 templates/js/translated/order.js:2229 +#: templates/js/translated/order.js:2926 templates/js/translated/order.js:3246 +#: templates/js/translated/order.js:3333 templates/js/translated/order.js:3425 +#: templates/js/translated/order.js:3568 templates/js/translated/order.js:4076 +#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2152 +#: templates/js/translated/part.js:2602 templates/js/translated/part.js:2636 +#: templates/js/translated/part.js:2714 templates/js/translated/stock.js:458 #: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782 #: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711 msgid "Quantity" @@ -1050,7 +1051,7 @@ msgid "Destination stock item" msgstr "" #: build/serializers.py:138 build/serializers.py:674 -#: templates/js/translated/build.js:1166 +#: templates/js/translated/build.js:1198 msgid "Build Output" msgstr "" @@ -1090,7 +1091,7 @@ msgid "Integer quantity required, as the bill of materials contains trackable pa msgstr "" #: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159 -#: stock/serializers.py:311 templates/js/translated/order.js:1258 +#: stock/serializers.py:311 templates/js/translated/order.js:1297 #: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459 msgid "Serial Numbers" msgstr "" @@ -1120,10 +1121,10 @@ msgstr "" #: stock/serializers.py:917 stock/serializers.py:1150 #: stock/templates/stock/item_base.html:390 #: templates/js/translated/barcode.js:436 -#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753 -#: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285 -#: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305 -#: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394 +#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:785 +#: templates/js/translated/build.js:1719 templates/js/translated/order.js:1324 +#: templates/js/translated/order.js:3239 templates/js/translated/order.js:3344 +#: templates/js/translated/order.js:3352 templates/js/translated/order.js:3433 #: templates/js/translated/part.js:181 templates/js/translated/stock.js:588 #: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960 #: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518 @@ -1134,12 +1135,12 @@ msgstr "" msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:373 build/templates/build/build_base.html:142 +#: build/serializers.py:373 build/templates/build/build_base.html:145 #: build/templates/build/detail.html:62 order/models.py:642 #: order/serializers.py:465 stock/templates/stock/item_base.html:423 -#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505 -#: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724 -#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829 +#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2538 +#: templates/js/translated/order.js:1431 templates/js/translated/order.js:1763 +#: templates/js/translated/order.js:2575 templates/js/translated/stock.js:1829 #: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727 msgid "Status" msgstr "" @@ -1196,7 +1197,7 @@ msgstr "" msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:522 templates/js/translated/build.js:195 +#: build/serializers.py:522 templates/js/translated/build.js:227 msgid "Required stock has not been fully allocated" msgstr "" @@ -1208,7 +1209,7 @@ msgstr "" msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:538 templates/js/translated/build.js:199 +#: build/serializers.py:538 templates/js/translated/build.js:231 msgid "Required build quantity has not been completed" msgstr "" @@ -1216,8 +1217,8 @@ msgstr "" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726 -#: part/models.py:2860 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2773 +#: part/models.py:2907 msgid "BOM Item" msgstr "" @@ -1322,66 +1323,70 @@ msgid "Cancel Build" msgstr "" #: build/templates/build/build_base.html:59 +msgid "Duplicate Build" +msgstr "" + +#: build/templates/build/build_base.html:62 msgid "Delete Build" msgstr "" -#: build/templates/build/build_base.html:64 -#: build/templates/build/build_base.html:65 +#: build/templates/build/build_base.html:67 +#: build/templates/build/build_base.html:68 msgid "Complete Build" msgstr "" -#: build/templates/build/build_base.html:87 +#: build/templates/build/build_base.html:90 msgid "Build Description" msgstr "" -#: build/templates/build/build_base.html:95 +#: build/templates/build/build_base.html:98 msgid "No build outputs have been created for this build order" msgstr "" -#: build/templates/build/build_base.html:101 +#: build/templates/build/build_base.html:104 #, python-format msgid "This Build Order is allocated to Sales Order %(link)s" msgstr "" -#: build/templates/build/build_base.html:108 +#: build/templates/build/build_base.html:111 #, python-format msgid "This Build Order is a child of Build Order %(link)s" msgstr "" -#: build/templates/build/build_base.html:115 +#: build/templates/build/build_base.html:118 msgid "Build Order is ready to mark as completed" msgstr "" -#: build/templates/build/build_base.html:120 +#: build/templates/build/build_base.html:123 msgid "Build Order cannot be completed as outstanding outputs remain" msgstr "" -#: build/templates/build/build_base.html:125 +#: build/templates/build/build_base.html:128 msgid "Required build quantity has not yet been completed" msgstr "" -#: build/templates/build/build_base.html:130 +#: build/templates/build/build_base.html:133 msgid "Stock has not been fully allocated to this Build Order" msgstr "" -#: build/templates/build/build_base.html:151 +#: build/templates/build/build_base.html:154 #: build/templates/build/detail.html:131 order/models.py:910 #: order/templates/order/order_base.html:162 #: order/templates/order/sales_order_base.html:164 #: report/templates/report/inventree_build_order_base.html:125 -#: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741 -#: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552 -#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042 +#: templates/js/translated/build.js:2578 templates/js/translated/order.js:1780 +#: templates/js/translated/order.js:2090 templates/js/translated/order.js:2591 +#: templates/js/translated/order.js:3631 templates/js/translated/part.js:1042 msgid "Target Date" msgstr "" -#: build/templates/build/build_base.html:156 +#: build/templates/build/build_base.html:159 #, python-format msgid "This build was due on %(target)s" msgstr "" -#: build/templates/build/build_base.html:156 -#: build/templates/build/build_base.html:201 +#: build/templates/build/build_base.html:159 +#: build/templates/build/build_base.html:204 #: order/templates/order/order_base.html:98 #: order/templates/order/sales_order_base.html:94 #: templates/js/translated/table_filters.js:320 @@ -1390,14 +1395,14 @@ msgstr "" msgid "Overdue" msgstr "" -#: build/templates/build/build_base.html:163 +#: build/templates/build/build_base.html:166 #: build/templates/build/detail.html:67 build/templates/build/detail.html:142 #: order/templates/order/sales_order_base.html:171 #: templates/js/translated/table_filters.js:400 msgid "Completed" msgstr "" -#: build/templates/build/build_base.html:176 +#: build/templates/build/build_base.html:179 #: build/templates/build/detail.html:94 order/models.py:1105 #: order/models.py:1199 order/models.py:1330 #: order/templates/order/sales_order_base.html:9 @@ -1406,17 +1411,17 @@ msgstr "" #: report/templates/report/inventree_so_report.html:77 #: stock/templates/stock/item_base.html:370 #: templates/email/overdue_sales_order.html:15 -#: templates/js/translated/order.js:2498 +#: templates/js/translated/order.js:2537 msgid "Sales Order" msgstr "" -#: build/templates/build/build_base.html:183 +#: build/templates/build/build_base.html:186 #: build/templates/build/detail.html:108 #: report/templates/report/inventree_build_order_base.html:152 msgid "Issued By" msgstr "" -#: build/templates/build/build_base.html:245 +#: build/templates/build/build_base.html:256 msgid "Delete Build Order" msgstr "" @@ -1433,7 +1438,7 @@ msgid "Stock can be taken from any available location." msgstr "" #: build/templates/build/detail.html:49 order/models.py:1023 -#: templates/js/translated/order.js:1393 templates/js/translated/order.js:2093 +#: templates/js/translated/order.js:1432 templates/js/translated/order.js:2132 msgid "Destination" msgstr "" @@ -1447,7 +1452,7 @@ msgstr "" #: build/templates/build/detail.html:80 #: stock/templates/stock/item_base.html:170 -#: templates/js/translated/build.js:1182 +#: templates/js/translated/build.js:1214 #: templates/js/translated/model_renderers.js:124 #: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843 #: templates/js/translated/stock.js:2734 @@ -1459,7 +1464,7 @@ msgstr "" #: build/templates/build/detail.html:126 #: order/templates/order/order_base.html:149 #: order/templates/order/sales_order_base.html:158 -#: templates/js/translated/build.js:2513 +#: templates/js/translated/build.js:2546 msgid "Created" msgstr "" @@ -1479,7 +1484,7 @@ msgstr "" msgid "Allocate Stock to Build" msgstr "" -#: build/templates/build/detail.html:176 templates/js/translated/build.js:1901 +#: build/templates/build/detail.html:176 templates/js/translated/build.js:1934 msgid "Unallocate stock" msgstr "" @@ -1510,7 +1515,7 @@ msgstr "" #: build/templates/build/detail.html:187 #: company/templates/company/detail.html:37 #: company/templates/company/detail.html:85 -#: part/templates/part/category.html:183 templates/js/translated/order.js:977 +#: part/templates/part/category.html:183 templates/js/translated/order.js:1016 msgid "Order Parts" msgstr "" @@ -1582,7 +1587,7 @@ msgstr "" #: order/templates/order/po_sidebar.html:9 #: order/templates/order/purchase_order_detail.html:82 #: order/templates/order/sales_order_detail.html:135 -#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:207 +#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:212 #: part/templates/part/part_sidebar.html:57 stock/templates/stock/item.html:117 #: stock/templates/stock/stock_sidebar.html:23 msgid "Attachments" @@ -1600,7 +1605,7 @@ msgstr "" msgid "All untracked stock items have been allocated" msgstr "" -#: build/templates/build/index.html:18 part/templates/part/detail.html:313 +#: build/templates/build/index.html:18 part/templates/part/detail.html:318 msgid "New Build Order" msgstr "" @@ -1845,7 +1850,7 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:951 part/models.py:2419 report/models.py:158 +#: common/models.py:951 part/models.py:2466 report/models.py:158 #: templates/js/translated/table_filters.js:38 #: templates/js/translated/table_filters.js:484 msgid "Template" @@ -1855,7 +1860,7 @@ msgstr "" msgid "Parts are templates by default" msgstr "" -#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448 +#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1446 #: templates/js/translated/table_filters.js:176 #: templates/js/translated/table_filters.js:447 msgid "Assembly" @@ -2591,7 +2596,7 @@ msgstr "" #: common/models.py:1705 company/serializers.py:366 #: company/templates/company/supplier_part.html:284 order/models.py:938 -#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2161 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2157 msgid "Price" msgstr "" @@ -2830,7 +2835,7 @@ msgstr "" #: company/models.py:248 company/models.py:481 stock/models.py:598 #: stock/serializers.py:87 stock/templates/stock/item_base.html:148 -#: templates/js/translated/bom.js:543 +#: templates/js/translated/bom.js:542 msgid "Base Part" msgstr "" @@ -2859,7 +2864,7 @@ msgstr "" #: templates/js/translated/company.js:269 #: templates/js/translated/company.js:497 #: templates/js/translated/company.js:649 -#: templates/js/translated/company.js:937 templates/js/translated/order.js:1971 +#: templates/js/translated/company.js:937 templates/js/translated/order.js:2010 #: templates/js/translated/part.js:247 templates/js/translated/part.js:1027 msgid "MPN" msgstr "" @@ -2899,7 +2904,7 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:372 part/models.py:888 part/models.py:2386 +#: company/models.py:372 part/models.py:888 part/models.py:2433 #: part/templates/part/part_base.html:280 #: templates/InvenTree/settings/settings.html:352 #: templates/js/translated/company.js:770 templates/js/translated/part.js:855 @@ -2921,7 +2926,7 @@ msgstr "" #: templates/email/overdue_purchase_order.html:16 #: templates/js/translated/company.js:268 #: templates/js/translated/company.js:401 -#: templates/js/translated/company.js:893 templates/js/translated/order.js:1707 +#: templates/js/translated/company.js:893 templates/js/translated/order.js:1746 #: templates/js/translated/part.js:217 templates/js/translated/part.js:995 #: templates/js/translated/table_filters.js:423 msgid "Supplier" @@ -2933,7 +2938,7 @@ msgstr "" #: company/models.py:497 company/templates/company/supplier_part.html:118 #: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267 -#: templates/js/translated/order.js:1958 templates/js/translated/part.js:228 +#: templates/js/translated/order.js:1997 templates/js/translated/part.js:228 #: templates/js/translated/part.js:1013 msgid "SKU" msgstr "" @@ -2955,17 +2960,17 @@ msgid "Supplier part description" msgstr "" #: company/models.py:522 company/templates/company/supplier_part.html:146 -#: part/models.py:2620 part/templates/part/upload_bom.html:59 +#: part/models.py:2667 part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401 msgid "Note" msgstr "" -#: company/models.py:526 part/models.py:1742 +#: company/models.py:526 part/models.py:1789 msgid "base cost" msgstr "" -#: company/models.py:526 part/models.py:1742 +#: company/models.py:526 part/models.py:1789 msgid "Minimum charge (e.g. stocking fee)" msgstr "" @@ -2979,7 +2984,7 @@ msgstr "" msgid "Part packaging" msgstr "" -#: company/models.py:530 part/models.py:1744 +#: company/models.py:530 part/models.py:1791 msgid "multiple" msgstr "" @@ -2990,8 +2995,8 @@ msgstr "" #: company/models.py:538 company/templates/company/supplier_part.html:94 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789 -#: templates/js/translated/build.js:2645 templates/js/translated/company.js:979 +#: templates/js/translated/bom.js:911 templates/js/translated/build.js:1821 +#: templates/js/translated/build.js:2678 templates/js/translated/company.js:979 #: templates/js/translated/part.js:600 templates/js/translated/part.js:603 #: templates/js/translated/table_filters.js:186 msgid "Available" @@ -3028,7 +3033,7 @@ msgid "Company" msgstr "" #: company/templates/company/company_base.html:22 -#: templates/js/translated/order.js:540 +#: templates/js/translated/order.js:579 msgid "Create Purchase Order" msgstr "" @@ -3069,7 +3074,7 @@ msgstr "" #: stock/models.py:644 stock/serializers.py:811 #: stock/templates/stock/item_base.html:401 #: templates/email/overdue_sales_order.html:16 -#: templates/js/translated/company.js:393 templates/js/translated/order.js:2513 +#: templates/js/translated/company.js:393 templates/js/translated/order.js:2552 #: templates/js/translated/stock.js:2559 #: templates/js/translated/table_filters.js:427 msgid "Customer" @@ -3105,7 +3110,7 @@ msgstr "" #: company/templates/company/detail.html:19 #: company/templates/company/manufacturer_part.html:123 -#: part/templates/part/detail.html:354 +#: part/templates/part/detail.html:359 msgid "New Supplier Part" msgstr "" @@ -3134,7 +3139,7 @@ msgstr "" msgid "Create new manufacturer part" msgstr "" -#: company/templates/company/detail.html:66 part/templates/part/detail.html:384 +#: company/templates/company/detail.html:66 part/templates/part/detail.html:389 msgid "New Manufacturer Part" msgstr "" @@ -3148,7 +3153,7 @@ msgstr "" #: order/templates/order/order_base.html:13 #: order/templates/order/purchase_orders.html:8 #: order/templates/order/purchase_orders.html:12 -#: part/templates/part/detail.html:79 part/templates/part/part_sidebar.html:37 +#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:37 #: templates/InvenTree/index.html:252 templates/InvenTree/search.html:198 #: templates/InvenTree/settings/sidebar.html:49 #: templates/js/translated/search.js:275 templates/navbar.html:50 @@ -3171,7 +3176,7 @@ msgstr "" #: order/templates/order/sales_order_base.html:13 #: order/templates/order/sales_orders.html:8 #: order/templates/order/sales_orders.html:15 -#: part/templates/part/detail.html:102 part/templates/part/part_sidebar.html:41 +#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:41 #: templates/InvenTree/index.html:283 templates/InvenTree/search.html:218 #: templates/InvenTree/settings/sidebar.html:51 #: templates/js/translated/search.js:299 templates/navbar.html:61 @@ -3190,7 +3195,7 @@ msgid "New Sales Order" msgstr "" #: company/templates/company/detail.html:168 -#: templates/js/translated/build.js:1660 +#: templates/js/translated/build.js:1692 msgid "Assigned Stock" msgstr "" @@ -3206,7 +3211,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:35 #: company/templates/company/supplier_part.html:186 -#: part/templates/part/detail.html:82 part/templates/part/part_base.html:80 +#: part/templates/part/detail.html:87 part/templates/part/part_base.html:80 msgid "Order part" msgstr "" @@ -3237,13 +3242,13 @@ msgid "Suppliers" msgstr "" #: company/templates/company/manufacturer_part.html:136 -#: part/templates/part/detail.html:365 +#: part/templates/part/detail.html:370 msgid "Delete supplier parts" msgstr "" #: company/templates/company/manufacturer_part.html:136 #: company/templates/company/manufacturer_part.html:183 -#: part/templates/part/detail.html:366 part/templates/part/detail.html:396 +#: part/templates/part/detail.html:371 part/templates/part/detail.html:401 #: templates/js/translated/forms.js:453 templates/js/translated/helpers.js:33 #: users/models.py:220 msgid "Delete" @@ -3252,12 +3257,12 @@ msgstr "" #: company/templates/company/manufacturer_part.html:166 #: company/templates/company/manufacturer_part_sidebar.html:5 #: part/templates/part/category_sidebar.html:19 -#: part/templates/part/detail.html:181 part/templates/part/part_sidebar.html:8 +#: part/templates/part/detail.html:186 part/templates/part/part_sidebar.html:8 msgid "Parameters" msgstr "" #: company/templates/company/manufacturer_part.html:170 -#: part/templates/part/detail.html:186 +#: part/templates/part/detail.html:191 #: templates/InvenTree/settings/category.html:12 #: templates/InvenTree/settings/part.html:68 msgid "New Parameter" @@ -3268,7 +3273,7 @@ msgid "Delete parameters" msgstr "" #: company/templates/company/manufacturer_part.html:245 -#: part/templates/part/detail.html:826 +#: part/templates/part/detail.html:840 msgid "Add Parameter" msgstr "" @@ -3291,7 +3296,7 @@ msgstr "" #: company/templates/company/supplier_part.html:7 #: company/templates/company/supplier_part.html:24 stock/models.py:607 #: stock/templates/stock/item_base.html:238 -#: templates/js/translated/company.js:909 templates/js/translated/order.js:935 +#: templates/js/translated/company.js:909 templates/js/translated/order.js:974 #: templates/js/translated/stock.js:1933 msgid "Supplier Part" msgstr "" @@ -3303,7 +3308,7 @@ msgstr "" #: company/templates/company/supplier_part.html:40 #: company/templates/company/supplier_part.html:41 #: company/templates/company/supplier_part.html:187 -#: part/templates/part/detail.html:83 +#: part/templates/part/detail.html:88 msgid "Order Part" msgstr "" @@ -3358,7 +3363,7 @@ msgstr "" #: company/templates/company/supplier_part.html:212 #: company/templates/company/supplier_part.html:326 -#: part/templates/part/prices.html:276 templates/js/translated/part.js:2233 +#: part/templates/part/prices.html:276 templates/js/translated/part.js:2229 msgid "Add Price Break" msgstr "" @@ -3367,12 +3372,12 @@ msgid "No price break information found" msgstr "" #: company/templates/company/supplier_part.html:252 -#: templates/js/translated/part.js:2243 +#: templates/js/translated/part.js:2239 msgid "Delete Price Break" msgstr "" #: company/templates/company/supplier_part.html:266 -#: templates/js/translated/part.js:2257 +#: templates/js/translated/part.js:2253 msgid "Edit Price Break" msgstr "" @@ -3398,10 +3403,9 @@ msgstr "" #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:151 #: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751 -#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460 -#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754 -#: templates/navbar.html:31 +#: templates/js/translated/part.js:751 templates/js/translated/part.js:1299 +#: templates/js/translated/part.js:1460 templates/js/translated/stock.js:959 +#: templates/js/translated/stock.js:1754 templates/navbar.html:31 msgid "Stock" msgstr "" @@ -3554,7 +3558,7 @@ msgid "Company from which the items are being ordered" msgstr "" #: order/models.py:262 order/templates/order/order_base.html:124 -#: templates/js/translated/order.js:1716 +#: templates/js/translated/order.js:1755 msgid "Supplier Reference" msgstr "" @@ -3611,7 +3615,7 @@ msgid "Target date for order completion. Order will be overdue after this date." msgstr "" #: order/models.py:652 order/models.py:1204 -#: templates/js/translated/order.js:2560 templates/js/translated/order.js:2722 +#: templates/js/translated/order.js:2599 templates/js/translated/order.js:2761 msgid "Shipment Date" msgstr "" @@ -3673,7 +3677,7 @@ msgstr "" #: order/models.py:983 order/models.py:1063 order/models.py:1104 #: order/models.py:1198 order/models.py:1330 -#: templates/js/translated/order.js:3178 +#: templates/js/translated/order.js:3217 msgid "Order" msgstr "" @@ -3683,7 +3687,7 @@ msgstr "" #: report/templates/report/inventree_po_report.html:76 #: stock/templates/stock/item_base.html:184 #: templates/email/overdue_purchase_order.html:15 -#: templates/js/translated/order.js:936 templates/js/translated/order.js:1691 +#: templates/js/translated/order.js:975 templates/js/translated/order.js:1730 #: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913 #: templates/js/translated/stock.js:2540 msgid "Purchase Order" @@ -3694,7 +3698,7 @@ msgid "Supplier part" msgstr "" #: order/models.py:1009 order/templates/order/order_base.html:169 -#: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073 +#: templates/js/translated/order.js:1429 templates/js/translated/order.js:2112 #: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091 #: templates/js/translated/table_filters.js:338 msgid "Received" @@ -3880,11 +3884,11 @@ msgstr "" msgid "Select destination location for received items" msgstr "" -#: order/serializers.py:448 templates/js/translated/order.js:1248 +#: order/serializers.py:448 templates/js/translated/order.js:1287 msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:456 templates/js/translated/order.js:1259 +#: order/serializers.py:456 templates/js/translated/order.js:1298 msgid "Enter serial numbers for incoming stock items" msgstr "" @@ -4061,10 +4065,6 @@ msgstr "" msgid "Total cost could not be calculated" msgstr "" -#: order/templates/order/order_base.html:243 -msgid "Edit Purchase Order" -msgstr "" - #: order/templates/order/order_wizard/match_parts.html:12 #: part/templates/part/import_wizard/ajax_match_references.html:12 #: part/templates/part/import_wizard/match_references.html:12 @@ -4091,10 +4091,10 @@ msgstr "" #: part/templates/part/import_wizard/ajax_match_fields.html:64 #: part/templates/part/import_wizard/ajax_match_references.html:42 #: part/templates/part/import_wizard/match_references.html:49 -#: templates/js/translated/bom.js:77 templates/js/translated/build.js:431 -#: templates/js/translated/build.js:583 templates/js/translated/build.js:1974 -#: templates/js/translated/order.js:884 templates/js/translated/order.js:1337 -#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625 +#: templates/js/translated/bom.js:77 templates/js/translated/build.js:463 +#: templates/js/translated/build.js:615 templates/js/translated/build.js:2007 +#: templates/js/translated/order.js:923 templates/js/translated/order.js:1376 +#: templates/js/translated/order.js:2836 templates/js/translated/stock.js:625 #: templates/js/translated/stock.js:793 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" @@ -4130,7 +4130,7 @@ msgstr "" #: order/templates/order/purchase_order_detail.html:26 #: order/templates/order/sales_order_detail.html:22 #: order/templates/order/sales_order_detail.html:255 -#: templates/js/translated/order.js:557 +#: templates/js/translated/order.js:596 msgid "Add Line Item" msgstr "" @@ -4176,7 +4176,7 @@ msgid "Print packing list" msgstr "" #: order/templates/order/sales_order_base.html:60 -#: templates/js/translated/order.js:229 +#: templates/js/translated/order.js:230 msgid "Complete Shipments" msgstr "" @@ -4190,7 +4190,7 @@ msgid "This Sales Order has not been fully allocated" msgstr "" #: order/templates/order/sales_order_base.html:123 -#: templates/js/translated/order.js:2526 +#: templates/js/translated/order.js:2565 msgid "Customer Reference" msgstr "" @@ -4214,8 +4214,8 @@ msgid "Pending Shipments" msgstr "" #: order/templates/order/sales_order_detail.html:72 -#: templates/attachment_table.html:6 templates/js/translated/bom.js:1110 -#: templates/js/translated/build.js:1882 +#: templates/attachment_table.html:6 templates/js/translated/bom.js:1108 +#: templates/js/translated/build.js:1915 msgid "Actions" msgstr "" @@ -4257,35 +4257,35 @@ msgstr "" msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:584 +#: part/api.py:621 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:704 +#: part/api.py:758 msgid "Valid" msgstr "" -#: part/api.py:705 +#: part/api.py:759 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:711 +#: part/api.py:765 msgid "This option must be selected" msgstr "" -#: part/api.py:1134 +#: part/api.py:1188 msgid "Must be greater than zero" msgstr "" -#: part/api.py:1138 +#: part/api.py:1192 msgid "Must be a valid quantity" msgstr "" -#: part/api.py:1153 +#: part/api.py:1207 msgid "Specify location for initial part stock" msgstr "" -#: part/api.py:1184 part/api.py:1188 part/api.py:1203 part/api.py:1207 +#: part/api.py:1238 part/api.py:1242 part/api.py:1257 part/api.py:1261 msgid "This field is required" msgstr "" @@ -4299,14 +4299,14 @@ msgid "Total Stock" msgstr "" #: part/bom.py:129 part/templates/part/part_base.html:189 -#: templates/js/translated/order.js:3618 +#: templates/js/translated/order.js:3657 msgid "Available Stock" msgstr "" #: part/bom.py:130 part/templates/part/part_base.html:207 -#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590 +#: templates/js/translated/bom.js:945 templates/js/translated/part.js:590 #: templates/js/translated/part.js:610 templates/js/translated/part.js:1302 -#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490 +#: templates/js/translated/part.js:1483 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "" @@ -4335,7 +4335,7 @@ msgstr "" msgid "Icon (optional)" msgstr "" -#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16 +#: part/models.py:122 part/models.py:2509 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" @@ -4352,7 +4352,7 @@ msgstr "" #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82 #: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:1955 templates/js/translated/search.js:144 +#: templates/js/translated/part.js:1951 templates/js/translated/search.js:144 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "" @@ -4382,7 +4382,7 @@ msgstr "" msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:745 part/models.py:2516 +#: part/models.py:745 part/models.py:2563 msgid "Part name" msgstr "" @@ -4415,11 +4415,11 @@ msgstr "" msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:783 part/models.py:2218 part/models.py:2461 +#: part/models.py:783 part/models.py:2265 part/models.py:2508 #: part/templates/part/part_base.html:257 #: templates/InvenTree/settings/settings.html:232 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1668 +#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1664 msgid "Category" msgstr "" @@ -4530,245 +4530,245 @@ msgstr "" msgid "Creation User" msgstr "" -#: part/models.py:1744 +#: part/models.py:1791 msgid "Sell multiple" msgstr "" -#: part/models.py:2265 +#: part/models.py:2312 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:2282 +#: part/models.py:2329 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:2302 templates/js/translated/part.js:2006 +#: part/models.py:2349 templates/js/translated/part.js:2002 #: templates/js/translated/stock.js:1340 msgid "Test Name" msgstr "" -#: part/models.py:2303 +#: part/models.py:2350 msgid "Enter a name for the test" msgstr "" -#: part/models.py:2308 +#: part/models.py:2355 msgid "Test Description" msgstr "" -#: part/models.py:2309 +#: part/models.py:2356 msgid "Enter description for this test" msgstr "" -#: part/models.py:2314 templates/js/translated/part.js:2015 +#: part/models.py:2361 templates/js/translated/part.js:2011 #: templates/js/translated/table_filters.js:302 msgid "Required" msgstr "" -#: part/models.py:2315 +#: part/models.py:2362 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:2320 templates/js/translated/part.js:2023 +#: part/models.py:2367 templates/js/translated/part.js:2019 msgid "Requires Value" msgstr "" -#: part/models.py:2321 +#: part/models.py:2368 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:2326 templates/js/translated/part.js:2030 +#: part/models.py:2373 templates/js/translated/part.js:2026 msgid "Requires Attachment" msgstr "" -#: part/models.py:2327 +#: part/models.py:2374 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:2335 +#: part/models.py:2382 #, python-brace-format msgid "Illegal character in template name ({c})" msgstr "" -#: part/models.py:2371 +#: part/models.py:2418 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:2379 +#: part/models.py:2426 msgid "Parameter Name" msgstr "" -#: part/models.py:2386 +#: part/models.py:2433 msgid "Parameter Units" msgstr "" -#: part/models.py:2417 +#: part/models.py:2464 msgid "Parent Part" msgstr "" -#: part/models.py:2419 part/models.py:2467 part/models.py:2468 +#: part/models.py:2466 part/models.py:2514 part/models.py:2515 #: templates/InvenTree/settings/settings.html:227 msgid "Parameter Template" msgstr "" -#: part/models.py:2421 +#: part/models.py:2468 msgid "Data" msgstr "" -#: part/models.py:2421 +#: part/models.py:2468 msgid "Parameter Value" msgstr "" -#: part/models.py:2472 templates/InvenTree/settings/settings.html:236 +#: part/models.py:2519 templates/InvenTree/settings/settings.html:236 msgid "Default Value" msgstr "" -#: part/models.py:2473 +#: part/models.py:2520 msgid "Default Parameter Value" msgstr "" -#: part/models.py:2508 +#: part/models.py:2555 msgid "Part ID or part name" msgstr "" -#: part/models.py:2511 templates/js/translated/model_renderers.js:212 +#: part/models.py:2558 templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "" -#: part/models.py:2512 +#: part/models.py:2559 msgid "Unique part ID value" msgstr "" -#: part/models.py:2515 +#: part/models.py:2562 msgid "Part Name" msgstr "" -#: part/models.py:2519 +#: part/models.py:2566 msgid "Part IPN" msgstr "" -#: part/models.py:2520 +#: part/models.py:2567 msgid "Part IPN value" msgstr "" -#: part/models.py:2523 +#: part/models.py:2570 msgid "Level" msgstr "" -#: part/models.py:2524 +#: part/models.py:2571 msgid "BOM level" msgstr "" -#: part/models.py:2593 +#: part/models.py:2640 msgid "Select parent part" msgstr "" -#: part/models.py:2601 +#: part/models.py:2648 msgid "Sub part" msgstr "" -#: part/models.py:2602 +#: part/models.py:2649 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:2608 +#: part/models.py:2655 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:2610 part/templates/part/upload_bom.html:58 -#: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999 +#: part/models.py:2657 part/templates/part/upload_bom.html:58 +#: templates/js/translated/bom.js:872 templates/js/translated/bom.js:997 #: templates/js/translated/table_filters.js:100 msgid "Optional" msgstr "" -#: part/models.py:2610 +#: part/models.py:2657 msgid "This BOM item is optional" msgstr "" -#: part/models.py:2613 part/templates/part/upload_bom.html:55 +#: part/models.py:2660 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:2614 +#: part/models.py:2661 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:2617 +#: part/models.py:2664 msgid "BOM item reference" msgstr "" -#: part/models.py:2620 +#: part/models.py:2667 msgid "BOM item notes" msgstr "" -#: part/models.py:2622 +#: part/models.py:2669 msgid "Checksum" msgstr "" -#: part/models.py:2622 +#: part/models.py:2669 msgid "BOM line checksum" msgstr "" -#: part/models.py:2626 part/templates/part/upload_bom.html:57 -#: templates/js/translated/bom.js:1016 +#: part/models.py:2673 part/templates/part/upload_bom.html:57 +#: templates/js/translated/bom.js:1014 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:96 msgid "Inherited" msgstr "" -#: part/models.py:2627 +#: part/models.py:2674 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:2632 part/templates/part/upload_bom.html:56 -#: templates/js/translated/bom.js:1008 +#: part/models.py:2679 part/templates/part/upload_bom.html:56 +#: templates/js/translated/bom.js:1006 msgid "Allow Variants" msgstr "" -#: part/models.py:2633 +#: part/models.py:2680 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:2711 stock/models.py:468 +#: part/models.py:2758 stock/models.py:468 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:2720 part/models.py:2722 +#: part/models.py:2767 part/models.py:2769 msgid "Sub part must be specified" msgstr "" -#: part/models.py:2827 +#: part/models.py:2874 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:2848 +#: part/models.py:2895 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:2861 +#: part/models.py:2908 msgid "Parent BOM item" msgstr "" -#: part/models.py:2869 +#: part/models.py:2916 msgid "Substitute part" msgstr "" -#: part/models.py:2884 +#: part/models.py:2931 msgid "Part 1" msgstr "" -#: part/models.py:2888 +#: part/models.py:2935 msgid "Part 2" msgstr "" -#: part/models.py:2888 +#: part/models.py:2935 msgid "Select Related Part" msgstr "" -#: part/models.py:2906 +#: part/models.py:2953 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:2910 +#: part/models.py:2957 msgid "Duplicate relationship already exists" msgstr "" @@ -4876,7 +4876,7 @@ msgstr "" msgid "The BOM for %(part)s has not been validated." msgstr "" -#: part/templates/part/bom.html:30 part/templates/part/detail.html:264 +#: part/templates/part/bom.html:30 part/templates/part/detail.html:269 msgid "BOM actions" msgstr "" @@ -4945,8 +4945,8 @@ msgstr "" msgid "New Part" msgstr "" -#: part/templates/part/category.html:174 part/templates/part/detail.html:363 -#: part/templates/part/detail.html:394 +#: part/templates/part/category.html:174 part/templates/part/detail.html:368 +#: part/templates/part/detail.html:399 msgid "Options" msgstr "" @@ -5014,138 +5014,146 @@ msgstr "" msgid "Part Stock" msgstr "" -#: part/templates/part/detail.html:54 -msgid "Part Test Templates" +#: part/templates/part/detail.html:44 +msgid "Refresh scheduling data" +msgstr "" + +#: part/templates/part/detail.html:45 templates/js/translated/tables.js:558 +msgid "Refresh" msgstr "" #: part/templates/part/detail.html:59 +msgid "Part Test Templates" +msgstr "" + +#: part/templates/part/detail.html:64 msgid "Add Test Template" msgstr "" -#: part/templates/part/detail.html:116 stock/templates/stock/item.html:53 +#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53 msgid "Sales Order Allocations" msgstr "" -#: part/templates/part/detail.html:138 +#: part/templates/part/detail.html:143 msgid "Part Notes" msgstr "" -#: part/templates/part/detail.html:153 +#: part/templates/part/detail.html:158 msgid "Part Variants" msgstr "" -#: part/templates/part/detail.html:157 +#: part/templates/part/detail.html:162 msgid "Create new variant" msgstr "" -#: part/templates/part/detail.html:158 +#: part/templates/part/detail.html:163 msgid "New Variant" msgstr "" -#: part/templates/part/detail.html:185 +#: part/templates/part/detail.html:190 msgid "Add new parameter" msgstr "" -#: part/templates/part/detail.html:222 part/templates/part/part_sidebar.html:54 +#: part/templates/part/detail.html:227 part/templates/part/part_sidebar.html:54 msgid "Related Parts" msgstr "" -#: part/templates/part/detail.html:226 part/templates/part/detail.html:227 +#: part/templates/part/detail.html:231 part/templates/part/detail.html:232 msgid "Add Related" msgstr "" -#: part/templates/part/detail.html:247 part/templates/part/part_sidebar.html:17 +#: part/templates/part/detail.html:252 part/templates/part/part_sidebar.html:17 msgid "Bill of Materials" msgstr "" -#: part/templates/part/detail.html:252 +#: part/templates/part/detail.html:257 msgid "Export actions" msgstr "" -#: part/templates/part/detail.html:256 templates/js/translated/bom.js:284 +#: part/templates/part/detail.html:261 templates/js/translated/bom.js:284 msgid "Export BOM" msgstr "" -#: part/templates/part/detail.html:258 +#: part/templates/part/detail.html:263 msgid "Print BOM Report" msgstr "" -#: part/templates/part/detail.html:268 +#: part/templates/part/detail.html:273 msgid "Upload BOM" msgstr "" -#: part/templates/part/detail.html:269 templates/js/translated/part.js:274 +#: part/templates/part/detail.html:274 templates/js/translated/part.js:274 msgid "Copy BOM" msgstr "" -#: part/templates/part/detail.html:270 +#: part/templates/part/detail.html:275 msgid "Validate BOM" msgstr "" -#: part/templates/part/detail.html:275 +#: part/templates/part/detail.html:280 msgid "New BOM Item" msgstr "" -#: part/templates/part/detail.html:276 +#: part/templates/part/detail.html:281 msgid "Add BOM Item" msgstr "" -#: part/templates/part/detail.html:289 +#: part/templates/part/detail.html:294 msgid "Assemblies" msgstr "" -#: part/templates/part/detail.html:307 +#: part/templates/part/detail.html:312 msgid "Part Builds" msgstr "" -#: part/templates/part/detail.html:334 stock/templates/stock/item.html:38 +#: part/templates/part/detail.html:339 stock/templates/stock/item.html:38 msgid "Build Order Allocations" msgstr "" -#: part/templates/part/detail.html:350 +#: part/templates/part/detail.html:355 msgid "Part Suppliers" msgstr "" -#: part/templates/part/detail.html:380 +#: part/templates/part/detail.html:385 msgid "Part Manufacturers" msgstr "" -#: part/templates/part/detail.html:396 +#: part/templates/part/detail.html:401 msgid "Delete manufacturer parts" msgstr "" -#: part/templates/part/detail.html:612 +#: part/templates/part/detail.html:626 msgid "Create BOM Item" msgstr "" -#: part/templates/part/detail.html:656 +#: part/templates/part/detail.html:670 msgid "Related Part" msgstr "" -#: part/templates/part/detail.html:664 +#: part/templates/part/detail.html:678 msgid "Add Related Part" msgstr "" -#: part/templates/part/detail.html:756 +#: part/templates/part/detail.html:770 msgid "Add Test Result Template" msgstr "" -#: part/templates/part/detail.html:900 +#: part/templates/part/detail.html:914 #, python-format msgid "Purchase Unit Price - %(currency)s" msgstr "" -#: part/templates/part/detail.html:912 +#: part/templates/part/detail.html:926 #, python-format msgid "Unit Price-Cost Difference - %(currency)s" msgstr "" -#: part/templates/part/detail.html:924 +#: part/templates/part/detail.html:938 #, python-format msgid "Supplier Unit Cost - %(currency)s" msgstr "" -#: part/templates/part/detail.html:1013 +#: part/templates/part/detail.html:1027 #, python-format msgid "Unit Price - %(currency)s" msgstr "" @@ -5321,13 +5329,13 @@ msgstr "" msgid "Allocated to Sales Orders" msgstr "" -#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1037 +#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1035 msgid "Can Build" msgstr "" #: part/templates/part/part_base.html:238 templates/js/translated/part.js:593 #: templates/js/translated/part.js:613 templates/js/translated/part.js:1306 -#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1494 +#: templates/js/translated/part.js:1490 msgid "Building" msgstr "" @@ -5379,7 +5387,7 @@ msgid "Total Cost" msgstr "" #: part/templates/part/part_pricing.html:40 part/templates/part/prices.html:43 -#: templates/js/translated/bom.js:991 +#: templates/js/translated/bom.js:989 msgid "No supplier pricing available" msgstr "" @@ -5414,6 +5422,18 @@ msgstr "" msgid "No pricing information is available for this part." msgstr "" +#: part/templates/part/part_scheduling.html:13 +#: report/templates/report/inventree_test_report_base.html:97 +#: templates/InvenTree/settings/plugin.html:53 +#: templates/InvenTree/settings/plugin_settings.html:38 +#: templates/js/translated/order.js:1772 templates/js/translated/stock.js:2468 +msgid "Date" +msgstr "" + +#: part/templates/part/part_scheduling.html:14 +msgid "Scheduled Quantity" +msgstr "" + #: part/templates/part/part_sidebar.html:11 msgid "Variants" msgstr "" @@ -5462,7 +5482,7 @@ msgstr "" msgid "Calculation parameters" msgstr "" -#: part/templates/part/prices.html:160 templates/js/translated/bom.js:985 +#: part/templates/part/prices.html:160 templates/js/translated/bom.js:983 msgid "Supplier Cost" msgstr "" @@ -5501,7 +5521,7 @@ msgid "No sale pice history available for this part." msgstr "" #: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616 -#: templates/js/translated/part.js:1294 templates/js/translated/part.js:1498 +#: templates/js/translated/part.js:1294 msgid "No Stock" msgstr "" @@ -5893,11 +5913,11 @@ msgstr "" #: report/templates/report/inventree_test_report_base.html:79 #: stock/models.py:648 stock/templates/stock/item_base.html:322 -#: templates/js/translated/build.js:424 templates/js/translated/build.js:576 -#: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673 +#: templates/js/translated/build.js:456 templates/js/translated/build.js:608 +#: templates/js/translated/build.js:1208 templates/js/translated/build.js:1705 #: templates/js/translated/model_renderers.js:118 -#: templates/js/translated/order.js:118 templates/js/translated/order.js:3297 -#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490 +#: templates/js/translated/order.js:119 templates/js/translated/order.js:3336 +#: templates/js/translated/order.js:3423 templates/js/translated/stock.js:490 msgid "Serial Number" msgstr "" @@ -5915,13 +5935,6 @@ msgstr "" msgid "Result" msgstr "" -#: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:53 -#: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468 -msgid "Date" -msgstr "" - #: report/templates/report/inventree_test_report_base.html:108 msgid "Pass" msgstr "" @@ -6519,7 +6532,7 @@ msgid "Available Quantity" msgstr "" #: stock/templates/stock/item_base.html:394 -#: templates/js/translated/build.js:1695 +#: templates/js/translated/build.js:1727 msgid "No location set" msgstr "" @@ -7702,7 +7715,7 @@ msgid "The following parts are low on required stock" msgstr "" #: templates/email/build_order_required_stock.html:18 -#: templates/js/translated/bom.js:1483 +#: templates/js/translated/bom.js:1481 msgid "Required Quantity" msgstr "" @@ -7716,6 +7729,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:19 +#: templates/js/translated/part.js:2498 msgid "Minimum Quantity" msgstr "" @@ -7917,10 +7931,10 @@ msgstr "" msgid "Row Data" msgstr "" -#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:622 +#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:620 #: templates/js/translated/modals.js:56 templates/js/translated/modals.js:601 #: templates/js/translated/modals.js:695 templates/js/translated/modals.js:1003 -#: templates/js/translated/order.js:979 templates/modals.html:15 +#: templates/js/translated/order.js:1018 templates/modals.html:15 #: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50 msgid "Close" msgstr "" @@ -7930,12 +7944,12 @@ msgid "Download BOM Template" msgstr "" #: templates/js/translated/bom.js:253 templates/js/translated/bom.js:287 -#: templates/js/translated/order.js:760 templates/js/translated/tables.js:145 +#: templates/js/translated/order.js:799 templates/js/translated/tables.js:145 msgid "Format" msgstr "" #: templates/js/translated/bom.js:254 templates/js/translated/bom.js:288 -#: templates/js/translated/order.js:761 +#: templates/js/translated/order.js:800 msgid "Select file format" msgstr "" @@ -7991,390 +8005,390 @@ msgstr "" msgid "Remove substitute part" msgstr "" -#: templates/js/translated/bom.js:567 +#: templates/js/translated/bom.js:565 msgid "Select and add a new substitute part using the input below" msgstr "" -#: templates/js/translated/bom.js:578 +#: templates/js/translated/bom.js:576 msgid "Are you sure you wish to remove this substitute part link?" msgstr "" -#: templates/js/translated/bom.js:584 +#: templates/js/translated/bom.js:582 msgid "Remove Substitute Part" msgstr "" -#: templates/js/translated/bom.js:623 +#: templates/js/translated/bom.js:621 msgid "Add Substitute" msgstr "" -#: templates/js/translated/bom.js:624 +#: templates/js/translated/bom.js:622 msgid "Edit BOM Item Substitutes" msgstr "" -#: templates/js/translated/bom.js:686 +#: templates/js/translated/bom.js:684 msgid "All selected BOM items will be deleted" msgstr "" -#: templates/js/translated/bom.js:702 +#: templates/js/translated/bom.js:700 msgid "Delete selected BOM items?" msgstr "" -#: templates/js/translated/bom.js:821 +#: templates/js/translated/bom.js:819 msgid "Load BOM for subassembly" msgstr "" -#: templates/js/translated/bom.js:831 +#: templates/js/translated/bom.js:829 msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:835 templates/js/translated/build.js:1771 +#: templates/js/translated/bom.js:833 templates/js/translated/build.js:1803 msgid "Variant stock allowed" msgstr "" -#: templates/js/translated/bom.js:929 templates/js/translated/build.js:1816 -#: templates/js/translated/order.js:3632 +#: templates/js/translated/bom.js:927 templates/js/translated/build.js:1849 +#: templates/js/translated/order.js:3671 msgid "No Stock Available" msgstr "" -#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1820 +#: templates/js/translated/bom.js:932 templates/js/translated/build.js:1853 msgid "Includes variant and substitute stock" msgstr "" -#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822 +#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1855 #: templates/js/translated/part.js:763 msgid "Includes variant stock" msgstr "" -#: templates/js/translated/bom.js:938 templates/js/translated/build.js:1824 +#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1857 msgid "Includes substitute stock" msgstr "" -#: templates/js/translated/bom.js:956 +#: templates/js/translated/bom.js:954 msgid "Substitutes" msgstr "" -#: templates/js/translated/bom.js:971 +#: templates/js/translated/bom.js:969 msgid "Purchase Price Range" msgstr "" -#: templates/js/translated/bom.js:978 +#: templates/js/translated/bom.js:976 msgid "Purchase Price Average" msgstr "" -#: templates/js/translated/bom.js:1027 templates/js/translated/bom.js:1147 +#: templates/js/translated/bom.js:1025 templates/js/translated/bom.js:1145 msgid "View BOM" msgstr "" -#: templates/js/translated/bom.js:1054 +#: templates/js/translated/bom.js:1052 msgid "Including On Order" msgstr "" -#: templates/js/translated/bom.js:1118 +#: templates/js/translated/bom.js:1116 msgid "Validate BOM Item" msgstr "" -#: templates/js/translated/bom.js:1120 +#: templates/js/translated/bom.js:1118 msgid "This line has been validated" msgstr "" -#: templates/js/translated/bom.js:1122 +#: templates/js/translated/bom.js:1120 msgid "Edit substitute parts" msgstr "" -#: templates/js/translated/bom.js:1124 templates/js/translated/bom.js:1286 +#: templates/js/translated/bom.js:1122 templates/js/translated/bom.js:1284 msgid "Edit BOM Item" msgstr "" -#: templates/js/translated/bom.js:1126 +#: templates/js/translated/bom.js:1124 msgid "Delete BOM Item" msgstr "" -#: templates/js/translated/bom.js:1222 templates/js/translated/build.js:1617 +#: templates/js/translated/bom.js:1220 templates/js/translated/build.js:1649 msgid "No BOM items found" msgstr "" -#: templates/js/translated/bom.js:1466 templates/js/translated/build.js:1755 +#: templates/js/translated/bom.js:1464 templates/js/translated/build.js:1787 msgid "Required Part" msgstr "" -#: templates/js/translated/bom.js:1488 +#: templates/js/translated/bom.js:1486 msgid "Inherited from parent BOM" msgstr "" -#: templates/js/translated/build.js:86 +#: templates/js/translated/build.js:89 msgid "Edit Build Order" msgstr "" -#: templates/js/translated/build.js:120 +#: templates/js/translated/build.js:132 msgid "Create Build Order" msgstr "" -#: templates/js/translated/build.js:133 +#: templates/js/translated/build.js:165 msgid "Cancel Build Order" msgstr "" -#: templates/js/translated/build.js:142 +#: templates/js/translated/build.js:174 msgid "Are you sure you wish to cancel this build?" msgstr "" -#: templates/js/translated/build.js:148 +#: templates/js/translated/build.js:180 msgid "Stock items have been allocated to this build order" msgstr "" -#: templates/js/translated/build.js:155 +#: templates/js/translated/build.js:187 msgid "There are incomplete outputs remaining for this build order" msgstr "" -#: templates/js/translated/build.js:185 +#: templates/js/translated/build.js:217 msgid "Build order is ready to be completed" msgstr "" -#: templates/js/translated/build.js:190 +#: templates/js/translated/build.js:222 msgid "Build Order is incomplete" msgstr "" -#: templates/js/translated/build.js:222 +#: templates/js/translated/build.js:254 msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:263 templates/js/translated/stock.js:92 +#: templates/js/translated/build.js:295 templates/js/translated/stock.js:92 #: templates/js/translated/stock.js:214 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:265 templates/js/translated/stock.js:94 +#: templates/js/translated/build.js:297 templates/js/translated/stock.js:94 #: templates/js/translated/stock.js:216 msgid "Latest serial number" msgstr "" -#: templates/js/translated/build.js:274 +#: templates/js/translated/build.js:306 msgid "The Bill of Materials contains trackable parts" msgstr "" -#: templates/js/translated/build.js:275 +#: templates/js/translated/build.js:307 msgid "Build outputs must be generated individually" msgstr "" -#: templates/js/translated/build.js:283 +#: templates/js/translated/build.js:315 msgid "Trackable parts can have serial numbers specified" msgstr "" -#: templates/js/translated/build.js:284 +#: templates/js/translated/build.js:316 msgid "Enter serial numbers to generate multiple single build outputs" msgstr "" -#: templates/js/translated/build.js:291 +#: templates/js/translated/build.js:323 msgid "Create Build Output" msgstr "" -#: templates/js/translated/build.js:322 +#: templates/js/translated/build.js:354 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:333 +#: templates/js/translated/build.js:365 msgid "Unallocate stock from build output" msgstr "" -#: templates/js/translated/build.js:342 +#: templates/js/translated/build.js:374 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:350 +#: templates/js/translated/build.js:382 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:373 +#: templates/js/translated/build.js:405 msgid "Are you sure you wish to unallocate stock items from this build?" msgstr "" -#: templates/js/translated/build.js:391 +#: templates/js/translated/build.js:423 msgid "Unallocate Stock Items" msgstr "" -#: templates/js/translated/build.js:411 templates/js/translated/build.js:563 +#: templates/js/translated/build.js:443 templates/js/translated/build.js:595 msgid "Select Build Outputs" msgstr "" -#: templates/js/translated/build.js:412 templates/js/translated/build.js:564 +#: templates/js/translated/build.js:444 templates/js/translated/build.js:596 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:466 templates/js/translated/build.js:618 +#: templates/js/translated/build.js:498 templates/js/translated/build.js:650 msgid "Output" msgstr "" -#: templates/js/translated/build.js:484 +#: templates/js/translated/build.js:516 msgid "Complete Build Outputs" msgstr "" -#: templates/js/translated/build.js:631 +#: templates/js/translated/build.js:663 msgid "Delete Build Outputs" msgstr "" -#: templates/js/translated/build.js:720 +#: templates/js/translated/build.js:752 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:757 +#: templates/js/translated/build.js:789 msgid "Location not specified" msgstr "" -#: templates/js/translated/build.js:1136 +#: templates/js/translated/build.js:1168 msgid "No active build outputs found" msgstr "" -#: templates/js/translated/build.js:1205 +#: templates/js/translated/build.js:1237 msgid "Allocated Stock" msgstr "" -#: templates/js/translated/build.js:1212 +#: templates/js/translated/build.js:1244 msgid "No tracked BOM items for this build" msgstr "" -#: templates/js/translated/build.js:1234 +#: templates/js/translated/build.js:1266 msgid "Completed Tests" msgstr "" -#: templates/js/translated/build.js:1239 +#: templates/js/translated/build.js:1271 msgid "No required tests for this build" msgstr "" -#: templates/js/translated/build.js:1712 templates/js/translated/build.js:2656 -#: templates/js/translated/order.js:3332 +#: templates/js/translated/build.js:1744 templates/js/translated/build.js:2689 +#: templates/js/translated/order.js:3371 msgid "Edit stock allocation" msgstr "" -#: templates/js/translated/build.js:1714 templates/js/translated/build.js:2657 -#: templates/js/translated/order.js:3333 +#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2690 +#: templates/js/translated/order.js:3372 msgid "Delete stock allocation" msgstr "" -#: templates/js/translated/build.js:1732 +#: templates/js/translated/build.js:1764 msgid "Edit Allocation" msgstr "" -#: templates/js/translated/build.js:1742 +#: templates/js/translated/build.js:1774 msgid "Remove Allocation" msgstr "" -#: templates/js/translated/build.js:1767 +#: templates/js/translated/build.js:1799 msgid "Substitute parts available" msgstr "" -#: templates/js/translated/build.js:1784 +#: templates/js/translated/build.js:1816 msgid "Quantity Per" msgstr "" -#: templates/js/translated/build.js:1810 templates/js/translated/order.js:3639 +#: templates/js/translated/build.js:1843 templates/js/translated/order.js:3678 msgid "Insufficient stock available" msgstr "" -#: templates/js/translated/build.js:1812 templates/js/translated/order.js:3637 +#: templates/js/translated/build.js:1845 templates/js/translated/order.js:3676 msgid "Sufficient stock available" msgstr "" -#: templates/js/translated/build.js:1841 templates/js/translated/build.js:2086 -#: templates/js/translated/build.js:2652 templates/js/translated/order.js:3651 +#: templates/js/translated/build.js:1874 templates/js/translated/build.js:2119 +#: templates/js/translated/build.js:2685 templates/js/translated/order.js:3690 msgid "Allocated" msgstr "" -#: templates/js/translated/build.js:1889 templates/js/translated/order.js:3731 +#: templates/js/translated/build.js:1922 templates/js/translated/order.js:3770 msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:1893 templates/stock_table.html:50 +#: templates/js/translated/build.js:1926 templates/stock_table.html:50 msgid "Order stock" msgstr "" -#: templates/js/translated/build.js:1896 templates/js/translated/order.js:3724 +#: templates/js/translated/build.js:1929 templates/js/translated/order.js:3763 msgid "Allocate stock" msgstr "" -#: templates/js/translated/build.js:1935 templates/js/translated/label.js:172 -#: templates/js/translated/order.js:807 templates/js/translated/order.js:2859 +#: templates/js/translated/build.js:1968 templates/js/translated/label.js:172 +#: templates/js/translated/order.js:846 templates/js/translated/order.js:2898 #: templates/js/translated/report.js:225 msgid "Select Parts" msgstr "" -#: templates/js/translated/build.js:1936 templates/js/translated/order.js:2860 +#: templates/js/translated/build.js:1969 templates/js/translated/order.js:2899 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1985 templates/js/translated/order.js:2808 +#: templates/js/translated/build.js:2018 templates/js/translated/order.js:2847 msgid "Specify stock allocation quantity" msgstr "" -#: templates/js/translated/build.js:2059 +#: templates/js/translated/build.js:2092 msgid "All Parts Allocated" msgstr "" -#: templates/js/translated/build.js:2060 +#: templates/js/translated/build.js:2093 msgid "All selected parts have been fully allocated" msgstr "" -#: templates/js/translated/build.js:2074 templates/js/translated/order.js:2874 +#: templates/js/translated/build.js:2107 templates/js/translated/order.js:2913 msgid "Select source location (leave blank to take from all locations)" msgstr "" -#: templates/js/translated/build.js:2102 +#: templates/js/translated/build.js:2135 msgid "Allocate Stock Items to Build Order" msgstr "" -#: templates/js/translated/build.js:2113 templates/js/translated/order.js:2971 +#: templates/js/translated/build.js:2146 templates/js/translated/order.js:3010 msgid "No matching stock locations" msgstr "" -#: templates/js/translated/build.js:2185 templates/js/translated/order.js:3048 +#: templates/js/translated/build.js:2218 templates/js/translated/order.js:3087 msgid "No matching stock items" msgstr "" -#: templates/js/translated/build.js:2282 +#: templates/js/translated/build.js:2315 msgid "Automatic Stock Allocation" msgstr "" -#: templates/js/translated/build.js:2283 +#: templates/js/translated/build.js:2316 msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines" msgstr "" -#: templates/js/translated/build.js:2285 +#: templates/js/translated/build.js:2318 msgid "If a location is specifed, stock will only be allocated from that location" msgstr "" -#: templates/js/translated/build.js:2286 +#: templates/js/translated/build.js:2319 msgid "If stock is considered interchangeable, it will be allocated from the first location it is found" msgstr "" -#: templates/js/translated/build.js:2287 +#: templates/js/translated/build.js:2320 msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found" msgstr "" -#: templates/js/translated/build.js:2308 +#: templates/js/translated/build.js:2341 msgid "Allocate Stock Items" msgstr "" -#: templates/js/translated/build.js:2414 +#: templates/js/translated/build.js:2447 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387 -#: templates/js/translated/part.js:1899 templates/js/translated/stock.js:1686 +#: templates/js/translated/build.js:2482 templates/js/translated/part.js:1387 +#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1686 #: templates/js/translated/stock.js:2386 msgid "Select" msgstr "" -#: templates/js/translated/build.js:2463 +#: templates/js/translated/build.js:2496 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:2491 +#: templates/js/translated/build.js:2524 msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647 +#: templates/js/translated/build.js:2560 templates/js/translated/stock.js:2647 msgid "No user information" msgstr "" -#: templates/js/translated/build.js:2633 +#: templates/js/translated/build.js:2666 msgid "No parts allocated for" msgstr "" @@ -8390,11 +8404,11 @@ msgstr "" msgid "Edit Manufacturer Part" msgstr "" -#: templates/js/translated/company.js:167 templates/js/translated/order.js:509 +#: templates/js/translated/company.js:167 templates/js/translated/order.js:510 msgid "Add Supplier" msgstr "" -#: templates/js/translated/company.js:195 templates/js/translated/order.js:628 +#: templates/js/translated/company.js:195 templates/js/translated/order.js:667 msgid "Add Supplier Part" msgstr "" @@ -8765,381 +8779,385 @@ msgstr "" msgid "Notifications will load here" msgstr "" -#: templates/js/translated/order.js:94 +#: templates/js/translated/order.js:95 msgid "No stock items have been allocated to this shipment" msgstr "" -#: templates/js/translated/order.js:99 +#: templates/js/translated/order.js:100 msgid "The following stock items will be shipped" msgstr "" -#: templates/js/translated/order.js:139 +#: templates/js/translated/order.js:140 msgid "Complete Shipment" msgstr "" -#: templates/js/translated/order.js:159 +#: templates/js/translated/order.js:160 msgid "Confirm Shipment" msgstr "" -#: templates/js/translated/order.js:215 +#: templates/js/translated/order.js:216 msgid "No pending shipments found" msgstr "" -#: templates/js/translated/order.js:219 +#: templates/js/translated/order.js:220 msgid "No stock items have been allocated to pending shipments" msgstr "" -#: templates/js/translated/order.js:251 +#: templates/js/translated/order.js:252 msgid "Skip" msgstr "" -#: templates/js/translated/order.js:281 +#: templates/js/translated/order.js:282 msgid "Complete Purchase Order" msgstr "" -#: templates/js/translated/order.js:287 +#: templates/js/translated/order.js:288 msgid "Mark this order as complete?" msgstr "" -#: templates/js/translated/order.js:293 +#: templates/js/translated/order.js:294 msgid "All line items have been received" msgstr "" -#: templates/js/translated/order.js:298 +#: templates/js/translated/order.js:299 msgid "This order has line items which have not been marked as received." msgstr "" -#: templates/js/translated/order.js:299 +#: templates/js/translated/order.js:300 msgid "Completing this order means that the order and line items will no longer be editable." msgstr "" -#: templates/js/translated/order.js:322 +#: templates/js/translated/order.js:323 msgid "Cancel Purchase Order" msgstr "" -#: templates/js/translated/order.js:327 +#: templates/js/translated/order.js:328 msgid "Are you sure you wish to cancel this purchase order?" msgstr "" -#: templates/js/translated/order.js:333 +#: templates/js/translated/order.js:334 msgid "This purchase order can not be cancelled" msgstr "" -#: templates/js/translated/order.js:356 +#: templates/js/translated/order.js:357 msgid "Issue Purchase Order" msgstr "" -#: templates/js/translated/order.js:361 +#: templates/js/translated/order.js:362 msgid "After placing this purchase order, line items will no longer be editable." msgstr "" -#: templates/js/translated/order.js:383 +#: templates/js/translated/order.js:384 msgid "Cancel Sales Order" msgstr "" -#: templates/js/translated/order.js:388 +#: templates/js/translated/order.js:389 msgid "Cancelling this order means that the order will no longer be editable." msgstr "" -#: templates/js/translated/order.js:442 +#: templates/js/translated/order.js:443 msgid "Create New Shipment" msgstr "" -#: templates/js/translated/order.js:467 +#: templates/js/translated/order.js:468 msgid "Add Customer" msgstr "" -#: templates/js/translated/order.js:492 +#: templates/js/translated/order.js:493 msgid "Create Sales Order" msgstr "" -#: templates/js/translated/order.js:757 +#: templates/js/translated/order.js:554 +msgid "Edit Purchase Order" +msgstr "" + +#: templates/js/translated/order.js:796 msgid "Export Order" msgstr "" -#: templates/js/translated/order.js:808 +#: templates/js/translated/order.js:847 msgid "At least one purchaseable part must be selected" msgstr "" -#: templates/js/translated/order.js:833 +#: templates/js/translated/order.js:872 msgid "Quantity to order" msgstr "" -#: templates/js/translated/order.js:842 +#: templates/js/translated/order.js:881 msgid "New supplier part" msgstr "" -#: templates/js/translated/order.js:860 +#: templates/js/translated/order.js:899 msgid "New purchase order" msgstr "" -#: templates/js/translated/order.js:893 +#: templates/js/translated/order.js:932 msgid "Add to purchase order" msgstr "" -#: templates/js/translated/order.js:1002 +#: templates/js/translated/order.js:1041 msgid "No matching supplier parts" msgstr "" -#: templates/js/translated/order.js:1017 +#: templates/js/translated/order.js:1056 msgid "No matching purchase orders" msgstr "" -#: templates/js/translated/order.js:1194 +#: templates/js/translated/order.js:1233 msgid "Select Line Items" msgstr "" -#: templates/js/translated/order.js:1195 +#: templates/js/translated/order.js:1234 msgid "At least one line item must be selected" msgstr "" -#: templates/js/translated/order.js:1215 templates/js/translated/order.js:1314 +#: templates/js/translated/order.js:1254 templates/js/translated/order.js:1353 msgid "Add batch code" msgstr "" -#: templates/js/translated/order.js:1221 templates/js/translated/order.js:1325 +#: templates/js/translated/order.js:1260 templates/js/translated/order.js:1364 msgid "Add serial numbers" msgstr "" -#: templates/js/translated/order.js:1233 +#: templates/js/translated/order.js:1272 msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144 +#: templates/js/translated/order.js:1336 templates/js/translated/stock.js:2144 msgid "Stock Status" msgstr "" -#: templates/js/translated/order.js:1388 +#: templates/js/translated/order.js:1427 msgid "Order Code" msgstr "" -#: templates/js/translated/order.js:1389 +#: templates/js/translated/order.js:1428 msgid "Ordered" msgstr "" -#: templates/js/translated/order.js:1391 +#: templates/js/translated/order.js:1430 msgid "Quantity to Receive" msgstr "" -#: templates/js/translated/order.js:1410 +#: templates/js/translated/order.js:1449 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/order.js:1411 +#: templates/js/translated/order.js:1450 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943 +#: templates/js/translated/order.js:1711 templates/js/translated/part.js:943 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/order.js:1699 templates/js/translated/order.js:2503 +#: templates/js/translated/order.js:1738 templates/js/translated/order.js:2542 msgid "Order is overdue" msgstr "" -#: templates/js/translated/order.js:1749 templates/js/translated/order.js:2568 -#: templates/js/translated/order.js:2709 +#: templates/js/translated/order.js:1788 templates/js/translated/order.js:2607 +#: templates/js/translated/order.js:2748 msgid "Items" msgstr "" -#: templates/js/translated/order.js:1847 templates/js/translated/order.js:3783 +#: templates/js/translated/order.js:1886 templates/js/translated/order.js:3822 msgid "Duplicate Line Item" msgstr "" -#: templates/js/translated/order.js:1864 templates/js/translated/order.js:3805 +#: templates/js/translated/order.js:1903 templates/js/translated/order.js:3844 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/order.js:1877 templates/js/translated/order.js:3816 +#: templates/js/translated/order.js:1916 templates/js/translated/order.js:3855 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/order.js:1920 +#: templates/js/translated/order.js:1959 msgid "No line items found" msgstr "" -#: templates/js/translated/order.js:1947 templates/js/translated/order.js:3517 +#: templates/js/translated/order.js:1986 templates/js/translated/order.js:3556 msgid "Total" msgstr "" -#: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203 -#: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050 -#: templates/js/translated/part.js:2135 templates/js/translated/part.js:2488 +#: templates/js/translated/order.js:2040 templates/js/translated/order.js:2242 +#: templates/js/translated/order.js:3581 templates/js/translated/order.js:4089 +#: templates/js/translated/part.js:2131 templates/js/translated/part.js:2703 msgid "Unit Price" msgstr "" -#: templates/js/translated/order.js:2016 templates/js/translated/order.js:2219 -#: templates/js/translated/order.js:3558 templates/js/translated/order.js:4066 +#: templates/js/translated/order.js:2055 templates/js/translated/order.js:2258 +#: templates/js/translated/order.js:3597 templates/js/translated/order.js:4105 msgid "Total Price" msgstr "" -#: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600 +#: templates/js/translated/order.js:2096 templates/js/translated/order.js:3639 #: templates/js/translated/part.js:1050 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096 +#: templates/js/translated/order.js:2155 templates/js/translated/part.js:1096 msgid "Receive line item" msgstr "" -#: templates/js/translated/order.js:2120 templates/js/translated/order.js:3737 +#: templates/js/translated/order.js:2159 templates/js/translated/order.js:3776 msgid "Duplicate line item" msgstr "" -#: templates/js/translated/order.js:2121 templates/js/translated/order.js:3738 +#: templates/js/translated/order.js:2160 templates/js/translated/order.js:3777 msgid "Edit line item" msgstr "" -#: templates/js/translated/order.js:2122 templates/js/translated/order.js:3742 +#: templates/js/translated/order.js:2161 templates/js/translated/order.js:3781 msgid "Delete line item" msgstr "" -#: templates/js/translated/order.js:2268 templates/js/translated/order.js:4115 +#: templates/js/translated/order.js:2307 templates/js/translated/order.js:4154 msgid "Duplicate line" msgstr "" -#: templates/js/translated/order.js:2269 templates/js/translated/order.js:4116 +#: templates/js/translated/order.js:2308 templates/js/translated/order.js:4155 msgid "Edit line" msgstr "" -#: templates/js/translated/order.js:2270 templates/js/translated/order.js:4117 +#: templates/js/translated/order.js:2309 templates/js/translated/order.js:4156 msgid "Delete line" msgstr "" -#: templates/js/translated/order.js:2300 templates/js/translated/order.js:4147 +#: templates/js/translated/order.js:2339 templates/js/translated/order.js:4186 msgid "Duplicate Line" msgstr "" -#: templates/js/translated/order.js:2321 templates/js/translated/order.js:4168 +#: templates/js/translated/order.js:2360 templates/js/translated/order.js:4207 msgid "Edit Line" msgstr "" -#: templates/js/translated/order.js:2332 templates/js/translated/order.js:4179 +#: templates/js/translated/order.js:2371 templates/js/translated/order.js:4218 msgid "Delete Line" msgstr "" -#: templates/js/translated/order.js:2343 +#: templates/js/translated/order.js:2382 msgid "No matching line" msgstr "" -#: templates/js/translated/order.js:2454 +#: templates/js/translated/order.js:2493 msgid "No sales orders found" msgstr "" -#: templates/js/translated/order.js:2517 +#: templates/js/translated/order.js:2556 msgid "Invalid Customer" msgstr "" -#: templates/js/translated/order.js:2615 +#: templates/js/translated/order.js:2654 msgid "Edit shipment" msgstr "" -#: templates/js/translated/order.js:2618 +#: templates/js/translated/order.js:2657 msgid "Complete shipment" msgstr "" -#: templates/js/translated/order.js:2623 +#: templates/js/translated/order.js:2662 msgid "Delete shipment" msgstr "" -#: templates/js/translated/order.js:2643 +#: templates/js/translated/order.js:2682 msgid "Edit Shipment" msgstr "" -#: templates/js/translated/order.js:2660 +#: templates/js/translated/order.js:2699 msgid "Delete Shipment" msgstr "" -#: templates/js/translated/order.js:2694 +#: templates/js/translated/order.js:2733 msgid "No matching shipments found" msgstr "" -#: templates/js/translated/order.js:2704 +#: templates/js/translated/order.js:2743 msgid "Shipment Reference" msgstr "" -#: templates/js/translated/order.js:2728 +#: templates/js/translated/order.js:2767 msgid "Not shipped" msgstr "" -#: templates/js/translated/order.js:2734 +#: templates/js/translated/order.js:2773 msgid "Tracking" msgstr "" -#: templates/js/translated/order.js:2738 +#: templates/js/translated/order.js:2777 msgid "Invoice" msgstr "" -#: templates/js/translated/order.js:2907 +#: templates/js/translated/order.js:2946 msgid "Add Shipment" msgstr "" -#: templates/js/translated/order.js:2958 +#: templates/js/translated/order.js:2997 msgid "Confirm stock allocation" msgstr "" -#: templates/js/translated/order.js:2959 +#: templates/js/translated/order.js:2998 msgid "Allocate Stock Items to Sales Order" msgstr "" -#: templates/js/translated/order.js:3167 +#: templates/js/translated/order.js:3206 msgid "No sales order allocations found" msgstr "" -#: templates/js/translated/order.js:3246 +#: templates/js/translated/order.js:3285 msgid "Edit Stock Allocation" msgstr "" -#: templates/js/translated/order.js:3263 +#: templates/js/translated/order.js:3302 msgid "Confirm Delete Operation" msgstr "" -#: templates/js/translated/order.js:3264 +#: templates/js/translated/order.js:3303 msgid "Delete Stock Allocation" msgstr "" -#: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398 +#: templates/js/translated/order.js:3348 templates/js/translated/order.js:3437 #: templates/js/translated/stock.js:1602 msgid "Shipped to customer" msgstr "" -#: templates/js/translated/order.js:3317 templates/js/translated/order.js:3407 +#: templates/js/translated/order.js:3356 templates/js/translated/order.js:3446 msgid "Stock location not specified" msgstr "" -#: templates/js/translated/order.js:3721 +#: templates/js/translated/order.js:3760 msgid "Allocate serial numbers" msgstr "" -#: templates/js/translated/order.js:3727 +#: templates/js/translated/order.js:3766 msgid "Purchase stock" msgstr "" -#: templates/js/translated/order.js:3734 templates/js/translated/order.js:3932 +#: templates/js/translated/order.js:3773 templates/js/translated/order.js:3971 msgid "Calculate price" msgstr "" -#: templates/js/translated/order.js:3746 +#: templates/js/translated/order.js:3785 msgid "Cannot be deleted as items have been shipped" msgstr "" -#: templates/js/translated/order.js:3749 +#: templates/js/translated/order.js:3788 msgid "Cannot be deleted as items have been allocated" msgstr "" -#: templates/js/translated/order.js:3831 +#: templates/js/translated/order.js:3870 msgid "Allocate Serial Numbers" msgstr "" -#: templates/js/translated/order.js:3940 +#: templates/js/translated/order.js:3979 msgid "Update Unit Price" msgstr "" -#: templates/js/translated/order.js:3954 +#: templates/js/translated/order.js:3993 msgid "No matching line items" msgstr "" -#: templates/js/translated/order.js:4190 +#: templates/js/translated/order.js:4229 msgid "No matching lines" msgstr "" @@ -9319,12 +9337,12 @@ msgstr "" msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:586 templates/js/translated/part.js:1470 +#: templates/js/translated/part.js:586 templates/js/translated/part.js:1478 #: templates/js/translated/table_filters.js:468 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:596 templates/js/translated/part.js:1482 +#: templates/js/translated/part.js:596 msgid "No stock available" msgstr "" @@ -9356,7 +9374,7 @@ msgstr "" msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1553 +#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1549 msgid "No parts found" msgstr "" @@ -9368,100 +9386,124 @@ msgstr "" msgid "No category" msgstr "" -#: templates/js/translated/part.js:1577 templates/js/translated/part.js:1820 +#: templates/js/translated/part.js:1476 +msgid "No stock" +msgstr "" + +#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816 #: templates/js/translated/stock.js:2347 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:1593 +#: templates/js/translated/part.js:1589 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:1659 +#: templates/js/translated/part.js:1655 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:1664 +#: templates/js/translated/part.js:1660 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:1669 +#: templates/js/translated/part.js:1665 msgid "Select Part Category" msgstr "" -#: templates/js/translated/part.js:1682 +#: templates/js/translated/part.js:1678 msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1839 templates/js/translated/stock.js:2366 +#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2366 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:1918 +#: templates/js/translated/part.js:1914 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:1934 +#: templates/js/translated/part.js:1930 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:1992 +#: templates/js/translated/part.js:1988 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2043 templates/js/translated/stock.js:1299 +#: templates/js/translated/part.js:2039 templates/js/translated/stock.js:1299 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:2044 templates/js/translated/stock.js:1300 +#: templates/js/translated/part.js:2040 templates/js/translated/stock.js:1300 #: templates/js/translated/stock.js:1560 msgid "Delete test result" msgstr "" -#: templates/js/translated/part.js:2050 +#: templates/js/translated/part.js:2046 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2072 +#: templates/js/translated/part.js:2068 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2086 +#: templates/js/translated/part.js:2082 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2111 +#: templates/js/translated/part.js:2107 #, python-brace-format msgid "No ${human_name} information found" msgstr "" -#: templates/js/translated/part.js:2168 +#: templates/js/translated/part.js:2164 #, python-brace-format msgid "Edit ${human_name}" msgstr "" -#: templates/js/translated/part.js:2169 +#: templates/js/translated/part.js:2165 #, python-brace-format msgid "Delete ${human_name}" msgstr "" -#: templates/js/translated/part.js:2283 -msgid "Current Stock" +#: templates/js/translated/part.js:2330 templates/js/translated/part.js:2331 +msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:2316 +#: templates/js/translated/part.js:2333 +msgid "Specified date is in the past" +msgstr "" + +#: templates/js/translated/part.js:2339 +msgid "Speculative" +msgstr "" + +#: templates/js/translated/part.js:2389 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2342 +#: templates/js/translated/part.js:2395 +msgid "Error fetching scheduling information for this part" +msgstr "" + +#: templates/js/translated/part.js:2491 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2412 +#: templates/js/translated/part.js:2507 +msgid "Maximum Quantity" +msgstr "" + +#: templates/js/translated/part.js:2533 +msgid "Minimum Stock Level" +msgstr "" + +#: templates/js/translated/part.js:2627 msgid "Single Price" msgstr "" -#: templates/js/translated/part.js:2431 +#: templates/js/translated/part.js:2646 msgid "Single Price Difference" msgstr "" @@ -10222,10 +10264,6 @@ msgstr "" msgid "Hide/Show pagination" msgstr "" -#: templates/js/translated/tables.js:558 -msgid "Refresh" -msgstr "" - #: templates/js/translated/tables.js:561 msgid "Toggle" msgstr "" diff --git a/InvenTree/locale/en/LC_MESSAGES/django.po b/InvenTree/locale/en/LC_MESSAGES/django.po index 4e340ab2d7..78294bbda5 100644 --- a/InvenTree/locale/en/LC_MESSAGES/django.po +++ b/InvenTree/locale/en/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-15 13:12+0000\n" +"POT-Creation-Date: 2022-08-17 06:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -37,15 +37,15 @@ msgstr "" #: order/templates/order/so_sidebar.html:17 #: part/templates/part/part_sidebar.html:59 #: report/templates/report/inventree_build_order_base.html:172 -#: stock/models.py:1993 stock/models.py:2101 stock/serializers.py:329 -#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:823 -#: stock/serializers.py:922 stock/serializers.py:1054 +#: stock/models.py:2000 stock/models.py:2108 stock/serializers.py:329 +#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825 +#: stock/serializers.py:924 stock/serializers.py:1056 #: stock/templates/stock/stock_sidebar.html:25 #: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101 #: templates/js/translated/company.js:964 templates/js/translated/order.js:2104 #: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753 #: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102 -#: templates/js/translated/stock.js:1370 templates/js/translated/stock.js:1976 +#: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980 msgid "Notes" msgstr "" @@ -200,7 +200,7 @@ msgstr "" msgid "Missing external link" msgstr "" -#: InvenTree/models.py:395 stock/models.py:2095 +#: InvenTree/models.py:395 stock/models.py:2102 #: templates/js/translated/attachment.js:103 #: templates/js/translated/attachment.js:241 msgid "Attachment" @@ -212,7 +212,7 @@ msgstr "" #: InvenTree/models.py:402 company/models.py:124 company/models.py:276 #: company/models.py:510 order/models.py:84 order/models.py:1245 -#: part/models.py:795 +#: part/models.py:802 #: report/templates/report/inventree_build_order_base.html:164 #: templates/js/translated/company.js:656 #: templates/js/translated/company.js:948 templates/js/translated/order.js:2742 @@ -220,8 +220,8 @@ msgstr "" msgid "Link" msgstr "" -#: InvenTree/models.py:403 build/models.py:296 part/models.py:796 -#: stock/models.py:651 +#: InvenTree/models.py:403 build/models.py:296 part/models.py:803 +#: stock/models.py:658 msgid "Link to external URL" msgstr "" @@ -234,12 +234,12 @@ msgstr "" msgid "File comment" msgstr "" -#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1646 -#: common/models.py:1647 common/models.py:1870 common/models.py:1871 -#: common/models.py:2133 common/models.py:2134 part/models.py:2193 -#: part/models.py:2213 plugin/models.py:238 plugin/models.py:239 +#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665 +#: common/models.py:1666 common/models.py:1889 common/models.py:1890 +#: common/models.py:2152 common/models.py:2153 part/models.py:2200 +#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2632 +#: templates/js/translated/stock.js:2641 msgid "User" msgstr "" @@ -276,19 +276,19 @@ msgstr "" msgid "Invalid choice" msgstr "" -#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1856 -#: company/models.py:358 label/models.py:101 part/models.py:739 -#: part/models.py:2371 plugin/models.py:93 report/models.py:152 +#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875 +#: company/models.py:358 label/models.py:101 part/models.py:746 +#: part/models.py:2378 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 -#: templates/InvenTree/settings/plugin.html:49 -#: templates/InvenTree/settings/plugin.html:132 +#: templates/InvenTree/settings/plugin.html:51 +#: templates/InvenTree/settings/plugin.html:134 #: templates/InvenTree/settings/plugin_settings.html:23 #: templates/InvenTree/settings/settings.html:347 #: templates/js/translated/company.js:545 #: templates/js/translated/company.js:758 #: templates/js/translated/notification.js:71 -#: templates/js/translated/part.js:684 templates/js/translated/part.js:836 -#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2388 +#: templates/js/translated/part.js:688 templates/js/translated/part.js:840 +#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2392 msgid "Name" msgstr "" @@ -297,21 +297,21 @@ msgstr "" #: company/models.py:516 company/templates/company/company_base.html:71 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:87 label/models.py:108 -#: order/models.py:82 part/models.py:762 part/templates/part/category.html:74 +#: order/models.py:82 part/models.py:769 part/templates/part/category.html:80 #: part/templates/part/part_base.html:167 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 -#: stock/templates/stock/location.html:103 +#: stock/templates/stock/location.html:108 #: templates/InvenTree/settings/plugin_settings.html:33 #: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848 #: templates/js/translated/build.js:2471 templates/js/translated/company.js:409 #: templates/js/translated/company.js:667 #: templates/js/translated/company.js:959 templates/js/translated/order.js:1720 #: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531 -#: templates/js/translated/part.js:743 templates/js/translated/part.js:1149 -#: templates/js/translated/part.js:1424 templates/js/translated/part.js:1933 -#: templates/js/translated/part.js:2002 templates/js/translated/stock.js:1739 -#: templates/js/translated/stock.js:2415 templates/js/translated/stock.js:2469 +#: templates/js/translated/part.js:747 templates/js/translated/part.js:1153 +#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1938 +#: templates/js/translated/part.js:2007 templates/js/translated/stock.js:1743 +#: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478 msgid "Description" msgstr "" @@ -324,7 +324,7 @@ msgid "parent" msgstr "" #: InvenTree/models.py:560 InvenTree/models.py:561 -#: templates/js/translated/part.js:1939 templates/js/translated/stock.js:2421 +#: templates/js/translated/part.js:1944 templates/js/translated/stock.js:2430 msgid "Path" msgstr "" @@ -336,7 +336,7 @@ msgstr "" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:55 part/models.py:2692 +#: InvenTree/serializers.py:55 part/models.py:2699 msgid "Must be a valid number" msgstr "" @@ -626,7 +626,7 @@ msgstr "" msgid "Split child item" msgstr "" -#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2080 +#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2084 msgid "Merged stock items" msgstr "" @@ -748,7 +748,7 @@ msgid "Build Order Reference" msgstr "" #: build/models.py:166 order/models.py:240 order/models.py:623 -#: order/models.py:904 part/models.py:2610 +#: order/models.py:904 part/models.py:2617 #: part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 @@ -775,10 +775,10 @@ msgstr "" #: build/models.py:191 build/templates/build/build_base.html:77 #: build/templates/build/detail.html:29 company/models.py:670 #: order/models.py:1001 order/models.py:1112 order/models.py:1113 -#: part/models.py:336 part/models.py:2139 part/models.py:2154 -#: part/models.py:2173 part/models.py:2191 part/models.py:2290 -#: part/models.py:2410 part/models.py:2500 part/models.py:2585 -#: part/models.py:2861 part/serializers.py:811 +#: part/models.py:343 part/models.py:2146 part/models.py:2161 +#: part/models.py:2180 part/models.py:2198 part/models.py:2297 +#: part/models.py:2417 part/models.py:2507 part/models.py:2592 +#: part/models.py:2868 part/serializers.py:813 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -801,11 +801,11 @@ msgstr "" #: templates/js/translated/order.js:934 templates/js/translated/order.js:1387 #: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885 #: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507 -#: templates/js/translated/part.js:1134 templates/js/translated/part.js:1206 -#: templates/js/translated/part.js:1402 templates/js/translated/stock.js:582 -#: templates/js/translated/stock.js:747 templates/js/translated/stock.js:954 -#: templates/js/translated/stock.js:1696 templates/js/translated/stock.js:2495 -#: templates/js/translated/stock.js:2690 templates/js/translated/stock.js:2824 +#: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210 +#: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586 +#: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958 +#: templates/js/translated/stock.js:1700 templates/js/translated/stock.js:2504 +#: templates/js/translated/stock.js:2699 templates/js/translated/stock.js:2833 msgid "Part" msgstr "" @@ -863,7 +863,7 @@ msgid "Build status code" msgstr "" #: build/models.py:251 build/serializers.py:225 order/serializers.py:447 -#: stock/models.py:655 templates/js/translated/order.js:1247 +#: stock/models.py:662 templates/js/translated/order.js:1247 msgid "Batch Code" msgstr "" @@ -871,7 +871,7 @@ msgstr "" msgid "Batch code for this build output" msgstr "" -#: build/models.py:258 order/models.py:86 part/models.py:931 +#: build/models.py:258 order/models.py:86 part/models.py:938 #: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544 msgid "Creation Date" msgstr "" @@ -904,7 +904,7 @@ msgstr "" #: build/models.py:289 build/templates/build/build_base.html:190 #: build/templates/build/detail.html:115 order/models.py:100 #: order/templates/order/order_base.html:176 -#: order/templates/order/sales_order_base.html:183 part/models.py:935 +#: order/templates/order/sales_order_base.html:183 part/models.py:942 #: report/templates/report/inventree_build_order_base.html:158 #: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754 msgid "Responsible" @@ -917,7 +917,7 @@ msgstr "" #: build/models.py:295 build/templates/build/detail.html:101 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:153 -#: part/templates/part/part_base.html:346 stock/models.py:649 +#: part/templates/part/part_base.html:346 stock/models.py:656 #: stock/templates/stock/item_base.html:205 msgid "External Link" msgstr "" @@ -983,8 +983,8 @@ msgid "Build to allocate parts" msgstr "" #: build/models.py:1345 build/serializers.py:645 order/serializers.py:1015 -#: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 -#: stock/serializers.py:880 stock/templates/stock/item_base.html:10 +#: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:756 +#: stock/serializers.py:882 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:199 #: templates/js/translated/build.js:741 templates/js/translated/build.js:746 @@ -992,8 +992,8 @@ msgstr "" #: templates/js/translated/order.js:104 templates/js/translated/order.js:2886 #: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193 #: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380 -#: templates/js/translated/stock.js:583 templates/js/translated/stock.js:748 -#: templates/js/translated/stock.js:2568 +#: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752 +#: templates/js/translated/stock.js:2577 msgid "Stock Item" msgstr "" @@ -1003,11 +1003,11 @@ msgstr "" #: build/models.py:1358 build/serializers.py:193 #: build/templates/build/build_base.html:82 -#: build/templates/build/detail.html:34 common/models.py:1678 +#: build/templates/build/detail.html:34 common/models.py:1697 #: company/templates/company/supplier_part.html:279 order/models.py:897 #: order/models.py:1423 order/serializers.py:1155 #: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40 -#: part/models.py:2601 part/templates/part/detail.html:937 +#: part/models.py:2608 part/templates/part/detail.html:937 #: part/templates/part/detail.html:1023 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 @@ -1030,11 +1030,11 @@ msgstr "" #: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207 #: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386 #: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037 -#: templates/js/translated/part.js:1034 templates/js/translated/part.js:2147 -#: templates/js/translated/part.js:2378 templates/js/translated/part.js:2412 -#: templates/js/translated/part.js:2490 templates/js/translated/stock.js:454 -#: templates/js/translated/stock.js:608 templates/js/translated/stock.js:778 -#: templates/js/translated/stock.js:2617 templates/js/translated/stock.js:2702 +#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2152 +#: templates/js/translated/part.js:2383 templates/js/translated/part.js:2417 +#: templates/js/translated/part.js:2495 templates/js/translated/stock.js:458 +#: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782 +#: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711 msgid "Quantity" msgstr "" @@ -1076,8 +1076,8 @@ msgid "Enter quantity for build output" msgstr "" #: build/serializers.py:208 build/serializers.py:665 order/models.py:318 -#: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 -#: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 +#: order/serializers.py:287 order/serializers.py:442 part/serializers.py:544 +#: part/serializers.py:976 stock/models.py:484 stock/models.py:1251 #: stock/serializers.py:302 msgid "Quantity must be greater than zero" msgstr "" @@ -1092,7 +1092,7 @@ msgstr "" #: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159 #: stock/serializers.py:311 templates/js/translated/order.js:1258 -#: templates/js/translated/stock.js:267 templates/js/translated/stock.js:455 +#: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459 msgid "Serial Numbers" msgstr "" @@ -1118,16 +1118,16 @@ msgstr "" #: build/serializers.py:366 order/serializers.py:428 order/serializers.py:532 #: stock/serializers.py:322 stock/serializers.py:453 stock/serializers.py:534 -#: stock/serializers.py:915 stock/serializers.py:1148 +#: stock/serializers.py:917 stock/serializers.py:1150 #: stock/templates/stock/item_base.html:390 #: templates/js/translated/barcode.js:436 #: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753 #: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285 #: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305 #: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394 -#: templates/js/translated/part.js:181 templates/js/translated/stock.js:584 -#: templates/js/translated/stock.js:749 templates/js/translated/stock.js:956 -#: templates/js/translated/stock.js:1850 templates/js/translated/stock.js:2509 +#: templates/js/translated/part.js:181 templates/js/translated/stock.js:588 +#: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960 +#: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518 msgid "Location" msgstr "" @@ -1140,8 +1140,8 @@ msgstr "" #: order/serializers.py:465 stock/templates/stock/item_base.html:423 #: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505 #: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724 -#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1825 -#: templates/js/translated/stock.js:2586 templates/js/translated/stock.js:2718 +#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829 +#: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727 msgid "Status" msgstr "" @@ -1217,8 +1217,8 @@ msgstr "" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:577 build/serializers.py:622 part/models.py:2719 -#: part/models.py:2853 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726 +#: part/models.py:2860 msgid "BOM Item" msgstr "" @@ -1234,7 +1234,7 @@ msgstr "" msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:651 stock/serializers.py:767 +#: build/serializers.py:651 stock/serializers.py:769 msgid "Item must be in stock" msgstr "" @@ -1372,7 +1372,7 @@ msgstr "" #: report/templates/report/inventree_build_order_base.html:125 #: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741 #: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552 -#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1038 +#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042 msgid "Target Date" msgstr "" @@ -1450,8 +1450,8 @@ msgstr "" #: stock/templates/stock/item_base.html:170 #: templates/js/translated/build.js:1182 #: templates/js/translated/model_renderers.js:124 -#: templates/js/translated/stock.js:1022 templates/js/translated/stock.js:1839 -#: templates/js/translated/stock.js:2725 +#: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843 +#: templates/js/translated/stock.js:2734 #: templates/js/translated/table_filters.js:159 #: templates/js/translated/table_filters.js:250 msgid "Batch" @@ -1511,7 +1511,7 @@ msgstr "" #: build/templates/build/detail.html:187 #: company/templates/company/detail.html:37 #: company/templates/company/detail.html:85 -#: part/templates/part/category.html:177 templates/js/translated/order.js:977 +#: part/templates/part/category.html:183 templates/js/translated/order.js:977 msgid "Order Parts" msgstr "" @@ -1564,12 +1564,12 @@ msgid "Delete outputs" msgstr "" #: build/templates/build/detail.html:267 -#: stock/templates/stock/location.html:197 templates/stock_table.html:27 +#: stock/templates/stock/location.html:202 templates/stock_table.html:27 msgid "Printing Actions" msgstr "" #: build/templates/build/detail.html:271 build/templates/build/detail.html:272 -#: stock/templates/stock/location.html:201 templates/stock_table.html:31 +#: stock/templates/stock/location.html:206 templates/stock_table.html:31 msgid "Print labels" msgstr "" @@ -1846,7 +1846,7 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:951 part/models.py:2412 report/models.py:158 +#: common/models.py:951 part/models.py:2419 report/models.py:158 #: templates/js/translated/table_filters.js:38 #: templates/js/translated/table_filters.js:484 msgid "Template" @@ -1856,7 +1856,7 @@ msgstr "" msgid "Parts are templates by default" msgstr "" -#: common/models.py:958 part/models.py:887 templates/js/translated/bom.js:1448 +#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448 #: templates/js/translated/table_filters.js:176 #: templates/js/translated/table_filters.js:447 msgid "Assembly" @@ -1866,7 +1866,7 @@ msgstr "" msgid "Parts can be assembled from other components by default" msgstr "" -#: common/models.py:965 part/models.py:893 +#: common/models.py:965 part/models.py:900 #: templates/js/translated/table_filters.js:455 msgid "Component" msgstr "" @@ -1875,7 +1875,7 @@ msgstr "" msgid "Parts can be used as sub-components by default" msgstr "" -#: common/models.py:972 part/models.py:904 +#: common/models.py:972 part/models.py:911 msgid "Purchaseable" msgstr "" @@ -1883,7 +1883,7 @@ msgstr "" msgid "Parts are purchaseable by default" msgstr "" -#: common/models.py:979 part/models.py:909 +#: common/models.py:979 part/models.py:916 #: templates/js/translated/table_filters.js:476 msgid "Salable" msgstr "" @@ -1892,7 +1892,7 @@ msgstr "" msgid "Parts are salable by default" msgstr "" -#: common/models.py:986 part/models.py:899 +#: common/models.py:986 part/models.py:906 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:108 #: templates/js/translated/table_filters.js:488 @@ -1903,7 +1903,7 @@ msgstr "" msgid "Parts are trackable by default" msgstr "" -#: common/models.py:993 part/models.py:919 +#: common/models.py:993 part/models.py:926 #: part/templates/part/part_base.html:151 #: templates/js/translated/table_filters.js:42 #: templates/js/translated/table_filters.js:492 @@ -1987,608 +1987,632 @@ msgid "Format to display the part name" msgstr "" #: common/models.py:1074 -msgid "Enable label printing" +msgid "Part Category Default Icon" msgstr "" #: common/models.py:1075 -msgid "Enable label printing from the web interface" +msgid "Part category default icon (empty means no icon)" +msgstr "" + +#: common/models.py:1080 +msgid "Enable label printing" msgstr "" #: common/models.py:1081 +msgid "Enable label printing from the web interface" +msgstr "" + +#: common/models.py:1087 msgid "Label Image DPI" msgstr "" -#: common/models.py:1082 +#: common/models.py:1088 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/models.py:1091 +#: common/models.py:1097 msgid "Enable Reports" msgstr "" -#: common/models.py:1092 +#: common/models.py:1098 msgid "Enable generation of reports" msgstr "" -#: common/models.py:1098 templates/stats.html:25 +#: common/models.py:1104 templates/stats.html:25 msgid "Debug Mode" msgstr "" -#: common/models.py:1099 +#: common/models.py:1105 msgid "Generate reports in debug mode (HTML output)" msgstr "" -#: common/models.py:1105 +#: common/models.py:1111 msgid "Page Size" msgstr "" -#: common/models.py:1106 +#: common/models.py:1112 msgid "Default page size for PDF reports" msgstr "" -#: common/models.py:1116 +#: common/models.py:1122 msgid "Enable Test Reports" msgstr "" -#: common/models.py:1117 +#: common/models.py:1123 msgid "Enable generation of test reports" msgstr "" -#: common/models.py:1123 +#: common/models.py:1129 msgid "Attach Test Reports" msgstr "" -#: common/models.py:1124 +#: common/models.py:1130 msgid "When printing a Test Report, attach a copy of the Test Report to the associated Stock Item" msgstr "" -#: common/models.py:1130 +#: common/models.py:1136 msgid "Batch Code Template" msgstr "" -#: common/models.py:1131 +#: common/models.py:1137 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/models.py:1136 +#: common/models.py:1142 msgid "Stock Expiry" msgstr "" -#: common/models.py:1137 +#: common/models.py:1143 msgid "Enable stock expiry functionality" msgstr "" -#: common/models.py:1143 +#: common/models.py:1149 msgid "Sell Expired Stock" msgstr "" -#: common/models.py:1144 +#: common/models.py:1150 msgid "Allow sale of expired stock" msgstr "" -#: common/models.py:1150 +#: common/models.py:1156 msgid "Stock Stale Time" msgstr "" -#: common/models.py:1151 +#: common/models.py:1157 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/models.py:1153 +#: common/models.py:1159 msgid "days" msgstr "" -#: common/models.py:1158 +#: common/models.py:1164 msgid "Build Expired Stock" msgstr "" -#: common/models.py:1159 +#: common/models.py:1165 msgid "Allow building with expired stock" msgstr "" -#: common/models.py:1165 +#: common/models.py:1171 msgid "Stock Ownership Control" msgstr "" -#: common/models.py:1166 +#: common/models.py:1172 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/models.py:1172 -msgid "Build Order Reference Pattern" -msgstr "" - -#: common/models.py:1173 -msgid "Required pattern for generating Build Order reference field" +#: common/models.py:1178 +msgid "Stock Location Default Icon" msgstr "" #: common/models.py:1179 +msgid "Stock location default icon (empty means no icon)" +msgstr "" + +#: common/models.py:1184 +msgid "Build Order Reference Pattern" +msgstr "" + +#: common/models.py:1185 +msgid "Required pattern for generating Build Order reference field" +msgstr "" + +#: common/models.py:1191 msgid "Sales Order Reference Pattern" msgstr "" -#: common/models.py:1180 +#: common/models.py:1192 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/models.py:1186 +#: common/models.py:1198 msgid "Sales Order Default Shipment" msgstr "" -#: common/models.py:1187 +#: common/models.py:1199 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/models.py:1193 +#: common/models.py:1205 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/models.py:1194 +#: common/models.py:1206 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/models.py:1201 +#: common/models.py:1213 msgid "Enable password forgot" msgstr "" -#: common/models.py:1202 +#: common/models.py:1214 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/models.py:1208 +#: common/models.py:1220 msgid "Enable registration" msgstr "" -#: common/models.py:1209 +#: common/models.py:1221 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/models.py:1215 +#: common/models.py:1227 msgid "Enable SSO" msgstr "" -#: common/models.py:1216 +#: common/models.py:1228 msgid "Enable SSO on the login pages" msgstr "" -#: common/models.py:1222 +#: common/models.py:1234 msgid "Email required" msgstr "" -#: common/models.py:1223 +#: common/models.py:1235 msgid "Require user to supply mail on signup" msgstr "" -#: common/models.py:1229 +#: common/models.py:1241 msgid "Auto-fill SSO users" msgstr "" -#: common/models.py:1230 +#: common/models.py:1242 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/models.py:1236 +#: common/models.py:1248 msgid "Mail twice" msgstr "" -#: common/models.py:1237 +#: common/models.py:1249 msgid "On signup ask users twice for their mail" msgstr "" -#: common/models.py:1243 +#: common/models.py:1255 msgid "Password twice" msgstr "" -#: common/models.py:1244 +#: common/models.py:1256 msgid "On signup ask users twice for their password" msgstr "" -#: common/models.py:1250 +#: common/models.py:1262 msgid "Group on signup" msgstr "" -#: common/models.py:1251 +#: common/models.py:1263 msgid "Group to which new users are assigned on registration" msgstr "" -#: common/models.py:1257 +#: common/models.py:1269 msgid "Enforce MFA" msgstr "" -#: common/models.py:1258 +#: common/models.py:1270 msgid "Users must use multifactor security." msgstr "" -#: common/models.py:1264 +#: common/models.py:1276 msgid "Check plugins on startup" msgstr "" -#: common/models.py:1265 +#: common/models.py:1277 msgid "Check that all plugins are installed on startup - enable in container enviroments" msgstr "" -#: common/models.py:1273 +#: common/models.py:1284 +msgid "Check plugin signatures" +msgstr "" + +#: common/models.py:1285 +msgid "Check and show signatures for plugins" +msgstr "" + +#: common/models.py:1292 msgid "Enable URL integration" msgstr "" -#: common/models.py:1274 +#: common/models.py:1293 msgid "Enable plugins to add URL routes" msgstr "" -#: common/models.py:1281 +#: common/models.py:1300 msgid "Enable navigation integration" msgstr "" -#: common/models.py:1282 +#: common/models.py:1301 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/models.py:1289 +#: common/models.py:1308 msgid "Enable app integration" msgstr "" -#: common/models.py:1290 +#: common/models.py:1309 msgid "Enable plugins to add apps" msgstr "" -#: common/models.py:1297 +#: common/models.py:1316 msgid "Enable schedule integration" msgstr "" -#: common/models.py:1298 +#: common/models.py:1317 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/models.py:1305 +#: common/models.py:1324 msgid "Enable event integration" msgstr "" -#: common/models.py:1306 +#: common/models.py:1325 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:1323 common/models.py:1639 +#: common/models.py:1342 common/models.py:1658 msgid "Settings key (must be unique - case insensitive" msgstr "" -#: common/models.py:1345 +#: common/models.py:1364 msgid "Show subscribed parts" msgstr "" -#: common/models.py:1346 +#: common/models.py:1365 msgid "Show subscribed parts on the homepage" msgstr "" -#: common/models.py:1352 +#: common/models.py:1371 msgid "Show subscribed categories" msgstr "" -#: common/models.py:1353 +#: common/models.py:1372 msgid "Show subscribed part categories on the homepage" msgstr "" -#: common/models.py:1359 +#: common/models.py:1378 msgid "Show latest parts" msgstr "" -#: common/models.py:1360 +#: common/models.py:1379 msgid "Show latest parts on the homepage" msgstr "" -#: common/models.py:1366 +#: common/models.py:1385 msgid "Recent Part Count" msgstr "" -#: common/models.py:1367 +#: common/models.py:1386 msgid "Number of recent parts to display on index page" msgstr "" -#: common/models.py:1373 +#: common/models.py:1392 msgid "Show unvalidated BOMs" msgstr "" -#: common/models.py:1374 +#: common/models.py:1393 msgid "Show BOMs that await validation on the homepage" msgstr "" -#: common/models.py:1380 +#: common/models.py:1399 msgid "Show recent stock changes" msgstr "" -#: common/models.py:1381 +#: common/models.py:1400 msgid "Show recently changed stock items on the homepage" msgstr "" -#: common/models.py:1387 +#: common/models.py:1406 msgid "Recent Stock Count" msgstr "" -#: common/models.py:1388 +#: common/models.py:1407 msgid "Number of recent stock items to display on index page" msgstr "" -#: common/models.py:1394 +#: common/models.py:1413 msgid "Show low stock" msgstr "" -#: common/models.py:1395 +#: common/models.py:1414 msgid "Show low stock items on the homepage" msgstr "" -#: common/models.py:1401 +#: common/models.py:1420 msgid "Show depleted stock" msgstr "" -#: common/models.py:1402 +#: common/models.py:1421 msgid "Show depleted stock items on the homepage" msgstr "" -#: common/models.py:1408 +#: common/models.py:1427 msgid "Show needed stock" msgstr "" -#: common/models.py:1409 +#: common/models.py:1428 msgid "Show stock items needed for builds on the homepage" msgstr "" -#: common/models.py:1415 +#: common/models.py:1434 msgid "Show expired stock" msgstr "" -#: common/models.py:1416 +#: common/models.py:1435 msgid "Show expired stock items on the homepage" msgstr "" -#: common/models.py:1422 +#: common/models.py:1441 msgid "Show stale stock" msgstr "" -#: common/models.py:1423 +#: common/models.py:1442 msgid "Show stale stock items on the homepage" msgstr "" -#: common/models.py:1429 +#: common/models.py:1448 msgid "Show pending builds" msgstr "" -#: common/models.py:1430 +#: common/models.py:1449 msgid "Show pending builds on the homepage" msgstr "" -#: common/models.py:1436 +#: common/models.py:1455 msgid "Show overdue builds" msgstr "" -#: common/models.py:1437 +#: common/models.py:1456 msgid "Show overdue builds on the homepage" msgstr "" -#: common/models.py:1443 +#: common/models.py:1462 msgid "Show outstanding POs" msgstr "" -#: common/models.py:1444 +#: common/models.py:1463 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:1450 +#: common/models.py:1469 msgid "Show overdue POs" msgstr "" -#: common/models.py:1451 +#: common/models.py:1470 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:1457 +#: common/models.py:1476 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:1458 +#: common/models.py:1477 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:1464 +#: common/models.py:1483 msgid "Show overdue SOs" msgstr "" -#: common/models.py:1465 +#: common/models.py:1484 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:1471 +#: common/models.py:1490 msgid "Inline label display" msgstr "" -#: common/models.py:1472 +#: common/models.py:1491 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1478 +#: common/models.py:1497 msgid "Inline report display" msgstr "" -#: common/models.py:1479 +#: common/models.py:1498 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1485 +#: common/models.py:1504 msgid "Search Parts" msgstr "" -#: common/models.py:1486 +#: common/models.py:1505 msgid "Display parts in search preview window" msgstr "" -#: common/models.py:1492 +#: common/models.py:1511 msgid "Seach Supplier Parts" msgstr "" -#: common/models.py:1493 +#: common/models.py:1512 msgid "Display supplier parts in search preview window" msgstr "" -#: common/models.py:1499 +#: common/models.py:1518 msgid "Search Manufacturer Parts" msgstr "" -#: common/models.py:1500 +#: common/models.py:1519 msgid "Display manufacturer parts in search preview window" msgstr "" -#: common/models.py:1506 +#: common/models.py:1525 msgid "Hide Inactive Parts" msgstr "" -#: common/models.py:1507 +#: common/models.py:1526 msgid "Excluded inactive parts from search preview window" msgstr "" -#: common/models.py:1513 +#: common/models.py:1532 msgid "Search Categories" msgstr "" -#: common/models.py:1514 +#: common/models.py:1533 msgid "Display part categories in search preview window" msgstr "" -#: common/models.py:1520 +#: common/models.py:1539 msgid "Search Stock" msgstr "" -#: common/models.py:1521 +#: common/models.py:1540 msgid "Display stock items in search preview window" msgstr "" -#: common/models.py:1527 +#: common/models.py:1546 msgid "Hide Unavailable Stock Items" msgstr "" -#: common/models.py:1528 +#: common/models.py:1547 msgid "Exclude stock items which are not available from the search preview window" msgstr "" -#: common/models.py:1534 +#: common/models.py:1553 msgid "Search Locations" msgstr "" -#: common/models.py:1535 +#: common/models.py:1554 msgid "Display stock locations in search preview window" msgstr "" -#: common/models.py:1541 +#: common/models.py:1560 msgid "Search Companies" msgstr "" -#: common/models.py:1542 +#: common/models.py:1561 msgid "Display companies in search preview window" msgstr "" -#: common/models.py:1548 +#: common/models.py:1567 msgid "Search Purchase Orders" msgstr "" -#: common/models.py:1549 +#: common/models.py:1568 msgid "Display purchase orders in search preview window" msgstr "" -#: common/models.py:1555 +#: common/models.py:1574 msgid "Exclude Inactive Purchase Orders" msgstr "" -#: common/models.py:1556 +#: common/models.py:1575 msgid "Exclude inactive purchase orders from search preview window" msgstr "" -#: common/models.py:1562 +#: common/models.py:1581 msgid "Search Sales Orders" msgstr "" -#: common/models.py:1563 +#: common/models.py:1582 msgid "Display sales orders in search preview window" msgstr "" -#: common/models.py:1569 +#: common/models.py:1588 msgid "Exclude Inactive Sales Orders" msgstr "" -#: common/models.py:1570 +#: common/models.py:1589 msgid "Exclude inactive sales orders from search preview window" msgstr "" -#: common/models.py:1576 +#: common/models.py:1595 msgid "Search Preview Results" msgstr "" -#: common/models.py:1577 +#: common/models.py:1596 msgid "Number of results to show in each section of the search preview window" msgstr "" -#: common/models.py:1583 +#: common/models.py:1602 msgid "Show Quantity in Forms" msgstr "" -#: common/models.py:1584 +#: common/models.py:1603 msgid "Display available part quantity in some forms" msgstr "" -#: common/models.py:1590 +#: common/models.py:1609 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:1591 +#: common/models.py:1610 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:1597 +#: common/models.py:1616 msgid "Fixed Navbar" msgstr "" -#: common/models.py:1598 +#: common/models.py:1617 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:1604 +#: common/models.py:1623 msgid "Date Format" msgstr "" -#: common/models.py:1605 +#: common/models.py:1624 msgid "Preferred format for displaying dates" msgstr "" -#: common/models.py:1619 part/templates/part/detail.html:41 +#: common/models.py:1638 part/templates/part/detail.html:41 msgid "Part Scheduling" msgstr "" -#: common/models.py:1620 +#: common/models.py:1639 msgid "Display part scheduling information" msgstr "" -#: common/models.py:1679 +#: common/models.py:1698 msgid "Price break quantity" msgstr "" -#: common/models.py:1686 company/serializers.py:366 +#: common/models.py:1705 company/serializers.py:366 #: company/templates/company/supplier_part.html:284 order/models.py:938 -#: templates/js/translated/part.js:1065 templates/js/translated/part.js:2152 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2157 msgid "Price" msgstr "" -#: common/models.py:1687 +#: common/models.py:1706 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:1847 common/models.py:2025 +#: common/models.py:1866 common/models.py:2044 msgid "Endpoint" msgstr "" -#: common/models.py:1848 +#: common/models.py:1867 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:1857 +#: common/models.py:1876 msgid "Name for this webhook" msgstr "" -#: common/models.py:1862 part/models.py:914 plugin/models.py:99 +#: common/models.py:1881 part/models.py:921 plugin/models.py:100 #: templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:104 #: templates/js/translated/table_filters.js:316 @@ -2596,67 +2620,67 @@ msgstr "" msgid "Active" msgstr "" -#: common/models.py:1863 +#: common/models.py:1882 msgid "Is this webhook active" msgstr "" -#: common/models.py:1877 +#: common/models.py:1896 msgid "Token" msgstr "" -#: common/models.py:1878 +#: common/models.py:1897 msgid "Token for access" msgstr "" -#: common/models.py:1885 +#: common/models.py:1904 msgid "Secret" msgstr "" -#: common/models.py:1886 +#: common/models.py:1905 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:1992 +#: common/models.py:2011 msgid "Message ID" msgstr "" -#: common/models.py:1993 +#: common/models.py:2012 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2001 +#: common/models.py:2020 msgid "Host" msgstr "" -#: common/models.py:2002 +#: common/models.py:2021 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2009 +#: common/models.py:2028 msgid "Header" msgstr "" -#: common/models.py:2010 +#: common/models.py:2029 msgid "Header of this message" msgstr "" -#: common/models.py:2016 +#: common/models.py:2035 msgid "Body" msgstr "" -#: common/models.py:2017 +#: common/models.py:2036 msgid "Body of this message" msgstr "" -#: common/models.py:2026 +#: common/models.py:2045 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2031 +#: common/models.py:2050 msgid "Worked on" msgstr "" -#: common/models.py:2032 +#: common/models.py:2051 msgid "Was the work on this message finished?" msgstr "" @@ -2763,7 +2787,7 @@ msgstr "" msgid "Link to external company information" msgstr "" -#: company/models.py:135 part/models.py:808 +#: company/models.py:135 part/models.py:815 msgid "Image" msgstr "" @@ -2796,8 +2820,8 @@ msgid "Does this company manufacture parts?" msgstr "" #: company/models.py:148 company/serializers.py:372 -#: company/templates/company/company_base.html:106 part/serializers.py:151 -#: part/serializers.py:182 stock/serializers.py:180 +#: company/templates/company/company_base.html:106 part/serializers.py:153 +#: part/serializers.py:184 stock/serializers.py:180 msgid "Currency" msgstr "" @@ -2805,7 +2829,7 @@ msgstr "" msgid "Default currency used for this company" msgstr "" -#: company/models.py:248 company/models.py:481 stock/models.py:591 +#: company/models.py:248 company/models.py:481 stock/models.py:598 #: stock/serializers.py:87 stock/templates/stock/item_base.html:148 #: templates/js/translated/bom.js:543 msgid "Base Part" @@ -2837,7 +2861,7 @@ msgstr "" #: templates/js/translated/company.js:497 #: templates/js/translated/company.js:649 #: templates/js/translated/company.js:937 templates/js/translated/order.js:1971 -#: templates/js/translated/part.js:247 templates/js/translated/part.js:1023 +#: templates/js/translated/part.js:247 templates/js/translated/part.js:1027 msgid "MPN" msgstr "" @@ -2866,9 +2890,9 @@ msgstr "" #: company/models.py:365 #: report/templates/report/inventree_test_report_base.html:95 -#: stock/models.py:2088 templates/js/translated/company.js:546 -#: templates/js/translated/company.js:764 templates/js/translated/part.js:845 -#: templates/js/translated/stock.js:1356 +#: stock/models.py:2095 templates/js/translated/company.js:546 +#: templates/js/translated/company.js:764 templates/js/translated/part.js:849 +#: templates/js/translated/stock.js:1360 msgid "Value" msgstr "" @@ -2876,10 +2900,10 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:372 part/models.py:881 part/models.py:2379 +#: company/models.py:372 part/models.py:888 part/models.py:2386 #: part/templates/part/part_base.html:280 #: templates/InvenTree/settings/settings.html:352 -#: templates/js/translated/company.js:770 templates/js/translated/part.js:851 +#: templates/js/translated/company.js:770 templates/js/translated/part.js:855 msgid "Units" msgstr "" @@ -2899,7 +2923,7 @@ msgstr "" #: templates/js/translated/company.js:268 #: templates/js/translated/company.js:401 #: templates/js/translated/company.js:893 templates/js/translated/order.js:1707 -#: templates/js/translated/part.js:217 templates/js/translated/part.js:991 +#: templates/js/translated/part.js:217 templates/js/translated/part.js:995 #: templates/js/translated/table_filters.js:423 msgid "Supplier" msgstr "" @@ -2911,7 +2935,7 @@ msgstr "" #: company/models.py:497 company/templates/company/supplier_part.html:118 #: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267 #: templates/js/translated/order.js:1958 templates/js/translated/part.js:228 -#: templates/js/translated/part.js:1009 +#: templates/js/translated/part.js:1013 msgid "SKU" msgstr "" @@ -2932,23 +2956,23 @@ msgid "Supplier part description" msgstr "" #: company/models.py:522 company/templates/company/supplier_part.html:146 -#: part/models.py:2613 part/templates/part/upload_bom.html:59 +#: part/models.py:2620 part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401 msgid "Note" msgstr "" -#: company/models.py:526 part/models.py:1735 +#: company/models.py:526 part/models.py:1742 msgid "base cost" msgstr "" -#: company/models.py:526 part/models.py:1735 +#: company/models.py:526 part/models.py:1742 msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:528 company/templates/company/supplier_part.html:139 -#: stock/models.py:617 stock/templates/stock/item_base.html:245 -#: templates/js/translated/company.js:969 templates/js/translated/stock.js:1972 +#: stock/models.py:624 stock/templates/stock/item_base.html:245 +#: templates/js/translated/company.js:969 templates/js/translated/stock.js:1976 msgid "Packaging" msgstr "" @@ -2956,7 +2980,7 @@ msgstr "" msgid "Part packaging" msgstr "" -#: company/models.py:530 part/models.py:1737 +#: company/models.py:530 part/models.py:1744 msgid "multiple" msgstr "" @@ -2969,7 +2993,7 @@ msgstr "" #: templates/email/low_stock_notification.html:18 #: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789 #: templates/js/translated/build.js:2645 templates/js/translated/company.js:979 -#: templates/js/translated/part.js:596 templates/js/translated/part.js:599 +#: templates/js/translated/part.js:600 templates/js/translated/part.js:603 #: templates/js/translated/table_filters.js:186 msgid "Available" msgstr "" @@ -3042,12 +3066,12 @@ msgid "Download image from URL" msgstr "" #: company/templates/company/company_base.html:86 order/models.py:637 -#: order/templates/order/sales_order_base.html:116 stock/models.py:636 -#: stock/models.py:637 stock/serializers.py:809 +#: order/templates/order/sales_order_base.html:116 stock/models.py:643 +#: stock/models.py:644 stock/serializers.py:811 #: stock/templates/stock/item_base.html:401 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:393 templates/js/translated/order.js:2513 -#: templates/js/translated/stock.js:2550 +#: templates/js/translated/stock.js:2559 #: templates/js/translated/table_filters.js:427 msgid "Customer" msgstr "" @@ -3088,7 +3112,7 @@ msgstr "" #: company/templates/company/detail.html:36 #: company/templates/company/detail.html:84 -#: part/templates/part/category.html:176 +#: part/templates/part/category.html:182 msgid "Order parts" msgstr "" @@ -3236,7 +3260,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:170 #: part/templates/part/detail.html:186 #: templates/InvenTree/settings/category.html:12 -#: templates/InvenTree/settings/part.html:66 +#: templates/InvenTree/settings/part.html:68 msgid "New Parameter" msgstr "" @@ -3266,10 +3290,10 @@ msgid "Assigned Stock Items" msgstr "" #: company/templates/company/supplier_part.html:7 -#: company/templates/company/supplier_part.html:24 stock/models.py:600 +#: company/templates/company/supplier_part.html:24 stock/models.py:607 #: stock/templates/stock/item_base.html:238 #: templates/js/translated/company.js:909 templates/js/translated/order.js:935 -#: templates/js/translated/stock.js:1929 +#: templates/js/translated/stock.js:1933 msgid "Supplier Part" msgstr "" @@ -3313,13 +3337,13 @@ msgid "Supplier Part Stock" msgstr "" #: company/templates/company/supplier_part.html:168 -#: part/templates/part/detail.html:24 stock/templates/stock/location.html:176 +#: part/templates/part/detail.html:24 stock/templates/stock/location.html:181 msgid "Create new stock item" msgstr "" #: company/templates/company/supplier_part.html:169 -#: part/templates/part/detail.html:25 stock/templates/stock/location.html:177 -#: templates/js/translated/stock.js:431 +#: part/templates/part/detail.html:25 stock/templates/stock/location.html:182 +#: templates/js/translated/stock.js:435 msgid "New Stock Item" msgstr "" @@ -3335,7 +3359,7 @@ msgstr "" #: company/templates/company/supplier_part.html:212 #: company/templates/company/supplier_part.html:326 -#: part/templates/part/prices.html:276 templates/js/translated/part.js:2224 +#: part/templates/part/prices.html:276 templates/js/translated/part.js:2229 msgid "Add Price Break" msgstr "" @@ -3344,12 +3368,12 @@ msgid "No price break information found" msgstr "" #: company/templates/company/supplier_part.html:252 -#: templates/js/translated/part.js:2234 +#: templates/js/translated/part.js:2239 msgid "Delete Price Break" msgstr "" #: company/templates/company/supplier_part.html:266 -#: templates/js/translated/part.js:2248 +#: templates/js/translated/part.js:2253 msgid "Edit Price Break" msgstr "" @@ -3371,13 +3395,13 @@ msgstr "" #: company/templates/company/supplier_part_navbar.html:15 #: part/templates/part/part_sidebar.html:14 -#: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:19 +#: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:24 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:151 #: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/bom.js:555 templates/js/translated/part.js:747 -#: templates/js/translated/part.js:1295 templates/js/translated/part.js:1456 -#: templates/js/translated/stock.js:955 templates/js/translated/stock.js:1750 +#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751 +#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460 +#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754 #: templates/navbar.html:31 msgid "Stock" msgstr "" @@ -3397,14 +3421,14 @@ msgid "Pricing" msgstr "" #: company/templates/company/supplier_part_sidebar.html:5 -#: part/templates/part/category.html:197 +#: part/templates/part/category.html:203 #: part/templates/part/category_sidebar.html:17 -#: stock/templates/stock/location.html:147 -#: stock/templates/stock/location.html:161 -#: stock/templates/stock/location.html:173 +#: stock/templates/stock/location.html:152 +#: stock/templates/stock/location.html:166 +#: stock/templates/stock/location.html:178 #: stock/templates/stock/location_sidebar.html:7 #: templates/InvenTree/search.html:153 templates/js/translated/search.js:223 -#: templates/js/translated/stock.js:2427 users/models.py:40 +#: templates/js/translated/stock.js:2436 users/models.py:40 msgid "Stock Items" msgstr "" @@ -3661,8 +3685,8 @@ msgstr "" #: stock/templates/stock/item_base.html:184 #: templates/email/overdue_purchase_order.html:15 #: templates/js/translated/order.js:936 templates/js/translated/order.js:1691 -#: templates/js/translated/part.js:968 templates/js/translated/stock.js:1909 -#: templates/js/translated/stock.js:2531 +#: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913 +#: templates/js/translated/stock.js:2540 msgid "Purchase Order" msgstr "" @@ -3672,7 +3696,7 @@ msgstr "" #: order/models.py:1009 order/templates/order/order_base.html:169 #: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073 -#: templates/js/translated/part.js:1060 templates/js/translated/part.js:1087 +#: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091 #: templates/js/translated/table_filters.js:338 msgid "Received" msgstr "" @@ -3681,9 +3705,9 @@ msgstr "" msgid "Number of items received" msgstr "" -#: order/models.py:1017 part/templates/part/prices.html:181 stock/models.py:727 +#: order/models.py:1017 part/templates/part/prices.html:181 stock/models.py:734 #: stock/serializers.py:171 stock/templates/stock/item_base.html:191 -#: templates/js/translated/stock.js:1960 +#: templates/js/translated/stock.js:1964 msgid "Purchase Price" msgstr "" @@ -4071,8 +4095,8 @@ msgstr "" #: templates/js/translated/bom.js:77 templates/js/translated/build.js:431 #: templates/js/translated/build.js:583 templates/js/translated/build.js:1974 #: templates/js/translated/order.js:884 templates/js/translated/order.js:1337 -#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:621 -#: templates/js/translated/stock.js:789 +#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625 +#: templates/js/translated/stock.js:793 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "" @@ -4266,8 +4290,8 @@ msgstr "" msgid "This field is required" msgstr "" -#: part/bom.py:127 part/models.py:98 part/models.py:817 -#: part/templates/part/category.html:108 part/templates/part/part_base.html:330 +#: part/bom.py:127 part/models.py:98 part/models.py:824 +#: part/templates/part/category.html:114 part/templates/part/part_base.html:330 msgid "Default Location" msgstr "" @@ -4281,9 +4305,9 @@ msgid "Available Stock" msgstr "" #: part/bom.py:130 part/templates/part/part_base.html:207 -#: templates/js/translated/bom.js:947 templates/js/translated/part.js:586 -#: templates/js/translated/part.js:606 templates/js/translated/part.js:1298 -#: templates/js/translated/part.js:1470 templates/js/translated/part.js:1486 +#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590 +#: templates/js/translated/part.js:610 templates/js/translated/part.js:1302 +#: templates/js/translated/part.js:1483 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "" @@ -4304,516 +4328,524 @@ msgstr "" msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:115 part/models.py:2455 part/templates/part/category.html:15 +#: part/models.py:107 stock/models.py:84 +msgid "Icon" +msgstr "" + +#: part/models.py:108 stock/models.py:85 +msgid "Icon (optional)" +msgstr "" + +#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" -#: part/models.py:116 part/templates/part/category.html:128 +#: part/models.py:123 part/templates/part/category.html:134 #: templates/InvenTree/search.html:95 templates/js/translated/search.js:198 #: users/models.py:37 msgid "Part Categories" msgstr "" -#: part/models.py:337 part/templates/part/cat_link.html:3 -#: part/templates/part/category.html:17 part/templates/part/category.html:133 -#: part/templates/part/category.html:153 +#: part/models.py:344 part/templates/part/cat_link.html:3 +#: part/templates/part/category.html:23 part/templates/part/category.html:139 +#: part/templates/part/category.html:159 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82 #: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:1946 templates/js/translated/search.js:144 +#: templates/js/translated/part.js:1951 templates/js/translated/search.js:144 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "" -#: part/models.py:422 +#: part/models.py:429 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:492 part/models.py:504 +#: part/models.py:499 part/models.py:511 #, python-brace-format msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)" msgstr "" -#: part/models.py:621 +#: part/models.py:628 msgid "Next available serial numbers are" msgstr "" -#: part/models.py:625 +#: part/models.py:632 msgid "Next available serial number is" msgstr "" -#: part/models.py:630 +#: part/models.py:637 msgid "Most recent serial number is" msgstr "" -#: part/models.py:711 +#: part/models.py:718 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:738 part/models.py:2509 +#: part/models.py:745 part/models.py:2516 msgid "Part name" msgstr "" -#: part/models.py:745 +#: part/models.py:752 msgid "Is Template" msgstr "" -#: part/models.py:746 +#: part/models.py:753 msgid "Is this part a template part?" msgstr "" -#: part/models.py:756 +#: part/models.py:763 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:757 +#: part/models.py:764 msgid "Variant Of" msgstr "" -#: part/models.py:763 +#: part/models.py:770 msgid "Part description" msgstr "" -#: part/models.py:768 part/templates/part/category.html:86 +#: part/models.py:775 part/templates/part/category.html:92 #: part/templates/part/part_base.html:294 msgid "Keywords" msgstr "" -#: part/models.py:769 +#: part/models.py:776 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:776 part/models.py:2211 part/models.py:2454 +#: part/models.py:783 part/models.py:2218 part/models.py:2461 #: part/templates/part/part_base.html:257 #: templates/InvenTree/settings/settings.html:232 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1438 templates/js/translated/part.js:1664 +#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1664 msgid "Category" msgstr "" -#: part/models.py:777 +#: part/models.py:784 msgid "Part category" msgstr "" -#: part/models.py:782 part/templates/part/part_base.html:266 -#: templates/js/translated/part.js:735 templates/js/translated/part.js:1391 -#: templates/js/translated/stock.js:1722 +#: part/models.py:789 part/templates/part/part_base.html:266 +#: templates/js/translated/part.js:739 templates/js/translated/part.js:1395 +#: templates/js/translated/stock.js:1726 msgid "IPN" msgstr "" -#: part/models.py:783 +#: part/models.py:790 msgid "Internal Part Number" msgstr "" -#: part/models.py:789 +#: part/models.py:796 msgid "Part revision or version number" msgstr "" -#: part/models.py:790 part/templates/part/part_base.html:273 -#: report/models.py:171 templates/js/translated/part.js:739 +#: part/models.py:797 part/templates/part/part_base.html:273 +#: report/models.py:171 templates/js/translated/part.js:743 msgid "Revision" msgstr "" -#: part/models.py:815 +#: part/models.py:822 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:860 part/templates/part/part_base.html:339 +#: part/models.py:867 part/templates/part/part_base.html:339 msgid "Default Supplier" msgstr "" -#: part/models.py:861 +#: part/models.py:868 msgid "Default supplier part" msgstr "" -#: part/models.py:868 +#: part/models.py:875 msgid "Default Expiry" msgstr "" -#: part/models.py:869 +#: part/models.py:876 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:874 part/templates/part/part_base.html:200 +#: part/models.py:881 part/templates/part/part_base.html:200 msgid "Minimum Stock" msgstr "" -#: part/models.py:875 +#: part/models.py:882 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:882 +#: part/models.py:889 msgid "Stock keeping units for this part" msgstr "" -#: part/models.py:888 +#: part/models.py:895 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:894 +#: part/models.py:901 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:900 +#: part/models.py:907 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:905 +#: part/models.py:912 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:910 +#: part/models.py:917 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:915 +#: part/models.py:922 msgid "Is this part active?" msgstr "" -#: part/models.py:920 +#: part/models.py:927 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:922 +#: part/models.py:929 msgid "Part notes" msgstr "" -#: part/models.py:924 +#: part/models.py:931 msgid "BOM checksum" msgstr "" -#: part/models.py:924 +#: part/models.py:931 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:927 +#: part/models.py:934 msgid "BOM checked by" msgstr "" -#: part/models.py:929 +#: part/models.py:936 msgid "BOM checked date" msgstr "" -#: part/models.py:933 +#: part/models.py:940 msgid "Creation User" msgstr "" -#: part/models.py:1737 +#: part/models.py:1744 msgid "Sell multiple" msgstr "" -#: part/models.py:2258 +#: part/models.py:2265 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:2275 +#: part/models.py:2282 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:2295 templates/js/translated/part.js:1997 -#: templates/js/translated/stock.js:1336 +#: part/models.py:2302 templates/js/translated/part.js:2002 +#: templates/js/translated/stock.js:1340 msgid "Test Name" msgstr "" -#: part/models.py:2296 +#: part/models.py:2303 msgid "Enter a name for the test" msgstr "" -#: part/models.py:2301 +#: part/models.py:2308 msgid "Test Description" msgstr "" -#: part/models.py:2302 +#: part/models.py:2309 msgid "Enter description for this test" msgstr "" -#: part/models.py:2307 templates/js/translated/part.js:2006 +#: part/models.py:2314 templates/js/translated/part.js:2011 #: templates/js/translated/table_filters.js:302 msgid "Required" msgstr "" -#: part/models.py:2308 +#: part/models.py:2315 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:2313 templates/js/translated/part.js:2014 +#: part/models.py:2320 templates/js/translated/part.js:2019 msgid "Requires Value" msgstr "" -#: part/models.py:2314 +#: part/models.py:2321 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:2319 templates/js/translated/part.js:2021 +#: part/models.py:2326 templates/js/translated/part.js:2026 msgid "Requires Attachment" msgstr "" -#: part/models.py:2320 +#: part/models.py:2327 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:2328 +#: part/models.py:2335 #, python-brace-format msgid "Illegal character in template name ({c})" msgstr "" -#: part/models.py:2364 +#: part/models.py:2371 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:2372 +#: part/models.py:2379 msgid "Parameter Name" msgstr "" -#: part/models.py:2379 +#: part/models.py:2386 msgid "Parameter Units" msgstr "" -#: part/models.py:2410 +#: part/models.py:2417 msgid "Parent Part" msgstr "" -#: part/models.py:2412 part/models.py:2460 part/models.py:2461 +#: part/models.py:2419 part/models.py:2467 part/models.py:2468 #: templates/InvenTree/settings/settings.html:227 msgid "Parameter Template" msgstr "" -#: part/models.py:2414 +#: part/models.py:2421 msgid "Data" msgstr "" -#: part/models.py:2414 +#: part/models.py:2421 msgid "Parameter Value" msgstr "" -#: part/models.py:2465 templates/InvenTree/settings/settings.html:236 +#: part/models.py:2472 templates/InvenTree/settings/settings.html:236 msgid "Default Value" msgstr "" -#: part/models.py:2466 +#: part/models.py:2473 msgid "Default Parameter Value" msgstr "" -#: part/models.py:2501 +#: part/models.py:2508 msgid "Part ID or part name" msgstr "" -#: part/models.py:2504 templates/js/translated/model_renderers.js:212 +#: part/models.py:2511 templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "" -#: part/models.py:2505 +#: part/models.py:2512 msgid "Unique part ID value" msgstr "" -#: part/models.py:2508 +#: part/models.py:2515 msgid "Part Name" msgstr "" -#: part/models.py:2512 +#: part/models.py:2519 msgid "Part IPN" msgstr "" -#: part/models.py:2513 +#: part/models.py:2520 msgid "Part IPN value" msgstr "" -#: part/models.py:2516 +#: part/models.py:2523 msgid "Level" msgstr "" -#: part/models.py:2517 +#: part/models.py:2524 msgid "BOM level" msgstr "" -#: part/models.py:2586 +#: part/models.py:2593 msgid "Select parent part" msgstr "" -#: part/models.py:2594 +#: part/models.py:2601 msgid "Sub part" msgstr "" -#: part/models.py:2595 +#: part/models.py:2602 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:2601 +#: part/models.py:2608 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:2603 part/templates/part/upload_bom.html:58 +#: part/models.py:2610 part/templates/part/upload_bom.html:58 #: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999 #: templates/js/translated/table_filters.js:100 msgid "Optional" msgstr "" -#: part/models.py:2603 +#: part/models.py:2610 msgid "This BOM item is optional" msgstr "" -#: part/models.py:2606 part/templates/part/upload_bom.html:55 +#: part/models.py:2613 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:2607 +#: part/models.py:2614 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:2610 +#: part/models.py:2617 msgid "BOM item reference" msgstr "" -#: part/models.py:2613 +#: part/models.py:2620 msgid "BOM item notes" msgstr "" -#: part/models.py:2615 +#: part/models.py:2622 msgid "Checksum" msgstr "" -#: part/models.py:2615 +#: part/models.py:2622 msgid "BOM line checksum" msgstr "" -#: part/models.py:2619 part/templates/part/upload_bom.html:57 +#: part/models.py:2626 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1016 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:96 msgid "Inherited" msgstr "" -#: part/models.py:2620 +#: part/models.py:2627 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:2625 part/templates/part/upload_bom.html:56 +#: part/models.py:2632 part/templates/part/upload_bom.html:56 #: templates/js/translated/bom.js:1008 msgid "Allow Variants" msgstr "" -#: part/models.py:2626 +#: part/models.py:2633 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:2704 stock/models.py:461 +#: part/models.py:2711 stock/models.py:468 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:2713 part/models.py:2715 +#: part/models.py:2720 part/models.py:2722 msgid "Sub part must be specified" msgstr "" -#: part/models.py:2820 +#: part/models.py:2827 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:2841 +#: part/models.py:2848 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:2854 +#: part/models.py:2861 msgid "Parent BOM item" msgstr "" -#: part/models.py:2862 +#: part/models.py:2869 msgid "Substitute part" msgstr "" -#: part/models.py:2877 +#: part/models.py:2884 msgid "Part 1" msgstr "" -#: part/models.py:2881 +#: part/models.py:2888 msgid "Part 2" msgstr "" -#: part/models.py:2881 +#: part/models.py:2888 msgid "Select Related Part" msgstr "" -#: part/models.py:2899 +#: part/models.py:2906 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:2903 +#: part/models.py:2910 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:152 part/serializers.py:183 stock/serializers.py:181 +#: part/serializers.py:154 part/serializers.py:185 stock/serializers.py:181 msgid "Purchase currency of this stock item" msgstr "" -#: part/serializers.py:812 +#: part/serializers.py:814 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:820 +#: part/serializers.py:822 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:821 +#: part/serializers.py:823 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:826 +#: part/serializers.py:828 msgid "Include Inherited" msgstr "" -#: part/serializers.py:827 +#: part/serializers.py:829 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:832 +#: part/serializers.py:834 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:833 +#: part/serializers.py:835 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:838 +#: part/serializers.py:840 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:839 +#: part/serializers.py:841 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:879 +#: part/serializers.py:881 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:880 +#: part/serializers.py:882 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:910 +#: part/serializers.py:912 msgid "No part column specified" msgstr "" -#: part/serializers.py:953 +#: part/serializers.py:955 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:956 +#: part/serializers.py:958 msgid "No matching part found" msgstr "" -#: part/serializers.py:959 +#: part/serializers.py:961 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:968 +#: part/serializers.py:970 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:976 +#: part/serializers.py:978 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:997 +#: part/serializers.py:999 msgid "At least one BOM item is required" msgstr "" @@ -4853,101 +4885,101 @@ msgstr "" msgid "Delete Items" msgstr "" -#: part/templates/part/category.html:28 part/templates/part/category.html:32 +#: part/templates/part/category.html:34 part/templates/part/category.html:38 msgid "You are subscribed to notifications for this category" msgstr "" -#: part/templates/part/category.html:36 +#: part/templates/part/category.html:42 msgid "Subscribe to notifications for this category" msgstr "" -#: part/templates/part/category.html:42 +#: part/templates/part/category.html:48 msgid "Category Actions" msgstr "" -#: part/templates/part/category.html:47 +#: part/templates/part/category.html:53 msgid "Edit category" msgstr "" -#: part/templates/part/category.html:48 +#: part/templates/part/category.html:54 msgid "Edit Category" msgstr "" -#: part/templates/part/category.html:52 +#: part/templates/part/category.html:58 msgid "Delete category" msgstr "" -#: part/templates/part/category.html:53 +#: part/templates/part/category.html:59 msgid "Delete Category" msgstr "" -#: part/templates/part/category.html:61 +#: part/templates/part/category.html:67 msgid "Create new part category" msgstr "" -#: part/templates/part/category.html:62 +#: part/templates/part/category.html:68 msgid "New Category" msgstr "" -#: part/templates/part/category.html:80 part/templates/part/category.html:93 +#: part/templates/part/category.html:86 part/templates/part/category.html:99 msgid "Category Path" msgstr "" -#: part/templates/part/category.html:94 +#: part/templates/part/category.html:100 msgid "Top level part category" msgstr "" -#: part/templates/part/category.html:114 part/templates/part/category.html:222 +#: part/templates/part/category.html:120 part/templates/part/category.html:228 #: part/templates/part/category_sidebar.html:7 msgid "Subcategories" msgstr "" -#: part/templates/part/category.html:119 +#: part/templates/part/category.html:125 msgid "Parts (Including subcategories)" msgstr "" -#: part/templates/part/category.html:157 +#: part/templates/part/category.html:163 msgid "Create new part" msgstr "" -#: part/templates/part/category.html:158 templates/js/translated/bom.js:367 +#: part/templates/part/category.html:164 templates/js/translated/bom.js:367 msgid "New Part" msgstr "" -#: part/templates/part/category.html:168 part/templates/part/detail.html:363 +#: part/templates/part/category.html:174 part/templates/part/detail.html:363 #: part/templates/part/detail.html:394 msgid "Options" msgstr "" -#: part/templates/part/category.html:172 +#: part/templates/part/category.html:178 msgid "Set category" msgstr "" -#: part/templates/part/category.html:173 +#: part/templates/part/category.html:179 msgid "Set Category" msgstr "" -#: part/templates/part/category.html:180 part/templates/part/category.html:181 +#: part/templates/part/category.html:186 part/templates/part/category.html:187 msgid "Print Labels" msgstr "" -#: part/templates/part/category.html:206 +#: part/templates/part/category.html:212 msgid "Part Parameters" msgstr "" -#: part/templates/part/category.html:320 +#: part/templates/part/category.html:327 msgid "Create Part Category" msgstr "" -#: part/templates/part/category.html:340 +#: part/templates/part/category.html:347 msgid "Create Part" msgstr "" -#: part/templates/part/category.html:343 +#: part/templates/part/category.html:350 msgid "Create another part after this one" msgstr "" -#: part/templates/part/category.html:344 +#: part/templates/part/category.html:351 msgid "Part created successfully" msgstr "" @@ -4955,7 +4987,7 @@ msgstr "" msgid "Import Parts" msgstr "" -#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:375 +#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:379 msgid "Duplicate Part" msgstr "" @@ -5177,19 +5209,19 @@ msgstr "" #: part/templates/part/part_base.html:43 #: stock/templates/stock/item_base.html:41 -#: stock/templates/stock/location.html:43 +#: stock/templates/stock/location.html:48 msgid "Barcode actions" msgstr "" #: part/templates/part/part_base.html:46 #: stock/templates/stock/item_base.html:45 -#: stock/templates/stock/location.html:45 templates/qr_button.html:1 +#: stock/templates/stock/location.html:50 templates/qr_button.html:1 msgid "Show QR Code" msgstr "" #: part/templates/part/part_base.html:49 #: stock/templates/stock/item_base.html:63 -#: stock/templates/stock/location.html:47 +#: stock/templates/stock/location.html:52 msgid "Print Label" msgstr "" @@ -5199,7 +5231,7 @@ msgstr "" #: part/templates/part/part_base.html:60 #: stock/templates/stock/item_base.html:116 -#: stock/templates/stock/location.html:56 +#: stock/templates/stock/location.html:61 msgid "Stock actions" msgstr "" @@ -5260,7 +5292,7 @@ msgstr "" #: templates/js/translated/company.js:624 #: templates/js/translated/company.js:884 #: templates/js/translated/model_renderers.js:204 -#: templates/js/translated/part.js:650 templates/js/translated/part.js:727 +#: templates/js/translated/part.js:654 templates/js/translated/part.js:731 msgid "Inactive" msgstr "" @@ -5294,9 +5326,9 @@ msgstr "" msgid "Can Build" msgstr "" -#: part/templates/part/part_base.html:238 templates/js/translated/part.js:589 -#: templates/js/translated/part.js:609 templates/js/translated/part.js:1302 -#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490 +#: part/templates/part/part_base.html:238 templates/js/translated/part.js:593 +#: templates/js/translated/part.js:613 templates/js/translated/part.js:1306 +#: templates/js/translated/part.js:1490 msgid "Building" msgstr "" @@ -5469,8 +5501,8 @@ msgstr "" msgid "No sale pice history available for this part." msgstr "" -#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:612 -#: templates/js/translated/part.js:1290 templates/js/translated/part.js:1494 +#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616 +#: templates/js/translated/part.js:1294 msgid "No Stock" msgstr "" @@ -5635,51 +5667,55 @@ msgstr "" msgid "Allow sending of emails for event notifications" msgstr "" -#: plugin/models.py:32 +#: plugin/models.py:33 msgid "Plugin Metadata" msgstr "" -#: plugin/models.py:33 +#: plugin/models.py:34 msgid "JSON metadata field, for use by external plugins" msgstr "" -#: plugin/models.py:79 +#: plugin/models.py:80 msgid "Plugin Configuration" msgstr "" -#: plugin/models.py:80 +#: plugin/models.py:81 msgid "Plugin Configurations" msgstr "" -#: plugin/models.py:85 +#: plugin/models.py:86 msgid "Key" msgstr "" -#: plugin/models.py:86 +#: plugin/models.py:87 msgid "Key of plugin" msgstr "" -#: plugin/models.py:94 +#: plugin/models.py:95 msgid "PluginName of the plugin" msgstr "" -#: plugin/models.py:100 +#: plugin/models.py:101 msgid "Is the plugin active" msgstr "" -#: plugin/models.py:168 +#: plugin/models.py:158 +msgid "Sample plugin" +msgstr "" + +#: plugin/models.py:186 msgid "Plugin" msgstr "" -#: plugin/models.py:231 +#: plugin/models.py:249 msgid "Method" msgstr "" -#: plugin/plugin.py:228 +#: plugin/plugin.py:251 msgid "No author found" msgstr "" -#: plugin/plugin.py:240 +#: plugin/plugin.py:263 msgid "No date found" msgstr "" @@ -5857,12 +5893,12 @@ msgid "Stock Item Test Report" msgstr "" #: report/templates/report/inventree_test_report_base.html:79 -#: stock/models.py:641 stock/templates/stock/item_base.html:322 +#: stock/models.py:648 stock/templates/stock/item_base.html:322 #: templates/js/translated/build.js:424 templates/js/translated/build.js:576 #: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673 #: templates/js/translated/model_renderers.js:118 #: templates/js/translated/order.js:118 templates/js/translated/order.js:3297 -#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:486 +#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490 msgid "Serial Number" msgstr "" @@ -5871,19 +5907,19 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report_base.html:93 -#: stock/models.py:2076 +#: stock/models.py:2083 msgid "Test" msgstr "" #: report/templates/report/inventree_test_report_base.html:94 -#: stock/models.py:2082 +#: stock/models.py:2089 msgid "Result" msgstr "" #: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:51 +#: templates/InvenTree/settings/plugin.html:53 #: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2459 +#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468 msgid "Date" msgstr "" @@ -5901,8 +5937,8 @@ msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report_base.html:137 -#: templates/js/translated/stock.js:606 templates/js/translated/stock.js:776 -#: templates/js/translated/stock.js:2708 +#: templates/js/translated/stock.js:610 templates/js/translated/stock.js:780 +#: templates/js/translated/stock.js:2717 msgid "Serial" msgstr "" @@ -5918,241 +5954,241 @@ msgstr "" msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" -#: stock/models.py:82 stock/models.py:732 +#: stock/models.py:89 stock/models.py:739 #: stock/templates/stock/item_base.html:252 msgid "Owner" msgstr "" -#: stock/models.py:83 stock/models.py:733 +#: stock/models.py:90 stock/models.py:740 msgid "Select Owner" msgstr "" -#: stock/models.py:435 +#: stock/models.py:442 msgid "StockItem with this serial number already exists" msgstr "" -#: stock/models.py:467 stock/serializers.py:95 +#: stock/models.py:474 stock/serializers.py:95 msgid "Stock item cannot be created for virtual parts" msgstr "" -#: stock/models.py:484 +#: stock/models.py:491 #, python-brace-format msgid "Part type ('{pf}') must be {pe}" msgstr "" -#: stock/models.py:494 stock/models.py:503 +#: stock/models.py:501 stock/models.py:510 msgid "Quantity must be 1 for item with a serial number" msgstr "" -#: stock/models.py:495 +#: stock/models.py:502 msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:517 +#: stock/models.py:524 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:523 +#: stock/models.py:530 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:537 +#: stock/models.py:544 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:583 +#: stock/models.py:590 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:593 +#: stock/models.py:600 msgid "Base part" msgstr "" -#: stock/models.py:601 +#: stock/models.py:608 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:608 stock/templates/stock/location.html:17 +#: stock/models.py:615 stock/templates/stock/location.html:17 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" msgstr "" -#: stock/models.py:611 +#: stock/models.py:618 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:618 +#: stock/models.py:625 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:624 stock/templates/stock/item_base.html:361 +#: stock/models.py:631 stock/templates/stock/item_base.html:361 msgid "Installed In" msgstr "" -#: stock/models.py:627 +#: stock/models.py:634 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:643 +#: stock/models.py:650 msgid "Serial number for this item" msgstr "" -#: stock/models.py:657 +#: stock/models.py:664 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:662 +#: stock/models.py:669 msgid "Stock Quantity" msgstr "" -#: stock/models.py:671 +#: stock/models.py:678 msgid "Source Build" msgstr "" -#: stock/models.py:673 +#: stock/models.py:680 msgid "Build for this stock item" msgstr "" -#: stock/models.py:684 +#: stock/models.py:691 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:687 +#: stock/models.py:694 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:693 +#: stock/models.py:700 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:699 stock/templates/stock/item_base.html:429 -#: templates/js/translated/stock.js:1879 +#: stock/models.py:706 stock/templates/stock/item_base.html:429 +#: templates/js/translated/stock.js:1883 msgid "Expiry Date" msgstr "" -#: stock/models.py:700 +#: stock/models.py:707 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:713 +#: stock/models.py:720 msgid "Delete on deplete" msgstr "" -#: stock/models.py:713 +#: stock/models.py:720 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:720 stock/templates/stock/item.html:132 +#: stock/models.py:727 stock/templates/stock/item.html:132 msgid "Stock Item Notes" msgstr "" -#: stock/models.py:728 +#: stock/models.py:735 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:756 +#: stock/models.py:763 msgid "Converted to part" msgstr "" -#: stock/models.py:1235 +#: stock/models.py:1242 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1241 +#: stock/models.py:1248 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1247 +#: stock/models.py:1254 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({n})" msgstr "" -#: stock/models.py:1250 +#: stock/models.py:1257 msgid "Serial numbers must be a list of integers" msgstr "" -#: stock/models.py:1253 +#: stock/models.py:1260 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1260 +#: stock/models.py:1267 #, python-brace-format msgid "Serial numbers already exist: {exists}" msgstr "" -#: stock/models.py:1330 +#: stock/models.py:1337 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1333 +#: stock/models.py:1340 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1336 +#: stock/models.py:1343 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1339 +#: stock/models.py:1346 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1342 +#: stock/models.py:1349 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1345 +#: stock/models.py:1352 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1352 stock/serializers.py:959 +#: stock/models.py:1359 stock/serializers.py:961 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1356 +#: stock/models.py:1363 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1360 +#: stock/models.py:1367 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1364 +#: stock/models.py:1371 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:1533 +#: stock/models.py:1540 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:1994 +#: stock/models.py:2001 msgid "Entry notes" msgstr "" -#: stock/models.py:2052 +#: stock/models.py:2059 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2058 +#: stock/models.py:2065 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2077 +#: stock/models.py:2084 msgid "Test name" msgstr "" -#: stock/models.py:2083 +#: stock/models.py:2090 msgid "Test result" msgstr "" -#: stock/models.py:2089 +#: stock/models.py:2096 msgid "Test output value" msgstr "" -#: stock/models.py:2096 +#: stock/models.py:2103 msgid "Test result attachment" msgstr "" -#: stock/models.py:2102 +#: stock/models.py:2109 msgid "Test notes" msgstr "" @@ -6177,7 +6213,7 @@ msgstr "" msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:323 stock/serializers.py:916 stock/serializers.py:1149 +#: stock/serializers.py:323 stock/serializers.py:918 stock/serializers.py:1151 msgid "Destination stock location" msgstr "" @@ -6225,63 +6261,63 @@ msgstr "" msgid "Destination location for returned item" msgstr "" -#: stock/serializers.py:771 +#: stock/serializers.py:773 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:775 +#: stock/serializers.py:777 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:779 +#: stock/serializers.py:781 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:810 +#: stock/serializers.py:812 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:816 +#: stock/serializers.py:818 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:824 +#: stock/serializers.py:826 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:834 stock/serializers.py:1065 +#: stock/serializers.py:836 stock/serializers.py:1067 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:923 +#: stock/serializers.py:925 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:928 +#: stock/serializers.py:930 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:929 +#: stock/serializers.py:931 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:934 +#: stock/serializers.py:936 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:935 +#: stock/serializers.py:937 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:945 +#: stock/serializers.py:947 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1027 +#: stock/serializers.py:1029 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1055 +#: stock/serializers.py:1057 msgid "Stock transaction notes" msgstr "" @@ -6318,7 +6354,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2852 +#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2861 msgid "Install Stock Item" msgstr "" @@ -6326,7 +6362,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1518 +#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1522 msgid "Add Test Result" msgstr "" @@ -6357,7 +6393,7 @@ msgid "Stock adjustment actions" msgstr "" #: stock/templates/stock/item_base.html:80 -#: stock/templates/stock/location.html:63 templates/stock_table.html:47 +#: stock/templates/stock/location.html:68 templates/stock_table.html:47 msgid "Count stock" msgstr "" @@ -6374,7 +6410,7 @@ msgid "Serialize stock" msgstr "" #: stock/templates/stock/item_base.html:93 -#: stock/templates/stock/location.html:69 templates/stock_table.html:48 +#: stock/templates/stock/location.html:74 templates/stock_table.html:48 msgid "Transfer stock" msgstr "" @@ -6435,7 +6471,7 @@ msgid "You are not in the list of owners of this item. This stock item cannot be msgstr "" #: stock/templates/stock/item_base.html:257 -#: stock/templates/stock/location.html:127 +#: stock/templates/stock/location.html:132 msgid "Read only" msgstr "" @@ -6513,7 +6549,7 @@ msgid "Stale" msgstr "" #: stock/templates/stock/item_base.html:442 -#: templates/js/translated/company.js:985 templates/js/translated/stock.js:1895 +#: templates/js/translated/company.js:985 templates/js/translated/stock.js:1899 msgid "Last Updated" msgstr "" @@ -6557,58 +6593,58 @@ msgstr "" msgid "Select quantity to serialize, and unique serial numbers." msgstr "" -#: stock/templates/stock/location.html:33 +#: stock/templates/stock/location.html:38 msgid "Locate stock location" msgstr "" -#: stock/templates/stock/location.html:49 +#: stock/templates/stock/location.html:54 msgid "Check-in Items" msgstr "" -#: stock/templates/stock/location.html:77 +#: stock/templates/stock/location.html:82 msgid "Location actions" msgstr "" -#: stock/templates/stock/location.html:79 +#: stock/templates/stock/location.html:84 msgid "Edit location" msgstr "" -#: stock/templates/stock/location.html:81 +#: stock/templates/stock/location.html:86 msgid "Delete location" msgstr "" -#: stock/templates/stock/location.html:90 +#: stock/templates/stock/location.html:95 msgid "Create new stock location" msgstr "" -#: stock/templates/stock/location.html:91 +#: stock/templates/stock/location.html:96 msgid "New Location" msgstr "" -#: stock/templates/stock/location.html:109 -#: stock/templates/stock/location.html:115 +#: stock/templates/stock/location.html:114 +#: stock/templates/stock/location.html:120 msgid "Location Path" msgstr "" -#: stock/templates/stock/location.html:116 +#: stock/templates/stock/location.html:121 msgid "Top level stock location" msgstr "" -#: stock/templates/stock/location.html:122 +#: stock/templates/stock/location.html:127 msgid "Location Owner" msgstr "" -#: stock/templates/stock/location.html:126 +#: stock/templates/stock/location.html:131 msgid "You are not in the list of owners of this location. This stock location cannot be edited." msgstr "" -#: stock/templates/stock/location.html:142 -#: stock/templates/stock/location.html:189 +#: stock/templates/stock/location.html:147 +#: stock/templates/stock/location.html:194 #: stock/templates/stock/location_sidebar.html:5 msgid "Sublocations" msgstr "" -#: stock/templates/stock/location.html:156 templates/InvenTree/search.html:165 +#: stock/templates/stock/location.html:161 templates/InvenTree/search.html:165 #: templates/js/translated/search.js:238 users/models.py:39 msgid "Stock Locations" msgstr "" @@ -6880,15 +6916,15 @@ msgstr "" msgid "Part Settings" msgstr "" -#: templates/InvenTree/settings/part.html:44 +#: templates/InvenTree/settings/part.html:46 msgid "Part Import" msgstr "" -#: templates/InvenTree/settings/part.html:48 +#: templates/InvenTree/settings/part.html:50 msgid "Import Part" msgstr "" -#: templates/InvenTree/settings/part.html:62 +#: templates/InvenTree/settings/part.html:64 msgid "Part Parameter Templates" msgstr "" @@ -6900,47 +6936,47 @@ msgstr "" msgid "Changing the settings below require you to immediately restart the server. Do not change this while under active usage." msgstr "" -#: templates/InvenTree/settings/plugin.html:34 +#: templates/InvenTree/settings/plugin.html:36 msgid "Plugins" msgstr "" -#: templates/InvenTree/settings/plugin.html:39 +#: templates/InvenTree/settings/plugin.html:41 #: templates/js/translated/plugin.js:16 msgid "Install Plugin" msgstr "" -#: templates/InvenTree/settings/plugin.html:48 templates/navbar.html:137 +#: templates/InvenTree/settings/plugin.html:50 templates/navbar.html:137 #: users/models.py:36 msgid "Admin" msgstr "" -#: templates/InvenTree/settings/plugin.html:50 +#: templates/InvenTree/settings/plugin.html:52 #: templates/InvenTree/settings/plugin_settings.html:28 msgid "Author" msgstr "" -#: templates/InvenTree/settings/plugin.html:52 +#: templates/InvenTree/settings/plugin.html:54 #: templates/InvenTree/settings/plugin_settings.html:43 msgid "Version" msgstr "" -#: templates/InvenTree/settings/plugin.html:74 +#: templates/InvenTree/settings/plugin.html:76 msgid "Sample" msgstr "" -#: templates/InvenTree/settings/plugin.html:99 +#: templates/InvenTree/settings/plugin.html:101 msgid "Inactive plugins" msgstr "" -#: templates/InvenTree/settings/plugin.html:122 +#: templates/InvenTree/settings/plugin.html:124 msgid "Plugin Error Stack" msgstr "" -#: templates/InvenTree/settings/plugin.html:131 +#: templates/InvenTree/settings/plugin.html:133 msgid "Stage" msgstr "" -#: templates/InvenTree/settings/plugin.html:133 +#: templates/InvenTree/settings/plugin.html:135 #: templates/js/translated/notification.js:75 msgid "Message" msgstr "" @@ -7004,11 +7040,11 @@ msgstr "" msgid "Commit Message" msgstr "" -#: templates/InvenTree/settings/plugin_settings.html:117 +#: templates/InvenTree/settings/plugin_settings.html:120 msgid "Sign Status" msgstr "" -#: templates/InvenTree/settings/plugin_settings.html:122 +#: templates/InvenTree/settings/plugin_settings.html:125 msgid "Sign Key" msgstr "" @@ -7835,7 +7871,7 @@ msgstr "" msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:456 templates/js/translated/stock.js:1050 +#: templates/js/translated/barcode.js:456 templates/js/translated/stock.js:1054 msgid "Remove stock item" msgstr "" @@ -8008,7 +8044,7 @@ msgid "Includes variant and substitute stock" msgstr "" #: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822 -#: templates/js/translated/part.js:759 +#: templates/js/translated/part.js:763 msgid "Includes variant stock" msgstr "" @@ -8105,12 +8141,12 @@ msgid "Complete Build Order" msgstr "" #: templates/js/translated/build.js:263 templates/js/translated/stock.js:92 -#: templates/js/translated/stock.js:210 +#: templates/js/translated/stock.js:214 msgid "Next available serial number" msgstr "" #: templates/js/translated/build.js:265 templates/js/translated/stock.js:94 -#: templates/js/translated/stock.js:212 +#: templates/js/translated/stock.js:216 msgid "Latest serial number" msgstr "" @@ -8323,9 +8359,9 @@ msgstr "" msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1383 -#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1682 -#: templates/js/translated/stock.js:2382 +#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387 +#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1686 +#: templates/js/translated/stock.js:2386 msgid "Select" msgstr "" @@ -8337,7 +8373,7 @@ msgstr "" msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2638 +#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647 msgid "No user information" msgstr "" @@ -8410,34 +8446,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:616 -#: templates/js/translated/company.js:876 templates/js/translated/part.js:634 -#: templates/js/translated/part.js:719 +#: templates/js/translated/company.js:876 templates/js/translated/part.js:638 +#: templates/js/translated/part.js:723 msgid "Template part" msgstr "" #: templates/js/translated/company.js:620 -#: templates/js/translated/company.js:880 templates/js/translated/part.js:638 -#: templates/js/translated/part.js:723 +#: templates/js/translated/company.js:880 templates/js/translated/part.js:642 +#: templates/js/translated/part.js:727 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:748 templates/js/translated/part.js:826 +#: templates/js/translated/company.js:748 templates/js/translated/part.js:830 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:785 templates/js/translated/part.js:868 +#: templates/js/translated/company.js:785 templates/js/translated/part.js:872 msgid "Edit parameter" msgstr "" -#: templates/js/translated/company.js:786 templates/js/translated/part.js:869 +#: templates/js/translated/company.js:786 templates/js/translated/part.js:873 msgid "Delete parameter" msgstr "" -#: templates/js/translated/company.js:805 templates/js/translated/part.js:886 +#: templates/js/translated/company.js:805 templates/js/translated/part.js:890 msgid "Edit Parameter" msgstr "" -#: templates/js/translated/company.js:816 templates/js/translated/part.js:898 +#: templates/js/translated/company.js:816 templates/js/translated/part.js:902 msgid "Delete Parameter" msgstr "" @@ -8562,7 +8598,7 @@ msgid "Labels sent to printer" msgstr "" #: templates/js/translated/label.js:60 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1078 msgid "Select Stock Items" msgstr "" @@ -8872,7 +8908,7 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2140 +#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144 msgid "Stock Status" msgstr "" @@ -8896,7 +8932,7 @@ msgstr "" msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:1672 templates/js/translated/part.js:939 +#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943 msgid "No purchase orders found" msgstr "" @@ -8931,7 +8967,7 @@ msgstr "" #: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203 #: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050 -#: templates/js/translated/part.js:2126 templates/js/translated/part.js:2479 +#: templates/js/translated/part.js:2131 templates/js/translated/part.js:2484 msgid "Unit Price" msgstr "" @@ -8941,11 +8977,11 @@ msgid "Total Price" msgstr "" #: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600 -#: templates/js/translated/part.js:1046 +#: templates/js/translated/part.js:1050 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1092 +#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096 msgid "Receive line item" msgstr "" @@ -9066,7 +9102,7 @@ msgid "Delete Stock Allocation" msgstr "" #: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398 -#: templates/js/translated/stock.js:1598 +#: templates/js/translated/stock.js:1602 msgid "Shipped to customer" msgstr "" @@ -9190,149 +9226,157 @@ msgstr "" msgid "Parent part category" msgstr "" -#: templates/js/translated/part.js:318 +#: templates/js/translated/part.js:306 templates/js/translated/stock.js:118 +msgid "Icon (optional) - Explore all available icons on" +msgstr "" + +#: templates/js/translated/part.js:322 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:331 +#: templates/js/translated/part.js:335 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:333 +#: templates/js/translated/part.js:337 msgid "Any child categories will be moved to the parent of this category" msgstr "" -#: templates/js/translated/part.js:334 +#: templates/js/translated/part.js:338 msgid "Any parts in this category will be moved to the parent of this category" msgstr "" -#: templates/js/translated/part.js:339 +#: templates/js/translated/part.js:343 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:365 +#: templates/js/translated/part.js:369 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:367 +#: templates/js/translated/part.js:371 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:378 +#: templates/js/translated/part.js:382 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:430 +#: templates/js/translated/part.js:434 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:431 +#: templates/js/translated/part.js:435 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:445 +#: templates/js/translated/part.js:449 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:447 +#: templates/js/translated/part.js:451 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:448 +#: templates/js/translated/part.js:452 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:449 +#: templates/js/translated/part.js:453 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:456 +#: templates/js/translated/part.js:460 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:492 +#: templates/js/translated/part.js:496 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:494 +#: templates/js/translated/part.js:498 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:499 +#: templates/js/translated/part.js:503 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:501 +#: templates/js/translated/part.js:505 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:518 +#: templates/js/translated/part.js:522 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:528 +#: templates/js/translated/part.js:532 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:531 +#: templates/js/translated/part.js:535 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:556 +#: templates/js/translated/part.js:560 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:582 templates/js/translated/part.js:1466 +#: templates/js/translated/part.js:586 templates/js/translated/part.js:1478 #: templates/js/translated/table_filters.js:468 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:592 templates/js/translated/part.js:1478 +#: templates/js/translated/part.js:596 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:626 templates/js/translated/part.js:711 +#: templates/js/translated/part.js:630 templates/js/translated/part.js:715 msgid "Trackable part" msgstr "" -#: templates/js/translated/part.js:630 templates/js/translated/part.js:715 +#: templates/js/translated/part.js:634 templates/js/translated/part.js:719 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:642 +#: templates/js/translated/part.js:646 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:646 +#: templates/js/translated/part.js:650 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:774 +#: templates/js/translated/part.js:778 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1162 +#: templates/js/translated/part.js:1166 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1186 +#: templates/js/translated/part.js:1190 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:1253 templates/js/translated/part.js:1549 +#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1549 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:1292 +#: templates/js/translated/part.js:1296 msgid "Not available" msgstr "" -#: templates/js/translated/part.js:1443 +#: templates/js/translated/part.js:1447 msgid "No category" msgstr "" +#: templates/js/translated/part.js:1476 +msgid "No stock" +msgstr "" + #: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816 -#: templates/js/translated/stock.js:2343 +#: templates/js/translated/stock.js:2347 msgid "Display as list" msgstr "" @@ -9356,7 +9400,7 @@ msgstr "" msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2362 +#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2366 msgid "Display as tree" msgstr "" @@ -9364,67 +9408,67 @@ msgstr "" msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:1925 +#: templates/js/translated/part.js:1930 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:1983 +#: templates/js/translated/part.js:1988 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2034 templates/js/translated/stock.js:1295 +#: templates/js/translated/part.js:2039 templates/js/translated/stock.js:1299 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:2035 templates/js/translated/stock.js:1296 -#: templates/js/translated/stock.js:1556 +#: templates/js/translated/part.js:2040 templates/js/translated/stock.js:1300 +#: templates/js/translated/stock.js:1560 msgid "Delete test result" msgstr "" -#: templates/js/translated/part.js:2041 +#: templates/js/translated/part.js:2046 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2063 +#: templates/js/translated/part.js:2068 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2077 +#: templates/js/translated/part.js:2082 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2102 +#: templates/js/translated/part.js:2107 #, python-brace-format msgid "No ${human_name} information found" msgstr "" -#: templates/js/translated/part.js:2159 +#: templates/js/translated/part.js:2164 #, python-brace-format msgid "Edit ${human_name}" msgstr "" -#: templates/js/translated/part.js:2160 +#: templates/js/translated/part.js:2165 #, python-brace-format msgid "Delete ${human_name}" msgstr "" -#: templates/js/translated/part.js:2274 +#: templates/js/translated/part.js:2279 msgid "Current Stock" msgstr "" -#: templates/js/translated/part.js:2307 +#: templates/js/translated/part.js:2312 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2333 +#: templates/js/translated/part.js:2338 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2403 +#: templates/js/translated/part.js:2408 msgid "Single Price" msgstr "" -#: templates/js/translated/part.js:2422 +#: templates/js/translated/part.js:2427 msgid "Single Price Difference" msgstr "" @@ -9518,376 +9562,376 @@ msgstr "" msgid "Parent stock location" msgstr "" -#: templates/js/translated/stock.js:140 +#: templates/js/translated/stock.js:144 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:155 +#: templates/js/translated/stock.js:159 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:169 +#: templates/js/translated/stock.js:173 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:171 +#: templates/js/translated/stock.js:175 msgid "Any child locations will be moved to the parent of this location" msgstr "" -#: templates/js/translated/stock.js:172 +#: templates/js/translated/stock.js:176 msgid "Any stock items in this location will be moved to the parent of this location" msgstr "" -#: templates/js/translated/stock.js:178 +#: templates/js/translated/stock.js:182 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:223 +#: templates/js/translated/stock.js:227 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:262 +#: templates/js/translated/stock.js:266 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:268 +#: templates/js/translated/stock.js:272 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:333 +#: templates/js/translated/stock.js:337 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:353 +#: templates/js/translated/stock.js:357 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:369 +#: templates/js/translated/stock.js:373 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:374 +#: templates/js/translated/stock.js:378 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:395 +#: templates/js/translated/stock.js:399 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:445 +#: templates/js/translated/stock.js:449 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:458 +#: templates/js/translated/stock.js:462 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:483 +#: templates/js/translated/stock.js:487 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:487 templates/js/translated/stock.js:488 +#: templates/js/translated/stock.js:491 templates/js/translated/stock.js:492 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:504 +#: templates/js/translated/stock.js:508 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:524 +#: templates/js/translated/stock.js:528 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:533 +#: templates/js/translated/stock.js:537 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:656 +#: templates/js/translated/stock.js:660 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:657 +#: templates/js/translated/stock.js:661 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:734 +#: templates/js/translated/stock.js:738 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:735 +#: templates/js/translated/stock.js:739 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:737 +#: templates/js/translated/stock.js:741 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:738 +#: templates/js/translated/stock.js:742 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:824 +#: templates/js/translated/stock.js:828 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:825 +#: templates/js/translated/stock.js:829 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:920 +#: templates/js/translated/stock.js:924 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:921 +#: templates/js/translated/stock.js:925 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:927 +#: templates/js/translated/stock.js:931 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:928 +#: templates/js/translated/stock.js:932 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:932 +#: templates/js/translated/stock.js:936 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:933 +#: templates/js/translated/stock.js:937 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:937 +#: templates/js/translated/stock.js:941 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:938 users/models.py:216 +#: templates/js/translated/stock.js:942 users/models.py:216 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:942 +#: templates/js/translated/stock.js:946 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1035 +#: templates/js/translated/stock.js:1039 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1035 +#: templates/js/translated/stock.js:1039 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1075 +#: templates/js/translated/stock.js:1079 msgid "You must select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1098 +#: templates/js/translated/stock.js:1102 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1234 +#: templates/js/translated/stock.js:1238 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1236 +#: templates/js/translated/stock.js:1240 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1241 +#: templates/js/translated/stock.js:1245 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1288 +#: templates/js/translated/stock.js:1292 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1291 +#: templates/js/translated/stock.js:1295 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1317 +#: templates/js/translated/stock.js:1321 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1374 +#: templates/js/translated/stock.js:1378 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1539 +#: templates/js/translated/stock.js:1543 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1561 +#: templates/js/translated/stock.js:1565 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1590 +#: templates/js/translated/stock.js:1594 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1594 +#: templates/js/translated/stock.js:1598 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1602 +#: templates/js/translated/stock.js:1606 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1608 +#: templates/js/translated/stock.js:1612 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1775 +#: templates/js/translated/stock.js:1779 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:1780 +#: templates/js/translated/stock.js:1784 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:1783 +#: templates/js/translated/stock.js:1787 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:1786 +#: templates/js/translated/stock.js:1790 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:1788 +#: templates/js/translated/stock.js:1792 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:1790 +#: templates/js/translated/stock.js:1794 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:1793 +#: templates/js/translated/stock.js:1797 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:1797 +#: templates/js/translated/stock.js:1801 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:1799 +#: templates/js/translated/stock.js:1803 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:1806 +#: templates/js/translated/stock.js:1810 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:1808 +#: templates/js/translated/stock.js:1812 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:1810 +#: templates/js/translated/stock.js:1814 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:1814 +#: templates/js/translated/stock.js:1818 #: templates/js/translated/table_filters.js:196 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:1865 +#: templates/js/translated/stock.js:1869 msgid "Stocktake" msgstr "" -#: templates/js/translated/stock.js:1944 +#: templates/js/translated/stock.js:1948 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:1982 +#: templates/js/translated/stock.js:1986 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2155 +#: templates/js/translated/stock.js:2159 msgid "Set Stock Status" msgstr "" -#: templates/js/translated/stock.js:2169 +#: templates/js/translated/stock.js:2173 msgid "Select Status Code" msgstr "" -#: templates/js/translated/stock.js:2170 +#: templates/js/translated/stock.js:2174 msgid "Status code must be selected" msgstr "" -#: templates/js/translated/stock.js:2400 +#: templates/js/translated/stock.js:2404 msgid "Load Subloactions" msgstr "" -#: templates/js/translated/stock.js:2484 +#: templates/js/translated/stock.js:2493 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2500 +#: templates/js/translated/stock.js:2509 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2522 +#: templates/js/translated/stock.js:2531 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2541 +#: templates/js/translated/stock.js:2550 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2560 +#: templates/js/translated/stock.js:2569 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2578 +#: templates/js/translated/stock.js:2587 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:2601 +#: templates/js/translated/stock.js:2610 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:2609 +#: templates/js/translated/stock.js:2618 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:2685 +#: templates/js/translated/stock.js:2694 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:2736 templates/js/translated/stock.js:2772 +#: templates/js/translated/stock.js:2745 templates/js/translated/stock.js:2781 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:2785 +#: templates/js/translated/stock.js:2794 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:2806 +#: templates/js/translated/stock.js:2815 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:2807 +#: templates/js/translated/stock.js:2816 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:2809 +#: templates/js/translated/stock.js:2818 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:2810 +#: templates/js/translated/stock.js:2819 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:2811 +#: templates/js/translated/stock.js:2820 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:2812 +#: templates/js/translated/stock.js:2821 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:2825 +#: templates/js/translated/stock.js:2834 msgid "Select part to install" msgstr "" diff --git a/InvenTree/locale/es/LC_MESSAGES/django.po b/InvenTree/locale/es/LC_MESSAGES/django.po index 59f6425738..7403ffd89b 100644 --- a/InvenTree/locale/es/LC_MESSAGES/django.po +++ b/InvenTree/locale/es/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-16 11:53+0000\n" -"PO-Revision-Date: 2022-08-16 21:35\n" +"POT-Creation-Date: 2022-08-18 05:14+0000\n" +"PO-Revision-Date: 2022-08-18 21:39\n" "Last-Translator: \n" "Language-Team: Spanish\n" "Language: es_ES\n" @@ -40,10 +40,10 @@ msgstr "" #: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825 #: stock/serializers.py:924 stock/serializers.py:1056 #: stock/templates/stock/stock_sidebar.html:25 -#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101 -#: templates/js/translated/company.js:964 templates/js/translated/order.js:2104 -#: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753 -#: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102 +#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1099 +#: templates/js/translated/company.js:964 templates/js/translated/order.js:2143 +#: templates/js/translated/order.js:2294 templates/js/translated/order.js:2792 +#: templates/js/translated/order.js:3743 templates/js/translated/order.js:4141 #: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980 msgid "Notes" msgstr "" @@ -211,11 +211,11 @@ msgstr "" #: InvenTree/models.py:402 company/models.py:124 company/models.py:276 #: company/models.py:510 order/models.py:84 order/models.py:1245 -#: part/models.py:802 +#: part/models.py:802 part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_base.html:164 #: templates/js/translated/company.js:656 -#: templates/js/translated/company.js:948 templates/js/translated/order.js:2742 -#: templates/js/translated/part.js:1514 +#: templates/js/translated/company.js:948 templates/js/translated/order.js:2781 +#: templates/js/translated/part.js:1510 msgid "Link" msgstr "" @@ -235,8 +235,8 @@ msgstr "" #: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665 #: common/models.py:1666 common/models.py:1889 common/models.py:1890 -#: common/models.py:2152 common/models.py:2153 part/models.py:2200 -#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257 +#: common/models.py:2152 common/models.py:2153 part/models.py:2247 +#: part/models.py:2267 plugin/models.py:256 plugin/models.py:257 #: report/templates/report/inventree_test_report_base.html:96 #: templates/js/translated/stock.js:2641 msgid "User" @@ -277,7 +277,7 @@ msgstr "" #: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875 #: company/models.py:358 label/models.py:101 part/models.py:746 -#: part/models.py:2378 plugin/models.py:94 report/models.py:152 +#: part/models.py:2425 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 #: templates/InvenTree/settings/plugin.html:51 #: templates/InvenTree/settings/plugin.html:134 @@ -287,7 +287,7 @@ msgstr "" #: templates/js/translated/company.js:758 #: templates/js/translated/notification.js:71 #: templates/js/translated/part.js:688 templates/js/translated/part.js:840 -#: templates/js/translated/part.js:1906 templates/js/translated/stock.js:2392 +#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2392 msgid "Name" msgstr "" @@ -297,19 +297,20 @@ msgstr "" #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:87 label/models.py:108 #: order/models.py:82 part/models.py:769 part/templates/part/category.html:80 -#: part/templates/part/part_base.html:167 report/models.py:165 +#: part/templates/part/part_base.html:167 +#: part/templates/part/part_scheduling.html:12 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 #: stock/templates/stock/location.html:108 #: templates/InvenTree/settings/plugin_settings.html:33 -#: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848 -#: templates/js/translated/build.js:2471 templates/js/translated/company.js:409 +#: templates/js/translated/bom.js:553 templates/js/translated/bom.js:846 +#: templates/js/translated/build.js:2504 templates/js/translated/company.js:409 #: templates/js/translated/company.js:667 -#: templates/js/translated/company.js:959 templates/js/translated/order.js:1720 -#: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531 +#: templates/js/translated/company.js:959 templates/js/translated/order.js:1759 +#: templates/js/translated/order.js:1991 templates/js/translated/order.js:2570 #: templates/js/translated/part.js:747 templates/js/translated/part.js:1153 -#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1942 -#: templates/js/translated/part.js:2011 templates/js/translated/stock.js:1743 +#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1938 +#: templates/js/translated/part.js:2007 templates/js/translated/stock.js:1743 #: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478 msgid "Description" msgstr "" @@ -323,7 +324,7 @@ msgid "parent" msgstr "" #: InvenTree/models.py:560 InvenTree/models.py:561 -#: templates/js/translated/part.js:1948 templates/js/translated/stock.js:2430 +#: templates/js/translated/part.js:1944 templates/js/translated/stock.js:2430 msgid "Path" msgstr "" @@ -335,7 +336,7 @@ msgstr "" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:55 part/models.py:2699 +#: InvenTree/serializers.py:55 part/models.py:2746 msgid "Must be a valid number" msgstr "" @@ -541,7 +542,7 @@ msgid "Returned" msgstr "" #: InvenTree/status_codes.py:141 order/models.py:1128 -#: templates/js/translated/order.js:3330 templates/js/translated/order.js:3679 +#: templates/js/translated/order.js:3369 templates/js/translated/order.js:3718 msgid "Shipped" msgstr "" @@ -728,7 +729,7 @@ msgstr "" #: report/templates/report/inventree_build_order_base.html:105 #: templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 -#: templates/js/translated/build.js:731 +#: templates/js/translated/build.js:763 msgid "Build Order" msgstr "" @@ -747,14 +748,14 @@ msgid "Build Order Reference" msgstr "" #: build/models.py:166 order/models.py:240 order/models.py:623 -#: order/models.py:904 part/models.py:2617 +#: order/models.py:904 part/models.py:2664 #: part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 -#: templates/js/translated/bom.js:692 templates/js/translated/bom.js:855 -#: templates/js/translated/build.js:1779 templates/js/translated/order.js:1983 -#: templates/js/translated/order.js:2184 templates/js/translated/order.js:3523 -#: templates/js/translated/order.js:4031 +#: templates/js/translated/bom.js:690 templates/js/translated/bom.js:853 +#: templates/js/translated/build.js:1811 templates/js/translated/order.js:2022 +#: templates/js/translated/order.js:2223 templates/js/translated/order.js:3562 +#: templates/js/translated/order.js:4070 msgid "Reference" msgstr "" @@ -762,7 +763,7 @@ msgstr "" msgid "Brief description of the build" msgstr "" -#: build/models.py:185 build/templates/build/build_base.html:169 +#: build/models.py:185 build/templates/build/build_base.html:172 #: build/templates/build/detail.html:87 msgid "Parent Build" msgstr "" @@ -771,13 +772,13 @@ msgstr "" msgid "BuildOrder to which this build is allocated" msgstr "" -#: build/models.py:191 build/templates/build/build_base.html:77 +#: build/models.py:191 build/templates/build/build_base.html:80 #: build/templates/build/detail.html:29 company/models.py:670 #: order/models.py:1001 order/models.py:1112 order/models.py:1113 -#: part/models.py:343 part/models.py:2146 part/models.py:2161 -#: part/models.py:2180 part/models.py:2198 part/models.py:2297 -#: part/models.py:2417 part/models.py:2507 part/models.py:2592 -#: part/models.py:2868 part/serializers.py:813 +#: part/models.py:343 part/models.py:2193 part/models.py:2208 +#: part/models.py:2227 part/models.py:2245 part/models.py:2344 +#: part/models.py:2464 part/models.py:2554 part/models.py:2639 +#: part/models.py:2915 part/serializers.py:813 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -789,17 +790,17 @@ msgstr "" #: templates/email/build_order_required_stock.html:17 #: templates/email/low_stock_notification.html:16 #: templates/email/overdue_build_order.html:16 -#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:553 -#: templates/js/translated/bom.js:691 templates/js/translated/bom.js:802 -#: templates/js/translated/build.js:1156 templates/js/translated/build.js:1649 -#: templates/js/translated/build.js:2085 templates/js/translated/build.js:2476 +#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:552 +#: templates/js/translated/bom.js:689 templates/js/translated/bom.js:800 +#: templates/js/translated/build.js:1188 templates/js/translated/build.js:1681 +#: templates/js/translated/build.js:2118 templates/js/translated/build.js:2509 #: templates/js/translated/company.js:266 #: templates/js/translated/company.js:496 #: templates/js/translated/company.js:608 -#: templates/js/translated/company.js:868 templates/js/translated/order.js:103 -#: templates/js/translated/order.js:934 templates/js/translated/order.js:1387 -#: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885 -#: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507 +#: templates/js/translated/company.js:868 templates/js/translated/order.js:104 +#: templates/js/translated/order.js:973 templates/js/translated/order.js:1426 +#: templates/js/translated/order.js:1976 templates/js/translated/order.js:2924 +#: templates/js/translated/order.js:3320 templates/js/translated/order.js:3546 #: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210 #: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586 #: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958 @@ -821,7 +822,7 @@ msgid "SalesOrder to which this build is allocated" msgstr "" #: build/models.py:213 build/serializers.py:800 -#: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873 +#: templates/js/translated/build.js:2106 templates/js/translated/order.js:2912 msgid "Source Location" msgstr "" @@ -862,7 +863,7 @@ msgid "Build status code" msgstr "" #: build/models.py:251 build/serializers.py:225 order/serializers.py:447 -#: stock/models.py:662 templates/js/translated/order.js:1247 +#: stock/models.py:662 templates/js/translated/order.js:1286 msgid "Batch Code" msgstr "" @@ -871,7 +872,7 @@ msgid "Batch code for this build output" msgstr "" #: build/models.py:258 order/models.py:86 part/models.py:938 -#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544 +#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2583 msgid "Creation Date" msgstr "" @@ -884,7 +885,7 @@ msgid "Target date for build completion. Build will be overdue after this date." msgstr "" #: build/models.py:266 order/models.py:286 -#: templates/js/translated/build.js:2553 +#: templates/js/translated/build.js:2586 msgid "Completion Date" msgstr "" @@ -892,7 +893,7 @@ msgstr "" msgid "completed by" msgstr "" -#: build/models.py:280 templates/js/translated/build.js:2521 +#: build/models.py:280 templates/js/translated/build.js:2554 msgid "Issued by" msgstr "" @@ -900,12 +901,12 @@ msgstr "" msgid "User who issued this build order" msgstr "" -#: build/models.py:289 build/templates/build/build_base.html:190 +#: build/models.py:289 build/templates/build/build_base.html:193 #: build/templates/build/detail.html:115 order/models.py:100 #: order/templates/order/order_base.html:176 #: order/templates/order/sales_order_base.html:183 part/models.py:942 #: report/templates/report/inventree_build_order_base.html:158 -#: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754 +#: templates/js/translated/build.js:2566 templates/js/translated/order.js:1793 msgid "Responsible" msgstr "" @@ -972,7 +973,7 @@ msgid "Selected stock item not found in BOM" msgstr "" #: build/models.py:1328 stock/templates/stock/item_base.html:177 -#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2455 +#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2488 #: templates/navbar.html:38 msgid "Build" msgstr "" @@ -986,11 +987,11 @@ msgstr "" #: stock/serializers.py:882 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:199 -#: templates/js/translated/build.js:741 templates/js/translated/build.js:746 -#: templates/js/translated/build.js:2087 templates/js/translated/build.js:2638 -#: templates/js/translated/order.js:104 templates/js/translated/order.js:2886 -#: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193 -#: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380 +#: templates/js/translated/build.js:773 templates/js/translated/build.js:778 +#: templates/js/translated/build.js:2120 templates/js/translated/build.js:2671 +#: templates/js/translated/order.js:105 templates/js/translated/order.js:2925 +#: templates/js/translated/order.js:3227 templates/js/translated/order.js:3232 +#: templates/js/translated/order.js:3327 templates/js/translated/order.js:3419 #: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752 #: templates/js/translated/stock.js:2577 msgid "Stock Item" @@ -1001,13 +1002,13 @@ msgid "Source stock item" msgstr "" #: build/models.py:1358 build/serializers.py:193 -#: build/templates/build/build_base.html:82 +#: build/templates/build/build_base.html:85 #: build/templates/build/detail.html:34 common/models.py:1697 #: company/templates/company/supplier_part.html:279 order/models.py:897 #: order/models.py:1423 order/serializers.py:1155 #: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40 -#: part/models.py:2608 part/templates/part/detail.html:937 -#: part/templates/part/detail.html:1023 +#: part/models.py:2655 part/templates/part/detail.html:951 +#: part/templates/part/detail.html:1037 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 #: report/templates/report/inventree_build_order_base.html:113 @@ -1018,20 +1019,20 @@ msgstr "" #: stock/serializers.py:293 stock/templates/stock/item_base.html:292 #: stock/templates/stock/item_base.html:300 #: templates/email/build_order_completed.html:18 -#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:693 -#: templates/js/translated/bom.js:863 templates/js/translated/build.js:426 -#: templates/js/translated/build.js:578 templates/js/translated/build.js:768 -#: templates/js/translated/build.js:1178 templates/js/translated/build.js:1675 -#: templates/js/translated/build.js:2088 +#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:691 +#: templates/js/translated/bom.js:861 templates/js/translated/build.js:458 +#: templates/js/translated/build.js:610 templates/js/translated/build.js:800 +#: templates/js/translated/build.js:1210 templates/js/translated/build.js:1707 +#: templates/js/translated/build.js:2121 #: templates/js/translated/model_renderers.js:120 -#: templates/js/translated/order.js:120 templates/js/translated/order.js:937 -#: templates/js/translated/order.js:1989 templates/js/translated/order.js:2190 -#: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207 -#: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386 -#: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037 -#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2156 -#: templates/js/translated/part.js:2387 templates/js/translated/part.js:2421 -#: templates/js/translated/part.js:2499 templates/js/translated/stock.js:458 +#: templates/js/translated/order.js:121 templates/js/translated/order.js:976 +#: templates/js/translated/order.js:2028 templates/js/translated/order.js:2229 +#: templates/js/translated/order.js:2926 templates/js/translated/order.js:3246 +#: templates/js/translated/order.js:3333 templates/js/translated/order.js:3425 +#: templates/js/translated/order.js:3568 templates/js/translated/order.js:4076 +#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2152 +#: templates/js/translated/part.js:2602 templates/js/translated/part.js:2636 +#: templates/js/translated/part.js:2714 templates/js/translated/stock.js:458 #: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782 #: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711 msgid "Quantity" @@ -1050,7 +1051,7 @@ msgid "Destination stock item" msgstr "" #: build/serializers.py:138 build/serializers.py:674 -#: templates/js/translated/build.js:1166 +#: templates/js/translated/build.js:1198 msgid "Build Output" msgstr "" @@ -1090,7 +1091,7 @@ msgid "Integer quantity required, as the bill of materials contains trackable pa msgstr "" #: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159 -#: stock/serializers.py:311 templates/js/translated/order.js:1258 +#: stock/serializers.py:311 templates/js/translated/order.js:1297 #: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459 msgid "Serial Numbers" msgstr "" @@ -1120,10 +1121,10 @@ msgstr "" #: stock/serializers.py:917 stock/serializers.py:1150 #: stock/templates/stock/item_base.html:390 #: templates/js/translated/barcode.js:436 -#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753 -#: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285 -#: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305 -#: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394 +#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:785 +#: templates/js/translated/build.js:1719 templates/js/translated/order.js:1324 +#: templates/js/translated/order.js:3239 templates/js/translated/order.js:3344 +#: templates/js/translated/order.js:3352 templates/js/translated/order.js:3433 #: templates/js/translated/part.js:181 templates/js/translated/stock.js:588 #: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960 #: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518 @@ -1134,12 +1135,12 @@ msgstr "" msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:373 build/templates/build/build_base.html:142 +#: build/serializers.py:373 build/templates/build/build_base.html:145 #: build/templates/build/detail.html:62 order/models.py:642 #: order/serializers.py:465 stock/templates/stock/item_base.html:423 -#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505 -#: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724 -#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829 +#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2538 +#: templates/js/translated/order.js:1431 templates/js/translated/order.js:1763 +#: templates/js/translated/order.js:2575 templates/js/translated/stock.js:1829 #: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727 msgid "Status" msgstr "" @@ -1196,7 +1197,7 @@ msgstr "" msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:522 templates/js/translated/build.js:195 +#: build/serializers.py:522 templates/js/translated/build.js:227 msgid "Required stock has not been fully allocated" msgstr "" @@ -1208,7 +1209,7 @@ msgstr "" msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:538 templates/js/translated/build.js:199 +#: build/serializers.py:538 templates/js/translated/build.js:231 msgid "Required build quantity has not been completed" msgstr "" @@ -1216,8 +1217,8 @@ msgstr "" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726 -#: part/models.py:2860 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2773 +#: part/models.py:2907 msgid "BOM Item" msgstr "" @@ -1322,66 +1323,70 @@ msgid "Cancel Build" msgstr "" #: build/templates/build/build_base.html:59 +msgid "Duplicate Build" +msgstr "" + +#: build/templates/build/build_base.html:62 msgid "Delete Build" msgstr "" -#: build/templates/build/build_base.html:64 -#: build/templates/build/build_base.html:65 +#: build/templates/build/build_base.html:67 +#: build/templates/build/build_base.html:68 msgid "Complete Build" msgstr "" -#: build/templates/build/build_base.html:87 +#: build/templates/build/build_base.html:90 msgid "Build Description" msgstr "" -#: build/templates/build/build_base.html:95 +#: build/templates/build/build_base.html:98 msgid "No build outputs have been created for this build order" msgstr "" -#: build/templates/build/build_base.html:101 +#: build/templates/build/build_base.html:104 #, python-format msgid "This Build Order is allocated to Sales Order %(link)s" msgstr "" -#: build/templates/build/build_base.html:108 +#: build/templates/build/build_base.html:111 #, python-format msgid "This Build Order is a child of Build Order %(link)s" msgstr "" -#: build/templates/build/build_base.html:115 +#: build/templates/build/build_base.html:118 msgid "Build Order is ready to mark as completed" msgstr "" -#: build/templates/build/build_base.html:120 +#: build/templates/build/build_base.html:123 msgid "Build Order cannot be completed as outstanding outputs remain" msgstr "" -#: build/templates/build/build_base.html:125 +#: build/templates/build/build_base.html:128 msgid "Required build quantity has not yet been completed" msgstr "" -#: build/templates/build/build_base.html:130 +#: build/templates/build/build_base.html:133 msgid "Stock has not been fully allocated to this Build Order" msgstr "" -#: build/templates/build/build_base.html:151 +#: build/templates/build/build_base.html:154 #: build/templates/build/detail.html:131 order/models.py:910 #: order/templates/order/order_base.html:162 #: order/templates/order/sales_order_base.html:164 #: report/templates/report/inventree_build_order_base.html:125 -#: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741 -#: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552 -#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042 +#: templates/js/translated/build.js:2578 templates/js/translated/order.js:1780 +#: templates/js/translated/order.js:2090 templates/js/translated/order.js:2591 +#: templates/js/translated/order.js:3631 templates/js/translated/part.js:1042 msgid "Target Date" msgstr "" -#: build/templates/build/build_base.html:156 +#: build/templates/build/build_base.html:159 #, python-format msgid "This build was due on %(target)s" msgstr "" -#: build/templates/build/build_base.html:156 -#: build/templates/build/build_base.html:201 +#: build/templates/build/build_base.html:159 +#: build/templates/build/build_base.html:204 #: order/templates/order/order_base.html:98 #: order/templates/order/sales_order_base.html:94 #: templates/js/translated/table_filters.js:320 @@ -1390,14 +1395,14 @@ msgstr "" msgid "Overdue" msgstr "" -#: build/templates/build/build_base.html:163 +#: build/templates/build/build_base.html:166 #: build/templates/build/detail.html:67 build/templates/build/detail.html:142 #: order/templates/order/sales_order_base.html:171 #: templates/js/translated/table_filters.js:400 msgid "Completed" msgstr "" -#: build/templates/build/build_base.html:176 +#: build/templates/build/build_base.html:179 #: build/templates/build/detail.html:94 order/models.py:1105 #: order/models.py:1199 order/models.py:1330 #: order/templates/order/sales_order_base.html:9 @@ -1406,17 +1411,17 @@ msgstr "" #: report/templates/report/inventree_so_report.html:77 #: stock/templates/stock/item_base.html:370 #: templates/email/overdue_sales_order.html:15 -#: templates/js/translated/order.js:2498 +#: templates/js/translated/order.js:2537 msgid "Sales Order" msgstr "" -#: build/templates/build/build_base.html:183 +#: build/templates/build/build_base.html:186 #: build/templates/build/detail.html:108 #: report/templates/report/inventree_build_order_base.html:152 msgid "Issued By" msgstr "" -#: build/templates/build/build_base.html:245 +#: build/templates/build/build_base.html:256 msgid "Delete Build Order" msgstr "" @@ -1433,7 +1438,7 @@ msgid "Stock can be taken from any available location." msgstr "" #: build/templates/build/detail.html:49 order/models.py:1023 -#: templates/js/translated/order.js:1393 templates/js/translated/order.js:2093 +#: templates/js/translated/order.js:1432 templates/js/translated/order.js:2132 msgid "Destination" msgstr "" @@ -1447,7 +1452,7 @@ msgstr "" #: build/templates/build/detail.html:80 #: stock/templates/stock/item_base.html:170 -#: templates/js/translated/build.js:1182 +#: templates/js/translated/build.js:1214 #: templates/js/translated/model_renderers.js:124 #: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843 #: templates/js/translated/stock.js:2734 @@ -1459,7 +1464,7 @@ msgstr "" #: build/templates/build/detail.html:126 #: order/templates/order/order_base.html:149 #: order/templates/order/sales_order_base.html:158 -#: templates/js/translated/build.js:2513 +#: templates/js/translated/build.js:2546 msgid "Created" msgstr "" @@ -1479,7 +1484,7 @@ msgstr "" msgid "Allocate Stock to Build" msgstr "" -#: build/templates/build/detail.html:176 templates/js/translated/build.js:1901 +#: build/templates/build/detail.html:176 templates/js/translated/build.js:1934 msgid "Unallocate stock" msgstr "" @@ -1510,7 +1515,7 @@ msgstr "" #: build/templates/build/detail.html:187 #: company/templates/company/detail.html:37 #: company/templates/company/detail.html:85 -#: part/templates/part/category.html:183 templates/js/translated/order.js:977 +#: part/templates/part/category.html:183 templates/js/translated/order.js:1016 msgid "Order Parts" msgstr "" @@ -1582,7 +1587,7 @@ msgstr "" #: order/templates/order/po_sidebar.html:9 #: order/templates/order/purchase_order_detail.html:82 #: order/templates/order/sales_order_detail.html:135 -#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:207 +#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:212 #: part/templates/part/part_sidebar.html:57 stock/templates/stock/item.html:117 #: stock/templates/stock/stock_sidebar.html:23 msgid "Attachments" @@ -1600,7 +1605,7 @@ msgstr "" msgid "All untracked stock items have been allocated" msgstr "" -#: build/templates/build/index.html:18 part/templates/part/detail.html:313 +#: build/templates/build/index.html:18 part/templates/part/detail.html:318 msgid "New Build Order" msgstr "" @@ -1845,7 +1850,7 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:951 part/models.py:2419 report/models.py:158 +#: common/models.py:951 part/models.py:2466 report/models.py:158 #: templates/js/translated/table_filters.js:38 #: templates/js/translated/table_filters.js:484 msgid "Template" @@ -1855,7 +1860,7 @@ msgstr "" msgid "Parts are templates by default" msgstr "" -#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448 +#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1446 #: templates/js/translated/table_filters.js:176 #: templates/js/translated/table_filters.js:447 msgid "Assembly" @@ -2591,7 +2596,7 @@ msgstr "" #: common/models.py:1705 company/serializers.py:366 #: company/templates/company/supplier_part.html:284 order/models.py:938 -#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2161 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2157 msgid "Price" msgstr "" @@ -2830,7 +2835,7 @@ msgstr "" #: company/models.py:248 company/models.py:481 stock/models.py:598 #: stock/serializers.py:87 stock/templates/stock/item_base.html:148 -#: templates/js/translated/bom.js:543 +#: templates/js/translated/bom.js:542 msgid "Base Part" msgstr "" @@ -2859,7 +2864,7 @@ msgstr "" #: templates/js/translated/company.js:269 #: templates/js/translated/company.js:497 #: templates/js/translated/company.js:649 -#: templates/js/translated/company.js:937 templates/js/translated/order.js:1971 +#: templates/js/translated/company.js:937 templates/js/translated/order.js:2010 #: templates/js/translated/part.js:247 templates/js/translated/part.js:1027 msgid "MPN" msgstr "" @@ -2899,7 +2904,7 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:372 part/models.py:888 part/models.py:2386 +#: company/models.py:372 part/models.py:888 part/models.py:2433 #: part/templates/part/part_base.html:280 #: templates/InvenTree/settings/settings.html:352 #: templates/js/translated/company.js:770 templates/js/translated/part.js:855 @@ -2921,7 +2926,7 @@ msgstr "" #: templates/email/overdue_purchase_order.html:16 #: templates/js/translated/company.js:268 #: templates/js/translated/company.js:401 -#: templates/js/translated/company.js:893 templates/js/translated/order.js:1707 +#: templates/js/translated/company.js:893 templates/js/translated/order.js:1746 #: templates/js/translated/part.js:217 templates/js/translated/part.js:995 #: templates/js/translated/table_filters.js:423 msgid "Supplier" @@ -2933,7 +2938,7 @@ msgstr "" #: company/models.py:497 company/templates/company/supplier_part.html:118 #: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267 -#: templates/js/translated/order.js:1958 templates/js/translated/part.js:228 +#: templates/js/translated/order.js:1997 templates/js/translated/part.js:228 #: templates/js/translated/part.js:1013 msgid "SKU" msgstr "" @@ -2955,17 +2960,17 @@ msgid "Supplier part description" msgstr "" #: company/models.py:522 company/templates/company/supplier_part.html:146 -#: part/models.py:2620 part/templates/part/upload_bom.html:59 +#: part/models.py:2667 part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401 msgid "Note" msgstr "" -#: company/models.py:526 part/models.py:1742 +#: company/models.py:526 part/models.py:1789 msgid "base cost" msgstr "" -#: company/models.py:526 part/models.py:1742 +#: company/models.py:526 part/models.py:1789 msgid "Minimum charge (e.g. stocking fee)" msgstr "" @@ -2979,7 +2984,7 @@ msgstr "" msgid "Part packaging" msgstr "" -#: company/models.py:530 part/models.py:1744 +#: company/models.py:530 part/models.py:1791 msgid "multiple" msgstr "" @@ -2990,8 +2995,8 @@ msgstr "" #: company/models.py:538 company/templates/company/supplier_part.html:94 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789 -#: templates/js/translated/build.js:2645 templates/js/translated/company.js:979 +#: templates/js/translated/bom.js:911 templates/js/translated/build.js:1821 +#: templates/js/translated/build.js:2678 templates/js/translated/company.js:979 #: templates/js/translated/part.js:600 templates/js/translated/part.js:603 #: templates/js/translated/table_filters.js:186 msgid "Available" @@ -3028,7 +3033,7 @@ msgid "Company" msgstr "" #: company/templates/company/company_base.html:22 -#: templates/js/translated/order.js:540 +#: templates/js/translated/order.js:579 msgid "Create Purchase Order" msgstr "" @@ -3069,7 +3074,7 @@ msgstr "" #: stock/models.py:644 stock/serializers.py:811 #: stock/templates/stock/item_base.html:401 #: templates/email/overdue_sales_order.html:16 -#: templates/js/translated/company.js:393 templates/js/translated/order.js:2513 +#: templates/js/translated/company.js:393 templates/js/translated/order.js:2552 #: templates/js/translated/stock.js:2559 #: templates/js/translated/table_filters.js:427 msgid "Customer" @@ -3105,7 +3110,7 @@ msgstr "" #: company/templates/company/detail.html:19 #: company/templates/company/manufacturer_part.html:123 -#: part/templates/part/detail.html:354 +#: part/templates/part/detail.html:359 msgid "New Supplier Part" msgstr "" @@ -3134,7 +3139,7 @@ msgstr "" msgid "Create new manufacturer part" msgstr "" -#: company/templates/company/detail.html:66 part/templates/part/detail.html:384 +#: company/templates/company/detail.html:66 part/templates/part/detail.html:389 msgid "New Manufacturer Part" msgstr "" @@ -3148,7 +3153,7 @@ msgstr "" #: order/templates/order/order_base.html:13 #: order/templates/order/purchase_orders.html:8 #: order/templates/order/purchase_orders.html:12 -#: part/templates/part/detail.html:79 part/templates/part/part_sidebar.html:37 +#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:37 #: templates/InvenTree/index.html:252 templates/InvenTree/search.html:198 #: templates/InvenTree/settings/sidebar.html:49 #: templates/js/translated/search.js:275 templates/navbar.html:50 @@ -3171,7 +3176,7 @@ msgstr "" #: order/templates/order/sales_order_base.html:13 #: order/templates/order/sales_orders.html:8 #: order/templates/order/sales_orders.html:15 -#: part/templates/part/detail.html:102 part/templates/part/part_sidebar.html:41 +#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:41 #: templates/InvenTree/index.html:283 templates/InvenTree/search.html:218 #: templates/InvenTree/settings/sidebar.html:51 #: templates/js/translated/search.js:299 templates/navbar.html:61 @@ -3190,7 +3195,7 @@ msgid "New Sales Order" msgstr "" #: company/templates/company/detail.html:168 -#: templates/js/translated/build.js:1660 +#: templates/js/translated/build.js:1692 msgid "Assigned Stock" msgstr "" @@ -3206,7 +3211,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:35 #: company/templates/company/supplier_part.html:186 -#: part/templates/part/detail.html:82 part/templates/part/part_base.html:80 +#: part/templates/part/detail.html:87 part/templates/part/part_base.html:80 msgid "Order part" msgstr "" @@ -3237,13 +3242,13 @@ msgid "Suppliers" msgstr "" #: company/templates/company/manufacturer_part.html:136 -#: part/templates/part/detail.html:365 +#: part/templates/part/detail.html:370 msgid "Delete supplier parts" msgstr "" #: company/templates/company/manufacturer_part.html:136 #: company/templates/company/manufacturer_part.html:183 -#: part/templates/part/detail.html:366 part/templates/part/detail.html:396 +#: part/templates/part/detail.html:371 part/templates/part/detail.html:401 #: templates/js/translated/forms.js:453 templates/js/translated/helpers.js:33 #: users/models.py:220 msgid "Delete" @@ -3252,12 +3257,12 @@ msgstr "" #: company/templates/company/manufacturer_part.html:166 #: company/templates/company/manufacturer_part_sidebar.html:5 #: part/templates/part/category_sidebar.html:19 -#: part/templates/part/detail.html:181 part/templates/part/part_sidebar.html:8 +#: part/templates/part/detail.html:186 part/templates/part/part_sidebar.html:8 msgid "Parameters" msgstr "" #: company/templates/company/manufacturer_part.html:170 -#: part/templates/part/detail.html:186 +#: part/templates/part/detail.html:191 #: templates/InvenTree/settings/category.html:12 #: templates/InvenTree/settings/part.html:68 msgid "New Parameter" @@ -3268,7 +3273,7 @@ msgid "Delete parameters" msgstr "" #: company/templates/company/manufacturer_part.html:245 -#: part/templates/part/detail.html:826 +#: part/templates/part/detail.html:840 msgid "Add Parameter" msgstr "" @@ -3291,7 +3296,7 @@ msgstr "" #: company/templates/company/supplier_part.html:7 #: company/templates/company/supplier_part.html:24 stock/models.py:607 #: stock/templates/stock/item_base.html:238 -#: templates/js/translated/company.js:909 templates/js/translated/order.js:935 +#: templates/js/translated/company.js:909 templates/js/translated/order.js:974 #: templates/js/translated/stock.js:1933 msgid "Supplier Part" msgstr "" @@ -3303,7 +3308,7 @@ msgstr "" #: company/templates/company/supplier_part.html:40 #: company/templates/company/supplier_part.html:41 #: company/templates/company/supplier_part.html:187 -#: part/templates/part/detail.html:83 +#: part/templates/part/detail.html:88 msgid "Order Part" msgstr "" @@ -3358,7 +3363,7 @@ msgstr "" #: company/templates/company/supplier_part.html:212 #: company/templates/company/supplier_part.html:326 -#: part/templates/part/prices.html:276 templates/js/translated/part.js:2233 +#: part/templates/part/prices.html:276 templates/js/translated/part.js:2229 msgid "Add Price Break" msgstr "" @@ -3367,12 +3372,12 @@ msgid "No price break information found" msgstr "" #: company/templates/company/supplier_part.html:252 -#: templates/js/translated/part.js:2243 +#: templates/js/translated/part.js:2239 msgid "Delete Price Break" msgstr "" #: company/templates/company/supplier_part.html:266 -#: templates/js/translated/part.js:2257 +#: templates/js/translated/part.js:2253 msgid "Edit Price Break" msgstr "" @@ -3398,10 +3403,9 @@ msgstr "" #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:151 #: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751 -#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460 -#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754 -#: templates/navbar.html:31 +#: templates/js/translated/part.js:751 templates/js/translated/part.js:1299 +#: templates/js/translated/part.js:1460 templates/js/translated/stock.js:959 +#: templates/js/translated/stock.js:1754 templates/navbar.html:31 msgid "Stock" msgstr "" @@ -3554,7 +3558,7 @@ msgid "Company from which the items are being ordered" msgstr "" #: order/models.py:262 order/templates/order/order_base.html:124 -#: templates/js/translated/order.js:1716 +#: templates/js/translated/order.js:1755 msgid "Supplier Reference" msgstr "" @@ -3611,7 +3615,7 @@ msgid "Target date for order completion. Order will be overdue after this date." msgstr "" #: order/models.py:652 order/models.py:1204 -#: templates/js/translated/order.js:2560 templates/js/translated/order.js:2722 +#: templates/js/translated/order.js:2599 templates/js/translated/order.js:2761 msgid "Shipment Date" msgstr "" @@ -3673,7 +3677,7 @@ msgstr "" #: order/models.py:983 order/models.py:1063 order/models.py:1104 #: order/models.py:1198 order/models.py:1330 -#: templates/js/translated/order.js:3178 +#: templates/js/translated/order.js:3217 msgid "Order" msgstr "" @@ -3683,7 +3687,7 @@ msgstr "" #: report/templates/report/inventree_po_report.html:76 #: stock/templates/stock/item_base.html:184 #: templates/email/overdue_purchase_order.html:15 -#: templates/js/translated/order.js:936 templates/js/translated/order.js:1691 +#: templates/js/translated/order.js:975 templates/js/translated/order.js:1730 #: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913 #: templates/js/translated/stock.js:2540 msgid "Purchase Order" @@ -3694,7 +3698,7 @@ msgid "Supplier part" msgstr "" #: order/models.py:1009 order/templates/order/order_base.html:169 -#: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073 +#: templates/js/translated/order.js:1429 templates/js/translated/order.js:2112 #: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091 #: templates/js/translated/table_filters.js:338 msgid "Received" @@ -3880,11 +3884,11 @@ msgstr "" msgid "Select destination location for received items" msgstr "" -#: order/serializers.py:448 templates/js/translated/order.js:1248 +#: order/serializers.py:448 templates/js/translated/order.js:1287 msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:456 templates/js/translated/order.js:1259 +#: order/serializers.py:456 templates/js/translated/order.js:1298 msgid "Enter serial numbers for incoming stock items" msgstr "" @@ -4061,10 +4065,6 @@ msgstr "" msgid "Total cost could not be calculated" msgstr "" -#: order/templates/order/order_base.html:243 -msgid "Edit Purchase Order" -msgstr "" - #: order/templates/order/order_wizard/match_parts.html:12 #: part/templates/part/import_wizard/ajax_match_references.html:12 #: part/templates/part/import_wizard/match_references.html:12 @@ -4091,10 +4091,10 @@ msgstr "" #: part/templates/part/import_wizard/ajax_match_fields.html:64 #: part/templates/part/import_wizard/ajax_match_references.html:42 #: part/templates/part/import_wizard/match_references.html:49 -#: templates/js/translated/bom.js:77 templates/js/translated/build.js:431 -#: templates/js/translated/build.js:583 templates/js/translated/build.js:1974 -#: templates/js/translated/order.js:884 templates/js/translated/order.js:1337 -#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625 +#: templates/js/translated/bom.js:77 templates/js/translated/build.js:463 +#: templates/js/translated/build.js:615 templates/js/translated/build.js:2007 +#: templates/js/translated/order.js:923 templates/js/translated/order.js:1376 +#: templates/js/translated/order.js:2836 templates/js/translated/stock.js:625 #: templates/js/translated/stock.js:793 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" @@ -4130,7 +4130,7 @@ msgstr "" #: order/templates/order/purchase_order_detail.html:26 #: order/templates/order/sales_order_detail.html:22 #: order/templates/order/sales_order_detail.html:255 -#: templates/js/translated/order.js:557 +#: templates/js/translated/order.js:596 msgid "Add Line Item" msgstr "" @@ -4176,7 +4176,7 @@ msgid "Print packing list" msgstr "" #: order/templates/order/sales_order_base.html:60 -#: templates/js/translated/order.js:229 +#: templates/js/translated/order.js:230 msgid "Complete Shipments" msgstr "" @@ -4190,7 +4190,7 @@ msgid "This Sales Order has not been fully allocated" msgstr "" #: order/templates/order/sales_order_base.html:123 -#: templates/js/translated/order.js:2526 +#: templates/js/translated/order.js:2565 msgid "Customer Reference" msgstr "" @@ -4214,8 +4214,8 @@ msgid "Pending Shipments" msgstr "" #: order/templates/order/sales_order_detail.html:72 -#: templates/attachment_table.html:6 templates/js/translated/bom.js:1110 -#: templates/js/translated/build.js:1882 +#: templates/attachment_table.html:6 templates/js/translated/bom.js:1108 +#: templates/js/translated/build.js:1915 msgid "Actions" msgstr "" @@ -4257,35 +4257,35 @@ msgstr "" msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:584 +#: part/api.py:621 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:704 +#: part/api.py:758 msgid "Valid" msgstr "" -#: part/api.py:705 +#: part/api.py:759 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:711 +#: part/api.py:765 msgid "This option must be selected" msgstr "" -#: part/api.py:1134 +#: part/api.py:1188 msgid "Must be greater than zero" msgstr "" -#: part/api.py:1138 +#: part/api.py:1192 msgid "Must be a valid quantity" msgstr "" -#: part/api.py:1153 +#: part/api.py:1207 msgid "Specify location for initial part stock" msgstr "" -#: part/api.py:1184 part/api.py:1188 part/api.py:1203 part/api.py:1207 +#: part/api.py:1238 part/api.py:1242 part/api.py:1257 part/api.py:1261 msgid "This field is required" msgstr "" @@ -4299,14 +4299,14 @@ msgid "Total Stock" msgstr "" #: part/bom.py:129 part/templates/part/part_base.html:189 -#: templates/js/translated/order.js:3618 +#: templates/js/translated/order.js:3657 msgid "Available Stock" msgstr "" #: part/bom.py:130 part/templates/part/part_base.html:207 -#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590 +#: templates/js/translated/bom.js:945 templates/js/translated/part.js:590 #: templates/js/translated/part.js:610 templates/js/translated/part.js:1302 -#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490 +#: templates/js/translated/part.js:1483 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "" @@ -4335,7 +4335,7 @@ msgstr "" msgid "Icon (optional)" msgstr "" -#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16 +#: part/models.py:122 part/models.py:2509 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" @@ -4352,7 +4352,7 @@ msgstr "" #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82 #: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:1955 templates/js/translated/search.js:144 +#: templates/js/translated/part.js:1951 templates/js/translated/search.js:144 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "" @@ -4382,7 +4382,7 @@ msgstr "" msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:745 part/models.py:2516 +#: part/models.py:745 part/models.py:2563 msgid "Part name" msgstr "" @@ -4415,11 +4415,11 @@ msgstr "" msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:783 part/models.py:2218 part/models.py:2461 +#: part/models.py:783 part/models.py:2265 part/models.py:2508 #: part/templates/part/part_base.html:257 #: templates/InvenTree/settings/settings.html:232 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1668 +#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1664 msgid "Category" msgstr "" @@ -4530,245 +4530,245 @@ msgstr "" msgid "Creation User" msgstr "" -#: part/models.py:1744 +#: part/models.py:1791 msgid "Sell multiple" msgstr "" -#: part/models.py:2265 +#: part/models.py:2312 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:2282 +#: part/models.py:2329 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:2302 templates/js/translated/part.js:2006 +#: part/models.py:2349 templates/js/translated/part.js:2002 #: templates/js/translated/stock.js:1340 msgid "Test Name" msgstr "" -#: part/models.py:2303 +#: part/models.py:2350 msgid "Enter a name for the test" msgstr "" -#: part/models.py:2308 +#: part/models.py:2355 msgid "Test Description" msgstr "" -#: part/models.py:2309 +#: part/models.py:2356 msgid "Enter description for this test" msgstr "" -#: part/models.py:2314 templates/js/translated/part.js:2015 +#: part/models.py:2361 templates/js/translated/part.js:2011 #: templates/js/translated/table_filters.js:302 msgid "Required" msgstr "" -#: part/models.py:2315 +#: part/models.py:2362 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:2320 templates/js/translated/part.js:2023 +#: part/models.py:2367 templates/js/translated/part.js:2019 msgid "Requires Value" msgstr "" -#: part/models.py:2321 +#: part/models.py:2368 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:2326 templates/js/translated/part.js:2030 +#: part/models.py:2373 templates/js/translated/part.js:2026 msgid "Requires Attachment" msgstr "" -#: part/models.py:2327 +#: part/models.py:2374 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:2335 +#: part/models.py:2382 #, python-brace-format msgid "Illegal character in template name ({c})" msgstr "" -#: part/models.py:2371 +#: part/models.py:2418 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:2379 +#: part/models.py:2426 msgid "Parameter Name" msgstr "" -#: part/models.py:2386 +#: part/models.py:2433 msgid "Parameter Units" msgstr "" -#: part/models.py:2417 +#: part/models.py:2464 msgid "Parent Part" msgstr "" -#: part/models.py:2419 part/models.py:2467 part/models.py:2468 +#: part/models.py:2466 part/models.py:2514 part/models.py:2515 #: templates/InvenTree/settings/settings.html:227 msgid "Parameter Template" msgstr "" -#: part/models.py:2421 +#: part/models.py:2468 msgid "Data" msgstr "" -#: part/models.py:2421 +#: part/models.py:2468 msgid "Parameter Value" msgstr "" -#: part/models.py:2472 templates/InvenTree/settings/settings.html:236 +#: part/models.py:2519 templates/InvenTree/settings/settings.html:236 msgid "Default Value" msgstr "" -#: part/models.py:2473 +#: part/models.py:2520 msgid "Default Parameter Value" msgstr "" -#: part/models.py:2508 +#: part/models.py:2555 msgid "Part ID or part name" msgstr "" -#: part/models.py:2511 templates/js/translated/model_renderers.js:212 +#: part/models.py:2558 templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "" -#: part/models.py:2512 +#: part/models.py:2559 msgid "Unique part ID value" msgstr "" -#: part/models.py:2515 +#: part/models.py:2562 msgid "Part Name" msgstr "" -#: part/models.py:2519 +#: part/models.py:2566 msgid "Part IPN" msgstr "" -#: part/models.py:2520 +#: part/models.py:2567 msgid "Part IPN value" msgstr "" -#: part/models.py:2523 +#: part/models.py:2570 msgid "Level" msgstr "" -#: part/models.py:2524 +#: part/models.py:2571 msgid "BOM level" msgstr "" -#: part/models.py:2593 +#: part/models.py:2640 msgid "Select parent part" msgstr "" -#: part/models.py:2601 +#: part/models.py:2648 msgid "Sub part" msgstr "" -#: part/models.py:2602 +#: part/models.py:2649 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:2608 +#: part/models.py:2655 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:2610 part/templates/part/upload_bom.html:58 -#: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999 +#: part/models.py:2657 part/templates/part/upload_bom.html:58 +#: templates/js/translated/bom.js:872 templates/js/translated/bom.js:997 #: templates/js/translated/table_filters.js:100 msgid "Optional" msgstr "" -#: part/models.py:2610 +#: part/models.py:2657 msgid "This BOM item is optional" msgstr "" -#: part/models.py:2613 part/templates/part/upload_bom.html:55 +#: part/models.py:2660 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:2614 +#: part/models.py:2661 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:2617 +#: part/models.py:2664 msgid "BOM item reference" msgstr "" -#: part/models.py:2620 +#: part/models.py:2667 msgid "BOM item notes" msgstr "" -#: part/models.py:2622 +#: part/models.py:2669 msgid "Checksum" msgstr "" -#: part/models.py:2622 +#: part/models.py:2669 msgid "BOM line checksum" msgstr "" -#: part/models.py:2626 part/templates/part/upload_bom.html:57 -#: templates/js/translated/bom.js:1016 +#: part/models.py:2673 part/templates/part/upload_bom.html:57 +#: templates/js/translated/bom.js:1014 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:96 msgid "Inherited" msgstr "" -#: part/models.py:2627 +#: part/models.py:2674 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:2632 part/templates/part/upload_bom.html:56 -#: templates/js/translated/bom.js:1008 +#: part/models.py:2679 part/templates/part/upload_bom.html:56 +#: templates/js/translated/bom.js:1006 msgid "Allow Variants" msgstr "" -#: part/models.py:2633 +#: part/models.py:2680 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:2711 stock/models.py:468 +#: part/models.py:2758 stock/models.py:468 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:2720 part/models.py:2722 +#: part/models.py:2767 part/models.py:2769 msgid "Sub part must be specified" msgstr "" -#: part/models.py:2827 +#: part/models.py:2874 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:2848 +#: part/models.py:2895 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:2861 +#: part/models.py:2908 msgid "Parent BOM item" msgstr "" -#: part/models.py:2869 +#: part/models.py:2916 msgid "Substitute part" msgstr "" -#: part/models.py:2884 +#: part/models.py:2931 msgid "Part 1" msgstr "" -#: part/models.py:2888 +#: part/models.py:2935 msgid "Part 2" msgstr "" -#: part/models.py:2888 +#: part/models.py:2935 msgid "Select Related Part" msgstr "" -#: part/models.py:2906 +#: part/models.py:2953 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:2910 +#: part/models.py:2957 msgid "Duplicate relationship already exists" msgstr "" @@ -4876,7 +4876,7 @@ msgstr "" msgid "The BOM for %(part)s has not been validated." msgstr "" -#: part/templates/part/bom.html:30 part/templates/part/detail.html:264 +#: part/templates/part/bom.html:30 part/templates/part/detail.html:269 msgid "BOM actions" msgstr "" @@ -4945,8 +4945,8 @@ msgstr "" msgid "New Part" msgstr "" -#: part/templates/part/category.html:174 part/templates/part/detail.html:363 -#: part/templates/part/detail.html:394 +#: part/templates/part/category.html:174 part/templates/part/detail.html:368 +#: part/templates/part/detail.html:399 msgid "Options" msgstr "" @@ -5014,138 +5014,146 @@ msgstr "" msgid "Part Stock" msgstr "" -#: part/templates/part/detail.html:54 -msgid "Part Test Templates" +#: part/templates/part/detail.html:44 +msgid "Refresh scheduling data" +msgstr "" + +#: part/templates/part/detail.html:45 templates/js/translated/tables.js:558 +msgid "Refresh" msgstr "" #: part/templates/part/detail.html:59 +msgid "Part Test Templates" +msgstr "" + +#: part/templates/part/detail.html:64 msgid "Add Test Template" msgstr "" -#: part/templates/part/detail.html:116 stock/templates/stock/item.html:53 +#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53 msgid "Sales Order Allocations" msgstr "" -#: part/templates/part/detail.html:138 +#: part/templates/part/detail.html:143 msgid "Part Notes" msgstr "" -#: part/templates/part/detail.html:153 +#: part/templates/part/detail.html:158 msgid "Part Variants" msgstr "" -#: part/templates/part/detail.html:157 +#: part/templates/part/detail.html:162 msgid "Create new variant" msgstr "" -#: part/templates/part/detail.html:158 +#: part/templates/part/detail.html:163 msgid "New Variant" msgstr "" -#: part/templates/part/detail.html:185 +#: part/templates/part/detail.html:190 msgid "Add new parameter" msgstr "" -#: part/templates/part/detail.html:222 part/templates/part/part_sidebar.html:54 +#: part/templates/part/detail.html:227 part/templates/part/part_sidebar.html:54 msgid "Related Parts" msgstr "" -#: part/templates/part/detail.html:226 part/templates/part/detail.html:227 +#: part/templates/part/detail.html:231 part/templates/part/detail.html:232 msgid "Add Related" msgstr "" -#: part/templates/part/detail.html:247 part/templates/part/part_sidebar.html:17 +#: part/templates/part/detail.html:252 part/templates/part/part_sidebar.html:17 msgid "Bill of Materials" msgstr "" -#: part/templates/part/detail.html:252 +#: part/templates/part/detail.html:257 msgid "Export actions" msgstr "" -#: part/templates/part/detail.html:256 templates/js/translated/bom.js:284 +#: part/templates/part/detail.html:261 templates/js/translated/bom.js:284 msgid "Export BOM" msgstr "" -#: part/templates/part/detail.html:258 +#: part/templates/part/detail.html:263 msgid "Print BOM Report" msgstr "" -#: part/templates/part/detail.html:268 +#: part/templates/part/detail.html:273 msgid "Upload BOM" msgstr "" -#: part/templates/part/detail.html:269 templates/js/translated/part.js:274 +#: part/templates/part/detail.html:274 templates/js/translated/part.js:274 msgid "Copy BOM" msgstr "" -#: part/templates/part/detail.html:270 +#: part/templates/part/detail.html:275 msgid "Validate BOM" msgstr "" -#: part/templates/part/detail.html:275 +#: part/templates/part/detail.html:280 msgid "New BOM Item" msgstr "" -#: part/templates/part/detail.html:276 +#: part/templates/part/detail.html:281 msgid "Add BOM Item" msgstr "" -#: part/templates/part/detail.html:289 +#: part/templates/part/detail.html:294 msgid "Assemblies" msgstr "" -#: part/templates/part/detail.html:307 +#: part/templates/part/detail.html:312 msgid "Part Builds" msgstr "" -#: part/templates/part/detail.html:334 stock/templates/stock/item.html:38 +#: part/templates/part/detail.html:339 stock/templates/stock/item.html:38 msgid "Build Order Allocations" msgstr "" -#: part/templates/part/detail.html:350 +#: part/templates/part/detail.html:355 msgid "Part Suppliers" msgstr "" -#: part/templates/part/detail.html:380 +#: part/templates/part/detail.html:385 msgid "Part Manufacturers" msgstr "" -#: part/templates/part/detail.html:396 +#: part/templates/part/detail.html:401 msgid "Delete manufacturer parts" msgstr "" -#: part/templates/part/detail.html:612 +#: part/templates/part/detail.html:626 msgid "Create BOM Item" msgstr "" -#: part/templates/part/detail.html:656 +#: part/templates/part/detail.html:670 msgid "Related Part" msgstr "" -#: part/templates/part/detail.html:664 +#: part/templates/part/detail.html:678 msgid "Add Related Part" msgstr "" -#: part/templates/part/detail.html:756 +#: part/templates/part/detail.html:770 msgid "Add Test Result Template" msgstr "" -#: part/templates/part/detail.html:900 +#: part/templates/part/detail.html:914 #, python-format msgid "Purchase Unit Price - %(currency)s" msgstr "" -#: part/templates/part/detail.html:912 +#: part/templates/part/detail.html:926 #, python-format msgid "Unit Price-Cost Difference - %(currency)s" msgstr "" -#: part/templates/part/detail.html:924 +#: part/templates/part/detail.html:938 #, python-format msgid "Supplier Unit Cost - %(currency)s" msgstr "" -#: part/templates/part/detail.html:1013 +#: part/templates/part/detail.html:1027 #, python-format msgid "Unit Price - %(currency)s" msgstr "" @@ -5321,13 +5329,13 @@ msgstr "" msgid "Allocated to Sales Orders" msgstr "" -#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1037 +#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1035 msgid "Can Build" msgstr "" #: part/templates/part/part_base.html:238 templates/js/translated/part.js:593 #: templates/js/translated/part.js:613 templates/js/translated/part.js:1306 -#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1494 +#: templates/js/translated/part.js:1490 msgid "Building" msgstr "" @@ -5379,7 +5387,7 @@ msgid "Total Cost" msgstr "" #: part/templates/part/part_pricing.html:40 part/templates/part/prices.html:43 -#: templates/js/translated/bom.js:991 +#: templates/js/translated/bom.js:989 msgid "No supplier pricing available" msgstr "" @@ -5414,6 +5422,18 @@ msgstr "" msgid "No pricing information is available for this part." msgstr "" +#: part/templates/part/part_scheduling.html:13 +#: report/templates/report/inventree_test_report_base.html:97 +#: templates/InvenTree/settings/plugin.html:53 +#: templates/InvenTree/settings/plugin_settings.html:38 +#: templates/js/translated/order.js:1772 templates/js/translated/stock.js:2468 +msgid "Date" +msgstr "" + +#: part/templates/part/part_scheduling.html:14 +msgid "Scheduled Quantity" +msgstr "" + #: part/templates/part/part_sidebar.html:11 msgid "Variants" msgstr "" @@ -5462,7 +5482,7 @@ msgstr "" msgid "Calculation parameters" msgstr "" -#: part/templates/part/prices.html:160 templates/js/translated/bom.js:985 +#: part/templates/part/prices.html:160 templates/js/translated/bom.js:983 msgid "Supplier Cost" msgstr "" @@ -5501,7 +5521,7 @@ msgid "No sale pice history available for this part." msgstr "" #: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616 -#: templates/js/translated/part.js:1294 templates/js/translated/part.js:1498 +#: templates/js/translated/part.js:1294 msgid "No Stock" msgstr "" @@ -5893,11 +5913,11 @@ msgstr "" #: report/templates/report/inventree_test_report_base.html:79 #: stock/models.py:648 stock/templates/stock/item_base.html:322 -#: templates/js/translated/build.js:424 templates/js/translated/build.js:576 -#: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673 +#: templates/js/translated/build.js:456 templates/js/translated/build.js:608 +#: templates/js/translated/build.js:1208 templates/js/translated/build.js:1705 #: templates/js/translated/model_renderers.js:118 -#: templates/js/translated/order.js:118 templates/js/translated/order.js:3297 -#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490 +#: templates/js/translated/order.js:119 templates/js/translated/order.js:3336 +#: templates/js/translated/order.js:3423 templates/js/translated/stock.js:490 msgid "Serial Number" msgstr "" @@ -5915,13 +5935,6 @@ msgstr "" msgid "Result" msgstr "" -#: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:53 -#: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468 -msgid "Date" -msgstr "" - #: report/templates/report/inventree_test_report_base.html:108 msgid "Pass" msgstr "" @@ -6519,7 +6532,7 @@ msgid "Available Quantity" msgstr "" #: stock/templates/stock/item_base.html:394 -#: templates/js/translated/build.js:1695 +#: templates/js/translated/build.js:1727 msgid "No location set" msgstr "" @@ -7702,7 +7715,7 @@ msgid "The following parts are low on required stock" msgstr "" #: templates/email/build_order_required_stock.html:18 -#: templates/js/translated/bom.js:1483 +#: templates/js/translated/bom.js:1481 msgid "Required Quantity" msgstr "" @@ -7716,6 +7729,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:19 +#: templates/js/translated/part.js:2498 msgid "Minimum Quantity" msgstr "" @@ -7917,10 +7931,10 @@ msgstr "" msgid "Row Data" msgstr "" -#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:622 +#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:620 #: templates/js/translated/modals.js:56 templates/js/translated/modals.js:601 #: templates/js/translated/modals.js:695 templates/js/translated/modals.js:1003 -#: templates/js/translated/order.js:979 templates/modals.html:15 +#: templates/js/translated/order.js:1018 templates/modals.html:15 #: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50 msgid "Close" msgstr "" @@ -7930,12 +7944,12 @@ msgid "Download BOM Template" msgstr "" #: templates/js/translated/bom.js:253 templates/js/translated/bom.js:287 -#: templates/js/translated/order.js:760 templates/js/translated/tables.js:145 +#: templates/js/translated/order.js:799 templates/js/translated/tables.js:145 msgid "Format" msgstr "" #: templates/js/translated/bom.js:254 templates/js/translated/bom.js:288 -#: templates/js/translated/order.js:761 +#: templates/js/translated/order.js:800 msgid "Select file format" msgstr "" @@ -7991,390 +8005,390 @@ msgstr "" msgid "Remove substitute part" msgstr "" -#: templates/js/translated/bom.js:567 +#: templates/js/translated/bom.js:565 msgid "Select and add a new substitute part using the input below" msgstr "" -#: templates/js/translated/bom.js:578 +#: templates/js/translated/bom.js:576 msgid "Are you sure you wish to remove this substitute part link?" msgstr "" -#: templates/js/translated/bom.js:584 +#: templates/js/translated/bom.js:582 msgid "Remove Substitute Part" msgstr "" -#: templates/js/translated/bom.js:623 +#: templates/js/translated/bom.js:621 msgid "Add Substitute" msgstr "" -#: templates/js/translated/bom.js:624 +#: templates/js/translated/bom.js:622 msgid "Edit BOM Item Substitutes" msgstr "" -#: templates/js/translated/bom.js:686 +#: templates/js/translated/bom.js:684 msgid "All selected BOM items will be deleted" msgstr "" -#: templates/js/translated/bom.js:702 +#: templates/js/translated/bom.js:700 msgid "Delete selected BOM items?" msgstr "" -#: templates/js/translated/bom.js:821 +#: templates/js/translated/bom.js:819 msgid "Load BOM for subassembly" msgstr "" -#: templates/js/translated/bom.js:831 +#: templates/js/translated/bom.js:829 msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:835 templates/js/translated/build.js:1771 +#: templates/js/translated/bom.js:833 templates/js/translated/build.js:1803 msgid "Variant stock allowed" msgstr "" -#: templates/js/translated/bom.js:929 templates/js/translated/build.js:1816 -#: templates/js/translated/order.js:3632 +#: templates/js/translated/bom.js:927 templates/js/translated/build.js:1849 +#: templates/js/translated/order.js:3671 msgid "No Stock Available" msgstr "" -#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1820 +#: templates/js/translated/bom.js:932 templates/js/translated/build.js:1853 msgid "Includes variant and substitute stock" msgstr "" -#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822 +#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1855 #: templates/js/translated/part.js:763 msgid "Includes variant stock" msgstr "" -#: templates/js/translated/bom.js:938 templates/js/translated/build.js:1824 +#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1857 msgid "Includes substitute stock" msgstr "" -#: templates/js/translated/bom.js:956 +#: templates/js/translated/bom.js:954 msgid "Substitutes" msgstr "" -#: templates/js/translated/bom.js:971 +#: templates/js/translated/bom.js:969 msgid "Purchase Price Range" msgstr "" -#: templates/js/translated/bom.js:978 +#: templates/js/translated/bom.js:976 msgid "Purchase Price Average" msgstr "" -#: templates/js/translated/bom.js:1027 templates/js/translated/bom.js:1147 +#: templates/js/translated/bom.js:1025 templates/js/translated/bom.js:1145 msgid "View BOM" msgstr "" -#: templates/js/translated/bom.js:1054 +#: templates/js/translated/bom.js:1052 msgid "Including On Order" msgstr "" -#: templates/js/translated/bom.js:1118 +#: templates/js/translated/bom.js:1116 msgid "Validate BOM Item" msgstr "" -#: templates/js/translated/bom.js:1120 +#: templates/js/translated/bom.js:1118 msgid "This line has been validated" msgstr "" -#: templates/js/translated/bom.js:1122 +#: templates/js/translated/bom.js:1120 msgid "Edit substitute parts" msgstr "" -#: templates/js/translated/bom.js:1124 templates/js/translated/bom.js:1286 +#: templates/js/translated/bom.js:1122 templates/js/translated/bom.js:1284 msgid "Edit BOM Item" msgstr "" -#: templates/js/translated/bom.js:1126 +#: templates/js/translated/bom.js:1124 msgid "Delete BOM Item" msgstr "" -#: templates/js/translated/bom.js:1222 templates/js/translated/build.js:1617 +#: templates/js/translated/bom.js:1220 templates/js/translated/build.js:1649 msgid "No BOM items found" msgstr "" -#: templates/js/translated/bom.js:1466 templates/js/translated/build.js:1755 +#: templates/js/translated/bom.js:1464 templates/js/translated/build.js:1787 msgid "Required Part" msgstr "" -#: templates/js/translated/bom.js:1488 +#: templates/js/translated/bom.js:1486 msgid "Inherited from parent BOM" msgstr "" -#: templates/js/translated/build.js:86 +#: templates/js/translated/build.js:89 msgid "Edit Build Order" msgstr "" -#: templates/js/translated/build.js:120 +#: templates/js/translated/build.js:132 msgid "Create Build Order" msgstr "" -#: templates/js/translated/build.js:133 +#: templates/js/translated/build.js:165 msgid "Cancel Build Order" msgstr "" -#: templates/js/translated/build.js:142 +#: templates/js/translated/build.js:174 msgid "Are you sure you wish to cancel this build?" msgstr "" -#: templates/js/translated/build.js:148 +#: templates/js/translated/build.js:180 msgid "Stock items have been allocated to this build order" msgstr "" -#: templates/js/translated/build.js:155 +#: templates/js/translated/build.js:187 msgid "There are incomplete outputs remaining for this build order" msgstr "" -#: templates/js/translated/build.js:185 +#: templates/js/translated/build.js:217 msgid "Build order is ready to be completed" msgstr "" -#: templates/js/translated/build.js:190 +#: templates/js/translated/build.js:222 msgid "Build Order is incomplete" msgstr "" -#: templates/js/translated/build.js:222 +#: templates/js/translated/build.js:254 msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:263 templates/js/translated/stock.js:92 +#: templates/js/translated/build.js:295 templates/js/translated/stock.js:92 #: templates/js/translated/stock.js:214 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:265 templates/js/translated/stock.js:94 +#: templates/js/translated/build.js:297 templates/js/translated/stock.js:94 #: templates/js/translated/stock.js:216 msgid "Latest serial number" msgstr "" -#: templates/js/translated/build.js:274 +#: templates/js/translated/build.js:306 msgid "The Bill of Materials contains trackable parts" msgstr "" -#: templates/js/translated/build.js:275 +#: templates/js/translated/build.js:307 msgid "Build outputs must be generated individually" msgstr "" -#: templates/js/translated/build.js:283 +#: templates/js/translated/build.js:315 msgid "Trackable parts can have serial numbers specified" msgstr "" -#: templates/js/translated/build.js:284 +#: templates/js/translated/build.js:316 msgid "Enter serial numbers to generate multiple single build outputs" msgstr "" -#: templates/js/translated/build.js:291 +#: templates/js/translated/build.js:323 msgid "Create Build Output" msgstr "" -#: templates/js/translated/build.js:322 +#: templates/js/translated/build.js:354 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:333 +#: templates/js/translated/build.js:365 msgid "Unallocate stock from build output" msgstr "" -#: templates/js/translated/build.js:342 +#: templates/js/translated/build.js:374 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:350 +#: templates/js/translated/build.js:382 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:373 +#: templates/js/translated/build.js:405 msgid "Are you sure you wish to unallocate stock items from this build?" msgstr "" -#: templates/js/translated/build.js:391 +#: templates/js/translated/build.js:423 msgid "Unallocate Stock Items" msgstr "" -#: templates/js/translated/build.js:411 templates/js/translated/build.js:563 +#: templates/js/translated/build.js:443 templates/js/translated/build.js:595 msgid "Select Build Outputs" msgstr "" -#: templates/js/translated/build.js:412 templates/js/translated/build.js:564 +#: templates/js/translated/build.js:444 templates/js/translated/build.js:596 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:466 templates/js/translated/build.js:618 +#: templates/js/translated/build.js:498 templates/js/translated/build.js:650 msgid "Output" msgstr "" -#: templates/js/translated/build.js:484 +#: templates/js/translated/build.js:516 msgid "Complete Build Outputs" msgstr "" -#: templates/js/translated/build.js:631 +#: templates/js/translated/build.js:663 msgid "Delete Build Outputs" msgstr "" -#: templates/js/translated/build.js:720 +#: templates/js/translated/build.js:752 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:757 +#: templates/js/translated/build.js:789 msgid "Location not specified" msgstr "" -#: templates/js/translated/build.js:1136 +#: templates/js/translated/build.js:1168 msgid "No active build outputs found" msgstr "" -#: templates/js/translated/build.js:1205 +#: templates/js/translated/build.js:1237 msgid "Allocated Stock" msgstr "" -#: templates/js/translated/build.js:1212 +#: templates/js/translated/build.js:1244 msgid "No tracked BOM items for this build" msgstr "" -#: templates/js/translated/build.js:1234 +#: templates/js/translated/build.js:1266 msgid "Completed Tests" msgstr "" -#: templates/js/translated/build.js:1239 +#: templates/js/translated/build.js:1271 msgid "No required tests for this build" msgstr "" -#: templates/js/translated/build.js:1712 templates/js/translated/build.js:2656 -#: templates/js/translated/order.js:3332 +#: templates/js/translated/build.js:1744 templates/js/translated/build.js:2689 +#: templates/js/translated/order.js:3371 msgid "Edit stock allocation" msgstr "" -#: templates/js/translated/build.js:1714 templates/js/translated/build.js:2657 -#: templates/js/translated/order.js:3333 +#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2690 +#: templates/js/translated/order.js:3372 msgid "Delete stock allocation" msgstr "" -#: templates/js/translated/build.js:1732 +#: templates/js/translated/build.js:1764 msgid "Edit Allocation" msgstr "" -#: templates/js/translated/build.js:1742 +#: templates/js/translated/build.js:1774 msgid "Remove Allocation" msgstr "" -#: templates/js/translated/build.js:1767 +#: templates/js/translated/build.js:1799 msgid "Substitute parts available" msgstr "" -#: templates/js/translated/build.js:1784 +#: templates/js/translated/build.js:1816 msgid "Quantity Per" msgstr "" -#: templates/js/translated/build.js:1810 templates/js/translated/order.js:3639 +#: templates/js/translated/build.js:1843 templates/js/translated/order.js:3678 msgid "Insufficient stock available" msgstr "" -#: templates/js/translated/build.js:1812 templates/js/translated/order.js:3637 +#: templates/js/translated/build.js:1845 templates/js/translated/order.js:3676 msgid "Sufficient stock available" msgstr "" -#: templates/js/translated/build.js:1841 templates/js/translated/build.js:2086 -#: templates/js/translated/build.js:2652 templates/js/translated/order.js:3651 +#: templates/js/translated/build.js:1874 templates/js/translated/build.js:2119 +#: templates/js/translated/build.js:2685 templates/js/translated/order.js:3690 msgid "Allocated" msgstr "" -#: templates/js/translated/build.js:1889 templates/js/translated/order.js:3731 +#: templates/js/translated/build.js:1922 templates/js/translated/order.js:3770 msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:1893 templates/stock_table.html:50 +#: templates/js/translated/build.js:1926 templates/stock_table.html:50 msgid "Order stock" msgstr "" -#: templates/js/translated/build.js:1896 templates/js/translated/order.js:3724 +#: templates/js/translated/build.js:1929 templates/js/translated/order.js:3763 msgid "Allocate stock" msgstr "" -#: templates/js/translated/build.js:1935 templates/js/translated/label.js:172 -#: templates/js/translated/order.js:807 templates/js/translated/order.js:2859 +#: templates/js/translated/build.js:1968 templates/js/translated/label.js:172 +#: templates/js/translated/order.js:846 templates/js/translated/order.js:2898 #: templates/js/translated/report.js:225 msgid "Select Parts" msgstr "" -#: templates/js/translated/build.js:1936 templates/js/translated/order.js:2860 +#: templates/js/translated/build.js:1969 templates/js/translated/order.js:2899 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1985 templates/js/translated/order.js:2808 +#: templates/js/translated/build.js:2018 templates/js/translated/order.js:2847 msgid "Specify stock allocation quantity" msgstr "" -#: templates/js/translated/build.js:2059 +#: templates/js/translated/build.js:2092 msgid "All Parts Allocated" msgstr "" -#: templates/js/translated/build.js:2060 +#: templates/js/translated/build.js:2093 msgid "All selected parts have been fully allocated" msgstr "" -#: templates/js/translated/build.js:2074 templates/js/translated/order.js:2874 +#: templates/js/translated/build.js:2107 templates/js/translated/order.js:2913 msgid "Select source location (leave blank to take from all locations)" msgstr "" -#: templates/js/translated/build.js:2102 +#: templates/js/translated/build.js:2135 msgid "Allocate Stock Items to Build Order" msgstr "" -#: templates/js/translated/build.js:2113 templates/js/translated/order.js:2971 +#: templates/js/translated/build.js:2146 templates/js/translated/order.js:3010 msgid "No matching stock locations" msgstr "" -#: templates/js/translated/build.js:2185 templates/js/translated/order.js:3048 +#: templates/js/translated/build.js:2218 templates/js/translated/order.js:3087 msgid "No matching stock items" msgstr "" -#: templates/js/translated/build.js:2282 +#: templates/js/translated/build.js:2315 msgid "Automatic Stock Allocation" msgstr "" -#: templates/js/translated/build.js:2283 +#: templates/js/translated/build.js:2316 msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines" msgstr "" -#: templates/js/translated/build.js:2285 +#: templates/js/translated/build.js:2318 msgid "If a location is specifed, stock will only be allocated from that location" msgstr "" -#: templates/js/translated/build.js:2286 +#: templates/js/translated/build.js:2319 msgid "If stock is considered interchangeable, it will be allocated from the first location it is found" msgstr "" -#: templates/js/translated/build.js:2287 +#: templates/js/translated/build.js:2320 msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found" msgstr "" -#: templates/js/translated/build.js:2308 +#: templates/js/translated/build.js:2341 msgid "Allocate Stock Items" msgstr "" -#: templates/js/translated/build.js:2414 +#: templates/js/translated/build.js:2447 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387 -#: templates/js/translated/part.js:1899 templates/js/translated/stock.js:1686 +#: templates/js/translated/build.js:2482 templates/js/translated/part.js:1387 +#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1686 #: templates/js/translated/stock.js:2386 msgid "Select" msgstr "" -#: templates/js/translated/build.js:2463 +#: templates/js/translated/build.js:2496 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:2491 +#: templates/js/translated/build.js:2524 msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647 +#: templates/js/translated/build.js:2560 templates/js/translated/stock.js:2647 msgid "No user information" msgstr "" -#: templates/js/translated/build.js:2633 +#: templates/js/translated/build.js:2666 msgid "No parts allocated for" msgstr "" @@ -8390,11 +8404,11 @@ msgstr "" msgid "Edit Manufacturer Part" msgstr "" -#: templates/js/translated/company.js:167 templates/js/translated/order.js:509 +#: templates/js/translated/company.js:167 templates/js/translated/order.js:510 msgid "Add Supplier" msgstr "" -#: templates/js/translated/company.js:195 templates/js/translated/order.js:628 +#: templates/js/translated/company.js:195 templates/js/translated/order.js:667 msgid "Add Supplier Part" msgstr "" @@ -8765,381 +8779,385 @@ msgstr "" msgid "Notifications will load here" msgstr "" -#: templates/js/translated/order.js:94 +#: templates/js/translated/order.js:95 msgid "No stock items have been allocated to this shipment" msgstr "" -#: templates/js/translated/order.js:99 +#: templates/js/translated/order.js:100 msgid "The following stock items will be shipped" msgstr "" -#: templates/js/translated/order.js:139 +#: templates/js/translated/order.js:140 msgid "Complete Shipment" msgstr "" -#: templates/js/translated/order.js:159 +#: templates/js/translated/order.js:160 msgid "Confirm Shipment" msgstr "" -#: templates/js/translated/order.js:215 +#: templates/js/translated/order.js:216 msgid "No pending shipments found" msgstr "" -#: templates/js/translated/order.js:219 +#: templates/js/translated/order.js:220 msgid "No stock items have been allocated to pending shipments" msgstr "" -#: templates/js/translated/order.js:251 +#: templates/js/translated/order.js:252 msgid "Skip" msgstr "" -#: templates/js/translated/order.js:281 +#: templates/js/translated/order.js:282 msgid "Complete Purchase Order" msgstr "" -#: templates/js/translated/order.js:287 +#: templates/js/translated/order.js:288 msgid "Mark this order as complete?" msgstr "" -#: templates/js/translated/order.js:293 +#: templates/js/translated/order.js:294 msgid "All line items have been received" msgstr "" -#: templates/js/translated/order.js:298 +#: templates/js/translated/order.js:299 msgid "This order has line items which have not been marked as received." msgstr "" -#: templates/js/translated/order.js:299 +#: templates/js/translated/order.js:300 msgid "Completing this order means that the order and line items will no longer be editable." msgstr "" -#: templates/js/translated/order.js:322 +#: templates/js/translated/order.js:323 msgid "Cancel Purchase Order" msgstr "" -#: templates/js/translated/order.js:327 +#: templates/js/translated/order.js:328 msgid "Are you sure you wish to cancel this purchase order?" msgstr "" -#: templates/js/translated/order.js:333 +#: templates/js/translated/order.js:334 msgid "This purchase order can not be cancelled" msgstr "" -#: templates/js/translated/order.js:356 +#: templates/js/translated/order.js:357 msgid "Issue Purchase Order" msgstr "" -#: templates/js/translated/order.js:361 +#: templates/js/translated/order.js:362 msgid "After placing this purchase order, line items will no longer be editable." msgstr "" -#: templates/js/translated/order.js:383 +#: templates/js/translated/order.js:384 msgid "Cancel Sales Order" msgstr "" -#: templates/js/translated/order.js:388 +#: templates/js/translated/order.js:389 msgid "Cancelling this order means that the order will no longer be editable." msgstr "" -#: templates/js/translated/order.js:442 +#: templates/js/translated/order.js:443 msgid "Create New Shipment" msgstr "" -#: templates/js/translated/order.js:467 +#: templates/js/translated/order.js:468 msgid "Add Customer" msgstr "" -#: templates/js/translated/order.js:492 +#: templates/js/translated/order.js:493 msgid "Create Sales Order" msgstr "" -#: templates/js/translated/order.js:757 +#: templates/js/translated/order.js:554 +msgid "Edit Purchase Order" +msgstr "" + +#: templates/js/translated/order.js:796 msgid "Export Order" msgstr "" -#: templates/js/translated/order.js:808 +#: templates/js/translated/order.js:847 msgid "At least one purchaseable part must be selected" msgstr "" -#: templates/js/translated/order.js:833 +#: templates/js/translated/order.js:872 msgid "Quantity to order" msgstr "" -#: templates/js/translated/order.js:842 +#: templates/js/translated/order.js:881 msgid "New supplier part" msgstr "" -#: templates/js/translated/order.js:860 +#: templates/js/translated/order.js:899 msgid "New purchase order" msgstr "" -#: templates/js/translated/order.js:893 +#: templates/js/translated/order.js:932 msgid "Add to purchase order" msgstr "" -#: templates/js/translated/order.js:1002 +#: templates/js/translated/order.js:1041 msgid "No matching supplier parts" msgstr "" -#: templates/js/translated/order.js:1017 +#: templates/js/translated/order.js:1056 msgid "No matching purchase orders" msgstr "" -#: templates/js/translated/order.js:1194 +#: templates/js/translated/order.js:1233 msgid "Select Line Items" msgstr "" -#: templates/js/translated/order.js:1195 +#: templates/js/translated/order.js:1234 msgid "At least one line item must be selected" msgstr "" -#: templates/js/translated/order.js:1215 templates/js/translated/order.js:1314 +#: templates/js/translated/order.js:1254 templates/js/translated/order.js:1353 msgid "Add batch code" msgstr "" -#: templates/js/translated/order.js:1221 templates/js/translated/order.js:1325 +#: templates/js/translated/order.js:1260 templates/js/translated/order.js:1364 msgid "Add serial numbers" msgstr "" -#: templates/js/translated/order.js:1233 +#: templates/js/translated/order.js:1272 msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144 +#: templates/js/translated/order.js:1336 templates/js/translated/stock.js:2144 msgid "Stock Status" msgstr "" -#: templates/js/translated/order.js:1388 +#: templates/js/translated/order.js:1427 msgid "Order Code" msgstr "" -#: templates/js/translated/order.js:1389 +#: templates/js/translated/order.js:1428 msgid "Ordered" msgstr "" -#: templates/js/translated/order.js:1391 +#: templates/js/translated/order.js:1430 msgid "Quantity to Receive" msgstr "" -#: templates/js/translated/order.js:1410 +#: templates/js/translated/order.js:1449 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/order.js:1411 +#: templates/js/translated/order.js:1450 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943 +#: templates/js/translated/order.js:1711 templates/js/translated/part.js:943 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/order.js:1699 templates/js/translated/order.js:2503 +#: templates/js/translated/order.js:1738 templates/js/translated/order.js:2542 msgid "Order is overdue" msgstr "" -#: templates/js/translated/order.js:1749 templates/js/translated/order.js:2568 -#: templates/js/translated/order.js:2709 +#: templates/js/translated/order.js:1788 templates/js/translated/order.js:2607 +#: templates/js/translated/order.js:2748 msgid "Items" msgstr "" -#: templates/js/translated/order.js:1847 templates/js/translated/order.js:3783 +#: templates/js/translated/order.js:1886 templates/js/translated/order.js:3822 msgid "Duplicate Line Item" msgstr "" -#: templates/js/translated/order.js:1864 templates/js/translated/order.js:3805 +#: templates/js/translated/order.js:1903 templates/js/translated/order.js:3844 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/order.js:1877 templates/js/translated/order.js:3816 +#: templates/js/translated/order.js:1916 templates/js/translated/order.js:3855 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/order.js:1920 +#: templates/js/translated/order.js:1959 msgid "No line items found" msgstr "" -#: templates/js/translated/order.js:1947 templates/js/translated/order.js:3517 +#: templates/js/translated/order.js:1986 templates/js/translated/order.js:3556 msgid "Total" msgstr "" -#: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203 -#: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050 -#: templates/js/translated/part.js:2135 templates/js/translated/part.js:2488 +#: templates/js/translated/order.js:2040 templates/js/translated/order.js:2242 +#: templates/js/translated/order.js:3581 templates/js/translated/order.js:4089 +#: templates/js/translated/part.js:2131 templates/js/translated/part.js:2703 msgid "Unit Price" msgstr "" -#: templates/js/translated/order.js:2016 templates/js/translated/order.js:2219 -#: templates/js/translated/order.js:3558 templates/js/translated/order.js:4066 +#: templates/js/translated/order.js:2055 templates/js/translated/order.js:2258 +#: templates/js/translated/order.js:3597 templates/js/translated/order.js:4105 msgid "Total Price" msgstr "" -#: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600 +#: templates/js/translated/order.js:2096 templates/js/translated/order.js:3639 #: templates/js/translated/part.js:1050 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096 +#: templates/js/translated/order.js:2155 templates/js/translated/part.js:1096 msgid "Receive line item" msgstr "" -#: templates/js/translated/order.js:2120 templates/js/translated/order.js:3737 +#: templates/js/translated/order.js:2159 templates/js/translated/order.js:3776 msgid "Duplicate line item" msgstr "" -#: templates/js/translated/order.js:2121 templates/js/translated/order.js:3738 +#: templates/js/translated/order.js:2160 templates/js/translated/order.js:3777 msgid "Edit line item" msgstr "" -#: templates/js/translated/order.js:2122 templates/js/translated/order.js:3742 +#: templates/js/translated/order.js:2161 templates/js/translated/order.js:3781 msgid "Delete line item" msgstr "" -#: templates/js/translated/order.js:2268 templates/js/translated/order.js:4115 +#: templates/js/translated/order.js:2307 templates/js/translated/order.js:4154 msgid "Duplicate line" msgstr "" -#: templates/js/translated/order.js:2269 templates/js/translated/order.js:4116 +#: templates/js/translated/order.js:2308 templates/js/translated/order.js:4155 msgid "Edit line" msgstr "" -#: templates/js/translated/order.js:2270 templates/js/translated/order.js:4117 +#: templates/js/translated/order.js:2309 templates/js/translated/order.js:4156 msgid "Delete line" msgstr "" -#: templates/js/translated/order.js:2300 templates/js/translated/order.js:4147 +#: templates/js/translated/order.js:2339 templates/js/translated/order.js:4186 msgid "Duplicate Line" msgstr "" -#: templates/js/translated/order.js:2321 templates/js/translated/order.js:4168 +#: templates/js/translated/order.js:2360 templates/js/translated/order.js:4207 msgid "Edit Line" msgstr "" -#: templates/js/translated/order.js:2332 templates/js/translated/order.js:4179 +#: templates/js/translated/order.js:2371 templates/js/translated/order.js:4218 msgid "Delete Line" msgstr "" -#: templates/js/translated/order.js:2343 +#: templates/js/translated/order.js:2382 msgid "No matching line" msgstr "" -#: templates/js/translated/order.js:2454 +#: templates/js/translated/order.js:2493 msgid "No sales orders found" msgstr "" -#: templates/js/translated/order.js:2517 +#: templates/js/translated/order.js:2556 msgid "Invalid Customer" msgstr "" -#: templates/js/translated/order.js:2615 +#: templates/js/translated/order.js:2654 msgid "Edit shipment" msgstr "" -#: templates/js/translated/order.js:2618 +#: templates/js/translated/order.js:2657 msgid "Complete shipment" msgstr "" -#: templates/js/translated/order.js:2623 +#: templates/js/translated/order.js:2662 msgid "Delete shipment" msgstr "" -#: templates/js/translated/order.js:2643 +#: templates/js/translated/order.js:2682 msgid "Edit Shipment" msgstr "" -#: templates/js/translated/order.js:2660 +#: templates/js/translated/order.js:2699 msgid "Delete Shipment" msgstr "" -#: templates/js/translated/order.js:2694 +#: templates/js/translated/order.js:2733 msgid "No matching shipments found" msgstr "" -#: templates/js/translated/order.js:2704 +#: templates/js/translated/order.js:2743 msgid "Shipment Reference" msgstr "" -#: templates/js/translated/order.js:2728 +#: templates/js/translated/order.js:2767 msgid "Not shipped" msgstr "" -#: templates/js/translated/order.js:2734 +#: templates/js/translated/order.js:2773 msgid "Tracking" msgstr "" -#: templates/js/translated/order.js:2738 +#: templates/js/translated/order.js:2777 msgid "Invoice" msgstr "" -#: templates/js/translated/order.js:2907 +#: templates/js/translated/order.js:2946 msgid "Add Shipment" msgstr "" -#: templates/js/translated/order.js:2958 +#: templates/js/translated/order.js:2997 msgid "Confirm stock allocation" msgstr "" -#: templates/js/translated/order.js:2959 +#: templates/js/translated/order.js:2998 msgid "Allocate Stock Items to Sales Order" msgstr "" -#: templates/js/translated/order.js:3167 +#: templates/js/translated/order.js:3206 msgid "No sales order allocations found" msgstr "" -#: templates/js/translated/order.js:3246 +#: templates/js/translated/order.js:3285 msgid "Edit Stock Allocation" msgstr "" -#: templates/js/translated/order.js:3263 +#: templates/js/translated/order.js:3302 msgid "Confirm Delete Operation" msgstr "" -#: templates/js/translated/order.js:3264 +#: templates/js/translated/order.js:3303 msgid "Delete Stock Allocation" msgstr "" -#: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398 +#: templates/js/translated/order.js:3348 templates/js/translated/order.js:3437 #: templates/js/translated/stock.js:1602 msgid "Shipped to customer" msgstr "" -#: templates/js/translated/order.js:3317 templates/js/translated/order.js:3407 +#: templates/js/translated/order.js:3356 templates/js/translated/order.js:3446 msgid "Stock location not specified" msgstr "" -#: templates/js/translated/order.js:3721 +#: templates/js/translated/order.js:3760 msgid "Allocate serial numbers" msgstr "" -#: templates/js/translated/order.js:3727 +#: templates/js/translated/order.js:3766 msgid "Purchase stock" msgstr "" -#: templates/js/translated/order.js:3734 templates/js/translated/order.js:3932 +#: templates/js/translated/order.js:3773 templates/js/translated/order.js:3971 msgid "Calculate price" msgstr "" -#: templates/js/translated/order.js:3746 +#: templates/js/translated/order.js:3785 msgid "Cannot be deleted as items have been shipped" msgstr "" -#: templates/js/translated/order.js:3749 +#: templates/js/translated/order.js:3788 msgid "Cannot be deleted as items have been allocated" msgstr "" -#: templates/js/translated/order.js:3831 +#: templates/js/translated/order.js:3870 msgid "Allocate Serial Numbers" msgstr "" -#: templates/js/translated/order.js:3940 +#: templates/js/translated/order.js:3979 msgid "Update Unit Price" msgstr "" -#: templates/js/translated/order.js:3954 +#: templates/js/translated/order.js:3993 msgid "No matching line items" msgstr "" -#: templates/js/translated/order.js:4190 +#: templates/js/translated/order.js:4229 msgid "No matching lines" msgstr "" @@ -9319,12 +9337,12 @@ msgstr "" msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:586 templates/js/translated/part.js:1470 +#: templates/js/translated/part.js:586 templates/js/translated/part.js:1478 #: templates/js/translated/table_filters.js:468 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:596 templates/js/translated/part.js:1482 +#: templates/js/translated/part.js:596 msgid "No stock available" msgstr "" @@ -9356,7 +9374,7 @@ msgstr "" msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1553 +#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1549 msgid "No parts found" msgstr "" @@ -9368,100 +9386,124 @@ msgstr "" msgid "No category" msgstr "" -#: templates/js/translated/part.js:1577 templates/js/translated/part.js:1820 +#: templates/js/translated/part.js:1476 +msgid "No stock" +msgstr "" + +#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816 #: templates/js/translated/stock.js:2347 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:1593 +#: templates/js/translated/part.js:1589 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:1659 +#: templates/js/translated/part.js:1655 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:1664 +#: templates/js/translated/part.js:1660 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:1669 +#: templates/js/translated/part.js:1665 msgid "Select Part Category" msgstr "" -#: templates/js/translated/part.js:1682 +#: templates/js/translated/part.js:1678 msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1839 templates/js/translated/stock.js:2366 +#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2366 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:1918 +#: templates/js/translated/part.js:1914 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:1934 +#: templates/js/translated/part.js:1930 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:1992 +#: templates/js/translated/part.js:1988 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2043 templates/js/translated/stock.js:1299 +#: templates/js/translated/part.js:2039 templates/js/translated/stock.js:1299 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:2044 templates/js/translated/stock.js:1300 +#: templates/js/translated/part.js:2040 templates/js/translated/stock.js:1300 #: templates/js/translated/stock.js:1560 msgid "Delete test result" msgstr "" -#: templates/js/translated/part.js:2050 +#: templates/js/translated/part.js:2046 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2072 +#: templates/js/translated/part.js:2068 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2086 +#: templates/js/translated/part.js:2082 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2111 +#: templates/js/translated/part.js:2107 #, python-brace-format msgid "No ${human_name} information found" msgstr "" -#: templates/js/translated/part.js:2168 +#: templates/js/translated/part.js:2164 #, python-brace-format msgid "Edit ${human_name}" msgstr "" -#: templates/js/translated/part.js:2169 +#: templates/js/translated/part.js:2165 #, python-brace-format msgid "Delete ${human_name}" msgstr "" -#: templates/js/translated/part.js:2283 -msgid "Current Stock" +#: templates/js/translated/part.js:2330 templates/js/translated/part.js:2331 +msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:2316 +#: templates/js/translated/part.js:2333 +msgid "Specified date is in the past" +msgstr "" + +#: templates/js/translated/part.js:2339 +msgid "Speculative" +msgstr "" + +#: templates/js/translated/part.js:2389 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2342 +#: templates/js/translated/part.js:2395 +msgid "Error fetching scheduling information for this part" +msgstr "" + +#: templates/js/translated/part.js:2491 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2412 +#: templates/js/translated/part.js:2507 +msgid "Maximum Quantity" +msgstr "" + +#: templates/js/translated/part.js:2533 +msgid "Minimum Stock Level" +msgstr "" + +#: templates/js/translated/part.js:2627 msgid "Single Price" msgstr "" -#: templates/js/translated/part.js:2431 +#: templates/js/translated/part.js:2646 msgid "Single Price Difference" msgstr "" @@ -10222,10 +10264,6 @@ msgstr "" msgid "Hide/Show pagination" msgstr "" -#: templates/js/translated/tables.js:558 -msgid "Refresh" -msgstr "" - #: templates/js/translated/tables.js:561 msgid "Toggle" msgstr "" diff --git a/InvenTree/locale/es_MX/LC_MESSAGES/django.po b/InvenTree/locale/es_MX/LC_MESSAGES/django.po index 4e340ab2d7..78294bbda5 100644 --- a/InvenTree/locale/es_MX/LC_MESSAGES/django.po +++ b/InvenTree/locale/es_MX/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-15 13:12+0000\n" +"POT-Creation-Date: 2022-08-17 06:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -37,15 +37,15 @@ msgstr "" #: order/templates/order/so_sidebar.html:17 #: part/templates/part/part_sidebar.html:59 #: report/templates/report/inventree_build_order_base.html:172 -#: stock/models.py:1993 stock/models.py:2101 stock/serializers.py:329 -#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:823 -#: stock/serializers.py:922 stock/serializers.py:1054 +#: stock/models.py:2000 stock/models.py:2108 stock/serializers.py:329 +#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825 +#: stock/serializers.py:924 stock/serializers.py:1056 #: stock/templates/stock/stock_sidebar.html:25 #: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101 #: templates/js/translated/company.js:964 templates/js/translated/order.js:2104 #: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753 #: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102 -#: templates/js/translated/stock.js:1370 templates/js/translated/stock.js:1976 +#: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980 msgid "Notes" msgstr "" @@ -200,7 +200,7 @@ msgstr "" msgid "Missing external link" msgstr "" -#: InvenTree/models.py:395 stock/models.py:2095 +#: InvenTree/models.py:395 stock/models.py:2102 #: templates/js/translated/attachment.js:103 #: templates/js/translated/attachment.js:241 msgid "Attachment" @@ -212,7 +212,7 @@ msgstr "" #: InvenTree/models.py:402 company/models.py:124 company/models.py:276 #: company/models.py:510 order/models.py:84 order/models.py:1245 -#: part/models.py:795 +#: part/models.py:802 #: report/templates/report/inventree_build_order_base.html:164 #: templates/js/translated/company.js:656 #: templates/js/translated/company.js:948 templates/js/translated/order.js:2742 @@ -220,8 +220,8 @@ msgstr "" msgid "Link" msgstr "" -#: InvenTree/models.py:403 build/models.py:296 part/models.py:796 -#: stock/models.py:651 +#: InvenTree/models.py:403 build/models.py:296 part/models.py:803 +#: stock/models.py:658 msgid "Link to external URL" msgstr "" @@ -234,12 +234,12 @@ msgstr "" msgid "File comment" msgstr "" -#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1646 -#: common/models.py:1647 common/models.py:1870 common/models.py:1871 -#: common/models.py:2133 common/models.py:2134 part/models.py:2193 -#: part/models.py:2213 plugin/models.py:238 plugin/models.py:239 +#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665 +#: common/models.py:1666 common/models.py:1889 common/models.py:1890 +#: common/models.py:2152 common/models.py:2153 part/models.py:2200 +#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2632 +#: templates/js/translated/stock.js:2641 msgid "User" msgstr "" @@ -276,19 +276,19 @@ msgstr "" msgid "Invalid choice" msgstr "" -#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1856 -#: company/models.py:358 label/models.py:101 part/models.py:739 -#: part/models.py:2371 plugin/models.py:93 report/models.py:152 +#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875 +#: company/models.py:358 label/models.py:101 part/models.py:746 +#: part/models.py:2378 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 -#: templates/InvenTree/settings/plugin.html:49 -#: templates/InvenTree/settings/plugin.html:132 +#: templates/InvenTree/settings/plugin.html:51 +#: templates/InvenTree/settings/plugin.html:134 #: templates/InvenTree/settings/plugin_settings.html:23 #: templates/InvenTree/settings/settings.html:347 #: templates/js/translated/company.js:545 #: templates/js/translated/company.js:758 #: templates/js/translated/notification.js:71 -#: templates/js/translated/part.js:684 templates/js/translated/part.js:836 -#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2388 +#: templates/js/translated/part.js:688 templates/js/translated/part.js:840 +#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2392 msgid "Name" msgstr "" @@ -297,21 +297,21 @@ msgstr "" #: company/models.py:516 company/templates/company/company_base.html:71 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:87 label/models.py:108 -#: order/models.py:82 part/models.py:762 part/templates/part/category.html:74 +#: order/models.py:82 part/models.py:769 part/templates/part/category.html:80 #: part/templates/part/part_base.html:167 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 -#: stock/templates/stock/location.html:103 +#: stock/templates/stock/location.html:108 #: templates/InvenTree/settings/plugin_settings.html:33 #: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848 #: templates/js/translated/build.js:2471 templates/js/translated/company.js:409 #: templates/js/translated/company.js:667 #: templates/js/translated/company.js:959 templates/js/translated/order.js:1720 #: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531 -#: templates/js/translated/part.js:743 templates/js/translated/part.js:1149 -#: templates/js/translated/part.js:1424 templates/js/translated/part.js:1933 -#: templates/js/translated/part.js:2002 templates/js/translated/stock.js:1739 -#: templates/js/translated/stock.js:2415 templates/js/translated/stock.js:2469 +#: templates/js/translated/part.js:747 templates/js/translated/part.js:1153 +#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1938 +#: templates/js/translated/part.js:2007 templates/js/translated/stock.js:1743 +#: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478 msgid "Description" msgstr "" @@ -324,7 +324,7 @@ msgid "parent" msgstr "" #: InvenTree/models.py:560 InvenTree/models.py:561 -#: templates/js/translated/part.js:1939 templates/js/translated/stock.js:2421 +#: templates/js/translated/part.js:1944 templates/js/translated/stock.js:2430 msgid "Path" msgstr "" @@ -336,7 +336,7 @@ msgstr "" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:55 part/models.py:2692 +#: InvenTree/serializers.py:55 part/models.py:2699 msgid "Must be a valid number" msgstr "" @@ -626,7 +626,7 @@ msgstr "" msgid "Split child item" msgstr "" -#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2080 +#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2084 msgid "Merged stock items" msgstr "" @@ -748,7 +748,7 @@ msgid "Build Order Reference" msgstr "" #: build/models.py:166 order/models.py:240 order/models.py:623 -#: order/models.py:904 part/models.py:2610 +#: order/models.py:904 part/models.py:2617 #: part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 @@ -775,10 +775,10 @@ msgstr "" #: build/models.py:191 build/templates/build/build_base.html:77 #: build/templates/build/detail.html:29 company/models.py:670 #: order/models.py:1001 order/models.py:1112 order/models.py:1113 -#: part/models.py:336 part/models.py:2139 part/models.py:2154 -#: part/models.py:2173 part/models.py:2191 part/models.py:2290 -#: part/models.py:2410 part/models.py:2500 part/models.py:2585 -#: part/models.py:2861 part/serializers.py:811 +#: part/models.py:343 part/models.py:2146 part/models.py:2161 +#: part/models.py:2180 part/models.py:2198 part/models.py:2297 +#: part/models.py:2417 part/models.py:2507 part/models.py:2592 +#: part/models.py:2868 part/serializers.py:813 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -801,11 +801,11 @@ msgstr "" #: templates/js/translated/order.js:934 templates/js/translated/order.js:1387 #: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885 #: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507 -#: templates/js/translated/part.js:1134 templates/js/translated/part.js:1206 -#: templates/js/translated/part.js:1402 templates/js/translated/stock.js:582 -#: templates/js/translated/stock.js:747 templates/js/translated/stock.js:954 -#: templates/js/translated/stock.js:1696 templates/js/translated/stock.js:2495 -#: templates/js/translated/stock.js:2690 templates/js/translated/stock.js:2824 +#: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210 +#: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586 +#: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958 +#: templates/js/translated/stock.js:1700 templates/js/translated/stock.js:2504 +#: templates/js/translated/stock.js:2699 templates/js/translated/stock.js:2833 msgid "Part" msgstr "" @@ -863,7 +863,7 @@ msgid "Build status code" msgstr "" #: build/models.py:251 build/serializers.py:225 order/serializers.py:447 -#: stock/models.py:655 templates/js/translated/order.js:1247 +#: stock/models.py:662 templates/js/translated/order.js:1247 msgid "Batch Code" msgstr "" @@ -871,7 +871,7 @@ msgstr "" msgid "Batch code for this build output" msgstr "" -#: build/models.py:258 order/models.py:86 part/models.py:931 +#: build/models.py:258 order/models.py:86 part/models.py:938 #: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544 msgid "Creation Date" msgstr "" @@ -904,7 +904,7 @@ msgstr "" #: build/models.py:289 build/templates/build/build_base.html:190 #: build/templates/build/detail.html:115 order/models.py:100 #: order/templates/order/order_base.html:176 -#: order/templates/order/sales_order_base.html:183 part/models.py:935 +#: order/templates/order/sales_order_base.html:183 part/models.py:942 #: report/templates/report/inventree_build_order_base.html:158 #: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754 msgid "Responsible" @@ -917,7 +917,7 @@ msgstr "" #: build/models.py:295 build/templates/build/detail.html:101 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:153 -#: part/templates/part/part_base.html:346 stock/models.py:649 +#: part/templates/part/part_base.html:346 stock/models.py:656 #: stock/templates/stock/item_base.html:205 msgid "External Link" msgstr "" @@ -983,8 +983,8 @@ msgid "Build to allocate parts" msgstr "" #: build/models.py:1345 build/serializers.py:645 order/serializers.py:1015 -#: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 -#: stock/serializers.py:880 stock/templates/stock/item_base.html:10 +#: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:756 +#: stock/serializers.py:882 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:199 #: templates/js/translated/build.js:741 templates/js/translated/build.js:746 @@ -992,8 +992,8 @@ msgstr "" #: templates/js/translated/order.js:104 templates/js/translated/order.js:2886 #: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193 #: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380 -#: templates/js/translated/stock.js:583 templates/js/translated/stock.js:748 -#: templates/js/translated/stock.js:2568 +#: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752 +#: templates/js/translated/stock.js:2577 msgid "Stock Item" msgstr "" @@ -1003,11 +1003,11 @@ msgstr "" #: build/models.py:1358 build/serializers.py:193 #: build/templates/build/build_base.html:82 -#: build/templates/build/detail.html:34 common/models.py:1678 +#: build/templates/build/detail.html:34 common/models.py:1697 #: company/templates/company/supplier_part.html:279 order/models.py:897 #: order/models.py:1423 order/serializers.py:1155 #: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40 -#: part/models.py:2601 part/templates/part/detail.html:937 +#: part/models.py:2608 part/templates/part/detail.html:937 #: part/templates/part/detail.html:1023 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 @@ -1030,11 +1030,11 @@ msgstr "" #: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207 #: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386 #: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037 -#: templates/js/translated/part.js:1034 templates/js/translated/part.js:2147 -#: templates/js/translated/part.js:2378 templates/js/translated/part.js:2412 -#: templates/js/translated/part.js:2490 templates/js/translated/stock.js:454 -#: templates/js/translated/stock.js:608 templates/js/translated/stock.js:778 -#: templates/js/translated/stock.js:2617 templates/js/translated/stock.js:2702 +#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2152 +#: templates/js/translated/part.js:2383 templates/js/translated/part.js:2417 +#: templates/js/translated/part.js:2495 templates/js/translated/stock.js:458 +#: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782 +#: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711 msgid "Quantity" msgstr "" @@ -1076,8 +1076,8 @@ msgid "Enter quantity for build output" msgstr "" #: build/serializers.py:208 build/serializers.py:665 order/models.py:318 -#: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 -#: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 +#: order/serializers.py:287 order/serializers.py:442 part/serializers.py:544 +#: part/serializers.py:976 stock/models.py:484 stock/models.py:1251 #: stock/serializers.py:302 msgid "Quantity must be greater than zero" msgstr "" @@ -1092,7 +1092,7 @@ msgstr "" #: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159 #: stock/serializers.py:311 templates/js/translated/order.js:1258 -#: templates/js/translated/stock.js:267 templates/js/translated/stock.js:455 +#: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459 msgid "Serial Numbers" msgstr "" @@ -1118,16 +1118,16 @@ msgstr "" #: build/serializers.py:366 order/serializers.py:428 order/serializers.py:532 #: stock/serializers.py:322 stock/serializers.py:453 stock/serializers.py:534 -#: stock/serializers.py:915 stock/serializers.py:1148 +#: stock/serializers.py:917 stock/serializers.py:1150 #: stock/templates/stock/item_base.html:390 #: templates/js/translated/barcode.js:436 #: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753 #: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285 #: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305 #: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394 -#: templates/js/translated/part.js:181 templates/js/translated/stock.js:584 -#: templates/js/translated/stock.js:749 templates/js/translated/stock.js:956 -#: templates/js/translated/stock.js:1850 templates/js/translated/stock.js:2509 +#: templates/js/translated/part.js:181 templates/js/translated/stock.js:588 +#: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960 +#: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518 msgid "Location" msgstr "" @@ -1140,8 +1140,8 @@ msgstr "" #: order/serializers.py:465 stock/templates/stock/item_base.html:423 #: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505 #: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724 -#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1825 -#: templates/js/translated/stock.js:2586 templates/js/translated/stock.js:2718 +#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829 +#: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727 msgid "Status" msgstr "" @@ -1217,8 +1217,8 @@ msgstr "" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:577 build/serializers.py:622 part/models.py:2719 -#: part/models.py:2853 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726 +#: part/models.py:2860 msgid "BOM Item" msgstr "" @@ -1234,7 +1234,7 @@ msgstr "" msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:651 stock/serializers.py:767 +#: build/serializers.py:651 stock/serializers.py:769 msgid "Item must be in stock" msgstr "" @@ -1372,7 +1372,7 @@ msgstr "" #: report/templates/report/inventree_build_order_base.html:125 #: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741 #: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552 -#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1038 +#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042 msgid "Target Date" msgstr "" @@ -1450,8 +1450,8 @@ msgstr "" #: stock/templates/stock/item_base.html:170 #: templates/js/translated/build.js:1182 #: templates/js/translated/model_renderers.js:124 -#: templates/js/translated/stock.js:1022 templates/js/translated/stock.js:1839 -#: templates/js/translated/stock.js:2725 +#: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843 +#: templates/js/translated/stock.js:2734 #: templates/js/translated/table_filters.js:159 #: templates/js/translated/table_filters.js:250 msgid "Batch" @@ -1511,7 +1511,7 @@ msgstr "" #: build/templates/build/detail.html:187 #: company/templates/company/detail.html:37 #: company/templates/company/detail.html:85 -#: part/templates/part/category.html:177 templates/js/translated/order.js:977 +#: part/templates/part/category.html:183 templates/js/translated/order.js:977 msgid "Order Parts" msgstr "" @@ -1564,12 +1564,12 @@ msgid "Delete outputs" msgstr "" #: build/templates/build/detail.html:267 -#: stock/templates/stock/location.html:197 templates/stock_table.html:27 +#: stock/templates/stock/location.html:202 templates/stock_table.html:27 msgid "Printing Actions" msgstr "" #: build/templates/build/detail.html:271 build/templates/build/detail.html:272 -#: stock/templates/stock/location.html:201 templates/stock_table.html:31 +#: stock/templates/stock/location.html:206 templates/stock_table.html:31 msgid "Print labels" msgstr "" @@ -1846,7 +1846,7 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:951 part/models.py:2412 report/models.py:158 +#: common/models.py:951 part/models.py:2419 report/models.py:158 #: templates/js/translated/table_filters.js:38 #: templates/js/translated/table_filters.js:484 msgid "Template" @@ -1856,7 +1856,7 @@ msgstr "" msgid "Parts are templates by default" msgstr "" -#: common/models.py:958 part/models.py:887 templates/js/translated/bom.js:1448 +#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448 #: templates/js/translated/table_filters.js:176 #: templates/js/translated/table_filters.js:447 msgid "Assembly" @@ -1866,7 +1866,7 @@ msgstr "" msgid "Parts can be assembled from other components by default" msgstr "" -#: common/models.py:965 part/models.py:893 +#: common/models.py:965 part/models.py:900 #: templates/js/translated/table_filters.js:455 msgid "Component" msgstr "" @@ -1875,7 +1875,7 @@ msgstr "" msgid "Parts can be used as sub-components by default" msgstr "" -#: common/models.py:972 part/models.py:904 +#: common/models.py:972 part/models.py:911 msgid "Purchaseable" msgstr "" @@ -1883,7 +1883,7 @@ msgstr "" msgid "Parts are purchaseable by default" msgstr "" -#: common/models.py:979 part/models.py:909 +#: common/models.py:979 part/models.py:916 #: templates/js/translated/table_filters.js:476 msgid "Salable" msgstr "" @@ -1892,7 +1892,7 @@ msgstr "" msgid "Parts are salable by default" msgstr "" -#: common/models.py:986 part/models.py:899 +#: common/models.py:986 part/models.py:906 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:108 #: templates/js/translated/table_filters.js:488 @@ -1903,7 +1903,7 @@ msgstr "" msgid "Parts are trackable by default" msgstr "" -#: common/models.py:993 part/models.py:919 +#: common/models.py:993 part/models.py:926 #: part/templates/part/part_base.html:151 #: templates/js/translated/table_filters.js:42 #: templates/js/translated/table_filters.js:492 @@ -1987,608 +1987,632 @@ msgid "Format to display the part name" msgstr "" #: common/models.py:1074 -msgid "Enable label printing" +msgid "Part Category Default Icon" msgstr "" #: common/models.py:1075 -msgid "Enable label printing from the web interface" +msgid "Part category default icon (empty means no icon)" +msgstr "" + +#: common/models.py:1080 +msgid "Enable label printing" msgstr "" #: common/models.py:1081 +msgid "Enable label printing from the web interface" +msgstr "" + +#: common/models.py:1087 msgid "Label Image DPI" msgstr "" -#: common/models.py:1082 +#: common/models.py:1088 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/models.py:1091 +#: common/models.py:1097 msgid "Enable Reports" msgstr "" -#: common/models.py:1092 +#: common/models.py:1098 msgid "Enable generation of reports" msgstr "" -#: common/models.py:1098 templates/stats.html:25 +#: common/models.py:1104 templates/stats.html:25 msgid "Debug Mode" msgstr "" -#: common/models.py:1099 +#: common/models.py:1105 msgid "Generate reports in debug mode (HTML output)" msgstr "" -#: common/models.py:1105 +#: common/models.py:1111 msgid "Page Size" msgstr "" -#: common/models.py:1106 +#: common/models.py:1112 msgid "Default page size for PDF reports" msgstr "" -#: common/models.py:1116 +#: common/models.py:1122 msgid "Enable Test Reports" msgstr "" -#: common/models.py:1117 +#: common/models.py:1123 msgid "Enable generation of test reports" msgstr "" -#: common/models.py:1123 +#: common/models.py:1129 msgid "Attach Test Reports" msgstr "" -#: common/models.py:1124 +#: common/models.py:1130 msgid "When printing a Test Report, attach a copy of the Test Report to the associated Stock Item" msgstr "" -#: common/models.py:1130 +#: common/models.py:1136 msgid "Batch Code Template" msgstr "" -#: common/models.py:1131 +#: common/models.py:1137 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/models.py:1136 +#: common/models.py:1142 msgid "Stock Expiry" msgstr "" -#: common/models.py:1137 +#: common/models.py:1143 msgid "Enable stock expiry functionality" msgstr "" -#: common/models.py:1143 +#: common/models.py:1149 msgid "Sell Expired Stock" msgstr "" -#: common/models.py:1144 +#: common/models.py:1150 msgid "Allow sale of expired stock" msgstr "" -#: common/models.py:1150 +#: common/models.py:1156 msgid "Stock Stale Time" msgstr "" -#: common/models.py:1151 +#: common/models.py:1157 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/models.py:1153 +#: common/models.py:1159 msgid "days" msgstr "" -#: common/models.py:1158 +#: common/models.py:1164 msgid "Build Expired Stock" msgstr "" -#: common/models.py:1159 +#: common/models.py:1165 msgid "Allow building with expired stock" msgstr "" -#: common/models.py:1165 +#: common/models.py:1171 msgid "Stock Ownership Control" msgstr "" -#: common/models.py:1166 +#: common/models.py:1172 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/models.py:1172 -msgid "Build Order Reference Pattern" -msgstr "" - -#: common/models.py:1173 -msgid "Required pattern for generating Build Order reference field" +#: common/models.py:1178 +msgid "Stock Location Default Icon" msgstr "" #: common/models.py:1179 +msgid "Stock location default icon (empty means no icon)" +msgstr "" + +#: common/models.py:1184 +msgid "Build Order Reference Pattern" +msgstr "" + +#: common/models.py:1185 +msgid "Required pattern for generating Build Order reference field" +msgstr "" + +#: common/models.py:1191 msgid "Sales Order Reference Pattern" msgstr "" -#: common/models.py:1180 +#: common/models.py:1192 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/models.py:1186 +#: common/models.py:1198 msgid "Sales Order Default Shipment" msgstr "" -#: common/models.py:1187 +#: common/models.py:1199 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/models.py:1193 +#: common/models.py:1205 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/models.py:1194 +#: common/models.py:1206 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/models.py:1201 +#: common/models.py:1213 msgid "Enable password forgot" msgstr "" -#: common/models.py:1202 +#: common/models.py:1214 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/models.py:1208 +#: common/models.py:1220 msgid "Enable registration" msgstr "" -#: common/models.py:1209 +#: common/models.py:1221 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/models.py:1215 +#: common/models.py:1227 msgid "Enable SSO" msgstr "" -#: common/models.py:1216 +#: common/models.py:1228 msgid "Enable SSO on the login pages" msgstr "" -#: common/models.py:1222 +#: common/models.py:1234 msgid "Email required" msgstr "" -#: common/models.py:1223 +#: common/models.py:1235 msgid "Require user to supply mail on signup" msgstr "" -#: common/models.py:1229 +#: common/models.py:1241 msgid "Auto-fill SSO users" msgstr "" -#: common/models.py:1230 +#: common/models.py:1242 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/models.py:1236 +#: common/models.py:1248 msgid "Mail twice" msgstr "" -#: common/models.py:1237 +#: common/models.py:1249 msgid "On signup ask users twice for their mail" msgstr "" -#: common/models.py:1243 +#: common/models.py:1255 msgid "Password twice" msgstr "" -#: common/models.py:1244 +#: common/models.py:1256 msgid "On signup ask users twice for their password" msgstr "" -#: common/models.py:1250 +#: common/models.py:1262 msgid "Group on signup" msgstr "" -#: common/models.py:1251 +#: common/models.py:1263 msgid "Group to which new users are assigned on registration" msgstr "" -#: common/models.py:1257 +#: common/models.py:1269 msgid "Enforce MFA" msgstr "" -#: common/models.py:1258 +#: common/models.py:1270 msgid "Users must use multifactor security." msgstr "" -#: common/models.py:1264 +#: common/models.py:1276 msgid "Check plugins on startup" msgstr "" -#: common/models.py:1265 +#: common/models.py:1277 msgid "Check that all plugins are installed on startup - enable in container enviroments" msgstr "" -#: common/models.py:1273 +#: common/models.py:1284 +msgid "Check plugin signatures" +msgstr "" + +#: common/models.py:1285 +msgid "Check and show signatures for plugins" +msgstr "" + +#: common/models.py:1292 msgid "Enable URL integration" msgstr "" -#: common/models.py:1274 +#: common/models.py:1293 msgid "Enable plugins to add URL routes" msgstr "" -#: common/models.py:1281 +#: common/models.py:1300 msgid "Enable navigation integration" msgstr "" -#: common/models.py:1282 +#: common/models.py:1301 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/models.py:1289 +#: common/models.py:1308 msgid "Enable app integration" msgstr "" -#: common/models.py:1290 +#: common/models.py:1309 msgid "Enable plugins to add apps" msgstr "" -#: common/models.py:1297 +#: common/models.py:1316 msgid "Enable schedule integration" msgstr "" -#: common/models.py:1298 +#: common/models.py:1317 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/models.py:1305 +#: common/models.py:1324 msgid "Enable event integration" msgstr "" -#: common/models.py:1306 +#: common/models.py:1325 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:1323 common/models.py:1639 +#: common/models.py:1342 common/models.py:1658 msgid "Settings key (must be unique - case insensitive" msgstr "" -#: common/models.py:1345 +#: common/models.py:1364 msgid "Show subscribed parts" msgstr "" -#: common/models.py:1346 +#: common/models.py:1365 msgid "Show subscribed parts on the homepage" msgstr "" -#: common/models.py:1352 +#: common/models.py:1371 msgid "Show subscribed categories" msgstr "" -#: common/models.py:1353 +#: common/models.py:1372 msgid "Show subscribed part categories on the homepage" msgstr "" -#: common/models.py:1359 +#: common/models.py:1378 msgid "Show latest parts" msgstr "" -#: common/models.py:1360 +#: common/models.py:1379 msgid "Show latest parts on the homepage" msgstr "" -#: common/models.py:1366 +#: common/models.py:1385 msgid "Recent Part Count" msgstr "" -#: common/models.py:1367 +#: common/models.py:1386 msgid "Number of recent parts to display on index page" msgstr "" -#: common/models.py:1373 +#: common/models.py:1392 msgid "Show unvalidated BOMs" msgstr "" -#: common/models.py:1374 +#: common/models.py:1393 msgid "Show BOMs that await validation on the homepage" msgstr "" -#: common/models.py:1380 +#: common/models.py:1399 msgid "Show recent stock changes" msgstr "" -#: common/models.py:1381 +#: common/models.py:1400 msgid "Show recently changed stock items on the homepage" msgstr "" -#: common/models.py:1387 +#: common/models.py:1406 msgid "Recent Stock Count" msgstr "" -#: common/models.py:1388 +#: common/models.py:1407 msgid "Number of recent stock items to display on index page" msgstr "" -#: common/models.py:1394 +#: common/models.py:1413 msgid "Show low stock" msgstr "" -#: common/models.py:1395 +#: common/models.py:1414 msgid "Show low stock items on the homepage" msgstr "" -#: common/models.py:1401 +#: common/models.py:1420 msgid "Show depleted stock" msgstr "" -#: common/models.py:1402 +#: common/models.py:1421 msgid "Show depleted stock items on the homepage" msgstr "" -#: common/models.py:1408 +#: common/models.py:1427 msgid "Show needed stock" msgstr "" -#: common/models.py:1409 +#: common/models.py:1428 msgid "Show stock items needed for builds on the homepage" msgstr "" -#: common/models.py:1415 +#: common/models.py:1434 msgid "Show expired stock" msgstr "" -#: common/models.py:1416 +#: common/models.py:1435 msgid "Show expired stock items on the homepage" msgstr "" -#: common/models.py:1422 +#: common/models.py:1441 msgid "Show stale stock" msgstr "" -#: common/models.py:1423 +#: common/models.py:1442 msgid "Show stale stock items on the homepage" msgstr "" -#: common/models.py:1429 +#: common/models.py:1448 msgid "Show pending builds" msgstr "" -#: common/models.py:1430 +#: common/models.py:1449 msgid "Show pending builds on the homepage" msgstr "" -#: common/models.py:1436 +#: common/models.py:1455 msgid "Show overdue builds" msgstr "" -#: common/models.py:1437 +#: common/models.py:1456 msgid "Show overdue builds on the homepage" msgstr "" -#: common/models.py:1443 +#: common/models.py:1462 msgid "Show outstanding POs" msgstr "" -#: common/models.py:1444 +#: common/models.py:1463 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:1450 +#: common/models.py:1469 msgid "Show overdue POs" msgstr "" -#: common/models.py:1451 +#: common/models.py:1470 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:1457 +#: common/models.py:1476 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:1458 +#: common/models.py:1477 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:1464 +#: common/models.py:1483 msgid "Show overdue SOs" msgstr "" -#: common/models.py:1465 +#: common/models.py:1484 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:1471 +#: common/models.py:1490 msgid "Inline label display" msgstr "" -#: common/models.py:1472 +#: common/models.py:1491 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1478 +#: common/models.py:1497 msgid "Inline report display" msgstr "" -#: common/models.py:1479 +#: common/models.py:1498 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1485 +#: common/models.py:1504 msgid "Search Parts" msgstr "" -#: common/models.py:1486 +#: common/models.py:1505 msgid "Display parts in search preview window" msgstr "" -#: common/models.py:1492 +#: common/models.py:1511 msgid "Seach Supplier Parts" msgstr "" -#: common/models.py:1493 +#: common/models.py:1512 msgid "Display supplier parts in search preview window" msgstr "" -#: common/models.py:1499 +#: common/models.py:1518 msgid "Search Manufacturer Parts" msgstr "" -#: common/models.py:1500 +#: common/models.py:1519 msgid "Display manufacturer parts in search preview window" msgstr "" -#: common/models.py:1506 +#: common/models.py:1525 msgid "Hide Inactive Parts" msgstr "" -#: common/models.py:1507 +#: common/models.py:1526 msgid "Excluded inactive parts from search preview window" msgstr "" -#: common/models.py:1513 +#: common/models.py:1532 msgid "Search Categories" msgstr "" -#: common/models.py:1514 +#: common/models.py:1533 msgid "Display part categories in search preview window" msgstr "" -#: common/models.py:1520 +#: common/models.py:1539 msgid "Search Stock" msgstr "" -#: common/models.py:1521 +#: common/models.py:1540 msgid "Display stock items in search preview window" msgstr "" -#: common/models.py:1527 +#: common/models.py:1546 msgid "Hide Unavailable Stock Items" msgstr "" -#: common/models.py:1528 +#: common/models.py:1547 msgid "Exclude stock items which are not available from the search preview window" msgstr "" -#: common/models.py:1534 +#: common/models.py:1553 msgid "Search Locations" msgstr "" -#: common/models.py:1535 +#: common/models.py:1554 msgid "Display stock locations in search preview window" msgstr "" -#: common/models.py:1541 +#: common/models.py:1560 msgid "Search Companies" msgstr "" -#: common/models.py:1542 +#: common/models.py:1561 msgid "Display companies in search preview window" msgstr "" -#: common/models.py:1548 +#: common/models.py:1567 msgid "Search Purchase Orders" msgstr "" -#: common/models.py:1549 +#: common/models.py:1568 msgid "Display purchase orders in search preview window" msgstr "" -#: common/models.py:1555 +#: common/models.py:1574 msgid "Exclude Inactive Purchase Orders" msgstr "" -#: common/models.py:1556 +#: common/models.py:1575 msgid "Exclude inactive purchase orders from search preview window" msgstr "" -#: common/models.py:1562 +#: common/models.py:1581 msgid "Search Sales Orders" msgstr "" -#: common/models.py:1563 +#: common/models.py:1582 msgid "Display sales orders in search preview window" msgstr "" -#: common/models.py:1569 +#: common/models.py:1588 msgid "Exclude Inactive Sales Orders" msgstr "" -#: common/models.py:1570 +#: common/models.py:1589 msgid "Exclude inactive sales orders from search preview window" msgstr "" -#: common/models.py:1576 +#: common/models.py:1595 msgid "Search Preview Results" msgstr "" -#: common/models.py:1577 +#: common/models.py:1596 msgid "Number of results to show in each section of the search preview window" msgstr "" -#: common/models.py:1583 +#: common/models.py:1602 msgid "Show Quantity in Forms" msgstr "" -#: common/models.py:1584 +#: common/models.py:1603 msgid "Display available part quantity in some forms" msgstr "" -#: common/models.py:1590 +#: common/models.py:1609 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:1591 +#: common/models.py:1610 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:1597 +#: common/models.py:1616 msgid "Fixed Navbar" msgstr "" -#: common/models.py:1598 +#: common/models.py:1617 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:1604 +#: common/models.py:1623 msgid "Date Format" msgstr "" -#: common/models.py:1605 +#: common/models.py:1624 msgid "Preferred format for displaying dates" msgstr "" -#: common/models.py:1619 part/templates/part/detail.html:41 +#: common/models.py:1638 part/templates/part/detail.html:41 msgid "Part Scheduling" msgstr "" -#: common/models.py:1620 +#: common/models.py:1639 msgid "Display part scheduling information" msgstr "" -#: common/models.py:1679 +#: common/models.py:1698 msgid "Price break quantity" msgstr "" -#: common/models.py:1686 company/serializers.py:366 +#: common/models.py:1705 company/serializers.py:366 #: company/templates/company/supplier_part.html:284 order/models.py:938 -#: templates/js/translated/part.js:1065 templates/js/translated/part.js:2152 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2157 msgid "Price" msgstr "" -#: common/models.py:1687 +#: common/models.py:1706 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:1847 common/models.py:2025 +#: common/models.py:1866 common/models.py:2044 msgid "Endpoint" msgstr "" -#: common/models.py:1848 +#: common/models.py:1867 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:1857 +#: common/models.py:1876 msgid "Name for this webhook" msgstr "" -#: common/models.py:1862 part/models.py:914 plugin/models.py:99 +#: common/models.py:1881 part/models.py:921 plugin/models.py:100 #: templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:104 #: templates/js/translated/table_filters.js:316 @@ -2596,67 +2620,67 @@ msgstr "" msgid "Active" msgstr "" -#: common/models.py:1863 +#: common/models.py:1882 msgid "Is this webhook active" msgstr "" -#: common/models.py:1877 +#: common/models.py:1896 msgid "Token" msgstr "" -#: common/models.py:1878 +#: common/models.py:1897 msgid "Token for access" msgstr "" -#: common/models.py:1885 +#: common/models.py:1904 msgid "Secret" msgstr "" -#: common/models.py:1886 +#: common/models.py:1905 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:1992 +#: common/models.py:2011 msgid "Message ID" msgstr "" -#: common/models.py:1993 +#: common/models.py:2012 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2001 +#: common/models.py:2020 msgid "Host" msgstr "" -#: common/models.py:2002 +#: common/models.py:2021 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2009 +#: common/models.py:2028 msgid "Header" msgstr "" -#: common/models.py:2010 +#: common/models.py:2029 msgid "Header of this message" msgstr "" -#: common/models.py:2016 +#: common/models.py:2035 msgid "Body" msgstr "" -#: common/models.py:2017 +#: common/models.py:2036 msgid "Body of this message" msgstr "" -#: common/models.py:2026 +#: common/models.py:2045 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2031 +#: common/models.py:2050 msgid "Worked on" msgstr "" -#: common/models.py:2032 +#: common/models.py:2051 msgid "Was the work on this message finished?" msgstr "" @@ -2763,7 +2787,7 @@ msgstr "" msgid "Link to external company information" msgstr "" -#: company/models.py:135 part/models.py:808 +#: company/models.py:135 part/models.py:815 msgid "Image" msgstr "" @@ -2796,8 +2820,8 @@ msgid "Does this company manufacture parts?" msgstr "" #: company/models.py:148 company/serializers.py:372 -#: company/templates/company/company_base.html:106 part/serializers.py:151 -#: part/serializers.py:182 stock/serializers.py:180 +#: company/templates/company/company_base.html:106 part/serializers.py:153 +#: part/serializers.py:184 stock/serializers.py:180 msgid "Currency" msgstr "" @@ -2805,7 +2829,7 @@ msgstr "" msgid "Default currency used for this company" msgstr "" -#: company/models.py:248 company/models.py:481 stock/models.py:591 +#: company/models.py:248 company/models.py:481 stock/models.py:598 #: stock/serializers.py:87 stock/templates/stock/item_base.html:148 #: templates/js/translated/bom.js:543 msgid "Base Part" @@ -2837,7 +2861,7 @@ msgstr "" #: templates/js/translated/company.js:497 #: templates/js/translated/company.js:649 #: templates/js/translated/company.js:937 templates/js/translated/order.js:1971 -#: templates/js/translated/part.js:247 templates/js/translated/part.js:1023 +#: templates/js/translated/part.js:247 templates/js/translated/part.js:1027 msgid "MPN" msgstr "" @@ -2866,9 +2890,9 @@ msgstr "" #: company/models.py:365 #: report/templates/report/inventree_test_report_base.html:95 -#: stock/models.py:2088 templates/js/translated/company.js:546 -#: templates/js/translated/company.js:764 templates/js/translated/part.js:845 -#: templates/js/translated/stock.js:1356 +#: stock/models.py:2095 templates/js/translated/company.js:546 +#: templates/js/translated/company.js:764 templates/js/translated/part.js:849 +#: templates/js/translated/stock.js:1360 msgid "Value" msgstr "" @@ -2876,10 +2900,10 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:372 part/models.py:881 part/models.py:2379 +#: company/models.py:372 part/models.py:888 part/models.py:2386 #: part/templates/part/part_base.html:280 #: templates/InvenTree/settings/settings.html:352 -#: templates/js/translated/company.js:770 templates/js/translated/part.js:851 +#: templates/js/translated/company.js:770 templates/js/translated/part.js:855 msgid "Units" msgstr "" @@ -2899,7 +2923,7 @@ msgstr "" #: templates/js/translated/company.js:268 #: templates/js/translated/company.js:401 #: templates/js/translated/company.js:893 templates/js/translated/order.js:1707 -#: templates/js/translated/part.js:217 templates/js/translated/part.js:991 +#: templates/js/translated/part.js:217 templates/js/translated/part.js:995 #: templates/js/translated/table_filters.js:423 msgid "Supplier" msgstr "" @@ -2911,7 +2935,7 @@ msgstr "" #: company/models.py:497 company/templates/company/supplier_part.html:118 #: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267 #: templates/js/translated/order.js:1958 templates/js/translated/part.js:228 -#: templates/js/translated/part.js:1009 +#: templates/js/translated/part.js:1013 msgid "SKU" msgstr "" @@ -2932,23 +2956,23 @@ msgid "Supplier part description" msgstr "" #: company/models.py:522 company/templates/company/supplier_part.html:146 -#: part/models.py:2613 part/templates/part/upload_bom.html:59 +#: part/models.py:2620 part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401 msgid "Note" msgstr "" -#: company/models.py:526 part/models.py:1735 +#: company/models.py:526 part/models.py:1742 msgid "base cost" msgstr "" -#: company/models.py:526 part/models.py:1735 +#: company/models.py:526 part/models.py:1742 msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:528 company/templates/company/supplier_part.html:139 -#: stock/models.py:617 stock/templates/stock/item_base.html:245 -#: templates/js/translated/company.js:969 templates/js/translated/stock.js:1972 +#: stock/models.py:624 stock/templates/stock/item_base.html:245 +#: templates/js/translated/company.js:969 templates/js/translated/stock.js:1976 msgid "Packaging" msgstr "" @@ -2956,7 +2980,7 @@ msgstr "" msgid "Part packaging" msgstr "" -#: company/models.py:530 part/models.py:1737 +#: company/models.py:530 part/models.py:1744 msgid "multiple" msgstr "" @@ -2969,7 +2993,7 @@ msgstr "" #: templates/email/low_stock_notification.html:18 #: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789 #: templates/js/translated/build.js:2645 templates/js/translated/company.js:979 -#: templates/js/translated/part.js:596 templates/js/translated/part.js:599 +#: templates/js/translated/part.js:600 templates/js/translated/part.js:603 #: templates/js/translated/table_filters.js:186 msgid "Available" msgstr "" @@ -3042,12 +3066,12 @@ msgid "Download image from URL" msgstr "" #: company/templates/company/company_base.html:86 order/models.py:637 -#: order/templates/order/sales_order_base.html:116 stock/models.py:636 -#: stock/models.py:637 stock/serializers.py:809 +#: order/templates/order/sales_order_base.html:116 stock/models.py:643 +#: stock/models.py:644 stock/serializers.py:811 #: stock/templates/stock/item_base.html:401 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:393 templates/js/translated/order.js:2513 -#: templates/js/translated/stock.js:2550 +#: templates/js/translated/stock.js:2559 #: templates/js/translated/table_filters.js:427 msgid "Customer" msgstr "" @@ -3088,7 +3112,7 @@ msgstr "" #: company/templates/company/detail.html:36 #: company/templates/company/detail.html:84 -#: part/templates/part/category.html:176 +#: part/templates/part/category.html:182 msgid "Order parts" msgstr "" @@ -3236,7 +3260,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:170 #: part/templates/part/detail.html:186 #: templates/InvenTree/settings/category.html:12 -#: templates/InvenTree/settings/part.html:66 +#: templates/InvenTree/settings/part.html:68 msgid "New Parameter" msgstr "" @@ -3266,10 +3290,10 @@ msgid "Assigned Stock Items" msgstr "" #: company/templates/company/supplier_part.html:7 -#: company/templates/company/supplier_part.html:24 stock/models.py:600 +#: company/templates/company/supplier_part.html:24 stock/models.py:607 #: stock/templates/stock/item_base.html:238 #: templates/js/translated/company.js:909 templates/js/translated/order.js:935 -#: templates/js/translated/stock.js:1929 +#: templates/js/translated/stock.js:1933 msgid "Supplier Part" msgstr "" @@ -3313,13 +3337,13 @@ msgid "Supplier Part Stock" msgstr "" #: company/templates/company/supplier_part.html:168 -#: part/templates/part/detail.html:24 stock/templates/stock/location.html:176 +#: part/templates/part/detail.html:24 stock/templates/stock/location.html:181 msgid "Create new stock item" msgstr "" #: company/templates/company/supplier_part.html:169 -#: part/templates/part/detail.html:25 stock/templates/stock/location.html:177 -#: templates/js/translated/stock.js:431 +#: part/templates/part/detail.html:25 stock/templates/stock/location.html:182 +#: templates/js/translated/stock.js:435 msgid "New Stock Item" msgstr "" @@ -3335,7 +3359,7 @@ msgstr "" #: company/templates/company/supplier_part.html:212 #: company/templates/company/supplier_part.html:326 -#: part/templates/part/prices.html:276 templates/js/translated/part.js:2224 +#: part/templates/part/prices.html:276 templates/js/translated/part.js:2229 msgid "Add Price Break" msgstr "" @@ -3344,12 +3368,12 @@ msgid "No price break information found" msgstr "" #: company/templates/company/supplier_part.html:252 -#: templates/js/translated/part.js:2234 +#: templates/js/translated/part.js:2239 msgid "Delete Price Break" msgstr "" #: company/templates/company/supplier_part.html:266 -#: templates/js/translated/part.js:2248 +#: templates/js/translated/part.js:2253 msgid "Edit Price Break" msgstr "" @@ -3371,13 +3395,13 @@ msgstr "" #: company/templates/company/supplier_part_navbar.html:15 #: part/templates/part/part_sidebar.html:14 -#: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:19 +#: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:24 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:151 #: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/bom.js:555 templates/js/translated/part.js:747 -#: templates/js/translated/part.js:1295 templates/js/translated/part.js:1456 -#: templates/js/translated/stock.js:955 templates/js/translated/stock.js:1750 +#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751 +#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460 +#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754 #: templates/navbar.html:31 msgid "Stock" msgstr "" @@ -3397,14 +3421,14 @@ msgid "Pricing" msgstr "" #: company/templates/company/supplier_part_sidebar.html:5 -#: part/templates/part/category.html:197 +#: part/templates/part/category.html:203 #: part/templates/part/category_sidebar.html:17 -#: stock/templates/stock/location.html:147 -#: stock/templates/stock/location.html:161 -#: stock/templates/stock/location.html:173 +#: stock/templates/stock/location.html:152 +#: stock/templates/stock/location.html:166 +#: stock/templates/stock/location.html:178 #: stock/templates/stock/location_sidebar.html:7 #: templates/InvenTree/search.html:153 templates/js/translated/search.js:223 -#: templates/js/translated/stock.js:2427 users/models.py:40 +#: templates/js/translated/stock.js:2436 users/models.py:40 msgid "Stock Items" msgstr "" @@ -3661,8 +3685,8 @@ msgstr "" #: stock/templates/stock/item_base.html:184 #: templates/email/overdue_purchase_order.html:15 #: templates/js/translated/order.js:936 templates/js/translated/order.js:1691 -#: templates/js/translated/part.js:968 templates/js/translated/stock.js:1909 -#: templates/js/translated/stock.js:2531 +#: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913 +#: templates/js/translated/stock.js:2540 msgid "Purchase Order" msgstr "" @@ -3672,7 +3696,7 @@ msgstr "" #: order/models.py:1009 order/templates/order/order_base.html:169 #: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073 -#: templates/js/translated/part.js:1060 templates/js/translated/part.js:1087 +#: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091 #: templates/js/translated/table_filters.js:338 msgid "Received" msgstr "" @@ -3681,9 +3705,9 @@ msgstr "" msgid "Number of items received" msgstr "" -#: order/models.py:1017 part/templates/part/prices.html:181 stock/models.py:727 +#: order/models.py:1017 part/templates/part/prices.html:181 stock/models.py:734 #: stock/serializers.py:171 stock/templates/stock/item_base.html:191 -#: templates/js/translated/stock.js:1960 +#: templates/js/translated/stock.js:1964 msgid "Purchase Price" msgstr "" @@ -4071,8 +4095,8 @@ msgstr "" #: templates/js/translated/bom.js:77 templates/js/translated/build.js:431 #: templates/js/translated/build.js:583 templates/js/translated/build.js:1974 #: templates/js/translated/order.js:884 templates/js/translated/order.js:1337 -#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:621 -#: templates/js/translated/stock.js:789 +#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625 +#: templates/js/translated/stock.js:793 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "" @@ -4266,8 +4290,8 @@ msgstr "" msgid "This field is required" msgstr "" -#: part/bom.py:127 part/models.py:98 part/models.py:817 -#: part/templates/part/category.html:108 part/templates/part/part_base.html:330 +#: part/bom.py:127 part/models.py:98 part/models.py:824 +#: part/templates/part/category.html:114 part/templates/part/part_base.html:330 msgid "Default Location" msgstr "" @@ -4281,9 +4305,9 @@ msgid "Available Stock" msgstr "" #: part/bom.py:130 part/templates/part/part_base.html:207 -#: templates/js/translated/bom.js:947 templates/js/translated/part.js:586 -#: templates/js/translated/part.js:606 templates/js/translated/part.js:1298 -#: templates/js/translated/part.js:1470 templates/js/translated/part.js:1486 +#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590 +#: templates/js/translated/part.js:610 templates/js/translated/part.js:1302 +#: templates/js/translated/part.js:1483 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "" @@ -4304,516 +4328,524 @@ msgstr "" msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:115 part/models.py:2455 part/templates/part/category.html:15 +#: part/models.py:107 stock/models.py:84 +msgid "Icon" +msgstr "" + +#: part/models.py:108 stock/models.py:85 +msgid "Icon (optional)" +msgstr "" + +#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" -#: part/models.py:116 part/templates/part/category.html:128 +#: part/models.py:123 part/templates/part/category.html:134 #: templates/InvenTree/search.html:95 templates/js/translated/search.js:198 #: users/models.py:37 msgid "Part Categories" msgstr "" -#: part/models.py:337 part/templates/part/cat_link.html:3 -#: part/templates/part/category.html:17 part/templates/part/category.html:133 -#: part/templates/part/category.html:153 +#: part/models.py:344 part/templates/part/cat_link.html:3 +#: part/templates/part/category.html:23 part/templates/part/category.html:139 +#: part/templates/part/category.html:159 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82 #: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:1946 templates/js/translated/search.js:144 +#: templates/js/translated/part.js:1951 templates/js/translated/search.js:144 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "" -#: part/models.py:422 +#: part/models.py:429 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:492 part/models.py:504 +#: part/models.py:499 part/models.py:511 #, python-brace-format msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)" msgstr "" -#: part/models.py:621 +#: part/models.py:628 msgid "Next available serial numbers are" msgstr "" -#: part/models.py:625 +#: part/models.py:632 msgid "Next available serial number is" msgstr "" -#: part/models.py:630 +#: part/models.py:637 msgid "Most recent serial number is" msgstr "" -#: part/models.py:711 +#: part/models.py:718 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:738 part/models.py:2509 +#: part/models.py:745 part/models.py:2516 msgid "Part name" msgstr "" -#: part/models.py:745 +#: part/models.py:752 msgid "Is Template" msgstr "" -#: part/models.py:746 +#: part/models.py:753 msgid "Is this part a template part?" msgstr "" -#: part/models.py:756 +#: part/models.py:763 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:757 +#: part/models.py:764 msgid "Variant Of" msgstr "" -#: part/models.py:763 +#: part/models.py:770 msgid "Part description" msgstr "" -#: part/models.py:768 part/templates/part/category.html:86 +#: part/models.py:775 part/templates/part/category.html:92 #: part/templates/part/part_base.html:294 msgid "Keywords" msgstr "" -#: part/models.py:769 +#: part/models.py:776 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:776 part/models.py:2211 part/models.py:2454 +#: part/models.py:783 part/models.py:2218 part/models.py:2461 #: part/templates/part/part_base.html:257 #: templates/InvenTree/settings/settings.html:232 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1438 templates/js/translated/part.js:1664 +#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1664 msgid "Category" msgstr "" -#: part/models.py:777 +#: part/models.py:784 msgid "Part category" msgstr "" -#: part/models.py:782 part/templates/part/part_base.html:266 -#: templates/js/translated/part.js:735 templates/js/translated/part.js:1391 -#: templates/js/translated/stock.js:1722 +#: part/models.py:789 part/templates/part/part_base.html:266 +#: templates/js/translated/part.js:739 templates/js/translated/part.js:1395 +#: templates/js/translated/stock.js:1726 msgid "IPN" msgstr "" -#: part/models.py:783 +#: part/models.py:790 msgid "Internal Part Number" msgstr "" -#: part/models.py:789 +#: part/models.py:796 msgid "Part revision or version number" msgstr "" -#: part/models.py:790 part/templates/part/part_base.html:273 -#: report/models.py:171 templates/js/translated/part.js:739 +#: part/models.py:797 part/templates/part/part_base.html:273 +#: report/models.py:171 templates/js/translated/part.js:743 msgid "Revision" msgstr "" -#: part/models.py:815 +#: part/models.py:822 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:860 part/templates/part/part_base.html:339 +#: part/models.py:867 part/templates/part/part_base.html:339 msgid "Default Supplier" msgstr "" -#: part/models.py:861 +#: part/models.py:868 msgid "Default supplier part" msgstr "" -#: part/models.py:868 +#: part/models.py:875 msgid "Default Expiry" msgstr "" -#: part/models.py:869 +#: part/models.py:876 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:874 part/templates/part/part_base.html:200 +#: part/models.py:881 part/templates/part/part_base.html:200 msgid "Minimum Stock" msgstr "" -#: part/models.py:875 +#: part/models.py:882 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:882 +#: part/models.py:889 msgid "Stock keeping units for this part" msgstr "" -#: part/models.py:888 +#: part/models.py:895 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:894 +#: part/models.py:901 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:900 +#: part/models.py:907 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:905 +#: part/models.py:912 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:910 +#: part/models.py:917 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:915 +#: part/models.py:922 msgid "Is this part active?" msgstr "" -#: part/models.py:920 +#: part/models.py:927 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:922 +#: part/models.py:929 msgid "Part notes" msgstr "" -#: part/models.py:924 +#: part/models.py:931 msgid "BOM checksum" msgstr "" -#: part/models.py:924 +#: part/models.py:931 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:927 +#: part/models.py:934 msgid "BOM checked by" msgstr "" -#: part/models.py:929 +#: part/models.py:936 msgid "BOM checked date" msgstr "" -#: part/models.py:933 +#: part/models.py:940 msgid "Creation User" msgstr "" -#: part/models.py:1737 +#: part/models.py:1744 msgid "Sell multiple" msgstr "" -#: part/models.py:2258 +#: part/models.py:2265 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:2275 +#: part/models.py:2282 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:2295 templates/js/translated/part.js:1997 -#: templates/js/translated/stock.js:1336 +#: part/models.py:2302 templates/js/translated/part.js:2002 +#: templates/js/translated/stock.js:1340 msgid "Test Name" msgstr "" -#: part/models.py:2296 +#: part/models.py:2303 msgid "Enter a name for the test" msgstr "" -#: part/models.py:2301 +#: part/models.py:2308 msgid "Test Description" msgstr "" -#: part/models.py:2302 +#: part/models.py:2309 msgid "Enter description for this test" msgstr "" -#: part/models.py:2307 templates/js/translated/part.js:2006 +#: part/models.py:2314 templates/js/translated/part.js:2011 #: templates/js/translated/table_filters.js:302 msgid "Required" msgstr "" -#: part/models.py:2308 +#: part/models.py:2315 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:2313 templates/js/translated/part.js:2014 +#: part/models.py:2320 templates/js/translated/part.js:2019 msgid "Requires Value" msgstr "" -#: part/models.py:2314 +#: part/models.py:2321 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:2319 templates/js/translated/part.js:2021 +#: part/models.py:2326 templates/js/translated/part.js:2026 msgid "Requires Attachment" msgstr "" -#: part/models.py:2320 +#: part/models.py:2327 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:2328 +#: part/models.py:2335 #, python-brace-format msgid "Illegal character in template name ({c})" msgstr "" -#: part/models.py:2364 +#: part/models.py:2371 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:2372 +#: part/models.py:2379 msgid "Parameter Name" msgstr "" -#: part/models.py:2379 +#: part/models.py:2386 msgid "Parameter Units" msgstr "" -#: part/models.py:2410 +#: part/models.py:2417 msgid "Parent Part" msgstr "" -#: part/models.py:2412 part/models.py:2460 part/models.py:2461 +#: part/models.py:2419 part/models.py:2467 part/models.py:2468 #: templates/InvenTree/settings/settings.html:227 msgid "Parameter Template" msgstr "" -#: part/models.py:2414 +#: part/models.py:2421 msgid "Data" msgstr "" -#: part/models.py:2414 +#: part/models.py:2421 msgid "Parameter Value" msgstr "" -#: part/models.py:2465 templates/InvenTree/settings/settings.html:236 +#: part/models.py:2472 templates/InvenTree/settings/settings.html:236 msgid "Default Value" msgstr "" -#: part/models.py:2466 +#: part/models.py:2473 msgid "Default Parameter Value" msgstr "" -#: part/models.py:2501 +#: part/models.py:2508 msgid "Part ID or part name" msgstr "" -#: part/models.py:2504 templates/js/translated/model_renderers.js:212 +#: part/models.py:2511 templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "" -#: part/models.py:2505 +#: part/models.py:2512 msgid "Unique part ID value" msgstr "" -#: part/models.py:2508 +#: part/models.py:2515 msgid "Part Name" msgstr "" -#: part/models.py:2512 +#: part/models.py:2519 msgid "Part IPN" msgstr "" -#: part/models.py:2513 +#: part/models.py:2520 msgid "Part IPN value" msgstr "" -#: part/models.py:2516 +#: part/models.py:2523 msgid "Level" msgstr "" -#: part/models.py:2517 +#: part/models.py:2524 msgid "BOM level" msgstr "" -#: part/models.py:2586 +#: part/models.py:2593 msgid "Select parent part" msgstr "" -#: part/models.py:2594 +#: part/models.py:2601 msgid "Sub part" msgstr "" -#: part/models.py:2595 +#: part/models.py:2602 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:2601 +#: part/models.py:2608 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:2603 part/templates/part/upload_bom.html:58 +#: part/models.py:2610 part/templates/part/upload_bom.html:58 #: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999 #: templates/js/translated/table_filters.js:100 msgid "Optional" msgstr "" -#: part/models.py:2603 +#: part/models.py:2610 msgid "This BOM item is optional" msgstr "" -#: part/models.py:2606 part/templates/part/upload_bom.html:55 +#: part/models.py:2613 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:2607 +#: part/models.py:2614 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:2610 +#: part/models.py:2617 msgid "BOM item reference" msgstr "" -#: part/models.py:2613 +#: part/models.py:2620 msgid "BOM item notes" msgstr "" -#: part/models.py:2615 +#: part/models.py:2622 msgid "Checksum" msgstr "" -#: part/models.py:2615 +#: part/models.py:2622 msgid "BOM line checksum" msgstr "" -#: part/models.py:2619 part/templates/part/upload_bom.html:57 +#: part/models.py:2626 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1016 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:96 msgid "Inherited" msgstr "" -#: part/models.py:2620 +#: part/models.py:2627 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:2625 part/templates/part/upload_bom.html:56 +#: part/models.py:2632 part/templates/part/upload_bom.html:56 #: templates/js/translated/bom.js:1008 msgid "Allow Variants" msgstr "" -#: part/models.py:2626 +#: part/models.py:2633 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:2704 stock/models.py:461 +#: part/models.py:2711 stock/models.py:468 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:2713 part/models.py:2715 +#: part/models.py:2720 part/models.py:2722 msgid "Sub part must be specified" msgstr "" -#: part/models.py:2820 +#: part/models.py:2827 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:2841 +#: part/models.py:2848 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:2854 +#: part/models.py:2861 msgid "Parent BOM item" msgstr "" -#: part/models.py:2862 +#: part/models.py:2869 msgid "Substitute part" msgstr "" -#: part/models.py:2877 +#: part/models.py:2884 msgid "Part 1" msgstr "" -#: part/models.py:2881 +#: part/models.py:2888 msgid "Part 2" msgstr "" -#: part/models.py:2881 +#: part/models.py:2888 msgid "Select Related Part" msgstr "" -#: part/models.py:2899 +#: part/models.py:2906 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:2903 +#: part/models.py:2910 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:152 part/serializers.py:183 stock/serializers.py:181 +#: part/serializers.py:154 part/serializers.py:185 stock/serializers.py:181 msgid "Purchase currency of this stock item" msgstr "" -#: part/serializers.py:812 +#: part/serializers.py:814 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:820 +#: part/serializers.py:822 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:821 +#: part/serializers.py:823 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:826 +#: part/serializers.py:828 msgid "Include Inherited" msgstr "" -#: part/serializers.py:827 +#: part/serializers.py:829 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:832 +#: part/serializers.py:834 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:833 +#: part/serializers.py:835 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:838 +#: part/serializers.py:840 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:839 +#: part/serializers.py:841 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:879 +#: part/serializers.py:881 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:880 +#: part/serializers.py:882 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:910 +#: part/serializers.py:912 msgid "No part column specified" msgstr "" -#: part/serializers.py:953 +#: part/serializers.py:955 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:956 +#: part/serializers.py:958 msgid "No matching part found" msgstr "" -#: part/serializers.py:959 +#: part/serializers.py:961 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:968 +#: part/serializers.py:970 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:976 +#: part/serializers.py:978 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:997 +#: part/serializers.py:999 msgid "At least one BOM item is required" msgstr "" @@ -4853,101 +4885,101 @@ msgstr "" msgid "Delete Items" msgstr "" -#: part/templates/part/category.html:28 part/templates/part/category.html:32 +#: part/templates/part/category.html:34 part/templates/part/category.html:38 msgid "You are subscribed to notifications for this category" msgstr "" -#: part/templates/part/category.html:36 +#: part/templates/part/category.html:42 msgid "Subscribe to notifications for this category" msgstr "" -#: part/templates/part/category.html:42 +#: part/templates/part/category.html:48 msgid "Category Actions" msgstr "" -#: part/templates/part/category.html:47 +#: part/templates/part/category.html:53 msgid "Edit category" msgstr "" -#: part/templates/part/category.html:48 +#: part/templates/part/category.html:54 msgid "Edit Category" msgstr "" -#: part/templates/part/category.html:52 +#: part/templates/part/category.html:58 msgid "Delete category" msgstr "" -#: part/templates/part/category.html:53 +#: part/templates/part/category.html:59 msgid "Delete Category" msgstr "" -#: part/templates/part/category.html:61 +#: part/templates/part/category.html:67 msgid "Create new part category" msgstr "" -#: part/templates/part/category.html:62 +#: part/templates/part/category.html:68 msgid "New Category" msgstr "" -#: part/templates/part/category.html:80 part/templates/part/category.html:93 +#: part/templates/part/category.html:86 part/templates/part/category.html:99 msgid "Category Path" msgstr "" -#: part/templates/part/category.html:94 +#: part/templates/part/category.html:100 msgid "Top level part category" msgstr "" -#: part/templates/part/category.html:114 part/templates/part/category.html:222 +#: part/templates/part/category.html:120 part/templates/part/category.html:228 #: part/templates/part/category_sidebar.html:7 msgid "Subcategories" msgstr "" -#: part/templates/part/category.html:119 +#: part/templates/part/category.html:125 msgid "Parts (Including subcategories)" msgstr "" -#: part/templates/part/category.html:157 +#: part/templates/part/category.html:163 msgid "Create new part" msgstr "" -#: part/templates/part/category.html:158 templates/js/translated/bom.js:367 +#: part/templates/part/category.html:164 templates/js/translated/bom.js:367 msgid "New Part" msgstr "" -#: part/templates/part/category.html:168 part/templates/part/detail.html:363 +#: part/templates/part/category.html:174 part/templates/part/detail.html:363 #: part/templates/part/detail.html:394 msgid "Options" msgstr "" -#: part/templates/part/category.html:172 +#: part/templates/part/category.html:178 msgid "Set category" msgstr "" -#: part/templates/part/category.html:173 +#: part/templates/part/category.html:179 msgid "Set Category" msgstr "" -#: part/templates/part/category.html:180 part/templates/part/category.html:181 +#: part/templates/part/category.html:186 part/templates/part/category.html:187 msgid "Print Labels" msgstr "" -#: part/templates/part/category.html:206 +#: part/templates/part/category.html:212 msgid "Part Parameters" msgstr "" -#: part/templates/part/category.html:320 +#: part/templates/part/category.html:327 msgid "Create Part Category" msgstr "" -#: part/templates/part/category.html:340 +#: part/templates/part/category.html:347 msgid "Create Part" msgstr "" -#: part/templates/part/category.html:343 +#: part/templates/part/category.html:350 msgid "Create another part after this one" msgstr "" -#: part/templates/part/category.html:344 +#: part/templates/part/category.html:351 msgid "Part created successfully" msgstr "" @@ -4955,7 +4987,7 @@ msgstr "" msgid "Import Parts" msgstr "" -#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:375 +#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:379 msgid "Duplicate Part" msgstr "" @@ -5177,19 +5209,19 @@ msgstr "" #: part/templates/part/part_base.html:43 #: stock/templates/stock/item_base.html:41 -#: stock/templates/stock/location.html:43 +#: stock/templates/stock/location.html:48 msgid "Barcode actions" msgstr "" #: part/templates/part/part_base.html:46 #: stock/templates/stock/item_base.html:45 -#: stock/templates/stock/location.html:45 templates/qr_button.html:1 +#: stock/templates/stock/location.html:50 templates/qr_button.html:1 msgid "Show QR Code" msgstr "" #: part/templates/part/part_base.html:49 #: stock/templates/stock/item_base.html:63 -#: stock/templates/stock/location.html:47 +#: stock/templates/stock/location.html:52 msgid "Print Label" msgstr "" @@ -5199,7 +5231,7 @@ msgstr "" #: part/templates/part/part_base.html:60 #: stock/templates/stock/item_base.html:116 -#: stock/templates/stock/location.html:56 +#: stock/templates/stock/location.html:61 msgid "Stock actions" msgstr "" @@ -5260,7 +5292,7 @@ msgstr "" #: templates/js/translated/company.js:624 #: templates/js/translated/company.js:884 #: templates/js/translated/model_renderers.js:204 -#: templates/js/translated/part.js:650 templates/js/translated/part.js:727 +#: templates/js/translated/part.js:654 templates/js/translated/part.js:731 msgid "Inactive" msgstr "" @@ -5294,9 +5326,9 @@ msgstr "" msgid "Can Build" msgstr "" -#: part/templates/part/part_base.html:238 templates/js/translated/part.js:589 -#: templates/js/translated/part.js:609 templates/js/translated/part.js:1302 -#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490 +#: part/templates/part/part_base.html:238 templates/js/translated/part.js:593 +#: templates/js/translated/part.js:613 templates/js/translated/part.js:1306 +#: templates/js/translated/part.js:1490 msgid "Building" msgstr "" @@ -5469,8 +5501,8 @@ msgstr "" msgid "No sale pice history available for this part." msgstr "" -#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:612 -#: templates/js/translated/part.js:1290 templates/js/translated/part.js:1494 +#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616 +#: templates/js/translated/part.js:1294 msgid "No Stock" msgstr "" @@ -5635,51 +5667,55 @@ msgstr "" msgid "Allow sending of emails for event notifications" msgstr "" -#: plugin/models.py:32 +#: plugin/models.py:33 msgid "Plugin Metadata" msgstr "" -#: plugin/models.py:33 +#: plugin/models.py:34 msgid "JSON metadata field, for use by external plugins" msgstr "" -#: plugin/models.py:79 +#: plugin/models.py:80 msgid "Plugin Configuration" msgstr "" -#: plugin/models.py:80 +#: plugin/models.py:81 msgid "Plugin Configurations" msgstr "" -#: plugin/models.py:85 +#: plugin/models.py:86 msgid "Key" msgstr "" -#: plugin/models.py:86 +#: plugin/models.py:87 msgid "Key of plugin" msgstr "" -#: plugin/models.py:94 +#: plugin/models.py:95 msgid "PluginName of the plugin" msgstr "" -#: plugin/models.py:100 +#: plugin/models.py:101 msgid "Is the plugin active" msgstr "" -#: plugin/models.py:168 +#: plugin/models.py:158 +msgid "Sample plugin" +msgstr "" + +#: plugin/models.py:186 msgid "Plugin" msgstr "" -#: plugin/models.py:231 +#: plugin/models.py:249 msgid "Method" msgstr "" -#: plugin/plugin.py:228 +#: plugin/plugin.py:251 msgid "No author found" msgstr "" -#: plugin/plugin.py:240 +#: plugin/plugin.py:263 msgid "No date found" msgstr "" @@ -5857,12 +5893,12 @@ msgid "Stock Item Test Report" msgstr "" #: report/templates/report/inventree_test_report_base.html:79 -#: stock/models.py:641 stock/templates/stock/item_base.html:322 +#: stock/models.py:648 stock/templates/stock/item_base.html:322 #: templates/js/translated/build.js:424 templates/js/translated/build.js:576 #: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673 #: templates/js/translated/model_renderers.js:118 #: templates/js/translated/order.js:118 templates/js/translated/order.js:3297 -#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:486 +#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490 msgid "Serial Number" msgstr "" @@ -5871,19 +5907,19 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report_base.html:93 -#: stock/models.py:2076 +#: stock/models.py:2083 msgid "Test" msgstr "" #: report/templates/report/inventree_test_report_base.html:94 -#: stock/models.py:2082 +#: stock/models.py:2089 msgid "Result" msgstr "" #: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:51 +#: templates/InvenTree/settings/plugin.html:53 #: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2459 +#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468 msgid "Date" msgstr "" @@ -5901,8 +5937,8 @@ msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report_base.html:137 -#: templates/js/translated/stock.js:606 templates/js/translated/stock.js:776 -#: templates/js/translated/stock.js:2708 +#: templates/js/translated/stock.js:610 templates/js/translated/stock.js:780 +#: templates/js/translated/stock.js:2717 msgid "Serial" msgstr "" @@ -5918,241 +5954,241 @@ msgstr "" msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" -#: stock/models.py:82 stock/models.py:732 +#: stock/models.py:89 stock/models.py:739 #: stock/templates/stock/item_base.html:252 msgid "Owner" msgstr "" -#: stock/models.py:83 stock/models.py:733 +#: stock/models.py:90 stock/models.py:740 msgid "Select Owner" msgstr "" -#: stock/models.py:435 +#: stock/models.py:442 msgid "StockItem with this serial number already exists" msgstr "" -#: stock/models.py:467 stock/serializers.py:95 +#: stock/models.py:474 stock/serializers.py:95 msgid "Stock item cannot be created for virtual parts" msgstr "" -#: stock/models.py:484 +#: stock/models.py:491 #, python-brace-format msgid "Part type ('{pf}') must be {pe}" msgstr "" -#: stock/models.py:494 stock/models.py:503 +#: stock/models.py:501 stock/models.py:510 msgid "Quantity must be 1 for item with a serial number" msgstr "" -#: stock/models.py:495 +#: stock/models.py:502 msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:517 +#: stock/models.py:524 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:523 +#: stock/models.py:530 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:537 +#: stock/models.py:544 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:583 +#: stock/models.py:590 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:593 +#: stock/models.py:600 msgid "Base part" msgstr "" -#: stock/models.py:601 +#: stock/models.py:608 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:608 stock/templates/stock/location.html:17 +#: stock/models.py:615 stock/templates/stock/location.html:17 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" msgstr "" -#: stock/models.py:611 +#: stock/models.py:618 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:618 +#: stock/models.py:625 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:624 stock/templates/stock/item_base.html:361 +#: stock/models.py:631 stock/templates/stock/item_base.html:361 msgid "Installed In" msgstr "" -#: stock/models.py:627 +#: stock/models.py:634 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:643 +#: stock/models.py:650 msgid "Serial number for this item" msgstr "" -#: stock/models.py:657 +#: stock/models.py:664 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:662 +#: stock/models.py:669 msgid "Stock Quantity" msgstr "" -#: stock/models.py:671 +#: stock/models.py:678 msgid "Source Build" msgstr "" -#: stock/models.py:673 +#: stock/models.py:680 msgid "Build for this stock item" msgstr "" -#: stock/models.py:684 +#: stock/models.py:691 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:687 +#: stock/models.py:694 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:693 +#: stock/models.py:700 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:699 stock/templates/stock/item_base.html:429 -#: templates/js/translated/stock.js:1879 +#: stock/models.py:706 stock/templates/stock/item_base.html:429 +#: templates/js/translated/stock.js:1883 msgid "Expiry Date" msgstr "" -#: stock/models.py:700 +#: stock/models.py:707 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:713 +#: stock/models.py:720 msgid "Delete on deplete" msgstr "" -#: stock/models.py:713 +#: stock/models.py:720 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:720 stock/templates/stock/item.html:132 +#: stock/models.py:727 stock/templates/stock/item.html:132 msgid "Stock Item Notes" msgstr "" -#: stock/models.py:728 +#: stock/models.py:735 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:756 +#: stock/models.py:763 msgid "Converted to part" msgstr "" -#: stock/models.py:1235 +#: stock/models.py:1242 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1241 +#: stock/models.py:1248 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1247 +#: stock/models.py:1254 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({n})" msgstr "" -#: stock/models.py:1250 +#: stock/models.py:1257 msgid "Serial numbers must be a list of integers" msgstr "" -#: stock/models.py:1253 +#: stock/models.py:1260 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1260 +#: stock/models.py:1267 #, python-brace-format msgid "Serial numbers already exist: {exists}" msgstr "" -#: stock/models.py:1330 +#: stock/models.py:1337 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1333 +#: stock/models.py:1340 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1336 +#: stock/models.py:1343 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1339 +#: stock/models.py:1346 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1342 +#: stock/models.py:1349 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1345 +#: stock/models.py:1352 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1352 stock/serializers.py:959 +#: stock/models.py:1359 stock/serializers.py:961 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1356 +#: stock/models.py:1363 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1360 +#: stock/models.py:1367 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1364 +#: stock/models.py:1371 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:1533 +#: stock/models.py:1540 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:1994 +#: stock/models.py:2001 msgid "Entry notes" msgstr "" -#: stock/models.py:2052 +#: stock/models.py:2059 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2058 +#: stock/models.py:2065 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2077 +#: stock/models.py:2084 msgid "Test name" msgstr "" -#: stock/models.py:2083 +#: stock/models.py:2090 msgid "Test result" msgstr "" -#: stock/models.py:2089 +#: stock/models.py:2096 msgid "Test output value" msgstr "" -#: stock/models.py:2096 +#: stock/models.py:2103 msgid "Test result attachment" msgstr "" -#: stock/models.py:2102 +#: stock/models.py:2109 msgid "Test notes" msgstr "" @@ -6177,7 +6213,7 @@ msgstr "" msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:323 stock/serializers.py:916 stock/serializers.py:1149 +#: stock/serializers.py:323 stock/serializers.py:918 stock/serializers.py:1151 msgid "Destination stock location" msgstr "" @@ -6225,63 +6261,63 @@ msgstr "" msgid "Destination location for returned item" msgstr "" -#: stock/serializers.py:771 +#: stock/serializers.py:773 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:775 +#: stock/serializers.py:777 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:779 +#: stock/serializers.py:781 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:810 +#: stock/serializers.py:812 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:816 +#: stock/serializers.py:818 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:824 +#: stock/serializers.py:826 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:834 stock/serializers.py:1065 +#: stock/serializers.py:836 stock/serializers.py:1067 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:923 +#: stock/serializers.py:925 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:928 +#: stock/serializers.py:930 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:929 +#: stock/serializers.py:931 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:934 +#: stock/serializers.py:936 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:935 +#: stock/serializers.py:937 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:945 +#: stock/serializers.py:947 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1027 +#: stock/serializers.py:1029 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1055 +#: stock/serializers.py:1057 msgid "Stock transaction notes" msgstr "" @@ -6318,7 +6354,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2852 +#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2861 msgid "Install Stock Item" msgstr "" @@ -6326,7 +6362,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1518 +#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1522 msgid "Add Test Result" msgstr "" @@ -6357,7 +6393,7 @@ msgid "Stock adjustment actions" msgstr "" #: stock/templates/stock/item_base.html:80 -#: stock/templates/stock/location.html:63 templates/stock_table.html:47 +#: stock/templates/stock/location.html:68 templates/stock_table.html:47 msgid "Count stock" msgstr "" @@ -6374,7 +6410,7 @@ msgid "Serialize stock" msgstr "" #: stock/templates/stock/item_base.html:93 -#: stock/templates/stock/location.html:69 templates/stock_table.html:48 +#: stock/templates/stock/location.html:74 templates/stock_table.html:48 msgid "Transfer stock" msgstr "" @@ -6435,7 +6471,7 @@ msgid "You are not in the list of owners of this item. This stock item cannot be msgstr "" #: stock/templates/stock/item_base.html:257 -#: stock/templates/stock/location.html:127 +#: stock/templates/stock/location.html:132 msgid "Read only" msgstr "" @@ -6513,7 +6549,7 @@ msgid "Stale" msgstr "" #: stock/templates/stock/item_base.html:442 -#: templates/js/translated/company.js:985 templates/js/translated/stock.js:1895 +#: templates/js/translated/company.js:985 templates/js/translated/stock.js:1899 msgid "Last Updated" msgstr "" @@ -6557,58 +6593,58 @@ msgstr "" msgid "Select quantity to serialize, and unique serial numbers." msgstr "" -#: stock/templates/stock/location.html:33 +#: stock/templates/stock/location.html:38 msgid "Locate stock location" msgstr "" -#: stock/templates/stock/location.html:49 +#: stock/templates/stock/location.html:54 msgid "Check-in Items" msgstr "" -#: stock/templates/stock/location.html:77 +#: stock/templates/stock/location.html:82 msgid "Location actions" msgstr "" -#: stock/templates/stock/location.html:79 +#: stock/templates/stock/location.html:84 msgid "Edit location" msgstr "" -#: stock/templates/stock/location.html:81 +#: stock/templates/stock/location.html:86 msgid "Delete location" msgstr "" -#: stock/templates/stock/location.html:90 +#: stock/templates/stock/location.html:95 msgid "Create new stock location" msgstr "" -#: stock/templates/stock/location.html:91 +#: stock/templates/stock/location.html:96 msgid "New Location" msgstr "" -#: stock/templates/stock/location.html:109 -#: stock/templates/stock/location.html:115 +#: stock/templates/stock/location.html:114 +#: stock/templates/stock/location.html:120 msgid "Location Path" msgstr "" -#: stock/templates/stock/location.html:116 +#: stock/templates/stock/location.html:121 msgid "Top level stock location" msgstr "" -#: stock/templates/stock/location.html:122 +#: stock/templates/stock/location.html:127 msgid "Location Owner" msgstr "" -#: stock/templates/stock/location.html:126 +#: stock/templates/stock/location.html:131 msgid "You are not in the list of owners of this location. This stock location cannot be edited." msgstr "" -#: stock/templates/stock/location.html:142 -#: stock/templates/stock/location.html:189 +#: stock/templates/stock/location.html:147 +#: stock/templates/stock/location.html:194 #: stock/templates/stock/location_sidebar.html:5 msgid "Sublocations" msgstr "" -#: stock/templates/stock/location.html:156 templates/InvenTree/search.html:165 +#: stock/templates/stock/location.html:161 templates/InvenTree/search.html:165 #: templates/js/translated/search.js:238 users/models.py:39 msgid "Stock Locations" msgstr "" @@ -6880,15 +6916,15 @@ msgstr "" msgid "Part Settings" msgstr "" -#: templates/InvenTree/settings/part.html:44 +#: templates/InvenTree/settings/part.html:46 msgid "Part Import" msgstr "" -#: templates/InvenTree/settings/part.html:48 +#: templates/InvenTree/settings/part.html:50 msgid "Import Part" msgstr "" -#: templates/InvenTree/settings/part.html:62 +#: templates/InvenTree/settings/part.html:64 msgid "Part Parameter Templates" msgstr "" @@ -6900,47 +6936,47 @@ msgstr "" msgid "Changing the settings below require you to immediately restart the server. Do not change this while under active usage." msgstr "" -#: templates/InvenTree/settings/plugin.html:34 +#: templates/InvenTree/settings/plugin.html:36 msgid "Plugins" msgstr "" -#: templates/InvenTree/settings/plugin.html:39 +#: templates/InvenTree/settings/plugin.html:41 #: templates/js/translated/plugin.js:16 msgid "Install Plugin" msgstr "" -#: templates/InvenTree/settings/plugin.html:48 templates/navbar.html:137 +#: templates/InvenTree/settings/plugin.html:50 templates/navbar.html:137 #: users/models.py:36 msgid "Admin" msgstr "" -#: templates/InvenTree/settings/plugin.html:50 +#: templates/InvenTree/settings/plugin.html:52 #: templates/InvenTree/settings/plugin_settings.html:28 msgid "Author" msgstr "" -#: templates/InvenTree/settings/plugin.html:52 +#: templates/InvenTree/settings/plugin.html:54 #: templates/InvenTree/settings/plugin_settings.html:43 msgid "Version" msgstr "" -#: templates/InvenTree/settings/plugin.html:74 +#: templates/InvenTree/settings/plugin.html:76 msgid "Sample" msgstr "" -#: templates/InvenTree/settings/plugin.html:99 +#: templates/InvenTree/settings/plugin.html:101 msgid "Inactive plugins" msgstr "" -#: templates/InvenTree/settings/plugin.html:122 +#: templates/InvenTree/settings/plugin.html:124 msgid "Plugin Error Stack" msgstr "" -#: templates/InvenTree/settings/plugin.html:131 +#: templates/InvenTree/settings/plugin.html:133 msgid "Stage" msgstr "" -#: templates/InvenTree/settings/plugin.html:133 +#: templates/InvenTree/settings/plugin.html:135 #: templates/js/translated/notification.js:75 msgid "Message" msgstr "" @@ -7004,11 +7040,11 @@ msgstr "" msgid "Commit Message" msgstr "" -#: templates/InvenTree/settings/plugin_settings.html:117 +#: templates/InvenTree/settings/plugin_settings.html:120 msgid "Sign Status" msgstr "" -#: templates/InvenTree/settings/plugin_settings.html:122 +#: templates/InvenTree/settings/plugin_settings.html:125 msgid "Sign Key" msgstr "" @@ -7835,7 +7871,7 @@ msgstr "" msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:456 templates/js/translated/stock.js:1050 +#: templates/js/translated/barcode.js:456 templates/js/translated/stock.js:1054 msgid "Remove stock item" msgstr "" @@ -8008,7 +8044,7 @@ msgid "Includes variant and substitute stock" msgstr "" #: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822 -#: templates/js/translated/part.js:759 +#: templates/js/translated/part.js:763 msgid "Includes variant stock" msgstr "" @@ -8105,12 +8141,12 @@ msgid "Complete Build Order" msgstr "" #: templates/js/translated/build.js:263 templates/js/translated/stock.js:92 -#: templates/js/translated/stock.js:210 +#: templates/js/translated/stock.js:214 msgid "Next available serial number" msgstr "" #: templates/js/translated/build.js:265 templates/js/translated/stock.js:94 -#: templates/js/translated/stock.js:212 +#: templates/js/translated/stock.js:216 msgid "Latest serial number" msgstr "" @@ -8323,9 +8359,9 @@ msgstr "" msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1383 -#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1682 -#: templates/js/translated/stock.js:2382 +#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387 +#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1686 +#: templates/js/translated/stock.js:2386 msgid "Select" msgstr "" @@ -8337,7 +8373,7 @@ msgstr "" msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2638 +#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647 msgid "No user information" msgstr "" @@ -8410,34 +8446,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:616 -#: templates/js/translated/company.js:876 templates/js/translated/part.js:634 -#: templates/js/translated/part.js:719 +#: templates/js/translated/company.js:876 templates/js/translated/part.js:638 +#: templates/js/translated/part.js:723 msgid "Template part" msgstr "" #: templates/js/translated/company.js:620 -#: templates/js/translated/company.js:880 templates/js/translated/part.js:638 -#: templates/js/translated/part.js:723 +#: templates/js/translated/company.js:880 templates/js/translated/part.js:642 +#: templates/js/translated/part.js:727 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:748 templates/js/translated/part.js:826 +#: templates/js/translated/company.js:748 templates/js/translated/part.js:830 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:785 templates/js/translated/part.js:868 +#: templates/js/translated/company.js:785 templates/js/translated/part.js:872 msgid "Edit parameter" msgstr "" -#: templates/js/translated/company.js:786 templates/js/translated/part.js:869 +#: templates/js/translated/company.js:786 templates/js/translated/part.js:873 msgid "Delete parameter" msgstr "" -#: templates/js/translated/company.js:805 templates/js/translated/part.js:886 +#: templates/js/translated/company.js:805 templates/js/translated/part.js:890 msgid "Edit Parameter" msgstr "" -#: templates/js/translated/company.js:816 templates/js/translated/part.js:898 +#: templates/js/translated/company.js:816 templates/js/translated/part.js:902 msgid "Delete Parameter" msgstr "" @@ -8562,7 +8598,7 @@ msgid "Labels sent to printer" msgstr "" #: templates/js/translated/label.js:60 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1078 msgid "Select Stock Items" msgstr "" @@ -8872,7 +8908,7 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2140 +#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144 msgid "Stock Status" msgstr "" @@ -8896,7 +8932,7 @@ msgstr "" msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:1672 templates/js/translated/part.js:939 +#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943 msgid "No purchase orders found" msgstr "" @@ -8931,7 +8967,7 @@ msgstr "" #: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203 #: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050 -#: templates/js/translated/part.js:2126 templates/js/translated/part.js:2479 +#: templates/js/translated/part.js:2131 templates/js/translated/part.js:2484 msgid "Unit Price" msgstr "" @@ -8941,11 +8977,11 @@ msgid "Total Price" msgstr "" #: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600 -#: templates/js/translated/part.js:1046 +#: templates/js/translated/part.js:1050 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1092 +#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096 msgid "Receive line item" msgstr "" @@ -9066,7 +9102,7 @@ msgid "Delete Stock Allocation" msgstr "" #: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398 -#: templates/js/translated/stock.js:1598 +#: templates/js/translated/stock.js:1602 msgid "Shipped to customer" msgstr "" @@ -9190,149 +9226,157 @@ msgstr "" msgid "Parent part category" msgstr "" -#: templates/js/translated/part.js:318 +#: templates/js/translated/part.js:306 templates/js/translated/stock.js:118 +msgid "Icon (optional) - Explore all available icons on" +msgstr "" + +#: templates/js/translated/part.js:322 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:331 +#: templates/js/translated/part.js:335 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:333 +#: templates/js/translated/part.js:337 msgid "Any child categories will be moved to the parent of this category" msgstr "" -#: templates/js/translated/part.js:334 +#: templates/js/translated/part.js:338 msgid "Any parts in this category will be moved to the parent of this category" msgstr "" -#: templates/js/translated/part.js:339 +#: templates/js/translated/part.js:343 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:365 +#: templates/js/translated/part.js:369 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:367 +#: templates/js/translated/part.js:371 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:378 +#: templates/js/translated/part.js:382 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:430 +#: templates/js/translated/part.js:434 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:431 +#: templates/js/translated/part.js:435 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:445 +#: templates/js/translated/part.js:449 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:447 +#: templates/js/translated/part.js:451 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:448 +#: templates/js/translated/part.js:452 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:449 +#: templates/js/translated/part.js:453 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:456 +#: templates/js/translated/part.js:460 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:492 +#: templates/js/translated/part.js:496 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:494 +#: templates/js/translated/part.js:498 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:499 +#: templates/js/translated/part.js:503 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:501 +#: templates/js/translated/part.js:505 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:518 +#: templates/js/translated/part.js:522 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:528 +#: templates/js/translated/part.js:532 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:531 +#: templates/js/translated/part.js:535 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:556 +#: templates/js/translated/part.js:560 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:582 templates/js/translated/part.js:1466 +#: templates/js/translated/part.js:586 templates/js/translated/part.js:1478 #: templates/js/translated/table_filters.js:468 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:592 templates/js/translated/part.js:1478 +#: templates/js/translated/part.js:596 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:626 templates/js/translated/part.js:711 +#: templates/js/translated/part.js:630 templates/js/translated/part.js:715 msgid "Trackable part" msgstr "" -#: templates/js/translated/part.js:630 templates/js/translated/part.js:715 +#: templates/js/translated/part.js:634 templates/js/translated/part.js:719 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:642 +#: templates/js/translated/part.js:646 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:646 +#: templates/js/translated/part.js:650 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:774 +#: templates/js/translated/part.js:778 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1162 +#: templates/js/translated/part.js:1166 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1186 +#: templates/js/translated/part.js:1190 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:1253 templates/js/translated/part.js:1549 +#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1549 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:1292 +#: templates/js/translated/part.js:1296 msgid "Not available" msgstr "" -#: templates/js/translated/part.js:1443 +#: templates/js/translated/part.js:1447 msgid "No category" msgstr "" +#: templates/js/translated/part.js:1476 +msgid "No stock" +msgstr "" + #: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816 -#: templates/js/translated/stock.js:2343 +#: templates/js/translated/stock.js:2347 msgid "Display as list" msgstr "" @@ -9356,7 +9400,7 @@ msgstr "" msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2362 +#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2366 msgid "Display as tree" msgstr "" @@ -9364,67 +9408,67 @@ msgstr "" msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:1925 +#: templates/js/translated/part.js:1930 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:1983 +#: templates/js/translated/part.js:1988 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2034 templates/js/translated/stock.js:1295 +#: templates/js/translated/part.js:2039 templates/js/translated/stock.js:1299 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:2035 templates/js/translated/stock.js:1296 -#: templates/js/translated/stock.js:1556 +#: templates/js/translated/part.js:2040 templates/js/translated/stock.js:1300 +#: templates/js/translated/stock.js:1560 msgid "Delete test result" msgstr "" -#: templates/js/translated/part.js:2041 +#: templates/js/translated/part.js:2046 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2063 +#: templates/js/translated/part.js:2068 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2077 +#: templates/js/translated/part.js:2082 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2102 +#: templates/js/translated/part.js:2107 #, python-brace-format msgid "No ${human_name} information found" msgstr "" -#: templates/js/translated/part.js:2159 +#: templates/js/translated/part.js:2164 #, python-brace-format msgid "Edit ${human_name}" msgstr "" -#: templates/js/translated/part.js:2160 +#: templates/js/translated/part.js:2165 #, python-brace-format msgid "Delete ${human_name}" msgstr "" -#: templates/js/translated/part.js:2274 +#: templates/js/translated/part.js:2279 msgid "Current Stock" msgstr "" -#: templates/js/translated/part.js:2307 +#: templates/js/translated/part.js:2312 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2333 +#: templates/js/translated/part.js:2338 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2403 +#: templates/js/translated/part.js:2408 msgid "Single Price" msgstr "" -#: templates/js/translated/part.js:2422 +#: templates/js/translated/part.js:2427 msgid "Single Price Difference" msgstr "" @@ -9518,376 +9562,376 @@ msgstr "" msgid "Parent stock location" msgstr "" -#: templates/js/translated/stock.js:140 +#: templates/js/translated/stock.js:144 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:155 +#: templates/js/translated/stock.js:159 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:169 +#: templates/js/translated/stock.js:173 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:171 +#: templates/js/translated/stock.js:175 msgid "Any child locations will be moved to the parent of this location" msgstr "" -#: templates/js/translated/stock.js:172 +#: templates/js/translated/stock.js:176 msgid "Any stock items in this location will be moved to the parent of this location" msgstr "" -#: templates/js/translated/stock.js:178 +#: templates/js/translated/stock.js:182 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:223 +#: templates/js/translated/stock.js:227 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:262 +#: templates/js/translated/stock.js:266 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:268 +#: templates/js/translated/stock.js:272 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:333 +#: templates/js/translated/stock.js:337 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:353 +#: templates/js/translated/stock.js:357 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:369 +#: templates/js/translated/stock.js:373 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:374 +#: templates/js/translated/stock.js:378 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:395 +#: templates/js/translated/stock.js:399 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:445 +#: templates/js/translated/stock.js:449 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:458 +#: templates/js/translated/stock.js:462 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:483 +#: templates/js/translated/stock.js:487 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:487 templates/js/translated/stock.js:488 +#: templates/js/translated/stock.js:491 templates/js/translated/stock.js:492 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:504 +#: templates/js/translated/stock.js:508 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:524 +#: templates/js/translated/stock.js:528 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:533 +#: templates/js/translated/stock.js:537 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:656 +#: templates/js/translated/stock.js:660 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:657 +#: templates/js/translated/stock.js:661 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:734 +#: templates/js/translated/stock.js:738 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:735 +#: templates/js/translated/stock.js:739 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:737 +#: templates/js/translated/stock.js:741 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:738 +#: templates/js/translated/stock.js:742 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:824 +#: templates/js/translated/stock.js:828 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:825 +#: templates/js/translated/stock.js:829 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:920 +#: templates/js/translated/stock.js:924 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:921 +#: templates/js/translated/stock.js:925 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:927 +#: templates/js/translated/stock.js:931 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:928 +#: templates/js/translated/stock.js:932 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:932 +#: templates/js/translated/stock.js:936 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:933 +#: templates/js/translated/stock.js:937 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:937 +#: templates/js/translated/stock.js:941 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:938 users/models.py:216 +#: templates/js/translated/stock.js:942 users/models.py:216 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:942 +#: templates/js/translated/stock.js:946 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1035 +#: templates/js/translated/stock.js:1039 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1035 +#: templates/js/translated/stock.js:1039 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1075 +#: templates/js/translated/stock.js:1079 msgid "You must select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1098 +#: templates/js/translated/stock.js:1102 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1234 +#: templates/js/translated/stock.js:1238 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1236 +#: templates/js/translated/stock.js:1240 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1241 +#: templates/js/translated/stock.js:1245 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1288 +#: templates/js/translated/stock.js:1292 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1291 +#: templates/js/translated/stock.js:1295 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1317 +#: templates/js/translated/stock.js:1321 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1374 +#: templates/js/translated/stock.js:1378 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1539 +#: templates/js/translated/stock.js:1543 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1561 +#: templates/js/translated/stock.js:1565 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1590 +#: templates/js/translated/stock.js:1594 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1594 +#: templates/js/translated/stock.js:1598 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1602 +#: templates/js/translated/stock.js:1606 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1608 +#: templates/js/translated/stock.js:1612 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1775 +#: templates/js/translated/stock.js:1779 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:1780 +#: templates/js/translated/stock.js:1784 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:1783 +#: templates/js/translated/stock.js:1787 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:1786 +#: templates/js/translated/stock.js:1790 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:1788 +#: templates/js/translated/stock.js:1792 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:1790 +#: templates/js/translated/stock.js:1794 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:1793 +#: templates/js/translated/stock.js:1797 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:1797 +#: templates/js/translated/stock.js:1801 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:1799 +#: templates/js/translated/stock.js:1803 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:1806 +#: templates/js/translated/stock.js:1810 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:1808 +#: templates/js/translated/stock.js:1812 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:1810 +#: templates/js/translated/stock.js:1814 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:1814 +#: templates/js/translated/stock.js:1818 #: templates/js/translated/table_filters.js:196 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:1865 +#: templates/js/translated/stock.js:1869 msgid "Stocktake" msgstr "" -#: templates/js/translated/stock.js:1944 +#: templates/js/translated/stock.js:1948 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:1982 +#: templates/js/translated/stock.js:1986 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2155 +#: templates/js/translated/stock.js:2159 msgid "Set Stock Status" msgstr "" -#: templates/js/translated/stock.js:2169 +#: templates/js/translated/stock.js:2173 msgid "Select Status Code" msgstr "" -#: templates/js/translated/stock.js:2170 +#: templates/js/translated/stock.js:2174 msgid "Status code must be selected" msgstr "" -#: templates/js/translated/stock.js:2400 +#: templates/js/translated/stock.js:2404 msgid "Load Subloactions" msgstr "" -#: templates/js/translated/stock.js:2484 +#: templates/js/translated/stock.js:2493 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2500 +#: templates/js/translated/stock.js:2509 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2522 +#: templates/js/translated/stock.js:2531 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2541 +#: templates/js/translated/stock.js:2550 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2560 +#: templates/js/translated/stock.js:2569 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2578 +#: templates/js/translated/stock.js:2587 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:2601 +#: templates/js/translated/stock.js:2610 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:2609 +#: templates/js/translated/stock.js:2618 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:2685 +#: templates/js/translated/stock.js:2694 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:2736 templates/js/translated/stock.js:2772 +#: templates/js/translated/stock.js:2745 templates/js/translated/stock.js:2781 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:2785 +#: templates/js/translated/stock.js:2794 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:2806 +#: templates/js/translated/stock.js:2815 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:2807 +#: templates/js/translated/stock.js:2816 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:2809 +#: templates/js/translated/stock.js:2818 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:2810 +#: templates/js/translated/stock.js:2819 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:2811 +#: templates/js/translated/stock.js:2820 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:2812 +#: templates/js/translated/stock.js:2821 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:2825 +#: templates/js/translated/stock.js:2834 msgid "Select part to install" msgstr "" diff --git a/InvenTree/locale/fa/LC_MESSAGES/django.po b/InvenTree/locale/fa/LC_MESSAGES/django.po index f1b3fef13f..0b12112c6f 100644 --- a/InvenTree/locale/fa/LC_MESSAGES/django.po +++ b/InvenTree/locale/fa/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-16 11:53+0000\n" -"PO-Revision-Date: 2022-08-16 21:35\n" +"POT-Creation-Date: 2022-08-18 05:14+0000\n" +"PO-Revision-Date: 2022-08-18 21:38\n" "Last-Translator: \n" "Language-Team: Persian\n" "Language: fa_IR\n" @@ -40,10 +40,10 @@ msgstr "" #: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825 #: stock/serializers.py:924 stock/serializers.py:1056 #: stock/templates/stock/stock_sidebar.html:25 -#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101 -#: templates/js/translated/company.js:964 templates/js/translated/order.js:2104 -#: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753 -#: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102 +#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1099 +#: templates/js/translated/company.js:964 templates/js/translated/order.js:2143 +#: templates/js/translated/order.js:2294 templates/js/translated/order.js:2792 +#: templates/js/translated/order.js:3743 templates/js/translated/order.js:4141 #: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980 msgid "Notes" msgstr "" @@ -211,11 +211,11 @@ msgstr "" #: InvenTree/models.py:402 company/models.py:124 company/models.py:276 #: company/models.py:510 order/models.py:84 order/models.py:1245 -#: part/models.py:802 +#: part/models.py:802 part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_base.html:164 #: templates/js/translated/company.js:656 -#: templates/js/translated/company.js:948 templates/js/translated/order.js:2742 -#: templates/js/translated/part.js:1514 +#: templates/js/translated/company.js:948 templates/js/translated/order.js:2781 +#: templates/js/translated/part.js:1510 msgid "Link" msgstr "" @@ -235,8 +235,8 @@ msgstr "" #: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665 #: common/models.py:1666 common/models.py:1889 common/models.py:1890 -#: common/models.py:2152 common/models.py:2153 part/models.py:2200 -#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257 +#: common/models.py:2152 common/models.py:2153 part/models.py:2247 +#: part/models.py:2267 plugin/models.py:256 plugin/models.py:257 #: report/templates/report/inventree_test_report_base.html:96 #: templates/js/translated/stock.js:2641 msgid "User" @@ -277,7 +277,7 @@ msgstr "" #: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875 #: company/models.py:358 label/models.py:101 part/models.py:746 -#: part/models.py:2378 plugin/models.py:94 report/models.py:152 +#: part/models.py:2425 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 #: templates/InvenTree/settings/plugin.html:51 #: templates/InvenTree/settings/plugin.html:134 @@ -287,7 +287,7 @@ msgstr "" #: templates/js/translated/company.js:758 #: templates/js/translated/notification.js:71 #: templates/js/translated/part.js:688 templates/js/translated/part.js:840 -#: templates/js/translated/part.js:1906 templates/js/translated/stock.js:2392 +#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2392 msgid "Name" msgstr "" @@ -297,19 +297,20 @@ msgstr "" #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:87 label/models.py:108 #: order/models.py:82 part/models.py:769 part/templates/part/category.html:80 -#: part/templates/part/part_base.html:167 report/models.py:165 +#: part/templates/part/part_base.html:167 +#: part/templates/part/part_scheduling.html:12 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 #: stock/templates/stock/location.html:108 #: templates/InvenTree/settings/plugin_settings.html:33 -#: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848 -#: templates/js/translated/build.js:2471 templates/js/translated/company.js:409 +#: templates/js/translated/bom.js:553 templates/js/translated/bom.js:846 +#: templates/js/translated/build.js:2504 templates/js/translated/company.js:409 #: templates/js/translated/company.js:667 -#: templates/js/translated/company.js:959 templates/js/translated/order.js:1720 -#: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531 +#: templates/js/translated/company.js:959 templates/js/translated/order.js:1759 +#: templates/js/translated/order.js:1991 templates/js/translated/order.js:2570 #: templates/js/translated/part.js:747 templates/js/translated/part.js:1153 -#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1942 -#: templates/js/translated/part.js:2011 templates/js/translated/stock.js:1743 +#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1938 +#: templates/js/translated/part.js:2007 templates/js/translated/stock.js:1743 #: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478 msgid "Description" msgstr "" @@ -323,7 +324,7 @@ msgid "parent" msgstr "" #: InvenTree/models.py:560 InvenTree/models.py:561 -#: templates/js/translated/part.js:1948 templates/js/translated/stock.js:2430 +#: templates/js/translated/part.js:1944 templates/js/translated/stock.js:2430 msgid "Path" msgstr "" @@ -335,7 +336,7 @@ msgstr "" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:55 part/models.py:2699 +#: InvenTree/serializers.py:55 part/models.py:2746 msgid "Must be a valid number" msgstr "" @@ -541,7 +542,7 @@ msgid "Returned" msgstr "" #: InvenTree/status_codes.py:141 order/models.py:1128 -#: templates/js/translated/order.js:3330 templates/js/translated/order.js:3679 +#: templates/js/translated/order.js:3369 templates/js/translated/order.js:3718 msgid "Shipped" msgstr "" @@ -728,7 +729,7 @@ msgstr "" #: report/templates/report/inventree_build_order_base.html:105 #: templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 -#: templates/js/translated/build.js:731 +#: templates/js/translated/build.js:763 msgid "Build Order" msgstr "" @@ -747,14 +748,14 @@ msgid "Build Order Reference" msgstr "" #: build/models.py:166 order/models.py:240 order/models.py:623 -#: order/models.py:904 part/models.py:2617 +#: order/models.py:904 part/models.py:2664 #: part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 -#: templates/js/translated/bom.js:692 templates/js/translated/bom.js:855 -#: templates/js/translated/build.js:1779 templates/js/translated/order.js:1983 -#: templates/js/translated/order.js:2184 templates/js/translated/order.js:3523 -#: templates/js/translated/order.js:4031 +#: templates/js/translated/bom.js:690 templates/js/translated/bom.js:853 +#: templates/js/translated/build.js:1811 templates/js/translated/order.js:2022 +#: templates/js/translated/order.js:2223 templates/js/translated/order.js:3562 +#: templates/js/translated/order.js:4070 msgid "Reference" msgstr "" @@ -762,7 +763,7 @@ msgstr "" msgid "Brief description of the build" msgstr "" -#: build/models.py:185 build/templates/build/build_base.html:169 +#: build/models.py:185 build/templates/build/build_base.html:172 #: build/templates/build/detail.html:87 msgid "Parent Build" msgstr "" @@ -771,13 +772,13 @@ msgstr "" msgid "BuildOrder to which this build is allocated" msgstr "" -#: build/models.py:191 build/templates/build/build_base.html:77 +#: build/models.py:191 build/templates/build/build_base.html:80 #: build/templates/build/detail.html:29 company/models.py:670 #: order/models.py:1001 order/models.py:1112 order/models.py:1113 -#: part/models.py:343 part/models.py:2146 part/models.py:2161 -#: part/models.py:2180 part/models.py:2198 part/models.py:2297 -#: part/models.py:2417 part/models.py:2507 part/models.py:2592 -#: part/models.py:2868 part/serializers.py:813 +#: part/models.py:343 part/models.py:2193 part/models.py:2208 +#: part/models.py:2227 part/models.py:2245 part/models.py:2344 +#: part/models.py:2464 part/models.py:2554 part/models.py:2639 +#: part/models.py:2915 part/serializers.py:813 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -789,17 +790,17 @@ msgstr "" #: templates/email/build_order_required_stock.html:17 #: templates/email/low_stock_notification.html:16 #: templates/email/overdue_build_order.html:16 -#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:553 -#: templates/js/translated/bom.js:691 templates/js/translated/bom.js:802 -#: templates/js/translated/build.js:1156 templates/js/translated/build.js:1649 -#: templates/js/translated/build.js:2085 templates/js/translated/build.js:2476 +#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:552 +#: templates/js/translated/bom.js:689 templates/js/translated/bom.js:800 +#: templates/js/translated/build.js:1188 templates/js/translated/build.js:1681 +#: templates/js/translated/build.js:2118 templates/js/translated/build.js:2509 #: templates/js/translated/company.js:266 #: templates/js/translated/company.js:496 #: templates/js/translated/company.js:608 -#: templates/js/translated/company.js:868 templates/js/translated/order.js:103 -#: templates/js/translated/order.js:934 templates/js/translated/order.js:1387 -#: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885 -#: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507 +#: templates/js/translated/company.js:868 templates/js/translated/order.js:104 +#: templates/js/translated/order.js:973 templates/js/translated/order.js:1426 +#: templates/js/translated/order.js:1976 templates/js/translated/order.js:2924 +#: templates/js/translated/order.js:3320 templates/js/translated/order.js:3546 #: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210 #: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586 #: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958 @@ -821,7 +822,7 @@ msgid "SalesOrder to which this build is allocated" msgstr "" #: build/models.py:213 build/serializers.py:800 -#: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873 +#: templates/js/translated/build.js:2106 templates/js/translated/order.js:2912 msgid "Source Location" msgstr "" @@ -862,7 +863,7 @@ msgid "Build status code" msgstr "" #: build/models.py:251 build/serializers.py:225 order/serializers.py:447 -#: stock/models.py:662 templates/js/translated/order.js:1247 +#: stock/models.py:662 templates/js/translated/order.js:1286 msgid "Batch Code" msgstr "" @@ -871,7 +872,7 @@ msgid "Batch code for this build output" msgstr "" #: build/models.py:258 order/models.py:86 part/models.py:938 -#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544 +#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2583 msgid "Creation Date" msgstr "" @@ -884,7 +885,7 @@ msgid "Target date for build completion. Build will be overdue after this date." msgstr "" #: build/models.py:266 order/models.py:286 -#: templates/js/translated/build.js:2553 +#: templates/js/translated/build.js:2586 msgid "Completion Date" msgstr "" @@ -892,7 +893,7 @@ msgstr "" msgid "completed by" msgstr "" -#: build/models.py:280 templates/js/translated/build.js:2521 +#: build/models.py:280 templates/js/translated/build.js:2554 msgid "Issued by" msgstr "" @@ -900,12 +901,12 @@ msgstr "" msgid "User who issued this build order" msgstr "" -#: build/models.py:289 build/templates/build/build_base.html:190 +#: build/models.py:289 build/templates/build/build_base.html:193 #: build/templates/build/detail.html:115 order/models.py:100 #: order/templates/order/order_base.html:176 #: order/templates/order/sales_order_base.html:183 part/models.py:942 #: report/templates/report/inventree_build_order_base.html:158 -#: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754 +#: templates/js/translated/build.js:2566 templates/js/translated/order.js:1793 msgid "Responsible" msgstr "" @@ -972,7 +973,7 @@ msgid "Selected stock item not found in BOM" msgstr "" #: build/models.py:1328 stock/templates/stock/item_base.html:177 -#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2455 +#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2488 #: templates/navbar.html:38 msgid "Build" msgstr "" @@ -986,11 +987,11 @@ msgstr "" #: stock/serializers.py:882 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:199 -#: templates/js/translated/build.js:741 templates/js/translated/build.js:746 -#: templates/js/translated/build.js:2087 templates/js/translated/build.js:2638 -#: templates/js/translated/order.js:104 templates/js/translated/order.js:2886 -#: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193 -#: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380 +#: templates/js/translated/build.js:773 templates/js/translated/build.js:778 +#: templates/js/translated/build.js:2120 templates/js/translated/build.js:2671 +#: templates/js/translated/order.js:105 templates/js/translated/order.js:2925 +#: templates/js/translated/order.js:3227 templates/js/translated/order.js:3232 +#: templates/js/translated/order.js:3327 templates/js/translated/order.js:3419 #: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752 #: templates/js/translated/stock.js:2577 msgid "Stock Item" @@ -1001,13 +1002,13 @@ msgid "Source stock item" msgstr "" #: build/models.py:1358 build/serializers.py:193 -#: build/templates/build/build_base.html:82 +#: build/templates/build/build_base.html:85 #: build/templates/build/detail.html:34 common/models.py:1697 #: company/templates/company/supplier_part.html:279 order/models.py:897 #: order/models.py:1423 order/serializers.py:1155 #: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40 -#: part/models.py:2608 part/templates/part/detail.html:937 -#: part/templates/part/detail.html:1023 +#: part/models.py:2655 part/templates/part/detail.html:951 +#: part/templates/part/detail.html:1037 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 #: report/templates/report/inventree_build_order_base.html:113 @@ -1018,20 +1019,20 @@ msgstr "" #: stock/serializers.py:293 stock/templates/stock/item_base.html:292 #: stock/templates/stock/item_base.html:300 #: templates/email/build_order_completed.html:18 -#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:693 -#: templates/js/translated/bom.js:863 templates/js/translated/build.js:426 -#: templates/js/translated/build.js:578 templates/js/translated/build.js:768 -#: templates/js/translated/build.js:1178 templates/js/translated/build.js:1675 -#: templates/js/translated/build.js:2088 +#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:691 +#: templates/js/translated/bom.js:861 templates/js/translated/build.js:458 +#: templates/js/translated/build.js:610 templates/js/translated/build.js:800 +#: templates/js/translated/build.js:1210 templates/js/translated/build.js:1707 +#: templates/js/translated/build.js:2121 #: templates/js/translated/model_renderers.js:120 -#: templates/js/translated/order.js:120 templates/js/translated/order.js:937 -#: templates/js/translated/order.js:1989 templates/js/translated/order.js:2190 -#: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207 -#: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386 -#: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037 -#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2156 -#: templates/js/translated/part.js:2387 templates/js/translated/part.js:2421 -#: templates/js/translated/part.js:2499 templates/js/translated/stock.js:458 +#: templates/js/translated/order.js:121 templates/js/translated/order.js:976 +#: templates/js/translated/order.js:2028 templates/js/translated/order.js:2229 +#: templates/js/translated/order.js:2926 templates/js/translated/order.js:3246 +#: templates/js/translated/order.js:3333 templates/js/translated/order.js:3425 +#: templates/js/translated/order.js:3568 templates/js/translated/order.js:4076 +#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2152 +#: templates/js/translated/part.js:2602 templates/js/translated/part.js:2636 +#: templates/js/translated/part.js:2714 templates/js/translated/stock.js:458 #: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782 #: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711 msgid "Quantity" @@ -1050,7 +1051,7 @@ msgid "Destination stock item" msgstr "" #: build/serializers.py:138 build/serializers.py:674 -#: templates/js/translated/build.js:1166 +#: templates/js/translated/build.js:1198 msgid "Build Output" msgstr "" @@ -1090,7 +1091,7 @@ msgid "Integer quantity required, as the bill of materials contains trackable pa msgstr "" #: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159 -#: stock/serializers.py:311 templates/js/translated/order.js:1258 +#: stock/serializers.py:311 templates/js/translated/order.js:1297 #: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459 msgid "Serial Numbers" msgstr "" @@ -1120,10 +1121,10 @@ msgstr "" #: stock/serializers.py:917 stock/serializers.py:1150 #: stock/templates/stock/item_base.html:390 #: templates/js/translated/barcode.js:436 -#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753 -#: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285 -#: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305 -#: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394 +#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:785 +#: templates/js/translated/build.js:1719 templates/js/translated/order.js:1324 +#: templates/js/translated/order.js:3239 templates/js/translated/order.js:3344 +#: templates/js/translated/order.js:3352 templates/js/translated/order.js:3433 #: templates/js/translated/part.js:181 templates/js/translated/stock.js:588 #: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960 #: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518 @@ -1134,12 +1135,12 @@ msgstr "" msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:373 build/templates/build/build_base.html:142 +#: build/serializers.py:373 build/templates/build/build_base.html:145 #: build/templates/build/detail.html:62 order/models.py:642 #: order/serializers.py:465 stock/templates/stock/item_base.html:423 -#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505 -#: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724 -#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829 +#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2538 +#: templates/js/translated/order.js:1431 templates/js/translated/order.js:1763 +#: templates/js/translated/order.js:2575 templates/js/translated/stock.js:1829 #: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727 msgid "Status" msgstr "" @@ -1196,7 +1197,7 @@ msgstr "" msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:522 templates/js/translated/build.js:195 +#: build/serializers.py:522 templates/js/translated/build.js:227 msgid "Required stock has not been fully allocated" msgstr "" @@ -1208,7 +1209,7 @@ msgstr "" msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:538 templates/js/translated/build.js:199 +#: build/serializers.py:538 templates/js/translated/build.js:231 msgid "Required build quantity has not been completed" msgstr "" @@ -1216,8 +1217,8 @@ msgstr "" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726 -#: part/models.py:2860 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2773 +#: part/models.py:2907 msgid "BOM Item" msgstr "" @@ -1322,66 +1323,70 @@ msgid "Cancel Build" msgstr "" #: build/templates/build/build_base.html:59 +msgid "Duplicate Build" +msgstr "" + +#: build/templates/build/build_base.html:62 msgid "Delete Build" msgstr "" -#: build/templates/build/build_base.html:64 -#: build/templates/build/build_base.html:65 +#: build/templates/build/build_base.html:67 +#: build/templates/build/build_base.html:68 msgid "Complete Build" msgstr "" -#: build/templates/build/build_base.html:87 +#: build/templates/build/build_base.html:90 msgid "Build Description" msgstr "" -#: build/templates/build/build_base.html:95 +#: build/templates/build/build_base.html:98 msgid "No build outputs have been created for this build order" msgstr "" -#: build/templates/build/build_base.html:101 +#: build/templates/build/build_base.html:104 #, python-format msgid "This Build Order is allocated to Sales Order %(link)s" msgstr "" -#: build/templates/build/build_base.html:108 +#: build/templates/build/build_base.html:111 #, python-format msgid "This Build Order is a child of Build Order %(link)s" msgstr "" -#: build/templates/build/build_base.html:115 +#: build/templates/build/build_base.html:118 msgid "Build Order is ready to mark as completed" msgstr "" -#: build/templates/build/build_base.html:120 +#: build/templates/build/build_base.html:123 msgid "Build Order cannot be completed as outstanding outputs remain" msgstr "" -#: build/templates/build/build_base.html:125 +#: build/templates/build/build_base.html:128 msgid "Required build quantity has not yet been completed" msgstr "" -#: build/templates/build/build_base.html:130 +#: build/templates/build/build_base.html:133 msgid "Stock has not been fully allocated to this Build Order" msgstr "" -#: build/templates/build/build_base.html:151 +#: build/templates/build/build_base.html:154 #: build/templates/build/detail.html:131 order/models.py:910 #: order/templates/order/order_base.html:162 #: order/templates/order/sales_order_base.html:164 #: report/templates/report/inventree_build_order_base.html:125 -#: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741 -#: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552 -#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042 +#: templates/js/translated/build.js:2578 templates/js/translated/order.js:1780 +#: templates/js/translated/order.js:2090 templates/js/translated/order.js:2591 +#: templates/js/translated/order.js:3631 templates/js/translated/part.js:1042 msgid "Target Date" msgstr "" -#: build/templates/build/build_base.html:156 +#: build/templates/build/build_base.html:159 #, python-format msgid "This build was due on %(target)s" msgstr "" -#: build/templates/build/build_base.html:156 -#: build/templates/build/build_base.html:201 +#: build/templates/build/build_base.html:159 +#: build/templates/build/build_base.html:204 #: order/templates/order/order_base.html:98 #: order/templates/order/sales_order_base.html:94 #: templates/js/translated/table_filters.js:320 @@ -1390,14 +1395,14 @@ msgstr "" msgid "Overdue" msgstr "" -#: build/templates/build/build_base.html:163 +#: build/templates/build/build_base.html:166 #: build/templates/build/detail.html:67 build/templates/build/detail.html:142 #: order/templates/order/sales_order_base.html:171 #: templates/js/translated/table_filters.js:400 msgid "Completed" msgstr "" -#: build/templates/build/build_base.html:176 +#: build/templates/build/build_base.html:179 #: build/templates/build/detail.html:94 order/models.py:1105 #: order/models.py:1199 order/models.py:1330 #: order/templates/order/sales_order_base.html:9 @@ -1406,17 +1411,17 @@ msgstr "" #: report/templates/report/inventree_so_report.html:77 #: stock/templates/stock/item_base.html:370 #: templates/email/overdue_sales_order.html:15 -#: templates/js/translated/order.js:2498 +#: templates/js/translated/order.js:2537 msgid "Sales Order" msgstr "" -#: build/templates/build/build_base.html:183 +#: build/templates/build/build_base.html:186 #: build/templates/build/detail.html:108 #: report/templates/report/inventree_build_order_base.html:152 msgid "Issued By" msgstr "" -#: build/templates/build/build_base.html:245 +#: build/templates/build/build_base.html:256 msgid "Delete Build Order" msgstr "" @@ -1433,7 +1438,7 @@ msgid "Stock can be taken from any available location." msgstr "" #: build/templates/build/detail.html:49 order/models.py:1023 -#: templates/js/translated/order.js:1393 templates/js/translated/order.js:2093 +#: templates/js/translated/order.js:1432 templates/js/translated/order.js:2132 msgid "Destination" msgstr "" @@ -1447,7 +1452,7 @@ msgstr "" #: build/templates/build/detail.html:80 #: stock/templates/stock/item_base.html:170 -#: templates/js/translated/build.js:1182 +#: templates/js/translated/build.js:1214 #: templates/js/translated/model_renderers.js:124 #: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843 #: templates/js/translated/stock.js:2734 @@ -1459,7 +1464,7 @@ msgstr "" #: build/templates/build/detail.html:126 #: order/templates/order/order_base.html:149 #: order/templates/order/sales_order_base.html:158 -#: templates/js/translated/build.js:2513 +#: templates/js/translated/build.js:2546 msgid "Created" msgstr "" @@ -1479,7 +1484,7 @@ msgstr "" msgid "Allocate Stock to Build" msgstr "" -#: build/templates/build/detail.html:176 templates/js/translated/build.js:1901 +#: build/templates/build/detail.html:176 templates/js/translated/build.js:1934 msgid "Unallocate stock" msgstr "" @@ -1510,7 +1515,7 @@ msgstr "" #: build/templates/build/detail.html:187 #: company/templates/company/detail.html:37 #: company/templates/company/detail.html:85 -#: part/templates/part/category.html:183 templates/js/translated/order.js:977 +#: part/templates/part/category.html:183 templates/js/translated/order.js:1016 msgid "Order Parts" msgstr "" @@ -1582,7 +1587,7 @@ msgstr "" #: order/templates/order/po_sidebar.html:9 #: order/templates/order/purchase_order_detail.html:82 #: order/templates/order/sales_order_detail.html:135 -#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:207 +#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:212 #: part/templates/part/part_sidebar.html:57 stock/templates/stock/item.html:117 #: stock/templates/stock/stock_sidebar.html:23 msgid "Attachments" @@ -1600,7 +1605,7 @@ msgstr "" msgid "All untracked stock items have been allocated" msgstr "" -#: build/templates/build/index.html:18 part/templates/part/detail.html:313 +#: build/templates/build/index.html:18 part/templates/part/detail.html:318 msgid "New Build Order" msgstr "" @@ -1845,7 +1850,7 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:951 part/models.py:2419 report/models.py:158 +#: common/models.py:951 part/models.py:2466 report/models.py:158 #: templates/js/translated/table_filters.js:38 #: templates/js/translated/table_filters.js:484 msgid "Template" @@ -1855,7 +1860,7 @@ msgstr "" msgid "Parts are templates by default" msgstr "" -#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448 +#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1446 #: templates/js/translated/table_filters.js:176 #: templates/js/translated/table_filters.js:447 msgid "Assembly" @@ -2591,7 +2596,7 @@ msgstr "" #: common/models.py:1705 company/serializers.py:366 #: company/templates/company/supplier_part.html:284 order/models.py:938 -#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2161 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2157 msgid "Price" msgstr "" @@ -2830,7 +2835,7 @@ msgstr "" #: company/models.py:248 company/models.py:481 stock/models.py:598 #: stock/serializers.py:87 stock/templates/stock/item_base.html:148 -#: templates/js/translated/bom.js:543 +#: templates/js/translated/bom.js:542 msgid "Base Part" msgstr "" @@ -2859,7 +2864,7 @@ msgstr "" #: templates/js/translated/company.js:269 #: templates/js/translated/company.js:497 #: templates/js/translated/company.js:649 -#: templates/js/translated/company.js:937 templates/js/translated/order.js:1971 +#: templates/js/translated/company.js:937 templates/js/translated/order.js:2010 #: templates/js/translated/part.js:247 templates/js/translated/part.js:1027 msgid "MPN" msgstr "" @@ -2899,7 +2904,7 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:372 part/models.py:888 part/models.py:2386 +#: company/models.py:372 part/models.py:888 part/models.py:2433 #: part/templates/part/part_base.html:280 #: templates/InvenTree/settings/settings.html:352 #: templates/js/translated/company.js:770 templates/js/translated/part.js:855 @@ -2921,7 +2926,7 @@ msgstr "" #: templates/email/overdue_purchase_order.html:16 #: templates/js/translated/company.js:268 #: templates/js/translated/company.js:401 -#: templates/js/translated/company.js:893 templates/js/translated/order.js:1707 +#: templates/js/translated/company.js:893 templates/js/translated/order.js:1746 #: templates/js/translated/part.js:217 templates/js/translated/part.js:995 #: templates/js/translated/table_filters.js:423 msgid "Supplier" @@ -2933,7 +2938,7 @@ msgstr "" #: company/models.py:497 company/templates/company/supplier_part.html:118 #: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267 -#: templates/js/translated/order.js:1958 templates/js/translated/part.js:228 +#: templates/js/translated/order.js:1997 templates/js/translated/part.js:228 #: templates/js/translated/part.js:1013 msgid "SKU" msgstr "" @@ -2955,17 +2960,17 @@ msgid "Supplier part description" msgstr "" #: company/models.py:522 company/templates/company/supplier_part.html:146 -#: part/models.py:2620 part/templates/part/upload_bom.html:59 +#: part/models.py:2667 part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401 msgid "Note" msgstr "" -#: company/models.py:526 part/models.py:1742 +#: company/models.py:526 part/models.py:1789 msgid "base cost" msgstr "" -#: company/models.py:526 part/models.py:1742 +#: company/models.py:526 part/models.py:1789 msgid "Minimum charge (e.g. stocking fee)" msgstr "" @@ -2979,7 +2984,7 @@ msgstr "" msgid "Part packaging" msgstr "" -#: company/models.py:530 part/models.py:1744 +#: company/models.py:530 part/models.py:1791 msgid "multiple" msgstr "" @@ -2990,8 +2995,8 @@ msgstr "" #: company/models.py:538 company/templates/company/supplier_part.html:94 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789 -#: templates/js/translated/build.js:2645 templates/js/translated/company.js:979 +#: templates/js/translated/bom.js:911 templates/js/translated/build.js:1821 +#: templates/js/translated/build.js:2678 templates/js/translated/company.js:979 #: templates/js/translated/part.js:600 templates/js/translated/part.js:603 #: templates/js/translated/table_filters.js:186 msgid "Available" @@ -3028,7 +3033,7 @@ msgid "Company" msgstr "" #: company/templates/company/company_base.html:22 -#: templates/js/translated/order.js:540 +#: templates/js/translated/order.js:579 msgid "Create Purchase Order" msgstr "" @@ -3069,7 +3074,7 @@ msgstr "" #: stock/models.py:644 stock/serializers.py:811 #: stock/templates/stock/item_base.html:401 #: templates/email/overdue_sales_order.html:16 -#: templates/js/translated/company.js:393 templates/js/translated/order.js:2513 +#: templates/js/translated/company.js:393 templates/js/translated/order.js:2552 #: templates/js/translated/stock.js:2559 #: templates/js/translated/table_filters.js:427 msgid "Customer" @@ -3105,7 +3110,7 @@ msgstr "" #: company/templates/company/detail.html:19 #: company/templates/company/manufacturer_part.html:123 -#: part/templates/part/detail.html:354 +#: part/templates/part/detail.html:359 msgid "New Supplier Part" msgstr "" @@ -3134,7 +3139,7 @@ msgstr "" msgid "Create new manufacturer part" msgstr "" -#: company/templates/company/detail.html:66 part/templates/part/detail.html:384 +#: company/templates/company/detail.html:66 part/templates/part/detail.html:389 msgid "New Manufacturer Part" msgstr "" @@ -3148,7 +3153,7 @@ msgstr "" #: order/templates/order/order_base.html:13 #: order/templates/order/purchase_orders.html:8 #: order/templates/order/purchase_orders.html:12 -#: part/templates/part/detail.html:79 part/templates/part/part_sidebar.html:37 +#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:37 #: templates/InvenTree/index.html:252 templates/InvenTree/search.html:198 #: templates/InvenTree/settings/sidebar.html:49 #: templates/js/translated/search.js:275 templates/navbar.html:50 @@ -3171,7 +3176,7 @@ msgstr "" #: order/templates/order/sales_order_base.html:13 #: order/templates/order/sales_orders.html:8 #: order/templates/order/sales_orders.html:15 -#: part/templates/part/detail.html:102 part/templates/part/part_sidebar.html:41 +#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:41 #: templates/InvenTree/index.html:283 templates/InvenTree/search.html:218 #: templates/InvenTree/settings/sidebar.html:51 #: templates/js/translated/search.js:299 templates/navbar.html:61 @@ -3190,7 +3195,7 @@ msgid "New Sales Order" msgstr "" #: company/templates/company/detail.html:168 -#: templates/js/translated/build.js:1660 +#: templates/js/translated/build.js:1692 msgid "Assigned Stock" msgstr "" @@ -3206,7 +3211,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:35 #: company/templates/company/supplier_part.html:186 -#: part/templates/part/detail.html:82 part/templates/part/part_base.html:80 +#: part/templates/part/detail.html:87 part/templates/part/part_base.html:80 msgid "Order part" msgstr "" @@ -3237,13 +3242,13 @@ msgid "Suppliers" msgstr "" #: company/templates/company/manufacturer_part.html:136 -#: part/templates/part/detail.html:365 +#: part/templates/part/detail.html:370 msgid "Delete supplier parts" msgstr "" #: company/templates/company/manufacturer_part.html:136 #: company/templates/company/manufacturer_part.html:183 -#: part/templates/part/detail.html:366 part/templates/part/detail.html:396 +#: part/templates/part/detail.html:371 part/templates/part/detail.html:401 #: templates/js/translated/forms.js:453 templates/js/translated/helpers.js:33 #: users/models.py:220 msgid "Delete" @@ -3252,12 +3257,12 @@ msgstr "" #: company/templates/company/manufacturer_part.html:166 #: company/templates/company/manufacturer_part_sidebar.html:5 #: part/templates/part/category_sidebar.html:19 -#: part/templates/part/detail.html:181 part/templates/part/part_sidebar.html:8 +#: part/templates/part/detail.html:186 part/templates/part/part_sidebar.html:8 msgid "Parameters" msgstr "" #: company/templates/company/manufacturer_part.html:170 -#: part/templates/part/detail.html:186 +#: part/templates/part/detail.html:191 #: templates/InvenTree/settings/category.html:12 #: templates/InvenTree/settings/part.html:68 msgid "New Parameter" @@ -3268,7 +3273,7 @@ msgid "Delete parameters" msgstr "" #: company/templates/company/manufacturer_part.html:245 -#: part/templates/part/detail.html:826 +#: part/templates/part/detail.html:840 msgid "Add Parameter" msgstr "" @@ -3291,7 +3296,7 @@ msgstr "" #: company/templates/company/supplier_part.html:7 #: company/templates/company/supplier_part.html:24 stock/models.py:607 #: stock/templates/stock/item_base.html:238 -#: templates/js/translated/company.js:909 templates/js/translated/order.js:935 +#: templates/js/translated/company.js:909 templates/js/translated/order.js:974 #: templates/js/translated/stock.js:1933 msgid "Supplier Part" msgstr "" @@ -3303,7 +3308,7 @@ msgstr "" #: company/templates/company/supplier_part.html:40 #: company/templates/company/supplier_part.html:41 #: company/templates/company/supplier_part.html:187 -#: part/templates/part/detail.html:83 +#: part/templates/part/detail.html:88 msgid "Order Part" msgstr "" @@ -3358,7 +3363,7 @@ msgstr "" #: company/templates/company/supplier_part.html:212 #: company/templates/company/supplier_part.html:326 -#: part/templates/part/prices.html:276 templates/js/translated/part.js:2233 +#: part/templates/part/prices.html:276 templates/js/translated/part.js:2229 msgid "Add Price Break" msgstr "" @@ -3367,12 +3372,12 @@ msgid "No price break information found" msgstr "" #: company/templates/company/supplier_part.html:252 -#: templates/js/translated/part.js:2243 +#: templates/js/translated/part.js:2239 msgid "Delete Price Break" msgstr "" #: company/templates/company/supplier_part.html:266 -#: templates/js/translated/part.js:2257 +#: templates/js/translated/part.js:2253 msgid "Edit Price Break" msgstr "" @@ -3398,10 +3403,9 @@ msgstr "" #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:151 #: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751 -#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460 -#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754 -#: templates/navbar.html:31 +#: templates/js/translated/part.js:751 templates/js/translated/part.js:1299 +#: templates/js/translated/part.js:1460 templates/js/translated/stock.js:959 +#: templates/js/translated/stock.js:1754 templates/navbar.html:31 msgid "Stock" msgstr "" @@ -3554,7 +3558,7 @@ msgid "Company from which the items are being ordered" msgstr "" #: order/models.py:262 order/templates/order/order_base.html:124 -#: templates/js/translated/order.js:1716 +#: templates/js/translated/order.js:1755 msgid "Supplier Reference" msgstr "" @@ -3611,7 +3615,7 @@ msgid "Target date for order completion. Order will be overdue after this date." msgstr "" #: order/models.py:652 order/models.py:1204 -#: templates/js/translated/order.js:2560 templates/js/translated/order.js:2722 +#: templates/js/translated/order.js:2599 templates/js/translated/order.js:2761 msgid "Shipment Date" msgstr "" @@ -3673,7 +3677,7 @@ msgstr "" #: order/models.py:983 order/models.py:1063 order/models.py:1104 #: order/models.py:1198 order/models.py:1330 -#: templates/js/translated/order.js:3178 +#: templates/js/translated/order.js:3217 msgid "Order" msgstr "" @@ -3683,7 +3687,7 @@ msgstr "" #: report/templates/report/inventree_po_report.html:76 #: stock/templates/stock/item_base.html:184 #: templates/email/overdue_purchase_order.html:15 -#: templates/js/translated/order.js:936 templates/js/translated/order.js:1691 +#: templates/js/translated/order.js:975 templates/js/translated/order.js:1730 #: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913 #: templates/js/translated/stock.js:2540 msgid "Purchase Order" @@ -3694,7 +3698,7 @@ msgid "Supplier part" msgstr "" #: order/models.py:1009 order/templates/order/order_base.html:169 -#: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073 +#: templates/js/translated/order.js:1429 templates/js/translated/order.js:2112 #: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091 #: templates/js/translated/table_filters.js:338 msgid "Received" @@ -3880,11 +3884,11 @@ msgstr "" msgid "Select destination location for received items" msgstr "" -#: order/serializers.py:448 templates/js/translated/order.js:1248 +#: order/serializers.py:448 templates/js/translated/order.js:1287 msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:456 templates/js/translated/order.js:1259 +#: order/serializers.py:456 templates/js/translated/order.js:1298 msgid "Enter serial numbers for incoming stock items" msgstr "" @@ -4061,10 +4065,6 @@ msgstr "" msgid "Total cost could not be calculated" msgstr "" -#: order/templates/order/order_base.html:243 -msgid "Edit Purchase Order" -msgstr "" - #: order/templates/order/order_wizard/match_parts.html:12 #: part/templates/part/import_wizard/ajax_match_references.html:12 #: part/templates/part/import_wizard/match_references.html:12 @@ -4091,10 +4091,10 @@ msgstr "" #: part/templates/part/import_wizard/ajax_match_fields.html:64 #: part/templates/part/import_wizard/ajax_match_references.html:42 #: part/templates/part/import_wizard/match_references.html:49 -#: templates/js/translated/bom.js:77 templates/js/translated/build.js:431 -#: templates/js/translated/build.js:583 templates/js/translated/build.js:1974 -#: templates/js/translated/order.js:884 templates/js/translated/order.js:1337 -#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625 +#: templates/js/translated/bom.js:77 templates/js/translated/build.js:463 +#: templates/js/translated/build.js:615 templates/js/translated/build.js:2007 +#: templates/js/translated/order.js:923 templates/js/translated/order.js:1376 +#: templates/js/translated/order.js:2836 templates/js/translated/stock.js:625 #: templates/js/translated/stock.js:793 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" @@ -4130,7 +4130,7 @@ msgstr "" #: order/templates/order/purchase_order_detail.html:26 #: order/templates/order/sales_order_detail.html:22 #: order/templates/order/sales_order_detail.html:255 -#: templates/js/translated/order.js:557 +#: templates/js/translated/order.js:596 msgid "Add Line Item" msgstr "" @@ -4176,7 +4176,7 @@ msgid "Print packing list" msgstr "" #: order/templates/order/sales_order_base.html:60 -#: templates/js/translated/order.js:229 +#: templates/js/translated/order.js:230 msgid "Complete Shipments" msgstr "" @@ -4190,7 +4190,7 @@ msgid "This Sales Order has not been fully allocated" msgstr "" #: order/templates/order/sales_order_base.html:123 -#: templates/js/translated/order.js:2526 +#: templates/js/translated/order.js:2565 msgid "Customer Reference" msgstr "" @@ -4214,8 +4214,8 @@ msgid "Pending Shipments" msgstr "" #: order/templates/order/sales_order_detail.html:72 -#: templates/attachment_table.html:6 templates/js/translated/bom.js:1110 -#: templates/js/translated/build.js:1882 +#: templates/attachment_table.html:6 templates/js/translated/bom.js:1108 +#: templates/js/translated/build.js:1915 msgid "Actions" msgstr "" @@ -4257,35 +4257,35 @@ msgstr "" msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:584 +#: part/api.py:621 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:704 +#: part/api.py:758 msgid "Valid" msgstr "" -#: part/api.py:705 +#: part/api.py:759 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:711 +#: part/api.py:765 msgid "This option must be selected" msgstr "" -#: part/api.py:1134 +#: part/api.py:1188 msgid "Must be greater than zero" msgstr "" -#: part/api.py:1138 +#: part/api.py:1192 msgid "Must be a valid quantity" msgstr "" -#: part/api.py:1153 +#: part/api.py:1207 msgid "Specify location for initial part stock" msgstr "" -#: part/api.py:1184 part/api.py:1188 part/api.py:1203 part/api.py:1207 +#: part/api.py:1238 part/api.py:1242 part/api.py:1257 part/api.py:1261 msgid "This field is required" msgstr "" @@ -4299,14 +4299,14 @@ msgid "Total Stock" msgstr "" #: part/bom.py:129 part/templates/part/part_base.html:189 -#: templates/js/translated/order.js:3618 +#: templates/js/translated/order.js:3657 msgid "Available Stock" msgstr "" #: part/bom.py:130 part/templates/part/part_base.html:207 -#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590 +#: templates/js/translated/bom.js:945 templates/js/translated/part.js:590 #: templates/js/translated/part.js:610 templates/js/translated/part.js:1302 -#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490 +#: templates/js/translated/part.js:1483 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "" @@ -4335,7 +4335,7 @@ msgstr "" msgid "Icon (optional)" msgstr "" -#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16 +#: part/models.py:122 part/models.py:2509 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" @@ -4352,7 +4352,7 @@ msgstr "" #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82 #: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:1955 templates/js/translated/search.js:144 +#: templates/js/translated/part.js:1951 templates/js/translated/search.js:144 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "" @@ -4382,7 +4382,7 @@ msgstr "" msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:745 part/models.py:2516 +#: part/models.py:745 part/models.py:2563 msgid "Part name" msgstr "" @@ -4415,11 +4415,11 @@ msgstr "" msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:783 part/models.py:2218 part/models.py:2461 +#: part/models.py:783 part/models.py:2265 part/models.py:2508 #: part/templates/part/part_base.html:257 #: templates/InvenTree/settings/settings.html:232 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1668 +#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1664 msgid "Category" msgstr "" @@ -4530,245 +4530,245 @@ msgstr "" msgid "Creation User" msgstr "" -#: part/models.py:1744 +#: part/models.py:1791 msgid "Sell multiple" msgstr "" -#: part/models.py:2265 +#: part/models.py:2312 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:2282 +#: part/models.py:2329 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:2302 templates/js/translated/part.js:2006 +#: part/models.py:2349 templates/js/translated/part.js:2002 #: templates/js/translated/stock.js:1340 msgid "Test Name" msgstr "" -#: part/models.py:2303 +#: part/models.py:2350 msgid "Enter a name for the test" msgstr "" -#: part/models.py:2308 +#: part/models.py:2355 msgid "Test Description" msgstr "" -#: part/models.py:2309 +#: part/models.py:2356 msgid "Enter description for this test" msgstr "" -#: part/models.py:2314 templates/js/translated/part.js:2015 +#: part/models.py:2361 templates/js/translated/part.js:2011 #: templates/js/translated/table_filters.js:302 msgid "Required" msgstr "" -#: part/models.py:2315 +#: part/models.py:2362 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:2320 templates/js/translated/part.js:2023 +#: part/models.py:2367 templates/js/translated/part.js:2019 msgid "Requires Value" msgstr "" -#: part/models.py:2321 +#: part/models.py:2368 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:2326 templates/js/translated/part.js:2030 +#: part/models.py:2373 templates/js/translated/part.js:2026 msgid "Requires Attachment" msgstr "" -#: part/models.py:2327 +#: part/models.py:2374 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:2335 +#: part/models.py:2382 #, python-brace-format msgid "Illegal character in template name ({c})" msgstr "" -#: part/models.py:2371 +#: part/models.py:2418 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:2379 +#: part/models.py:2426 msgid "Parameter Name" msgstr "" -#: part/models.py:2386 +#: part/models.py:2433 msgid "Parameter Units" msgstr "" -#: part/models.py:2417 +#: part/models.py:2464 msgid "Parent Part" msgstr "" -#: part/models.py:2419 part/models.py:2467 part/models.py:2468 +#: part/models.py:2466 part/models.py:2514 part/models.py:2515 #: templates/InvenTree/settings/settings.html:227 msgid "Parameter Template" msgstr "" -#: part/models.py:2421 +#: part/models.py:2468 msgid "Data" msgstr "" -#: part/models.py:2421 +#: part/models.py:2468 msgid "Parameter Value" msgstr "" -#: part/models.py:2472 templates/InvenTree/settings/settings.html:236 +#: part/models.py:2519 templates/InvenTree/settings/settings.html:236 msgid "Default Value" msgstr "" -#: part/models.py:2473 +#: part/models.py:2520 msgid "Default Parameter Value" msgstr "" -#: part/models.py:2508 +#: part/models.py:2555 msgid "Part ID or part name" msgstr "" -#: part/models.py:2511 templates/js/translated/model_renderers.js:212 +#: part/models.py:2558 templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "" -#: part/models.py:2512 +#: part/models.py:2559 msgid "Unique part ID value" msgstr "" -#: part/models.py:2515 +#: part/models.py:2562 msgid "Part Name" msgstr "" -#: part/models.py:2519 +#: part/models.py:2566 msgid "Part IPN" msgstr "" -#: part/models.py:2520 +#: part/models.py:2567 msgid "Part IPN value" msgstr "" -#: part/models.py:2523 +#: part/models.py:2570 msgid "Level" msgstr "" -#: part/models.py:2524 +#: part/models.py:2571 msgid "BOM level" msgstr "" -#: part/models.py:2593 +#: part/models.py:2640 msgid "Select parent part" msgstr "" -#: part/models.py:2601 +#: part/models.py:2648 msgid "Sub part" msgstr "" -#: part/models.py:2602 +#: part/models.py:2649 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:2608 +#: part/models.py:2655 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:2610 part/templates/part/upload_bom.html:58 -#: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999 +#: part/models.py:2657 part/templates/part/upload_bom.html:58 +#: templates/js/translated/bom.js:872 templates/js/translated/bom.js:997 #: templates/js/translated/table_filters.js:100 msgid "Optional" msgstr "" -#: part/models.py:2610 +#: part/models.py:2657 msgid "This BOM item is optional" msgstr "" -#: part/models.py:2613 part/templates/part/upload_bom.html:55 +#: part/models.py:2660 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:2614 +#: part/models.py:2661 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:2617 +#: part/models.py:2664 msgid "BOM item reference" msgstr "" -#: part/models.py:2620 +#: part/models.py:2667 msgid "BOM item notes" msgstr "" -#: part/models.py:2622 +#: part/models.py:2669 msgid "Checksum" msgstr "" -#: part/models.py:2622 +#: part/models.py:2669 msgid "BOM line checksum" msgstr "" -#: part/models.py:2626 part/templates/part/upload_bom.html:57 -#: templates/js/translated/bom.js:1016 +#: part/models.py:2673 part/templates/part/upload_bom.html:57 +#: templates/js/translated/bom.js:1014 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:96 msgid "Inherited" msgstr "" -#: part/models.py:2627 +#: part/models.py:2674 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:2632 part/templates/part/upload_bom.html:56 -#: templates/js/translated/bom.js:1008 +#: part/models.py:2679 part/templates/part/upload_bom.html:56 +#: templates/js/translated/bom.js:1006 msgid "Allow Variants" msgstr "" -#: part/models.py:2633 +#: part/models.py:2680 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:2711 stock/models.py:468 +#: part/models.py:2758 stock/models.py:468 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:2720 part/models.py:2722 +#: part/models.py:2767 part/models.py:2769 msgid "Sub part must be specified" msgstr "" -#: part/models.py:2827 +#: part/models.py:2874 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:2848 +#: part/models.py:2895 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:2861 +#: part/models.py:2908 msgid "Parent BOM item" msgstr "" -#: part/models.py:2869 +#: part/models.py:2916 msgid "Substitute part" msgstr "" -#: part/models.py:2884 +#: part/models.py:2931 msgid "Part 1" msgstr "" -#: part/models.py:2888 +#: part/models.py:2935 msgid "Part 2" msgstr "" -#: part/models.py:2888 +#: part/models.py:2935 msgid "Select Related Part" msgstr "" -#: part/models.py:2906 +#: part/models.py:2953 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:2910 +#: part/models.py:2957 msgid "Duplicate relationship already exists" msgstr "" @@ -4876,7 +4876,7 @@ msgstr "" msgid "The BOM for %(part)s has not been validated." msgstr "" -#: part/templates/part/bom.html:30 part/templates/part/detail.html:264 +#: part/templates/part/bom.html:30 part/templates/part/detail.html:269 msgid "BOM actions" msgstr "" @@ -4945,8 +4945,8 @@ msgstr "" msgid "New Part" msgstr "" -#: part/templates/part/category.html:174 part/templates/part/detail.html:363 -#: part/templates/part/detail.html:394 +#: part/templates/part/category.html:174 part/templates/part/detail.html:368 +#: part/templates/part/detail.html:399 msgid "Options" msgstr "" @@ -5014,138 +5014,146 @@ msgstr "" msgid "Part Stock" msgstr "" -#: part/templates/part/detail.html:54 -msgid "Part Test Templates" +#: part/templates/part/detail.html:44 +msgid "Refresh scheduling data" +msgstr "" + +#: part/templates/part/detail.html:45 templates/js/translated/tables.js:558 +msgid "Refresh" msgstr "" #: part/templates/part/detail.html:59 +msgid "Part Test Templates" +msgstr "" + +#: part/templates/part/detail.html:64 msgid "Add Test Template" msgstr "" -#: part/templates/part/detail.html:116 stock/templates/stock/item.html:53 +#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53 msgid "Sales Order Allocations" msgstr "" -#: part/templates/part/detail.html:138 +#: part/templates/part/detail.html:143 msgid "Part Notes" msgstr "" -#: part/templates/part/detail.html:153 +#: part/templates/part/detail.html:158 msgid "Part Variants" msgstr "" -#: part/templates/part/detail.html:157 +#: part/templates/part/detail.html:162 msgid "Create new variant" msgstr "" -#: part/templates/part/detail.html:158 +#: part/templates/part/detail.html:163 msgid "New Variant" msgstr "" -#: part/templates/part/detail.html:185 +#: part/templates/part/detail.html:190 msgid "Add new parameter" msgstr "" -#: part/templates/part/detail.html:222 part/templates/part/part_sidebar.html:54 +#: part/templates/part/detail.html:227 part/templates/part/part_sidebar.html:54 msgid "Related Parts" msgstr "" -#: part/templates/part/detail.html:226 part/templates/part/detail.html:227 +#: part/templates/part/detail.html:231 part/templates/part/detail.html:232 msgid "Add Related" msgstr "" -#: part/templates/part/detail.html:247 part/templates/part/part_sidebar.html:17 +#: part/templates/part/detail.html:252 part/templates/part/part_sidebar.html:17 msgid "Bill of Materials" msgstr "" -#: part/templates/part/detail.html:252 +#: part/templates/part/detail.html:257 msgid "Export actions" msgstr "" -#: part/templates/part/detail.html:256 templates/js/translated/bom.js:284 +#: part/templates/part/detail.html:261 templates/js/translated/bom.js:284 msgid "Export BOM" msgstr "" -#: part/templates/part/detail.html:258 +#: part/templates/part/detail.html:263 msgid "Print BOM Report" msgstr "" -#: part/templates/part/detail.html:268 +#: part/templates/part/detail.html:273 msgid "Upload BOM" msgstr "" -#: part/templates/part/detail.html:269 templates/js/translated/part.js:274 +#: part/templates/part/detail.html:274 templates/js/translated/part.js:274 msgid "Copy BOM" msgstr "" -#: part/templates/part/detail.html:270 +#: part/templates/part/detail.html:275 msgid "Validate BOM" msgstr "" -#: part/templates/part/detail.html:275 +#: part/templates/part/detail.html:280 msgid "New BOM Item" msgstr "" -#: part/templates/part/detail.html:276 +#: part/templates/part/detail.html:281 msgid "Add BOM Item" msgstr "" -#: part/templates/part/detail.html:289 +#: part/templates/part/detail.html:294 msgid "Assemblies" msgstr "" -#: part/templates/part/detail.html:307 +#: part/templates/part/detail.html:312 msgid "Part Builds" msgstr "" -#: part/templates/part/detail.html:334 stock/templates/stock/item.html:38 +#: part/templates/part/detail.html:339 stock/templates/stock/item.html:38 msgid "Build Order Allocations" msgstr "" -#: part/templates/part/detail.html:350 +#: part/templates/part/detail.html:355 msgid "Part Suppliers" msgstr "" -#: part/templates/part/detail.html:380 +#: part/templates/part/detail.html:385 msgid "Part Manufacturers" msgstr "" -#: part/templates/part/detail.html:396 +#: part/templates/part/detail.html:401 msgid "Delete manufacturer parts" msgstr "" -#: part/templates/part/detail.html:612 +#: part/templates/part/detail.html:626 msgid "Create BOM Item" msgstr "" -#: part/templates/part/detail.html:656 +#: part/templates/part/detail.html:670 msgid "Related Part" msgstr "" -#: part/templates/part/detail.html:664 +#: part/templates/part/detail.html:678 msgid "Add Related Part" msgstr "" -#: part/templates/part/detail.html:756 +#: part/templates/part/detail.html:770 msgid "Add Test Result Template" msgstr "" -#: part/templates/part/detail.html:900 +#: part/templates/part/detail.html:914 #, python-format msgid "Purchase Unit Price - %(currency)s" msgstr "" -#: part/templates/part/detail.html:912 +#: part/templates/part/detail.html:926 #, python-format msgid "Unit Price-Cost Difference - %(currency)s" msgstr "" -#: part/templates/part/detail.html:924 +#: part/templates/part/detail.html:938 #, python-format msgid "Supplier Unit Cost - %(currency)s" msgstr "" -#: part/templates/part/detail.html:1013 +#: part/templates/part/detail.html:1027 #, python-format msgid "Unit Price - %(currency)s" msgstr "" @@ -5321,13 +5329,13 @@ msgstr "" msgid "Allocated to Sales Orders" msgstr "" -#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1037 +#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1035 msgid "Can Build" msgstr "" #: part/templates/part/part_base.html:238 templates/js/translated/part.js:593 #: templates/js/translated/part.js:613 templates/js/translated/part.js:1306 -#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1494 +#: templates/js/translated/part.js:1490 msgid "Building" msgstr "" @@ -5379,7 +5387,7 @@ msgid "Total Cost" msgstr "" #: part/templates/part/part_pricing.html:40 part/templates/part/prices.html:43 -#: templates/js/translated/bom.js:991 +#: templates/js/translated/bom.js:989 msgid "No supplier pricing available" msgstr "" @@ -5414,6 +5422,18 @@ msgstr "" msgid "No pricing information is available for this part." msgstr "" +#: part/templates/part/part_scheduling.html:13 +#: report/templates/report/inventree_test_report_base.html:97 +#: templates/InvenTree/settings/plugin.html:53 +#: templates/InvenTree/settings/plugin_settings.html:38 +#: templates/js/translated/order.js:1772 templates/js/translated/stock.js:2468 +msgid "Date" +msgstr "" + +#: part/templates/part/part_scheduling.html:14 +msgid "Scheduled Quantity" +msgstr "" + #: part/templates/part/part_sidebar.html:11 msgid "Variants" msgstr "" @@ -5462,7 +5482,7 @@ msgstr "" msgid "Calculation parameters" msgstr "" -#: part/templates/part/prices.html:160 templates/js/translated/bom.js:985 +#: part/templates/part/prices.html:160 templates/js/translated/bom.js:983 msgid "Supplier Cost" msgstr "" @@ -5501,7 +5521,7 @@ msgid "No sale pice history available for this part." msgstr "" #: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616 -#: templates/js/translated/part.js:1294 templates/js/translated/part.js:1498 +#: templates/js/translated/part.js:1294 msgid "No Stock" msgstr "" @@ -5893,11 +5913,11 @@ msgstr "" #: report/templates/report/inventree_test_report_base.html:79 #: stock/models.py:648 stock/templates/stock/item_base.html:322 -#: templates/js/translated/build.js:424 templates/js/translated/build.js:576 -#: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673 +#: templates/js/translated/build.js:456 templates/js/translated/build.js:608 +#: templates/js/translated/build.js:1208 templates/js/translated/build.js:1705 #: templates/js/translated/model_renderers.js:118 -#: templates/js/translated/order.js:118 templates/js/translated/order.js:3297 -#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490 +#: templates/js/translated/order.js:119 templates/js/translated/order.js:3336 +#: templates/js/translated/order.js:3423 templates/js/translated/stock.js:490 msgid "Serial Number" msgstr "" @@ -5915,13 +5935,6 @@ msgstr "" msgid "Result" msgstr "" -#: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:53 -#: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468 -msgid "Date" -msgstr "" - #: report/templates/report/inventree_test_report_base.html:108 msgid "Pass" msgstr "" @@ -6519,7 +6532,7 @@ msgid "Available Quantity" msgstr "" #: stock/templates/stock/item_base.html:394 -#: templates/js/translated/build.js:1695 +#: templates/js/translated/build.js:1727 msgid "No location set" msgstr "" @@ -7702,7 +7715,7 @@ msgid "The following parts are low on required stock" msgstr "" #: templates/email/build_order_required_stock.html:18 -#: templates/js/translated/bom.js:1483 +#: templates/js/translated/bom.js:1481 msgid "Required Quantity" msgstr "" @@ -7716,6 +7729,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:19 +#: templates/js/translated/part.js:2498 msgid "Minimum Quantity" msgstr "" @@ -7917,10 +7931,10 @@ msgstr "" msgid "Row Data" msgstr "" -#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:622 +#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:620 #: templates/js/translated/modals.js:56 templates/js/translated/modals.js:601 #: templates/js/translated/modals.js:695 templates/js/translated/modals.js:1003 -#: templates/js/translated/order.js:979 templates/modals.html:15 +#: templates/js/translated/order.js:1018 templates/modals.html:15 #: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50 msgid "Close" msgstr "" @@ -7930,12 +7944,12 @@ msgid "Download BOM Template" msgstr "" #: templates/js/translated/bom.js:253 templates/js/translated/bom.js:287 -#: templates/js/translated/order.js:760 templates/js/translated/tables.js:145 +#: templates/js/translated/order.js:799 templates/js/translated/tables.js:145 msgid "Format" msgstr "" #: templates/js/translated/bom.js:254 templates/js/translated/bom.js:288 -#: templates/js/translated/order.js:761 +#: templates/js/translated/order.js:800 msgid "Select file format" msgstr "" @@ -7991,390 +8005,390 @@ msgstr "" msgid "Remove substitute part" msgstr "" -#: templates/js/translated/bom.js:567 +#: templates/js/translated/bom.js:565 msgid "Select and add a new substitute part using the input below" msgstr "" -#: templates/js/translated/bom.js:578 +#: templates/js/translated/bom.js:576 msgid "Are you sure you wish to remove this substitute part link?" msgstr "" -#: templates/js/translated/bom.js:584 +#: templates/js/translated/bom.js:582 msgid "Remove Substitute Part" msgstr "" -#: templates/js/translated/bom.js:623 +#: templates/js/translated/bom.js:621 msgid "Add Substitute" msgstr "" -#: templates/js/translated/bom.js:624 +#: templates/js/translated/bom.js:622 msgid "Edit BOM Item Substitutes" msgstr "" -#: templates/js/translated/bom.js:686 +#: templates/js/translated/bom.js:684 msgid "All selected BOM items will be deleted" msgstr "" -#: templates/js/translated/bom.js:702 +#: templates/js/translated/bom.js:700 msgid "Delete selected BOM items?" msgstr "" -#: templates/js/translated/bom.js:821 +#: templates/js/translated/bom.js:819 msgid "Load BOM for subassembly" msgstr "" -#: templates/js/translated/bom.js:831 +#: templates/js/translated/bom.js:829 msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:835 templates/js/translated/build.js:1771 +#: templates/js/translated/bom.js:833 templates/js/translated/build.js:1803 msgid "Variant stock allowed" msgstr "" -#: templates/js/translated/bom.js:929 templates/js/translated/build.js:1816 -#: templates/js/translated/order.js:3632 +#: templates/js/translated/bom.js:927 templates/js/translated/build.js:1849 +#: templates/js/translated/order.js:3671 msgid "No Stock Available" msgstr "" -#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1820 +#: templates/js/translated/bom.js:932 templates/js/translated/build.js:1853 msgid "Includes variant and substitute stock" msgstr "" -#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822 +#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1855 #: templates/js/translated/part.js:763 msgid "Includes variant stock" msgstr "" -#: templates/js/translated/bom.js:938 templates/js/translated/build.js:1824 +#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1857 msgid "Includes substitute stock" msgstr "" -#: templates/js/translated/bom.js:956 +#: templates/js/translated/bom.js:954 msgid "Substitutes" msgstr "" -#: templates/js/translated/bom.js:971 +#: templates/js/translated/bom.js:969 msgid "Purchase Price Range" msgstr "" -#: templates/js/translated/bom.js:978 +#: templates/js/translated/bom.js:976 msgid "Purchase Price Average" msgstr "" -#: templates/js/translated/bom.js:1027 templates/js/translated/bom.js:1147 +#: templates/js/translated/bom.js:1025 templates/js/translated/bom.js:1145 msgid "View BOM" msgstr "" -#: templates/js/translated/bom.js:1054 +#: templates/js/translated/bom.js:1052 msgid "Including On Order" msgstr "" -#: templates/js/translated/bom.js:1118 +#: templates/js/translated/bom.js:1116 msgid "Validate BOM Item" msgstr "" -#: templates/js/translated/bom.js:1120 +#: templates/js/translated/bom.js:1118 msgid "This line has been validated" msgstr "" -#: templates/js/translated/bom.js:1122 +#: templates/js/translated/bom.js:1120 msgid "Edit substitute parts" msgstr "" -#: templates/js/translated/bom.js:1124 templates/js/translated/bom.js:1286 +#: templates/js/translated/bom.js:1122 templates/js/translated/bom.js:1284 msgid "Edit BOM Item" msgstr "" -#: templates/js/translated/bom.js:1126 +#: templates/js/translated/bom.js:1124 msgid "Delete BOM Item" msgstr "" -#: templates/js/translated/bom.js:1222 templates/js/translated/build.js:1617 +#: templates/js/translated/bom.js:1220 templates/js/translated/build.js:1649 msgid "No BOM items found" msgstr "" -#: templates/js/translated/bom.js:1466 templates/js/translated/build.js:1755 +#: templates/js/translated/bom.js:1464 templates/js/translated/build.js:1787 msgid "Required Part" msgstr "" -#: templates/js/translated/bom.js:1488 +#: templates/js/translated/bom.js:1486 msgid "Inherited from parent BOM" msgstr "" -#: templates/js/translated/build.js:86 +#: templates/js/translated/build.js:89 msgid "Edit Build Order" msgstr "" -#: templates/js/translated/build.js:120 +#: templates/js/translated/build.js:132 msgid "Create Build Order" msgstr "" -#: templates/js/translated/build.js:133 +#: templates/js/translated/build.js:165 msgid "Cancel Build Order" msgstr "" -#: templates/js/translated/build.js:142 +#: templates/js/translated/build.js:174 msgid "Are you sure you wish to cancel this build?" msgstr "" -#: templates/js/translated/build.js:148 +#: templates/js/translated/build.js:180 msgid "Stock items have been allocated to this build order" msgstr "" -#: templates/js/translated/build.js:155 +#: templates/js/translated/build.js:187 msgid "There are incomplete outputs remaining for this build order" msgstr "" -#: templates/js/translated/build.js:185 +#: templates/js/translated/build.js:217 msgid "Build order is ready to be completed" msgstr "" -#: templates/js/translated/build.js:190 +#: templates/js/translated/build.js:222 msgid "Build Order is incomplete" msgstr "" -#: templates/js/translated/build.js:222 +#: templates/js/translated/build.js:254 msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:263 templates/js/translated/stock.js:92 +#: templates/js/translated/build.js:295 templates/js/translated/stock.js:92 #: templates/js/translated/stock.js:214 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:265 templates/js/translated/stock.js:94 +#: templates/js/translated/build.js:297 templates/js/translated/stock.js:94 #: templates/js/translated/stock.js:216 msgid "Latest serial number" msgstr "" -#: templates/js/translated/build.js:274 +#: templates/js/translated/build.js:306 msgid "The Bill of Materials contains trackable parts" msgstr "" -#: templates/js/translated/build.js:275 +#: templates/js/translated/build.js:307 msgid "Build outputs must be generated individually" msgstr "" -#: templates/js/translated/build.js:283 +#: templates/js/translated/build.js:315 msgid "Trackable parts can have serial numbers specified" msgstr "" -#: templates/js/translated/build.js:284 +#: templates/js/translated/build.js:316 msgid "Enter serial numbers to generate multiple single build outputs" msgstr "" -#: templates/js/translated/build.js:291 +#: templates/js/translated/build.js:323 msgid "Create Build Output" msgstr "" -#: templates/js/translated/build.js:322 +#: templates/js/translated/build.js:354 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:333 +#: templates/js/translated/build.js:365 msgid "Unallocate stock from build output" msgstr "" -#: templates/js/translated/build.js:342 +#: templates/js/translated/build.js:374 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:350 +#: templates/js/translated/build.js:382 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:373 +#: templates/js/translated/build.js:405 msgid "Are you sure you wish to unallocate stock items from this build?" msgstr "" -#: templates/js/translated/build.js:391 +#: templates/js/translated/build.js:423 msgid "Unallocate Stock Items" msgstr "" -#: templates/js/translated/build.js:411 templates/js/translated/build.js:563 +#: templates/js/translated/build.js:443 templates/js/translated/build.js:595 msgid "Select Build Outputs" msgstr "" -#: templates/js/translated/build.js:412 templates/js/translated/build.js:564 +#: templates/js/translated/build.js:444 templates/js/translated/build.js:596 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:466 templates/js/translated/build.js:618 +#: templates/js/translated/build.js:498 templates/js/translated/build.js:650 msgid "Output" msgstr "" -#: templates/js/translated/build.js:484 +#: templates/js/translated/build.js:516 msgid "Complete Build Outputs" msgstr "" -#: templates/js/translated/build.js:631 +#: templates/js/translated/build.js:663 msgid "Delete Build Outputs" msgstr "" -#: templates/js/translated/build.js:720 +#: templates/js/translated/build.js:752 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:757 +#: templates/js/translated/build.js:789 msgid "Location not specified" msgstr "" -#: templates/js/translated/build.js:1136 +#: templates/js/translated/build.js:1168 msgid "No active build outputs found" msgstr "" -#: templates/js/translated/build.js:1205 +#: templates/js/translated/build.js:1237 msgid "Allocated Stock" msgstr "" -#: templates/js/translated/build.js:1212 +#: templates/js/translated/build.js:1244 msgid "No tracked BOM items for this build" msgstr "" -#: templates/js/translated/build.js:1234 +#: templates/js/translated/build.js:1266 msgid "Completed Tests" msgstr "" -#: templates/js/translated/build.js:1239 +#: templates/js/translated/build.js:1271 msgid "No required tests for this build" msgstr "" -#: templates/js/translated/build.js:1712 templates/js/translated/build.js:2656 -#: templates/js/translated/order.js:3332 +#: templates/js/translated/build.js:1744 templates/js/translated/build.js:2689 +#: templates/js/translated/order.js:3371 msgid "Edit stock allocation" msgstr "" -#: templates/js/translated/build.js:1714 templates/js/translated/build.js:2657 -#: templates/js/translated/order.js:3333 +#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2690 +#: templates/js/translated/order.js:3372 msgid "Delete stock allocation" msgstr "" -#: templates/js/translated/build.js:1732 +#: templates/js/translated/build.js:1764 msgid "Edit Allocation" msgstr "" -#: templates/js/translated/build.js:1742 +#: templates/js/translated/build.js:1774 msgid "Remove Allocation" msgstr "" -#: templates/js/translated/build.js:1767 +#: templates/js/translated/build.js:1799 msgid "Substitute parts available" msgstr "" -#: templates/js/translated/build.js:1784 +#: templates/js/translated/build.js:1816 msgid "Quantity Per" msgstr "" -#: templates/js/translated/build.js:1810 templates/js/translated/order.js:3639 +#: templates/js/translated/build.js:1843 templates/js/translated/order.js:3678 msgid "Insufficient stock available" msgstr "" -#: templates/js/translated/build.js:1812 templates/js/translated/order.js:3637 +#: templates/js/translated/build.js:1845 templates/js/translated/order.js:3676 msgid "Sufficient stock available" msgstr "" -#: templates/js/translated/build.js:1841 templates/js/translated/build.js:2086 -#: templates/js/translated/build.js:2652 templates/js/translated/order.js:3651 +#: templates/js/translated/build.js:1874 templates/js/translated/build.js:2119 +#: templates/js/translated/build.js:2685 templates/js/translated/order.js:3690 msgid "Allocated" msgstr "" -#: templates/js/translated/build.js:1889 templates/js/translated/order.js:3731 +#: templates/js/translated/build.js:1922 templates/js/translated/order.js:3770 msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:1893 templates/stock_table.html:50 +#: templates/js/translated/build.js:1926 templates/stock_table.html:50 msgid "Order stock" msgstr "" -#: templates/js/translated/build.js:1896 templates/js/translated/order.js:3724 +#: templates/js/translated/build.js:1929 templates/js/translated/order.js:3763 msgid "Allocate stock" msgstr "" -#: templates/js/translated/build.js:1935 templates/js/translated/label.js:172 -#: templates/js/translated/order.js:807 templates/js/translated/order.js:2859 +#: templates/js/translated/build.js:1968 templates/js/translated/label.js:172 +#: templates/js/translated/order.js:846 templates/js/translated/order.js:2898 #: templates/js/translated/report.js:225 msgid "Select Parts" msgstr "" -#: templates/js/translated/build.js:1936 templates/js/translated/order.js:2860 +#: templates/js/translated/build.js:1969 templates/js/translated/order.js:2899 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1985 templates/js/translated/order.js:2808 +#: templates/js/translated/build.js:2018 templates/js/translated/order.js:2847 msgid "Specify stock allocation quantity" msgstr "" -#: templates/js/translated/build.js:2059 +#: templates/js/translated/build.js:2092 msgid "All Parts Allocated" msgstr "" -#: templates/js/translated/build.js:2060 +#: templates/js/translated/build.js:2093 msgid "All selected parts have been fully allocated" msgstr "" -#: templates/js/translated/build.js:2074 templates/js/translated/order.js:2874 +#: templates/js/translated/build.js:2107 templates/js/translated/order.js:2913 msgid "Select source location (leave blank to take from all locations)" msgstr "" -#: templates/js/translated/build.js:2102 +#: templates/js/translated/build.js:2135 msgid "Allocate Stock Items to Build Order" msgstr "" -#: templates/js/translated/build.js:2113 templates/js/translated/order.js:2971 +#: templates/js/translated/build.js:2146 templates/js/translated/order.js:3010 msgid "No matching stock locations" msgstr "" -#: templates/js/translated/build.js:2185 templates/js/translated/order.js:3048 +#: templates/js/translated/build.js:2218 templates/js/translated/order.js:3087 msgid "No matching stock items" msgstr "" -#: templates/js/translated/build.js:2282 +#: templates/js/translated/build.js:2315 msgid "Automatic Stock Allocation" msgstr "" -#: templates/js/translated/build.js:2283 +#: templates/js/translated/build.js:2316 msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines" msgstr "" -#: templates/js/translated/build.js:2285 +#: templates/js/translated/build.js:2318 msgid "If a location is specifed, stock will only be allocated from that location" msgstr "" -#: templates/js/translated/build.js:2286 +#: templates/js/translated/build.js:2319 msgid "If stock is considered interchangeable, it will be allocated from the first location it is found" msgstr "" -#: templates/js/translated/build.js:2287 +#: templates/js/translated/build.js:2320 msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found" msgstr "" -#: templates/js/translated/build.js:2308 +#: templates/js/translated/build.js:2341 msgid "Allocate Stock Items" msgstr "" -#: templates/js/translated/build.js:2414 +#: templates/js/translated/build.js:2447 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387 -#: templates/js/translated/part.js:1899 templates/js/translated/stock.js:1686 +#: templates/js/translated/build.js:2482 templates/js/translated/part.js:1387 +#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1686 #: templates/js/translated/stock.js:2386 msgid "Select" msgstr "" -#: templates/js/translated/build.js:2463 +#: templates/js/translated/build.js:2496 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:2491 +#: templates/js/translated/build.js:2524 msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647 +#: templates/js/translated/build.js:2560 templates/js/translated/stock.js:2647 msgid "No user information" msgstr "" -#: templates/js/translated/build.js:2633 +#: templates/js/translated/build.js:2666 msgid "No parts allocated for" msgstr "" @@ -8390,11 +8404,11 @@ msgstr "" msgid "Edit Manufacturer Part" msgstr "" -#: templates/js/translated/company.js:167 templates/js/translated/order.js:509 +#: templates/js/translated/company.js:167 templates/js/translated/order.js:510 msgid "Add Supplier" msgstr "" -#: templates/js/translated/company.js:195 templates/js/translated/order.js:628 +#: templates/js/translated/company.js:195 templates/js/translated/order.js:667 msgid "Add Supplier Part" msgstr "" @@ -8765,381 +8779,385 @@ msgstr "" msgid "Notifications will load here" msgstr "" -#: templates/js/translated/order.js:94 +#: templates/js/translated/order.js:95 msgid "No stock items have been allocated to this shipment" msgstr "" -#: templates/js/translated/order.js:99 +#: templates/js/translated/order.js:100 msgid "The following stock items will be shipped" msgstr "" -#: templates/js/translated/order.js:139 +#: templates/js/translated/order.js:140 msgid "Complete Shipment" msgstr "" -#: templates/js/translated/order.js:159 +#: templates/js/translated/order.js:160 msgid "Confirm Shipment" msgstr "" -#: templates/js/translated/order.js:215 +#: templates/js/translated/order.js:216 msgid "No pending shipments found" msgstr "" -#: templates/js/translated/order.js:219 +#: templates/js/translated/order.js:220 msgid "No stock items have been allocated to pending shipments" msgstr "" -#: templates/js/translated/order.js:251 +#: templates/js/translated/order.js:252 msgid "Skip" msgstr "" -#: templates/js/translated/order.js:281 +#: templates/js/translated/order.js:282 msgid "Complete Purchase Order" msgstr "" -#: templates/js/translated/order.js:287 +#: templates/js/translated/order.js:288 msgid "Mark this order as complete?" msgstr "" -#: templates/js/translated/order.js:293 +#: templates/js/translated/order.js:294 msgid "All line items have been received" msgstr "" -#: templates/js/translated/order.js:298 +#: templates/js/translated/order.js:299 msgid "This order has line items which have not been marked as received." msgstr "" -#: templates/js/translated/order.js:299 +#: templates/js/translated/order.js:300 msgid "Completing this order means that the order and line items will no longer be editable." msgstr "" -#: templates/js/translated/order.js:322 +#: templates/js/translated/order.js:323 msgid "Cancel Purchase Order" msgstr "" -#: templates/js/translated/order.js:327 +#: templates/js/translated/order.js:328 msgid "Are you sure you wish to cancel this purchase order?" msgstr "" -#: templates/js/translated/order.js:333 +#: templates/js/translated/order.js:334 msgid "This purchase order can not be cancelled" msgstr "" -#: templates/js/translated/order.js:356 +#: templates/js/translated/order.js:357 msgid "Issue Purchase Order" msgstr "" -#: templates/js/translated/order.js:361 +#: templates/js/translated/order.js:362 msgid "After placing this purchase order, line items will no longer be editable." msgstr "" -#: templates/js/translated/order.js:383 +#: templates/js/translated/order.js:384 msgid "Cancel Sales Order" msgstr "" -#: templates/js/translated/order.js:388 +#: templates/js/translated/order.js:389 msgid "Cancelling this order means that the order will no longer be editable." msgstr "" -#: templates/js/translated/order.js:442 +#: templates/js/translated/order.js:443 msgid "Create New Shipment" msgstr "" -#: templates/js/translated/order.js:467 +#: templates/js/translated/order.js:468 msgid "Add Customer" msgstr "" -#: templates/js/translated/order.js:492 +#: templates/js/translated/order.js:493 msgid "Create Sales Order" msgstr "" -#: templates/js/translated/order.js:757 +#: templates/js/translated/order.js:554 +msgid "Edit Purchase Order" +msgstr "" + +#: templates/js/translated/order.js:796 msgid "Export Order" msgstr "" -#: templates/js/translated/order.js:808 +#: templates/js/translated/order.js:847 msgid "At least one purchaseable part must be selected" msgstr "" -#: templates/js/translated/order.js:833 +#: templates/js/translated/order.js:872 msgid "Quantity to order" msgstr "" -#: templates/js/translated/order.js:842 +#: templates/js/translated/order.js:881 msgid "New supplier part" msgstr "" -#: templates/js/translated/order.js:860 +#: templates/js/translated/order.js:899 msgid "New purchase order" msgstr "" -#: templates/js/translated/order.js:893 +#: templates/js/translated/order.js:932 msgid "Add to purchase order" msgstr "" -#: templates/js/translated/order.js:1002 +#: templates/js/translated/order.js:1041 msgid "No matching supplier parts" msgstr "" -#: templates/js/translated/order.js:1017 +#: templates/js/translated/order.js:1056 msgid "No matching purchase orders" msgstr "" -#: templates/js/translated/order.js:1194 +#: templates/js/translated/order.js:1233 msgid "Select Line Items" msgstr "" -#: templates/js/translated/order.js:1195 +#: templates/js/translated/order.js:1234 msgid "At least one line item must be selected" msgstr "" -#: templates/js/translated/order.js:1215 templates/js/translated/order.js:1314 +#: templates/js/translated/order.js:1254 templates/js/translated/order.js:1353 msgid "Add batch code" msgstr "" -#: templates/js/translated/order.js:1221 templates/js/translated/order.js:1325 +#: templates/js/translated/order.js:1260 templates/js/translated/order.js:1364 msgid "Add serial numbers" msgstr "" -#: templates/js/translated/order.js:1233 +#: templates/js/translated/order.js:1272 msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144 +#: templates/js/translated/order.js:1336 templates/js/translated/stock.js:2144 msgid "Stock Status" msgstr "" -#: templates/js/translated/order.js:1388 +#: templates/js/translated/order.js:1427 msgid "Order Code" msgstr "" -#: templates/js/translated/order.js:1389 +#: templates/js/translated/order.js:1428 msgid "Ordered" msgstr "" -#: templates/js/translated/order.js:1391 +#: templates/js/translated/order.js:1430 msgid "Quantity to Receive" msgstr "" -#: templates/js/translated/order.js:1410 +#: templates/js/translated/order.js:1449 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/order.js:1411 +#: templates/js/translated/order.js:1450 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943 +#: templates/js/translated/order.js:1711 templates/js/translated/part.js:943 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/order.js:1699 templates/js/translated/order.js:2503 +#: templates/js/translated/order.js:1738 templates/js/translated/order.js:2542 msgid "Order is overdue" msgstr "" -#: templates/js/translated/order.js:1749 templates/js/translated/order.js:2568 -#: templates/js/translated/order.js:2709 +#: templates/js/translated/order.js:1788 templates/js/translated/order.js:2607 +#: templates/js/translated/order.js:2748 msgid "Items" msgstr "" -#: templates/js/translated/order.js:1847 templates/js/translated/order.js:3783 +#: templates/js/translated/order.js:1886 templates/js/translated/order.js:3822 msgid "Duplicate Line Item" msgstr "" -#: templates/js/translated/order.js:1864 templates/js/translated/order.js:3805 +#: templates/js/translated/order.js:1903 templates/js/translated/order.js:3844 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/order.js:1877 templates/js/translated/order.js:3816 +#: templates/js/translated/order.js:1916 templates/js/translated/order.js:3855 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/order.js:1920 +#: templates/js/translated/order.js:1959 msgid "No line items found" msgstr "" -#: templates/js/translated/order.js:1947 templates/js/translated/order.js:3517 +#: templates/js/translated/order.js:1986 templates/js/translated/order.js:3556 msgid "Total" msgstr "" -#: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203 -#: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050 -#: templates/js/translated/part.js:2135 templates/js/translated/part.js:2488 +#: templates/js/translated/order.js:2040 templates/js/translated/order.js:2242 +#: templates/js/translated/order.js:3581 templates/js/translated/order.js:4089 +#: templates/js/translated/part.js:2131 templates/js/translated/part.js:2703 msgid "Unit Price" msgstr "" -#: templates/js/translated/order.js:2016 templates/js/translated/order.js:2219 -#: templates/js/translated/order.js:3558 templates/js/translated/order.js:4066 +#: templates/js/translated/order.js:2055 templates/js/translated/order.js:2258 +#: templates/js/translated/order.js:3597 templates/js/translated/order.js:4105 msgid "Total Price" msgstr "" -#: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600 +#: templates/js/translated/order.js:2096 templates/js/translated/order.js:3639 #: templates/js/translated/part.js:1050 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096 +#: templates/js/translated/order.js:2155 templates/js/translated/part.js:1096 msgid "Receive line item" msgstr "" -#: templates/js/translated/order.js:2120 templates/js/translated/order.js:3737 +#: templates/js/translated/order.js:2159 templates/js/translated/order.js:3776 msgid "Duplicate line item" msgstr "" -#: templates/js/translated/order.js:2121 templates/js/translated/order.js:3738 +#: templates/js/translated/order.js:2160 templates/js/translated/order.js:3777 msgid "Edit line item" msgstr "" -#: templates/js/translated/order.js:2122 templates/js/translated/order.js:3742 +#: templates/js/translated/order.js:2161 templates/js/translated/order.js:3781 msgid "Delete line item" msgstr "" -#: templates/js/translated/order.js:2268 templates/js/translated/order.js:4115 +#: templates/js/translated/order.js:2307 templates/js/translated/order.js:4154 msgid "Duplicate line" msgstr "" -#: templates/js/translated/order.js:2269 templates/js/translated/order.js:4116 +#: templates/js/translated/order.js:2308 templates/js/translated/order.js:4155 msgid "Edit line" msgstr "" -#: templates/js/translated/order.js:2270 templates/js/translated/order.js:4117 +#: templates/js/translated/order.js:2309 templates/js/translated/order.js:4156 msgid "Delete line" msgstr "" -#: templates/js/translated/order.js:2300 templates/js/translated/order.js:4147 +#: templates/js/translated/order.js:2339 templates/js/translated/order.js:4186 msgid "Duplicate Line" msgstr "" -#: templates/js/translated/order.js:2321 templates/js/translated/order.js:4168 +#: templates/js/translated/order.js:2360 templates/js/translated/order.js:4207 msgid "Edit Line" msgstr "" -#: templates/js/translated/order.js:2332 templates/js/translated/order.js:4179 +#: templates/js/translated/order.js:2371 templates/js/translated/order.js:4218 msgid "Delete Line" msgstr "" -#: templates/js/translated/order.js:2343 +#: templates/js/translated/order.js:2382 msgid "No matching line" msgstr "" -#: templates/js/translated/order.js:2454 +#: templates/js/translated/order.js:2493 msgid "No sales orders found" msgstr "" -#: templates/js/translated/order.js:2517 +#: templates/js/translated/order.js:2556 msgid "Invalid Customer" msgstr "" -#: templates/js/translated/order.js:2615 +#: templates/js/translated/order.js:2654 msgid "Edit shipment" msgstr "" -#: templates/js/translated/order.js:2618 +#: templates/js/translated/order.js:2657 msgid "Complete shipment" msgstr "" -#: templates/js/translated/order.js:2623 +#: templates/js/translated/order.js:2662 msgid "Delete shipment" msgstr "" -#: templates/js/translated/order.js:2643 +#: templates/js/translated/order.js:2682 msgid "Edit Shipment" msgstr "" -#: templates/js/translated/order.js:2660 +#: templates/js/translated/order.js:2699 msgid "Delete Shipment" msgstr "" -#: templates/js/translated/order.js:2694 +#: templates/js/translated/order.js:2733 msgid "No matching shipments found" msgstr "" -#: templates/js/translated/order.js:2704 +#: templates/js/translated/order.js:2743 msgid "Shipment Reference" msgstr "" -#: templates/js/translated/order.js:2728 +#: templates/js/translated/order.js:2767 msgid "Not shipped" msgstr "" -#: templates/js/translated/order.js:2734 +#: templates/js/translated/order.js:2773 msgid "Tracking" msgstr "" -#: templates/js/translated/order.js:2738 +#: templates/js/translated/order.js:2777 msgid "Invoice" msgstr "" -#: templates/js/translated/order.js:2907 +#: templates/js/translated/order.js:2946 msgid "Add Shipment" msgstr "" -#: templates/js/translated/order.js:2958 +#: templates/js/translated/order.js:2997 msgid "Confirm stock allocation" msgstr "" -#: templates/js/translated/order.js:2959 +#: templates/js/translated/order.js:2998 msgid "Allocate Stock Items to Sales Order" msgstr "" -#: templates/js/translated/order.js:3167 +#: templates/js/translated/order.js:3206 msgid "No sales order allocations found" msgstr "" -#: templates/js/translated/order.js:3246 +#: templates/js/translated/order.js:3285 msgid "Edit Stock Allocation" msgstr "" -#: templates/js/translated/order.js:3263 +#: templates/js/translated/order.js:3302 msgid "Confirm Delete Operation" msgstr "" -#: templates/js/translated/order.js:3264 +#: templates/js/translated/order.js:3303 msgid "Delete Stock Allocation" msgstr "" -#: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398 +#: templates/js/translated/order.js:3348 templates/js/translated/order.js:3437 #: templates/js/translated/stock.js:1602 msgid "Shipped to customer" msgstr "" -#: templates/js/translated/order.js:3317 templates/js/translated/order.js:3407 +#: templates/js/translated/order.js:3356 templates/js/translated/order.js:3446 msgid "Stock location not specified" msgstr "" -#: templates/js/translated/order.js:3721 +#: templates/js/translated/order.js:3760 msgid "Allocate serial numbers" msgstr "" -#: templates/js/translated/order.js:3727 +#: templates/js/translated/order.js:3766 msgid "Purchase stock" msgstr "" -#: templates/js/translated/order.js:3734 templates/js/translated/order.js:3932 +#: templates/js/translated/order.js:3773 templates/js/translated/order.js:3971 msgid "Calculate price" msgstr "" -#: templates/js/translated/order.js:3746 +#: templates/js/translated/order.js:3785 msgid "Cannot be deleted as items have been shipped" msgstr "" -#: templates/js/translated/order.js:3749 +#: templates/js/translated/order.js:3788 msgid "Cannot be deleted as items have been allocated" msgstr "" -#: templates/js/translated/order.js:3831 +#: templates/js/translated/order.js:3870 msgid "Allocate Serial Numbers" msgstr "" -#: templates/js/translated/order.js:3940 +#: templates/js/translated/order.js:3979 msgid "Update Unit Price" msgstr "" -#: templates/js/translated/order.js:3954 +#: templates/js/translated/order.js:3993 msgid "No matching line items" msgstr "" -#: templates/js/translated/order.js:4190 +#: templates/js/translated/order.js:4229 msgid "No matching lines" msgstr "" @@ -9319,12 +9337,12 @@ msgstr "" msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:586 templates/js/translated/part.js:1470 +#: templates/js/translated/part.js:586 templates/js/translated/part.js:1478 #: templates/js/translated/table_filters.js:468 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:596 templates/js/translated/part.js:1482 +#: templates/js/translated/part.js:596 msgid "No stock available" msgstr "" @@ -9356,7 +9374,7 @@ msgstr "" msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1553 +#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1549 msgid "No parts found" msgstr "" @@ -9368,100 +9386,124 @@ msgstr "" msgid "No category" msgstr "" -#: templates/js/translated/part.js:1577 templates/js/translated/part.js:1820 +#: templates/js/translated/part.js:1476 +msgid "No stock" +msgstr "" + +#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816 #: templates/js/translated/stock.js:2347 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:1593 +#: templates/js/translated/part.js:1589 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:1659 +#: templates/js/translated/part.js:1655 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:1664 +#: templates/js/translated/part.js:1660 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:1669 +#: templates/js/translated/part.js:1665 msgid "Select Part Category" msgstr "" -#: templates/js/translated/part.js:1682 +#: templates/js/translated/part.js:1678 msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1839 templates/js/translated/stock.js:2366 +#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2366 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:1918 +#: templates/js/translated/part.js:1914 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:1934 +#: templates/js/translated/part.js:1930 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:1992 +#: templates/js/translated/part.js:1988 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2043 templates/js/translated/stock.js:1299 +#: templates/js/translated/part.js:2039 templates/js/translated/stock.js:1299 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:2044 templates/js/translated/stock.js:1300 +#: templates/js/translated/part.js:2040 templates/js/translated/stock.js:1300 #: templates/js/translated/stock.js:1560 msgid "Delete test result" msgstr "" -#: templates/js/translated/part.js:2050 +#: templates/js/translated/part.js:2046 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2072 +#: templates/js/translated/part.js:2068 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2086 +#: templates/js/translated/part.js:2082 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2111 +#: templates/js/translated/part.js:2107 #, python-brace-format msgid "No ${human_name} information found" msgstr "" -#: templates/js/translated/part.js:2168 +#: templates/js/translated/part.js:2164 #, python-brace-format msgid "Edit ${human_name}" msgstr "" -#: templates/js/translated/part.js:2169 +#: templates/js/translated/part.js:2165 #, python-brace-format msgid "Delete ${human_name}" msgstr "" -#: templates/js/translated/part.js:2283 -msgid "Current Stock" +#: templates/js/translated/part.js:2330 templates/js/translated/part.js:2331 +msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:2316 +#: templates/js/translated/part.js:2333 +msgid "Specified date is in the past" +msgstr "" + +#: templates/js/translated/part.js:2339 +msgid "Speculative" +msgstr "" + +#: templates/js/translated/part.js:2389 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2342 +#: templates/js/translated/part.js:2395 +msgid "Error fetching scheduling information for this part" +msgstr "" + +#: templates/js/translated/part.js:2491 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2412 +#: templates/js/translated/part.js:2507 +msgid "Maximum Quantity" +msgstr "" + +#: templates/js/translated/part.js:2533 +msgid "Minimum Stock Level" +msgstr "" + +#: templates/js/translated/part.js:2627 msgid "Single Price" msgstr "" -#: templates/js/translated/part.js:2431 +#: templates/js/translated/part.js:2646 msgid "Single Price Difference" msgstr "" @@ -10222,10 +10264,6 @@ msgstr "" msgid "Hide/Show pagination" msgstr "" -#: templates/js/translated/tables.js:558 -msgid "Refresh" -msgstr "" - #: templates/js/translated/tables.js:561 msgid "Toggle" msgstr "" diff --git a/InvenTree/locale/fr/LC_MESSAGES/django.po b/InvenTree/locale/fr/LC_MESSAGES/django.po index 77912466e8..8d151a61af 100644 --- a/InvenTree/locale/fr/LC_MESSAGES/django.po +++ b/InvenTree/locale/fr/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-16 11:53+0000\n" -"PO-Revision-Date: 2022-08-16 21:35\n" +"POT-Creation-Date: 2022-08-18 05:14+0000\n" +"PO-Revision-Date: 2022-08-18 21:38\n" "Last-Translator: \n" "Language-Team: French\n" "Language: fr_FR\n" @@ -40,10 +40,10 @@ msgstr "Entrer la date" #: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825 #: stock/serializers.py:924 stock/serializers.py:1056 #: stock/templates/stock/stock_sidebar.html:25 -#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101 -#: templates/js/translated/company.js:964 templates/js/translated/order.js:2104 -#: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753 -#: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102 +#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1099 +#: templates/js/translated/company.js:964 templates/js/translated/order.js:2143 +#: templates/js/translated/order.js:2294 templates/js/translated/order.js:2792 +#: templates/js/translated/order.js:3743 templates/js/translated/order.js:4141 #: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980 msgid "Notes" msgstr "Notes" @@ -211,11 +211,11 @@ msgstr "Sélectionnez un fichier à joindre" #: InvenTree/models.py:402 company/models.py:124 company/models.py:276 #: company/models.py:510 order/models.py:84 order/models.py:1245 -#: part/models.py:802 +#: part/models.py:802 part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_base.html:164 #: templates/js/translated/company.js:656 -#: templates/js/translated/company.js:948 templates/js/translated/order.js:2742 -#: templates/js/translated/part.js:1514 +#: templates/js/translated/company.js:948 templates/js/translated/order.js:2781 +#: templates/js/translated/part.js:1510 msgid "Link" msgstr "Lien" @@ -235,8 +235,8 @@ msgstr "Commentaire du fichier" #: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665 #: common/models.py:1666 common/models.py:1889 common/models.py:1890 -#: common/models.py:2152 common/models.py:2153 part/models.py:2200 -#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257 +#: common/models.py:2152 common/models.py:2153 part/models.py:2247 +#: part/models.py:2267 plugin/models.py:256 plugin/models.py:257 #: report/templates/report/inventree_test_report_base.html:96 #: templates/js/translated/stock.js:2641 msgid "User" @@ -277,7 +277,7 @@ msgstr "Choix invalide" #: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875 #: company/models.py:358 label/models.py:101 part/models.py:746 -#: part/models.py:2378 plugin/models.py:94 report/models.py:152 +#: part/models.py:2425 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 #: templates/InvenTree/settings/plugin.html:51 #: templates/InvenTree/settings/plugin.html:134 @@ -287,7 +287,7 @@ msgstr "Choix invalide" #: templates/js/translated/company.js:758 #: templates/js/translated/notification.js:71 #: templates/js/translated/part.js:688 templates/js/translated/part.js:840 -#: templates/js/translated/part.js:1906 templates/js/translated/stock.js:2392 +#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2392 msgid "Name" msgstr "Nom" @@ -297,19 +297,20 @@ msgstr "Nom" #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:87 label/models.py:108 #: order/models.py:82 part/models.py:769 part/templates/part/category.html:80 -#: part/templates/part/part_base.html:167 report/models.py:165 +#: part/templates/part/part_base.html:167 +#: part/templates/part/part_scheduling.html:12 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 #: stock/templates/stock/location.html:108 #: templates/InvenTree/settings/plugin_settings.html:33 -#: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848 -#: templates/js/translated/build.js:2471 templates/js/translated/company.js:409 +#: templates/js/translated/bom.js:553 templates/js/translated/bom.js:846 +#: templates/js/translated/build.js:2504 templates/js/translated/company.js:409 #: templates/js/translated/company.js:667 -#: templates/js/translated/company.js:959 templates/js/translated/order.js:1720 -#: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531 +#: templates/js/translated/company.js:959 templates/js/translated/order.js:1759 +#: templates/js/translated/order.js:1991 templates/js/translated/order.js:2570 #: templates/js/translated/part.js:747 templates/js/translated/part.js:1153 -#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1942 -#: templates/js/translated/part.js:2011 templates/js/translated/stock.js:1743 +#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1938 +#: templates/js/translated/part.js:2007 templates/js/translated/stock.js:1743 #: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478 msgid "Description" msgstr "Description" @@ -323,7 +324,7 @@ msgid "parent" msgstr "parent" #: InvenTree/models.py:560 InvenTree/models.py:561 -#: templates/js/translated/part.js:1948 templates/js/translated/stock.js:2430 +#: templates/js/translated/part.js:1944 templates/js/translated/stock.js:2430 msgid "Path" msgstr "Chemin d'accès" @@ -335,7 +336,7 @@ msgstr "Erreur serveur" msgid "An error has been logged by the server." msgstr "Une erreur a été enregistrée par le serveur." -#: InvenTree/serializers.py:55 part/models.py:2699 +#: InvenTree/serializers.py:55 part/models.py:2746 msgid "Must be a valid number" msgstr "Doit être un nombre valide" @@ -541,7 +542,7 @@ msgid "Returned" msgstr "Retourné" #: InvenTree/status_codes.py:141 order/models.py:1128 -#: templates/js/translated/order.js:3330 templates/js/translated/order.js:3679 +#: templates/js/translated/order.js:3369 templates/js/translated/order.js:3718 msgid "Shipped" msgstr "Expédié" @@ -728,7 +729,7 @@ msgstr "Choix invalide pour la fabrication parente" #: report/templates/report/inventree_build_order_base.html:105 #: templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 -#: templates/js/translated/build.js:731 +#: templates/js/translated/build.js:763 msgid "Build Order" msgstr "Ordre de Fabrication" @@ -747,14 +748,14 @@ msgid "Build Order Reference" msgstr "Référence de l' Ordre de Fabrication" #: build/models.py:166 order/models.py:240 order/models.py:623 -#: order/models.py:904 part/models.py:2617 +#: order/models.py:904 part/models.py:2664 #: part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 -#: templates/js/translated/bom.js:692 templates/js/translated/bom.js:855 -#: templates/js/translated/build.js:1779 templates/js/translated/order.js:1983 -#: templates/js/translated/order.js:2184 templates/js/translated/order.js:3523 -#: templates/js/translated/order.js:4031 +#: templates/js/translated/bom.js:690 templates/js/translated/bom.js:853 +#: templates/js/translated/build.js:1811 templates/js/translated/order.js:2022 +#: templates/js/translated/order.js:2223 templates/js/translated/order.js:3562 +#: templates/js/translated/order.js:4070 msgid "Reference" msgstr "Référence" @@ -762,7 +763,7 @@ msgstr "Référence" msgid "Brief description of the build" msgstr "Brève description de la fabrication" -#: build/models.py:185 build/templates/build/build_base.html:169 +#: build/models.py:185 build/templates/build/build_base.html:172 #: build/templates/build/detail.html:87 msgid "Parent Build" msgstr "Fabrication parente" @@ -771,13 +772,13 @@ msgstr "Fabrication parente" msgid "BuildOrder to which this build is allocated" msgstr "BuildOrder associé a cette fabrication" -#: build/models.py:191 build/templates/build/build_base.html:77 +#: build/models.py:191 build/templates/build/build_base.html:80 #: build/templates/build/detail.html:29 company/models.py:670 #: order/models.py:1001 order/models.py:1112 order/models.py:1113 -#: part/models.py:343 part/models.py:2146 part/models.py:2161 -#: part/models.py:2180 part/models.py:2198 part/models.py:2297 -#: part/models.py:2417 part/models.py:2507 part/models.py:2592 -#: part/models.py:2868 part/serializers.py:813 +#: part/models.py:343 part/models.py:2193 part/models.py:2208 +#: part/models.py:2227 part/models.py:2245 part/models.py:2344 +#: part/models.py:2464 part/models.py:2554 part/models.py:2639 +#: part/models.py:2915 part/serializers.py:813 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -789,17 +790,17 @@ msgstr "BuildOrder associé a cette fabrication" #: templates/email/build_order_required_stock.html:17 #: templates/email/low_stock_notification.html:16 #: templates/email/overdue_build_order.html:16 -#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:553 -#: templates/js/translated/bom.js:691 templates/js/translated/bom.js:802 -#: templates/js/translated/build.js:1156 templates/js/translated/build.js:1649 -#: templates/js/translated/build.js:2085 templates/js/translated/build.js:2476 +#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:552 +#: templates/js/translated/bom.js:689 templates/js/translated/bom.js:800 +#: templates/js/translated/build.js:1188 templates/js/translated/build.js:1681 +#: templates/js/translated/build.js:2118 templates/js/translated/build.js:2509 #: templates/js/translated/company.js:266 #: templates/js/translated/company.js:496 #: templates/js/translated/company.js:608 -#: templates/js/translated/company.js:868 templates/js/translated/order.js:103 -#: templates/js/translated/order.js:934 templates/js/translated/order.js:1387 -#: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885 -#: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507 +#: templates/js/translated/company.js:868 templates/js/translated/order.js:104 +#: templates/js/translated/order.js:973 templates/js/translated/order.js:1426 +#: templates/js/translated/order.js:1976 templates/js/translated/order.js:2924 +#: templates/js/translated/order.js:3320 templates/js/translated/order.js:3546 #: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210 #: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586 #: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958 @@ -821,7 +822,7 @@ msgid "SalesOrder to which this build is allocated" msgstr "Commande de vente à laquelle cette construction est allouée" #: build/models.py:213 build/serializers.py:800 -#: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873 +#: templates/js/translated/build.js:2106 templates/js/translated/order.js:2912 msgid "Source Location" msgstr "Emplacement d'origine" @@ -862,7 +863,7 @@ msgid "Build status code" msgstr "Code de statut de construction" #: build/models.py:251 build/serializers.py:225 order/serializers.py:447 -#: stock/models.py:662 templates/js/translated/order.js:1247 +#: stock/models.py:662 templates/js/translated/order.js:1286 msgid "Batch Code" msgstr "Code de lot" @@ -871,7 +872,7 @@ msgid "Batch code for this build output" msgstr "Code de lot pour ce build output" #: build/models.py:258 order/models.py:86 part/models.py:938 -#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544 +#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2583 msgid "Creation Date" msgstr "Date de création" @@ -884,7 +885,7 @@ msgid "Target date for build completion. Build will be overdue after this date." msgstr "Date cible pour l'achèvement de la construction. La construction sera en retard après cette date." #: build/models.py:266 order/models.py:286 -#: templates/js/translated/build.js:2553 +#: templates/js/translated/build.js:2586 msgid "Completion Date" msgstr "Date d'achèvement" @@ -892,7 +893,7 @@ msgstr "Date d'achèvement" msgid "completed by" msgstr "achevé par" -#: build/models.py:280 templates/js/translated/build.js:2521 +#: build/models.py:280 templates/js/translated/build.js:2554 msgid "Issued by" msgstr "Émis par" @@ -900,12 +901,12 @@ msgstr "Émis par" msgid "User who issued this build order" msgstr "Utilisateur ayant émis cette commande de construction" -#: build/models.py:289 build/templates/build/build_base.html:190 +#: build/models.py:289 build/templates/build/build_base.html:193 #: build/templates/build/detail.html:115 order/models.py:100 #: order/templates/order/order_base.html:176 #: order/templates/order/sales_order_base.html:183 part/models.py:942 #: report/templates/report/inventree_build_order_base.html:158 -#: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754 +#: templates/js/translated/build.js:2566 templates/js/translated/order.js:1793 msgid "Responsible" msgstr "Responsable" @@ -972,7 +973,7 @@ msgid "Selected stock item not found in BOM" msgstr "L'article du stock sélectionné n'a pas été trouvé dans la BOM" #: build/models.py:1328 stock/templates/stock/item_base.html:177 -#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2455 +#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2488 #: templates/navbar.html:38 msgid "Build" msgstr "Assemblage" @@ -986,11 +987,11 @@ msgstr "Construction à laquelle allouer des pièces" #: stock/serializers.py:882 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:199 -#: templates/js/translated/build.js:741 templates/js/translated/build.js:746 -#: templates/js/translated/build.js:2087 templates/js/translated/build.js:2638 -#: templates/js/translated/order.js:104 templates/js/translated/order.js:2886 -#: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193 -#: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380 +#: templates/js/translated/build.js:773 templates/js/translated/build.js:778 +#: templates/js/translated/build.js:2120 templates/js/translated/build.js:2671 +#: templates/js/translated/order.js:105 templates/js/translated/order.js:2925 +#: templates/js/translated/order.js:3227 templates/js/translated/order.js:3232 +#: templates/js/translated/order.js:3327 templates/js/translated/order.js:3419 #: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752 #: templates/js/translated/stock.js:2577 msgid "Stock Item" @@ -1001,13 +1002,13 @@ msgid "Source stock item" msgstr "Stock d'origine de l'article" #: build/models.py:1358 build/serializers.py:193 -#: build/templates/build/build_base.html:82 +#: build/templates/build/build_base.html:85 #: build/templates/build/detail.html:34 common/models.py:1697 #: company/templates/company/supplier_part.html:279 order/models.py:897 #: order/models.py:1423 order/serializers.py:1155 #: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40 -#: part/models.py:2608 part/templates/part/detail.html:937 -#: part/templates/part/detail.html:1023 +#: part/models.py:2655 part/templates/part/detail.html:951 +#: part/templates/part/detail.html:1037 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 #: report/templates/report/inventree_build_order_base.html:113 @@ -1018,20 +1019,20 @@ msgstr "Stock d'origine de l'article" #: stock/serializers.py:293 stock/templates/stock/item_base.html:292 #: stock/templates/stock/item_base.html:300 #: templates/email/build_order_completed.html:18 -#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:693 -#: templates/js/translated/bom.js:863 templates/js/translated/build.js:426 -#: templates/js/translated/build.js:578 templates/js/translated/build.js:768 -#: templates/js/translated/build.js:1178 templates/js/translated/build.js:1675 -#: templates/js/translated/build.js:2088 +#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:691 +#: templates/js/translated/bom.js:861 templates/js/translated/build.js:458 +#: templates/js/translated/build.js:610 templates/js/translated/build.js:800 +#: templates/js/translated/build.js:1210 templates/js/translated/build.js:1707 +#: templates/js/translated/build.js:2121 #: templates/js/translated/model_renderers.js:120 -#: templates/js/translated/order.js:120 templates/js/translated/order.js:937 -#: templates/js/translated/order.js:1989 templates/js/translated/order.js:2190 -#: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207 -#: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386 -#: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037 -#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2156 -#: templates/js/translated/part.js:2387 templates/js/translated/part.js:2421 -#: templates/js/translated/part.js:2499 templates/js/translated/stock.js:458 +#: templates/js/translated/order.js:121 templates/js/translated/order.js:976 +#: templates/js/translated/order.js:2028 templates/js/translated/order.js:2229 +#: templates/js/translated/order.js:2926 templates/js/translated/order.js:3246 +#: templates/js/translated/order.js:3333 templates/js/translated/order.js:3425 +#: templates/js/translated/order.js:3568 templates/js/translated/order.js:4076 +#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2152 +#: templates/js/translated/part.js:2602 templates/js/translated/part.js:2636 +#: templates/js/translated/part.js:2714 templates/js/translated/stock.js:458 #: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782 #: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711 msgid "Quantity" @@ -1050,7 +1051,7 @@ msgid "Destination stock item" msgstr "Stock de destination de l'article" #: build/serializers.py:138 build/serializers.py:674 -#: templates/js/translated/build.js:1166 +#: templates/js/translated/build.js:1198 msgid "Build Output" msgstr "Sortie d'assemblage" @@ -1090,7 +1091,7 @@ msgid "Integer quantity required, as the bill of materials contains trackable pa msgstr "Quantité entière requise, car la facture de matériaux contient des pièces à puce" #: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159 -#: stock/serializers.py:311 templates/js/translated/order.js:1258 +#: stock/serializers.py:311 templates/js/translated/order.js:1297 #: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459 msgid "Serial Numbers" msgstr "Numéros de série" @@ -1120,10 +1121,10 @@ msgstr "Une liste d'ordre de production doit être fourni" #: stock/serializers.py:917 stock/serializers.py:1150 #: stock/templates/stock/item_base.html:390 #: templates/js/translated/barcode.js:436 -#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753 -#: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285 -#: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305 -#: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394 +#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:785 +#: templates/js/translated/build.js:1719 templates/js/translated/order.js:1324 +#: templates/js/translated/order.js:3239 templates/js/translated/order.js:3344 +#: templates/js/translated/order.js:3352 templates/js/translated/order.js:3433 #: templates/js/translated/part.js:181 templates/js/translated/stock.js:588 #: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960 #: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518 @@ -1134,12 +1135,12 @@ msgstr "Emplacement" msgid "Location for completed build outputs" msgstr "Emplacement des ordres de production achevés" -#: build/serializers.py:373 build/templates/build/build_base.html:142 +#: build/serializers.py:373 build/templates/build/build_base.html:145 #: build/templates/build/detail.html:62 order/models.py:642 #: order/serializers.py:465 stock/templates/stock/item_base.html:423 -#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505 -#: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724 -#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829 +#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2538 +#: templates/js/translated/order.js:1431 templates/js/translated/order.js:1763 +#: templates/js/translated/order.js:2575 templates/js/translated/stock.js:1829 #: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727 msgid "Status" msgstr "État" @@ -1196,7 +1197,7 @@ msgstr "Accepter les non-alloués" msgid "Accept that stock items have not been fully allocated to this build order" msgstr "Accepter les articles de stock qui n'ont pas été complètement alloués à cette ordre de production" -#: build/serializers.py:522 templates/js/translated/build.js:195 +#: build/serializers.py:522 templates/js/translated/build.js:227 msgid "Required stock has not been fully allocated" msgstr "Le stock requis n'a pas encore été totalement alloué" @@ -1208,7 +1209,7 @@ msgstr "Accepter les incomplèts" msgid "Accept that the required number of build outputs have not been completed" msgstr "Accepter que tous les ordres de production n'aient pas encore été achevés" -#: build/serializers.py:538 templates/js/translated/build.js:199 +#: build/serializers.py:538 templates/js/translated/build.js:231 msgid "Required build quantity has not been completed" msgstr "La quantité nécessaire n'a pas encore été complétée" @@ -1216,8 +1217,8 @@ msgstr "La quantité nécessaire n'a pas encore été complétée" msgid "Build order has incomplete outputs" msgstr "L'ordre de production a des sorties incomplètes" -#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726 -#: part/models.py:2860 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2773 +#: part/models.py:2907 msgid "BOM Item" msgstr "Article de la nomenclature" @@ -1322,66 +1323,70 @@ msgid "Cancel Build" msgstr "Annuler l'assemblage" #: build/templates/build/build_base.html:59 +msgid "Duplicate Build" +msgstr "" + +#: build/templates/build/build_base.html:62 msgid "Delete Build" msgstr "Supprimer l'assemblage" -#: build/templates/build/build_base.html:64 -#: build/templates/build/build_base.html:65 +#: build/templates/build/build_base.html:67 +#: build/templates/build/build_base.html:68 msgid "Complete Build" msgstr "Compléter l'assemblage" -#: build/templates/build/build_base.html:87 +#: build/templates/build/build_base.html:90 msgid "Build Description" msgstr "Description de la construction" -#: build/templates/build/build_base.html:95 +#: build/templates/build/build_base.html:98 msgid "No build outputs have been created for this build order" msgstr "Aucune sortie de construction n'a été créée pour cet ordre de construction" -#: build/templates/build/build_base.html:101 +#: build/templates/build/build_base.html:104 #, python-format msgid "This Build Order is allocated to Sales Order %(link)s" msgstr "Cet ordre de construction est allouée à la commande de vente %(link)s" -#: build/templates/build/build_base.html:108 +#: build/templates/build/build_base.html:111 #, python-format msgid "This Build Order is a child of Build Order %(link)s" msgstr "Cet ordre de construction est un enfant de l'ordre de construction %(link)s" -#: build/templates/build/build_base.html:115 +#: build/templates/build/build_base.html:118 msgid "Build Order is ready to mark as completed" msgstr "L'ordre de construction est prêt à être marqué comme terminé" -#: build/templates/build/build_base.html:120 +#: build/templates/build/build_base.html:123 msgid "Build Order cannot be completed as outstanding outputs remain" msgstr "L'ordre de construction ne peut pas être achevé car il reste des outputs en suspens" -#: build/templates/build/build_base.html:125 +#: build/templates/build/build_base.html:128 msgid "Required build quantity has not yet been completed" msgstr "Le nombre de constructions requis n'a pas encore été atteint" -#: build/templates/build/build_base.html:130 +#: build/templates/build/build_base.html:133 msgid "Stock has not been fully allocated to this Build Order" msgstr "Le stock n'a pas été entièrement alloué à cet ordre de construction" -#: build/templates/build/build_base.html:151 +#: build/templates/build/build_base.html:154 #: build/templates/build/detail.html:131 order/models.py:910 #: order/templates/order/order_base.html:162 #: order/templates/order/sales_order_base.html:164 #: report/templates/report/inventree_build_order_base.html:125 -#: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741 -#: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552 -#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042 +#: templates/js/translated/build.js:2578 templates/js/translated/order.js:1780 +#: templates/js/translated/order.js:2090 templates/js/translated/order.js:2591 +#: templates/js/translated/order.js:3631 templates/js/translated/part.js:1042 msgid "Target Date" msgstr "Date Cible" -#: build/templates/build/build_base.html:156 +#: build/templates/build/build_base.html:159 #, python-format msgid "This build was due on %(target)s" msgstr "Cette construction était due le %(target)s" -#: build/templates/build/build_base.html:156 -#: build/templates/build/build_base.html:201 +#: build/templates/build/build_base.html:159 +#: build/templates/build/build_base.html:204 #: order/templates/order/order_base.html:98 #: order/templates/order/sales_order_base.html:94 #: templates/js/translated/table_filters.js:320 @@ -1390,14 +1395,14 @@ msgstr "Cette construction était due le %(target)s" msgid "Overdue" msgstr "En retard" -#: build/templates/build/build_base.html:163 +#: build/templates/build/build_base.html:166 #: build/templates/build/detail.html:67 build/templates/build/detail.html:142 #: order/templates/order/sales_order_base.html:171 #: templates/js/translated/table_filters.js:400 msgid "Completed" msgstr "Terminé" -#: build/templates/build/build_base.html:176 +#: build/templates/build/build_base.html:179 #: build/templates/build/detail.html:94 order/models.py:1105 #: order/models.py:1199 order/models.py:1330 #: order/templates/order/sales_order_base.html:9 @@ -1406,17 +1411,17 @@ msgstr "Terminé" #: report/templates/report/inventree_so_report.html:77 #: stock/templates/stock/item_base.html:370 #: templates/email/overdue_sales_order.html:15 -#: templates/js/translated/order.js:2498 +#: templates/js/translated/order.js:2537 msgid "Sales Order" msgstr "Commandes" -#: build/templates/build/build_base.html:183 +#: build/templates/build/build_base.html:186 #: build/templates/build/detail.html:108 #: report/templates/report/inventree_build_order_base.html:152 msgid "Issued By" msgstr "Émis par" -#: build/templates/build/build_base.html:245 +#: build/templates/build/build_base.html:256 msgid "Delete Build Order" msgstr "Supprimer l'ordre de construction" @@ -1433,7 +1438,7 @@ msgid "Stock can be taken from any available location." msgstr "Le stock peut être pris à partir de n'importe quel endroit disponible." #: build/templates/build/detail.html:49 order/models.py:1023 -#: templates/js/translated/order.js:1393 templates/js/translated/order.js:2093 +#: templates/js/translated/order.js:1432 templates/js/translated/order.js:2132 msgid "Destination" msgstr "Destination" @@ -1447,7 +1452,7 @@ msgstr "Pièces allouées" #: build/templates/build/detail.html:80 #: stock/templates/stock/item_base.html:170 -#: templates/js/translated/build.js:1182 +#: templates/js/translated/build.js:1214 #: templates/js/translated/model_renderers.js:124 #: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843 #: templates/js/translated/stock.js:2734 @@ -1459,7 +1464,7 @@ msgstr "Lot" #: build/templates/build/detail.html:126 #: order/templates/order/order_base.html:149 #: order/templates/order/sales_order_base.html:158 -#: templates/js/translated/build.js:2513 +#: templates/js/translated/build.js:2546 msgid "Created" msgstr "Créé le" @@ -1479,7 +1484,7 @@ msgstr "Commandes filles" msgid "Allocate Stock to Build" msgstr "Allouer le stock à la commande" -#: build/templates/build/detail.html:176 templates/js/translated/build.js:1901 +#: build/templates/build/detail.html:176 templates/js/translated/build.js:1934 msgid "Unallocate stock" msgstr "Désallouer le stock" @@ -1510,7 +1515,7 @@ msgstr "Commander les pièces requises" #: build/templates/build/detail.html:187 #: company/templates/company/detail.html:37 #: company/templates/company/detail.html:85 -#: part/templates/part/category.html:183 templates/js/translated/order.js:977 +#: part/templates/part/category.html:183 templates/js/translated/order.js:1016 msgid "Order Parts" msgstr "Commander des pièces" @@ -1582,7 +1587,7 @@ msgstr "Sorties de Construction terminées" #: order/templates/order/po_sidebar.html:9 #: order/templates/order/purchase_order_detail.html:82 #: order/templates/order/sales_order_detail.html:135 -#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:207 +#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:212 #: part/templates/part/part_sidebar.html:57 stock/templates/stock/item.html:117 #: stock/templates/stock/stock_sidebar.html:23 msgid "Attachments" @@ -1600,7 +1605,7 @@ msgstr "Allocation terminée" msgid "All untracked stock items have been allocated" msgstr "Tous les articles de stock non suivis ont été alloués" -#: build/templates/build/index.html:18 part/templates/part/detail.html:313 +#: build/templates/build/index.html:18 part/templates/part/detail.html:318 msgid "New Build Order" msgstr "Nouvel ordre de construction" @@ -1845,7 +1850,7 @@ msgstr "Copier les templates de paramètres de catégorie" msgid "Copy category parameter templates when creating a part" msgstr "Copier les templates de paramètres de la catégorie lors de la création d'une pièce" -#: common/models.py:951 part/models.py:2419 report/models.py:158 +#: common/models.py:951 part/models.py:2466 report/models.py:158 #: templates/js/translated/table_filters.js:38 #: templates/js/translated/table_filters.js:484 msgid "Template" @@ -1855,7 +1860,7 @@ msgstr "Modèle" msgid "Parts are templates by default" msgstr "Les pièces sont des templates par défaut" -#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448 +#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1446 #: templates/js/translated/table_filters.js:176 #: templates/js/translated/table_filters.js:447 msgid "Assembly" @@ -2591,7 +2596,7 @@ msgstr "" #: common/models.py:1705 company/serializers.py:366 #: company/templates/company/supplier_part.html:284 order/models.py:938 -#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2161 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2157 msgid "Price" msgstr "Prix" @@ -2830,7 +2835,7 @@ msgstr "" #: company/models.py:248 company/models.py:481 stock/models.py:598 #: stock/serializers.py:87 stock/templates/stock/item_base.html:148 -#: templates/js/translated/bom.js:543 +#: templates/js/translated/bom.js:542 msgid "Base Part" msgstr "" @@ -2859,7 +2864,7 @@ msgstr "Sélectionner un fabricant" #: templates/js/translated/company.js:269 #: templates/js/translated/company.js:497 #: templates/js/translated/company.js:649 -#: templates/js/translated/company.js:937 templates/js/translated/order.js:1971 +#: templates/js/translated/company.js:937 templates/js/translated/order.js:2010 #: templates/js/translated/part.js:247 templates/js/translated/part.js:1027 msgid "MPN" msgstr "" @@ -2899,7 +2904,7 @@ msgstr "Valeur" msgid "Parameter value" msgstr "" -#: company/models.py:372 part/models.py:888 part/models.py:2386 +#: company/models.py:372 part/models.py:888 part/models.py:2433 #: part/templates/part/part_base.html:280 #: templates/InvenTree/settings/settings.html:352 #: templates/js/translated/company.js:770 templates/js/translated/part.js:855 @@ -2921,7 +2926,7 @@ msgstr "" #: templates/email/overdue_purchase_order.html:16 #: templates/js/translated/company.js:268 #: templates/js/translated/company.js:401 -#: templates/js/translated/company.js:893 templates/js/translated/order.js:1707 +#: templates/js/translated/company.js:893 templates/js/translated/order.js:1746 #: templates/js/translated/part.js:217 templates/js/translated/part.js:995 #: templates/js/translated/table_filters.js:423 msgid "Supplier" @@ -2933,7 +2938,7 @@ msgstr "" #: company/models.py:497 company/templates/company/supplier_part.html:118 #: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267 -#: templates/js/translated/order.js:1958 templates/js/translated/part.js:228 +#: templates/js/translated/order.js:1997 templates/js/translated/part.js:228 #: templates/js/translated/part.js:1013 msgid "SKU" msgstr "" @@ -2955,17 +2960,17 @@ msgid "Supplier part description" msgstr "" #: company/models.py:522 company/templates/company/supplier_part.html:146 -#: part/models.py:2620 part/templates/part/upload_bom.html:59 +#: part/models.py:2667 part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401 msgid "Note" msgstr "" -#: company/models.py:526 part/models.py:1742 +#: company/models.py:526 part/models.py:1789 msgid "base cost" msgstr "coût de base" -#: company/models.py:526 part/models.py:1742 +#: company/models.py:526 part/models.py:1789 msgid "Minimum charge (e.g. stocking fee)" msgstr "" @@ -2979,7 +2984,7 @@ msgstr "" msgid "Part packaging" msgstr "" -#: company/models.py:530 part/models.py:1744 +#: company/models.py:530 part/models.py:1791 msgid "multiple" msgstr "" @@ -2990,8 +2995,8 @@ msgstr "Commande multiple" #: company/models.py:538 company/templates/company/supplier_part.html:94 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789 -#: templates/js/translated/build.js:2645 templates/js/translated/company.js:979 +#: templates/js/translated/bom.js:911 templates/js/translated/build.js:1821 +#: templates/js/translated/build.js:2678 templates/js/translated/company.js:979 #: templates/js/translated/part.js:600 templates/js/translated/part.js:603 #: templates/js/translated/table_filters.js:186 msgid "Available" @@ -3028,7 +3033,7 @@ msgid "Company" msgstr "" #: company/templates/company/company_base.html:22 -#: templates/js/translated/order.js:540 +#: templates/js/translated/order.js:579 msgid "Create Purchase Order" msgstr "Créer une commande d'achat" @@ -3069,7 +3074,7 @@ msgstr "Télécharger l'image depuis l'URL" #: stock/models.py:644 stock/serializers.py:811 #: stock/templates/stock/item_base.html:401 #: templates/email/overdue_sales_order.html:16 -#: templates/js/translated/company.js:393 templates/js/translated/order.js:2513 +#: templates/js/translated/company.js:393 templates/js/translated/order.js:2552 #: templates/js/translated/stock.js:2559 #: templates/js/translated/table_filters.js:427 msgid "Customer" @@ -3105,7 +3110,7 @@ msgstr "" #: company/templates/company/detail.html:19 #: company/templates/company/manufacturer_part.html:123 -#: part/templates/part/detail.html:354 +#: part/templates/part/detail.html:359 msgid "New Supplier Part" msgstr "" @@ -3134,7 +3139,7 @@ msgstr "" msgid "Create new manufacturer part" msgstr "" -#: company/templates/company/detail.html:66 part/templates/part/detail.html:384 +#: company/templates/company/detail.html:66 part/templates/part/detail.html:389 msgid "New Manufacturer Part" msgstr "" @@ -3148,7 +3153,7 @@ msgstr "" #: order/templates/order/order_base.html:13 #: order/templates/order/purchase_orders.html:8 #: order/templates/order/purchase_orders.html:12 -#: part/templates/part/detail.html:79 part/templates/part/part_sidebar.html:37 +#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:37 #: templates/InvenTree/index.html:252 templates/InvenTree/search.html:198 #: templates/InvenTree/settings/sidebar.html:49 #: templates/js/translated/search.js:275 templates/navbar.html:50 @@ -3171,7 +3176,7 @@ msgstr "Nouvelle commande achat" #: order/templates/order/sales_order_base.html:13 #: order/templates/order/sales_orders.html:8 #: order/templates/order/sales_orders.html:15 -#: part/templates/part/detail.html:102 part/templates/part/part_sidebar.html:41 +#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:41 #: templates/InvenTree/index.html:283 templates/InvenTree/search.html:218 #: templates/InvenTree/settings/sidebar.html:51 #: templates/js/translated/search.js:299 templates/navbar.html:61 @@ -3190,7 +3195,7 @@ msgid "New Sales Order" msgstr "Nouvelle commande de vente" #: company/templates/company/detail.html:168 -#: templates/js/translated/build.js:1660 +#: templates/js/translated/build.js:1692 msgid "Assigned Stock" msgstr "Stock affecté" @@ -3206,7 +3211,7 @@ msgstr "Fabricants" #: company/templates/company/manufacturer_part.html:35 #: company/templates/company/supplier_part.html:186 -#: part/templates/part/detail.html:82 part/templates/part/part_base.html:80 +#: part/templates/part/detail.html:87 part/templates/part/part_base.html:80 msgid "Order part" msgstr "" @@ -3237,13 +3242,13 @@ msgid "Suppliers" msgstr "Fournisseurs" #: company/templates/company/manufacturer_part.html:136 -#: part/templates/part/detail.html:365 +#: part/templates/part/detail.html:370 msgid "Delete supplier parts" msgstr "Supprimer les pièces du fournisseur" #: company/templates/company/manufacturer_part.html:136 #: company/templates/company/manufacturer_part.html:183 -#: part/templates/part/detail.html:366 part/templates/part/detail.html:396 +#: part/templates/part/detail.html:371 part/templates/part/detail.html:401 #: templates/js/translated/forms.js:453 templates/js/translated/helpers.js:33 #: users/models.py:220 msgid "Delete" @@ -3252,12 +3257,12 @@ msgstr "Supprimer" #: company/templates/company/manufacturer_part.html:166 #: company/templates/company/manufacturer_part_sidebar.html:5 #: part/templates/part/category_sidebar.html:19 -#: part/templates/part/detail.html:181 part/templates/part/part_sidebar.html:8 +#: part/templates/part/detail.html:186 part/templates/part/part_sidebar.html:8 msgid "Parameters" msgstr "Paramètres" #: company/templates/company/manufacturer_part.html:170 -#: part/templates/part/detail.html:186 +#: part/templates/part/detail.html:191 #: templates/InvenTree/settings/category.html:12 #: templates/InvenTree/settings/part.html:68 msgid "New Parameter" @@ -3268,7 +3273,7 @@ msgid "Delete parameters" msgstr "" #: company/templates/company/manufacturer_part.html:245 -#: part/templates/part/detail.html:826 +#: part/templates/part/detail.html:840 msgid "Add Parameter" msgstr "" @@ -3291,7 +3296,7 @@ msgstr "" #: company/templates/company/supplier_part.html:7 #: company/templates/company/supplier_part.html:24 stock/models.py:607 #: stock/templates/stock/item_base.html:238 -#: templates/js/translated/company.js:909 templates/js/translated/order.js:935 +#: templates/js/translated/company.js:909 templates/js/translated/order.js:974 #: templates/js/translated/stock.js:1933 msgid "Supplier Part" msgstr "" @@ -3303,7 +3308,7 @@ msgstr "" #: company/templates/company/supplier_part.html:40 #: company/templates/company/supplier_part.html:41 #: company/templates/company/supplier_part.html:187 -#: part/templates/part/detail.html:83 +#: part/templates/part/detail.html:88 msgid "Order Part" msgstr "Commander un composant" @@ -3358,7 +3363,7 @@ msgstr "Information sur les prix" #: company/templates/company/supplier_part.html:212 #: company/templates/company/supplier_part.html:326 -#: part/templates/part/prices.html:276 templates/js/translated/part.js:2233 +#: part/templates/part/prices.html:276 templates/js/translated/part.js:2229 msgid "Add Price Break" msgstr "" @@ -3367,12 +3372,12 @@ msgid "No price break information found" msgstr "" #: company/templates/company/supplier_part.html:252 -#: templates/js/translated/part.js:2243 +#: templates/js/translated/part.js:2239 msgid "Delete Price Break" msgstr "" #: company/templates/company/supplier_part.html:266 -#: templates/js/translated/part.js:2257 +#: templates/js/translated/part.js:2253 msgid "Edit Price Break" msgstr "" @@ -3398,10 +3403,9 @@ msgstr "" #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:151 #: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751 -#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460 -#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754 -#: templates/navbar.html:31 +#: templates/js/translated/part.js:751 templates/js/translated/part.js:1299 +#: templates/js/translated/part.js:1460 templates/js/translated/stock.js:959 +#: templates/js/translated/stock.js:1754 templates/navbar.html:31 msgid "Stock" msgstr "" @@ -3554,7 +3558,7 @@ msgid "Company from which the items are being ordered" msgstr "" #: order/models.py:262 order/templates/order/order_base.html:124 -#: templates/js/translated/order.js:1716 +#: templates/js/translated/order.js:1755 msgid "Supplier Reference" msgstr "" @@ -3611,7 +3615,7 @@ msgid "Target date for order completion. Order will be overdue after this date." msgstr "" #: order/models.py:652 order/models.py:1204 -#: templates/js/translated/order.js:2560 templates/js/translated/order.js:2722 +#: templates/js/translated/order.js:2599 templates/js/translated/order.js:2761 msgid "Shipment Date" msgstr "Nom de l’expédition" @@ -3673,7 +3677,7 @@ msgstr "" #: order/models.py:983 order/models.py:1063 order/models.py:1104 #: order/models.py:1198 order/models.py:1330 -#: templates/js/translated/order.js:3178 +#: templates/js/translated/order.js:3217 msgid "Order" msgstr "Commande" @@ -3683,7 +3687,7 @@ msgstr "Commande" #: report/templates/report/inventree_po_report.html:76 #: stock/templates/stock/item_base.html:184 #: templates/email/overdue_purchase_order.html:15 -#: templates/js/translated/order.js:936 templates/js/translated/order.js:1691 +#: templates/js/translated/order.js:975 templates/js/translated/order.js:1730 #: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913 #: templates/js/translated/stock.js:2540 msgid "Purchase Order" @@ -3694,7 +3698,7 @@ msgid "Supplier part" msgstr "Pièce fournisseur" #: order/models.py:1009 order/templates/order/order_base.html:169 -#: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073 +#: templates/js/translated/order.js:1429 templates/js/translated/order.js:2112 #: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091 #: templates/js/translated/table_filters.js:338 msgid "Received" @@ -3880,11 +3884,11 @@ msgstr "" msgid "Select destination location for received items" msgstr "" -#: order/serializers.py:448 templates/js/translated/order.js:1248 +#: order/serializers.py:448 templates/js/translated/order.js:1287 msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:456 templates/js/translated/order.js:1259 +#: order/serializers.py:456 templates/js/translated/order.js:1298 msgid "Enter serial numbers for incoming stock items" msgstr "Entrez les numéros de série pour les articles de stock entrants" @@ -4061,10 +4065,6 @@ msgstr "" msgid "Total cost could not be calculated" msgstr "" -#: order/templates/order/order_base.html:243 -msgid "Edit Purchase Order" -msgstr "" - #: order/templates/order/order_wizard/match_parts.html:12 #: part/templates/part/import_wizard/ajax_match_references.html:12 #: part/templates/part/import_wizard/match_references.html:12 @@ -4091,10 +4091,10 @@ msgstr "" #: part/templates/part/import_wizard/ajax_match_fields.html:64 #: part/templates/part/import_wizard/ajax_match_references.html:42 #: part/templates/part/import_wizard/match_references.html:49 -#: templates/js/translated/bom.js:77 templates/js/translated/build.js:431 -#: templates/js/translated/build.js:583 templates/js/translated/build.js:1974 -#: templates/js/translated/order.js:884 templates/js/translated/order.js:1337 -#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625 +#: templates/js/translated/bom.js:77 templates/js/translated/build.js:463 +#: templates/js/translated/build.js:615 templates/js/translated/build.js:2007 +#: templates/js/translated/order.js:923 templates/js/translated/order.js:1376 +#: templates/js/translated/order.js:2836 templates/js/translated/stock.js:625 #: templates/js/translated/stock.js:793 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" @@ -4130,7 +4130,7 @@ msgstr "Articles de la commande d'achat" #: order/templates/order/purchase_order_detail.html:26 #: order/templates/order/sales_order_detail.html:22 #: order/templates/order/sales_order_detail.html:255 -#: templates/js/translated/order.js:557 +#: templates/js/translated/order.js:596 msgid "Add Line Item" msgstr "" @@ -4176,7 +4176,7 @@ msgid "Print packing list" msgstr "" #: order/templates/order/sales_order_base.html:60 -#: templates/js/translated/order.js:229 +#: templates/js/translated/order.js:230 msgid "Complete Shipments" msgstr "" @@ -4190,7 +4190,7 @@ msgid "This Sales Order has not been fully allocated" msgstr "" #: order/templates/order/sales_order_base.html:123 -#: templates/js/translated/order.js:2526 +#: templates/js/translated/order.js:2565 msgid "Customer Reference" msgstr "" @@ -4214,8 +4214,8 @@ msgid "Pending Shipments" msgstr "Expéditions en attente" #: order/templates/order/sales_order_detail.html:72 -#: templates/attachment_table.html:6 templates/js/translated/bom.js:1110 -#: templates/js/translated/build.js:1882 +#: templates/attachment_table.html:6 templates/js/translated/bom.js:1108 +#: templates/js/translated/build.js:1915 msgid "Actions" msgstr "" @@ -4257,35 +4257,35 @@ msgstr "" msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:584 +#: part/api.py:621 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:704 +#: part/api.py:758 msgid "Valid" msgstr "" -#: part/api.py:705 +#: part/api.py:759 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:711 +#: part/api.py:765 msgid "This option must be selected" msgstr "" -#: part/api.py:1134 +#: part/api.py:1188 msgid "Must be greater than zero" msgstr "" -#: part/api.py:1138 +#: part/api.py:1192 msgid "Must be a valid quantity" msgstr "" -#: part/api.py:1153 +#: part/api.py:1207 msgid "Specify location for initial part stock" msgstr "" -#: part/api.py:1184 part/api.py:1188 part/api.py:1203 part/api.py:1207 +#: part/api.py:1238 part/api.py:1242 part/api.py:1257 part/api.py:1261 msgid "This field is required" msgstr "" @@ -4299,14 +4299,14 @@ msgid "Total Stock" msgstr "" #: part/bom.py:129 part/templates/part/part_base.html:189 -#: templates/js/translated/order.js:3618 +#: templates/js/translated/order.js:3657 msgid "Available Stock" msgstr "" #: part/bom.py:130 part/templates/part/part_base.html:207 -#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590 +#: templates/js/translated/bom.js:945 templates/js/translated/part.js:590 #: templates/js/translated/part.js:610 templates/js/translated/part.js:1302 -#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490 +#: templates/js/translated/part.js:1483 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "En Commande" @@ -4335,7 +4335,7 @@ msgstr "" msgid "Icon (optional)" msgstr "" -#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16 +#: part/models.py:122 part/models.py:2509 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "Catégorie de composant" @@ -4352,7 +4352,7 @@ msgstr "Catégories de composants" #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82 #: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:1955 templates/js/translated/search.js:144 +#: templates/js/translated/part.js:1951 templates/js/translated/search.js:144 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "Composantes" @@ -4382,7 +4382,7 @@ msgstr "Le numéro de série le plus récent est" msgid "Duplicate IPN not allowed in part settings" msgstr "IPN dupliqué non autorisé dans les paramètres de la pièce" -#: part/models.py:745 part/models.py:2516 +#: part/models.py:745 part/models.py:2563 msgid "Part name" msgstr "" @@ -4415,11 +4415,11 @@ msgstr "" msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:783 part/models.py:2218 part/models.py:2461 +#: part/models.py:783 part/models.py:2265 part/models.py:2508 #: part/templates/part/part_base.html:257 #: templates/InvenTree/settings/settings.html:232 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1668 +#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1664 msgid "Category" msgstr "Catégorie" @@ -4530,245 +4530,245 @@ msgstr "" msgid "Creation User" msgstr "" -#: part/models.py:1744 +#: part/models.py:1791 msgid "Sell multiple" msgstr "Ventes multiples" -#: part/models.py:2265 +#: part/models.py:2312 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:2282 +#: part/models.py:2329 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:2302 templates/js/translated/part.js:2006 +#: part/models.py:2349 templates/js/translated/part.js:2002 #: templates/js/translated/stock.js:1340 msgid "Test Name" msgstr "Nom de test" -#: part/models.py:2303 +#: part/models.py:2350 msgid "Enter a name for the test" msgstr "" -#: part/models.py:2308 +#: part/models.py:2355 msgid "Test Description" msgstr "" -#: part/models.py:2309 +#: part/models.py:2356 msgid "Enter description for this test" msgstr "" -#: part/models.py:2314 templates/js/translated/part.js:2015 +#: part/models.py:2361 templates/js/translated/part.js:2011 #: templates/js/translated/table_filters.js:302 msgid "Required" msgstr "Requis" -#: part/models.py:2315 +#: part/models.py:2362 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:2320 templates/js/translated/part.js:2023 +#: part/models.py:2367 templates/js/translated/part.js:2019 msgid "Requires Value" msgstr "" -#: part/models.py:2321 +#: part/models.py:2368 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:2326 templates/js/translated/part.js:2030 +#: part/models.py:2373 templates/js/translated/part.js:2026 msgid "Requires Attachment" msgstr "" -#: part/models.py:2327 +#: part/models.py:2374 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:2335 +#: part/models.py:2382 #, python-brace-format msgid "Illegal character in template name ({c})" msgstr "" -#: part/models.py:2371 +#: part/models.py:2418 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:2379 +#: part/models.py:2426 msgid "Parameter Name" msgstr "" -#: part/models.py:2386 +#: part/models.py:2433 msgid "Parameter Units" msgstr "" -#: part/models.py:2417 +#: part/models.py:2464 msgid "Parent Part" msgstr "" -#: part/models.py:2419 part/models.py:2467 part/models.py:2468 +#: part/models.py:2466 part/models.py:2514 part/models.py:2515 #: templates/InvenTree/settings/settings.html:227 msgid "Parameter Template" msgstr "" -#: part/models.py:2421 +#: part/models.py:2468 msgid "Data" msgstr "Données" -#: part/models.py:2421 +#: part/models.py:2468 msgid "Parameter Value" msgstr "" -#: part/models.py:2472 templates/InvenTree/settings/settings.html:236 +#: part/models.py:2519 templates/InvenTree/settings/settings.html:236 msgid "Default Value" msgstr "" -#: part/models.py:2473 +#: part/models.py:2520 msgid "Default Parameter Value" msgstr "" -#: part/models.py:2508 +#: part/models.py:2555 msgid "Part ID or part name" msgstr "" -#: part/models.py:2511 templates/js/translated/model_renderers.js:212 +#: part/models.py:2558 templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "ID de composant" -#: part/models.py:2512 +#: part/models.py:2559 msgid "Unique part ID value" msgstr "" -#: part/models.py:2515 +#: part/models.py:2562 msgid "Part Name" msgstr "" -#: part/models.py:2519 +#: part/models.py:2566 msgid "Part IPN" msgstr "" -#: part/models.py:2520 +#: part/models.py:2567 msgid "Part IPN value" msgstr "" -#: part/models.py:2523 +#: part/models.py:2570 msgid "Level" msgstr "" -#: part/models.py:2524 +#: part/models.py:2571 msgid "BOM level" msgstr "" -#: part/models.py:2593 +#: part/models.py:2640 msgid "Select parent part" msgstr "" -#: part/models.py:2601 +#: part/models.py:2648 msgid "Sub part" msgstr "" -#: part/models.py:2602 +#: part/models.py:2649 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:2608 +#: part/models.py:2655 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:2610 part/templates/part/upload_bom.html:58 -#: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999 +#: part/models.py:2657 part/templates/part/upload_bom.html:58 +#: templates/js/translated/bom.js:872 templates/js/translated/bom.js:997 #: templates/js/translated/table_filters.js:100 msgid "Optional" msgstr "" -#: part/models.py:2610 +#: part/models.py:2657 msgid "This BOM item is optional" msgstr "" -#: part/models.py:2613 part/templates/part/upload_bom.html:55 +#: part/models.py:2660 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "Surplus" -#: part/models.py:2614 +#: part/models.py:2661 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:2617 +#: part/models.py:2664 msgid "BOM item reference" msgstr "" -#: part/models.py:2620 +#: part/models.py:2667 msgid "BOM item notes" msgstr "" -#: part/models.py:2622 +#: part/models.py:2669 msgid "Checksum" msgstr "" -#: part/models.py:2622 +#: part/models.py:2669 msgid "BOM line checksum" msgstr "" -#: part/models.py:2626 part/templates/part/upload_bom.html:57 -#: templates/js/translated/bom.js:1016 +#: part/models.py:2673 part/templates/part/upload_bom.html:57 +#: templates/js/translated/bom.js:1014 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:96 msgid "Inherited" msgstr "" -#: part/models.py:2627 +#: part/models.py:2674 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:2632 part/templates/part/upload_bom.html:56 -#: templates/js/translated/bom.js:1008 +#: part/models.py:2679 part/templates/part/upload_bom.html:56 +#: templates/js/translated/bom.js:1006 msgid "Allow Variants" msgstr "" -#: part/models.py:2633 +#: part/models.py:2680 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:2711 stock/models.py:468 +#: part/models.py:2758 stock/models.py:468 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:2720 part/models.py:2722 +#: part/models.py:2767 part/models.py:2769 msgid "Sub part must be specified" msgstr "" -#: part/models.py:2827 +#: part/models.py:2874 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:2848 +#: part/models.py:2895 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:2861 +#: part/models.py:2908 msgid "Parent BOM item" msgstr "" -#: part/models.py:2869 +#: part/models.py:2916 msgid "Substitute part" msgstr "" -#: part/models.py:2884 +#: part/models.py:2931 msgid "Part 1" msgstr "" -#: part/models.py:2888 +#: part/models.py:2935 msgid "Part 2" msgstr "" -#: part/models.py:2888 +#: part/models.py:2935 msgid "Select Related Part" msgstr "" -#: part/models.py:2906 +#: part/models.py:2953 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:2910 +#: part/models.py:2957 msgid "Duplicate relationship already exists" msgstr "" @@ -4876,7 +4876,7 @@ msgstr "" msgid "The BOM for %(part)s has not been validated." msgstr "" -#: part/templates/part/bom.html:30 part/templates/part/detail.html:264 +#: part/templates/part/bom.html:30 part/templates/part/detail.html:269 msgid "BOM actions" msgstr "" @@ -4945,8 +4945,8 @@ msgstr "" msgid "New Part" msgstr "" -#: part/templates/part/category.html:174 part/templates/part/detail.html:363 -#: part/templates/part/detail.html:394 +#: part/templates/part/category.html:174 part/templates/part/detail.html:368 +#: part/templates/part/detail.html:399 msgid "Options" msgstr "" @@ -5014,138 +5014,146 @@ msgstr "" msgid "Part Stock" msgstr "" -#: part/templates/part/detail.html:54 +#: part/templates/part/detail.html:44 +msgid "Refresh scheduling data" +msgstr "" + +#: part/templates/part/detail.html:45 templates/js/translated/tables.js:558 +msgid "Refresh" +msgstr "Actualiser" + +#: part/templates/part/detail.html:59 msgid "Part Test Templates" msgstr "" -#: part/templates/part/detail.html:59 +#: part/templates/part/detail.html:64 msgid "Add Test Template" msgstr "" -#: part/templates/part/detail.html:116 stock/templates/stock/item.html:53 +#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53 msgid "Sales Order Allocations" msgstr "" -#: part/templates/part/detail.html:138 +#: part/templates/part/detail.html:143 msgid "Part Notes" msgstr "" -#: part/templates/part/detail.html:153 +#: part/templates/part/detail.html:158 msgid "Part Variants" msgstr "" -#: part/templates/part/detail.html:157 +#: part/templates/part/detail.html:162 msgid "Create new variant" msgstr "" -#: part/templates/part/detail.html:158 +#: part/templates/part/detail.html:163 msgid "New Variant" msgstr "" -#: part/templates/part/detail.html:185 +#: part/templates/part/detail.html:190 msgid "Add new parameter" msgstr "" -#: part/templates/part/detail.html:222 part/templates/part/part_sidebar.html:54 +#: part/templates/part/detail.html:227 part/templates/part/part_sidebar.html:54 msgid "Related Parts" msgstr "" -#: part/templates/part/detail.html:226 part/templates/part/detail.html:227 +#: part/templates/part/detail.html:231 part/templates/part/detail.html:232 msgid "Add Related" msgstr "" -#: part/templates/part/detail.html:247 part/templates/part/part_sidebar.html:17 +#: part/templates/part/detail.html:252 part/templates/part/part_sidebar.html:17 msgid "Bill of Materials" msgstr "" -#: part/templates/part/detail.html:252 +#: part/templates/part/detail.html:257 msgid "Export actions" msgstr "" -#: part/templates/part/detail.html:256 templates/js/translated/bom.js:284 +#: part/templates/part/detail.html:261 templates/js/translated/bom.js:284 msgid "Export BOM" msgstr "" -#: part/templates/part/detail.html:258 +#: part/templates/part/detail.html:263 msgid "Print BOM Report" msgstr "" -#: part/templates/part/detail.html:268 +#: part/templates/part/detail.html:273 msgid "Upload BOM" msgstr "" -#: part/templates/part/detail.html:269 templates/js/translated/part.js:274 +#: part/templates/part/detail.html:274 templates/js/translated/part.js:274 msgid "Copy BOM" msgstr "" -#: part/templates/part/detail.html:270 +#: part/templates/part/detail.html:275 msgid "Validate BOM" msgstr "" -#: part/templates/part/detail.html:275 +#: part/templates/part/detail.html:280 msgid "New BOM Item" msgstr "" -#: part/templates/part/detail.html:276 +#: part/templates/part/detail.html:281 msgid "Add BOM Item" msgstr "" -#: part/templates/part/detail.html:289 +#: part/templates/part/detail.html:294 msgid "Assemblies" msgstr "" -#: part/templates/part/detail.html:307 +#: part/templates/part/detail.html:312 msgid "Part Builds" msgstr "" -#: part/templates/part/detail.html:334 stock/templates/stock/item.html:38 +#: part/templates/part/detail.html:339 stock/templates/stock/item.html:38 msgid "Build Order Allocations" msgstr "" -#: part/templates/part/detail.html:350 +#: part/templates/part/detail.html:355 msgid "Part Suppliers" msgstr "" -#: part/templates/part/detail.html:380 +#: part/templates/part/detail.html:385 msgid "Part Manufacturers" msgstr "Fabricants de composants" -#: part/templates/part/detail.html:396 +#: part/templates/part/detail.html:401 msgid "Delete manufacturer parts" msgstr "" -#: part/templates/part/detail.html:612 +#: part/templates/part/detail.html:626 msgid "Create BOM Item" msgstr "" -#: part/templates/part/detail.html:656 +#: part/templates/part/detail.html:670 msgid "Related Part" msgstr "" -#: part/templates/part/detail.html:664 +#: part/templates/part/detail.html:678 msgid "Add Related Part" msgstr "" -#: part/templates/part/detail.html:756 +#: part/templates/part/detail.html:770 msgid "Add Test Result Template" msgstr "" -#: part/templates/part/detail.html:900 +#: part/templates/part/detail.html:914 #, python-format msgid "Purchase Unit Price - %(currency)s" msgstr "" -#: part/templates/part/detail.html:912 +#: part/templates/part/detail.html:926 #, python-format msgid "Unit Price-Cost Difference - %(currency)s" msgstr "" -#: part/templates/part/detail.html:924 +#: part/templates/part/detail.html:938 #, python-format msgid "Supplier Unit Cost - %(currency)s" msgstr "" -#: part/templates/part/detail.html:1013 +#: part/templates/part/detail.html:1027 #, python-format msgid "Unit Price - %(currency)s" msgstr "" @@ -5321,13 +5329,13 @@ msgstr "" msgid "Allocated to Sales Orders" msgstr "" -#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1037 +#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1035 msgid "Can Build" msgstr "" #: part/templates/part/part_base.html:238 templates/js/translated/part.js:593 #: templates/js/translated/part.js:613 templates/js/translated/part.js:1306 -#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1494 +#: templates/js/translated/part.js:1490 msgid "Building" msgstr "" @@ -5379,7 +5387,7 @@ msgid "Total Cost" msgstr "" #: part/templates/part/part_pricing.html:40 part/templates/part/prices.html:43 -#: templates/js/translated/bom.js:991 +#: templates/js/translated/bom.js:989 msgid "No supplier pricing available" msgstr "" @@ -5414,6 +5422,18 @@ msgstr "" msgid "No pricing information is available for this part." msgstr "" +#: part/templates/part/part_scheduling.html:13 +#: report/templates/report/inventree_test_report_base.html:97 +#: templates/InvenTree/settings/plugin.html:53 +#: templates/InvenTree/settings/plugin_settings.html:38 +#: templates/js/translated/order.js:1772 templates/js/translated/stock.js:2468 +msgid "Date" +msgstr "" + +#: part/templates/part/part_scheduling.html:14 +msgid "Scheduled Quantity" +msgstr "" + #: part/templates/part/part_sidebar.html:11 msgid "Variants" msgstr "" @@ -5462,7 +5482,7 @@ msgstr "Afficher le prix de vente" msgid "Calculation parameters" msgstr "" -#: part/templates/part/prices.html:160 templates/js/translated/bom.js:985 +#: part/templates/part/prices.html:160 templates/js/translated/bom.js:983 msgid "Supplier Cost" msgstr "" @@ -5501,7 +5521,7 @@ msgid "No sale pice history available for this part." msgstr "" #: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616 -#: templates/js/translated/part.js:1294 templates/js/translated/part.js:1498 +#: templates/js/translated/part.js:1294 msgid "No Stock" msgstr "" @@ -5893,11 +5913,11 @@ msgstr "" #: report/templates/report/inventree_test_report_base.html:79 #: stock/models.py:648 stock/templates/stock/item_base.html:322 -#: templates/js/translated/build.js:424 templates/js/translated/build.js:576 -#: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673 +#: templates/js/translated/build.js:456 templates/js/translated/build.js:608 +#: templates/js/translated/build.js:1208 templates/js/translated/build.js:1705 #: templates/js/translated/model_renderers.js:118 -#: templates/js/translated/order.js:118 templates/js/translated/order.js:3297 -#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490 +#: templates/js/translated/order.js:119 templates/js/translated/order.js:3336 +#: templates/js/translated/order.js:3423 templates/js/translated/stock.js:490 msgid "Serial Number" msgstr "Numéro de série" @@ -5915,13 +5935,6 @@ msgstr "" msgid "Result" msgstr "Résultat" -#: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:53 -#: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468 -msgid "Date" -msgstr "" - #: report/templates/report/inventree_test_report_base.html:108 msgid "Pass" msgstr "" @@ -6519,7 +6532,7 @@ msgid "Available Quantity" msgstr "" #: stock/templates/stock/item_base.html:394 -#: templates/js/translated/build.js:1695 +#: templates/js/translated/build.js:1727 msgid "No location set" msgstr "" @@ -7702,7 +7715,7 @@ msgid "The following parts are low on required stock" msgstr "" #: templates/email/build_order_required_stock.html:18 -#: templates/js/translated/bom.js:1483 +#: templates/js/translated/bom.js:1481 msgid "Required Quantity" msgstr "Quantité requise" @@ -7716,6 +7729,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:19 +#: templates/js/translated/part.js:2498 msgid "Minimum Quantity" msgstr "" @@ -7917,10 +7931,10 @@ msgstr "" msgid "Row Data" msgstr "Données de la rangée" -#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:622 +#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:620 #: templates/js/translated/modals.js:56 templates/js/translated/modals.js:601 #: templates/js/translated/modals.js:695 templates/js/translated/modals.js:1003 -#: templates/js/translated/order.js:979 templates/modals.html:15 +#: templates/js/translated/order.js:1018 templates/modals.html:15 #: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50 msgid "Close" msgstr "" @@ -7930,12 +7944,12 @@ msgid "Download BOM Template" msgstr "Télécharger le template de la BOM" #: templates/js/translated/bom.js:253 templates/js/translated/bom.js:287 -#: templates/js/translated/order.js:760 templates/js/translated/tables.js:145 +#: templates/js/translated/order.js:799 templates/js/translated/tables.js:145 msgid "Format" msgstr "" #: templates/js/translated/bom.js:254 templates/js/translated/bom.js:288 -#: templates/js/translated/order.js:761 +#: templates/js/translated/order.js:800 msgid "Select file format" msgstr "Sélectionner un format de fichier" @@ -7991,390 +8005,390 @@ msgstr "" msgid "Remove substitute part" msgstr "" -#: templates/js/translated/bom.js:567 +#: templates/js/translated/bom.js:565 msgid "Select and add a new substitute part using the input below" msgstr "" -#: templates/js/translated/bom.js:578 +#: templates/js/translated/bom.js:576 msgid "Are you sure you wish to remove this substitute part link?" msgstr "" -#: templates/js/translated/bom.js:584 +#: templates/js/translated/bom.js:582 msgid "Remove Substitute Part" msgstr "" -#: templates/js/translated/bom.js:623 +#: templates/js/translated/bom.js:621 msgid "Add Substitute" msgstr "" -#: templates/js/translated/bom.js:624 +#: templates/js/translated/bom.js:622 msgid "Edit BOM Item Substitutes" msgstr "" -#: templates/js/translated/bom.js:686 +#: templates/js/translated/bom.js:684 msgid "All selected BOM items will be deleted" msgstr "" -#: templates/js/translated/bom.js:702 +#: templates/js/translated/bom.js:700 msgid "Delete selected BOM items?" msgstr "" -#: templates/js/translated/bom.js:821 +#: templates/js/translated/bom.js:819 msgid "Load BOM for subassembly" msgstr "" -#: templates/js/translated/bom.js:831 +#: templates/js/translated/bom.js:829 msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:835 templates/js/translated/build.js:1771 +#: templates/js/translated/bom.js:833 templates/js/translated/build.js:1803 msgid "Variant stock allowed" msgstr "" -#: templates/js/translated/bom.js:929 templates/js/translated/build.js:1816 -#: templates/js/translated/order.js:3632 +#: templates/js/translated/bom.js:927 templates/js/translated/build.js:1849 +#: templates/js/translated/order.js:3671 msgid "No Stock Available" msgstr "" -#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1820 +#: templates/js/translated/bom.js:932 templates/js/translated/build.js:1853 msgid "Includes variant and substitute stock" msgstr "" -#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822 +#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1855 #: templates/js/translated/part.js:763 msgid "Includes variant stock" msgstr "" -#: templates/js/translated/bom.js:938 templates/js/translated/build.js:1824 +#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1857 msgid "Includes substitute stock" msgstr "" -#: templates/js/translated/bom.js:956 +#: templates/js/translated/bom.js:954 msgid "Substitutes" msgstr "" -#: templates/js/translated/bom.js:971 +#: templates/js/translated/bom.js:969 msgid "Purchase Price Range" msgstr "" -#: templates/js/translated/bom.js:978 +#: templates/js/translated/bom.js:976 msgid "Purchase Price Average" msgstr "" -#: templates/js/translated/bom.js:1027 templates/js/translated/bom.js:1147 +#: templates/js/translated/bom.js:1025 templates/js/translated/bom.js:1145 msgid "View BOM" msgstr "" -#: templates/js/translated/bom.js:1054 +#: templates/js/translated/bom.js:1052 msgid "Including On Order" msgstr "" -#: templates/js/translated/bom.js:1118 +#: templates/js/translated/bom.js:1116 msgid "Validate BOM Item" msgstr "" -#: templates/js/translated/bom.js:1120 +#: templates/js/translated/bom.js:1118 msgid "This line has been validated" msgstr "" -#: templates/js/translated/bom.js:1122 +#: templates/js/translated/bom.js:1120 msgid "Edit substitute parts" msgstr "" -#: templates/js/translated/bom.js:1124 templates/js/translated/bom.js:1286 +#: templates/js/translated/bom.js:1122 templates/js/translated/bom.js:1284 msgid "Edit BOM Item" msgstr "" -#: templates/js/translated/bom.js:1126 +#: templates/js/translated/bom.js:1124 msgid "Delete BOM Item" msgstr "" -#: templates/js/translated/bom.js:1222 templates/js/translated/build.js:1617 +#: templates/js/translated/bom.js:1220 templates/js/translated/build.js:1649 msgid "No BOM items found" msgstr "" -#: templates/js/translated/bom.js:1466 templates/js/translated/build.js:1755 +#: templates/js/translated/bom.js:1464 templates/js/translated/build.js:1787 msgid "Required Part" msgstr "" -#: templates/js/translated/bom.js:1488 +#: templates/js/translated/bom.js:1486 msgid "Inherited from parent BOM" msgstr "" -#: templates/js/translated/build.js:86 +#: templates/js/translated/build.js:89 msgid "Edit Build Order" msgstr "" -#: templates/js/translated/build.js:120 +#: templates/js/translated/build.js:132 msgid "Create Build Order" msgstr "" -#: templates/js/translated/build.js:133 +#: templates/js/translated/build.js:165 msgid "Cancel Build Order" msgstr "" -#: templates/js/translated/build.js:142 +#: templates/js/translated/build.js:174 msgid "Are you sure you wish to cancel this build?" msgstr "Êtes-vous sûr de vouloir annuler cette construction?" -#: templates/js/translated/build.js:148 +#: templates/js/translated/build.js:180 msgid "Stock items have been allocated to this build order" msgstr "" -#: templates/js/translated/build.js:155 +#: templates/js/translated/build.js:187 msgid "There are incomplete outputs remaining for this build order" msgstr "" -#: templates/js/translated/build.js:185 +#: templates/js/translated/build.js:217 msgid "Build order is ready to be completed" msgstr "" -#: templates/js/translated/build.js:190 +#: templates/js/translated/build.js:222 msgid "Build Order is incomplete" msgstr "" -#: templates/js/translated/build.js:222 +#: templates/js/translated/build.js:254 msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:263 templates/js/translated/stock.js:92 +#: templates/js/translated/build.js:295 templates/js/translated/stock.js:92 #: templates/js/translated/stock.js:214 msgid "Next available serial number" msgstr "Prochain numéro de série disponible" -#: templates/js/translated/build.js:265 templates/js/translated/stock.js:94 +#: templates/js/translated/build.js:297 templates/js/translated/stock.js:94 #: templates/js/translated/stock.js:216 msgid "Latest serial number" msgstr "Dernier numéro de série" -#: templates/js/translated/build.js:274 +#: templates/js/translated/build.js:306 msgid "The Bill of Materials contains trackable parts" msgstr "La BOM contient des pièces traçables" -#: templates/js/translated/build.js:275 +#: templates/js/translated/build.js:307 msgid "Build outputs must be generated individually" msgstr "" -#: templates/js/translated/build.js:283 +#: templates/js/translated/build.js:315 msgid "Trackable parts can have serial numbers specified" msgstr "Les pièces traçables peuvent avoir des numéros de série spécifiés" -#: templates/js/translated/build.js:284 +#: templates/js/translated/build.js:316 msgid "Enter serial numbers to generate multiple single build outputs" msgstr "" -#: templates/js/translated/build.js:291 +#: templates/js/translated/build.js:323 msgid "Create Build Output" msgstr "" -#: templates/js/translated/build.js:322 +#: templates/js/translated/build.js:354 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:333 +#: templates/js/translated/build.js:365 msgid "Unallocate stock from build output" msgstr "" -#: templates/js/translated/build.js:342 +#: templates/js/translated/build.js:374 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:350 +#: templates/js/translated/build.js:382 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:373 +#: templates/js/translated/build.js:405 msgid "Are you sure you wish to unallocate stock items from this build?" msgstr "" -#: templates/js/translated/build.js:391 +#: templates/js/translated/build.js:423 msgid "Unallocate Stock Items" msgstr "" -#: templates/js/translated/build.js:411 templates/js/translated/build.js:563 +#: templates/js/translated/build.js:443 templates/js/translated/build.js:595 msgid "Select Build Outputs" msgstr "" -#: templates/js/translated/build.js:412 templates/js/translated/build.js:564 +#: templates/js/translated/build.js:444 templates/js/translated/build.js:596 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:466 templates/js/translated/build.js:618 +#: templates/js/translated/build.js:498 templates/js/translated/build.js:650 msgid "Output" msgstr "" -#: templates/js/translated/build.js:484 +#: templates/js/translated/build.js:516 msgid "Complete Build Outputs" msgstr "" -#: templates/js/translated/build.js:631 +#: templates/js/translated/build.js:663 msgid "Delete Build Outputs" msgstr "" -#: templates/js/translated/build.js:720 +#: templates/js/translated/build.js:752 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:757 +#: templates/js/translated/build.js:789 msgid "Location not specified" msgstr "" -#: templates/js/translated/build.js:1136 +#: templates/js/translated/build.js:1168 msgid "No active build outputs found" msgstr "" -#: templates/js/translated/build.js:1205 +#: templates/js/translated/build.js:1237 msgid "Allocated Stock" msgstr "" -#: templates/js/translated/build.js:1212 +#: templates/js/translated/build.js:1244 msgid "No tracked BOM items for this build" msgstr "" -#: templates/js/translated/build.js:1234 +#: templates/js/translated/build.js:1266 msgid "Completed Tests" msgstr "" -#: templates/js/translated/build.js:1239 +#: templates/js/translated/build.js:1271 msgid "No required tests for this build" msgstr "" -#: templates/js/translated/build.js:1712 templates/js/translated/build.js:2656 -#: templates/js/translated/order.js:3332 +#: templates/js/translated/build.js:1744 templates/js/translated/build.js:2689 +#: templates/js/translated/order.js:3371 msgid "Edit stock allocation" msgstr "" -#: templates/js/translated/build.js:1714 templates/js/translated/build.js:2657 -#: templates/js/translated/order.js:3333 +#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2690 +#: templates/js/translated/order.js:3372 msgid "Delete stock allocation" msgstr "" -#: templates/js/translated/build.js:1732 +#: templates/js/translated/build.js:1764 msgid "Edit Allocation" msgstr "" -#: templates/js/translated/build.js:1742 +#: templates/js/translated/build.js:1774 msgid "Remove Allocation" msgstr "" -#: templates/js/translated/build.js:1767 +#: templates/js/translated/build.js:1799 msgid "Substitute parts available" msgstr "" -#: templates/js/translated/build.js:1784 +#: templates/js/translated/build.js:1816 msgid "Quantity Per" msgstr "" -#: templates/js/translated/build.js:1810 templates/js/translated/order.js:3639 +#: templates/js/translated/build.js:1843 templates/js/translated/order.js:3678 msgid "Insufficient stock available" msgstr "" -#: templates/js/translated/build.js:1812 templates/js/translated/order.js:3637 +#: templates/js/translated/build.js:1845 templates/js/translated/order.js:3676 msgid "Sufficient stock available" msgstr "" -#: templates/js/translated/build.js:1841 templates/js/translated/build.js:2086 -#: templates/js/translated/build.js:2652 templates/js/translated/order.js:3651 +#: templates/js/translated/build.js:1874 templates/js/translated/build.js:2119 +#: templates/js/translated/build.js:2685 templates/js/translated/order.js:3690 msgid "Allocated" msgstr "" -#: templates/js/translated/build.js:1889 templates/js/translated/order.js:3731 +#: templates/js/translated/build.js:1922 templates/js/translated/order.js:3770 msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:1893 templates/stock_table.html:50 +#: templates/js/translated/build.js:1926 templates/stock_table.html:50 msgid "Order stock" msgstr "Commander des stocks" -#: templates/js/translated/build.js:1896 templates/js/translated/order.js:3724 +#: templates/js/translated/build.js:1929 templates/js/translated/order.js:3763 msgid "Allocate stock" msgstr "" -#: templates/js/translated/build.js:1935 templates/js/translated/label.js:172 -#: templates/js/translated/order.js:807 templates/js/translated/order.js:2859 +#: templates/js/translated/build.js:1968 templates/js/translated/label.js:172 +#: templates/js/translated/order.js:846 templates/js/translated/order.js:2898 #: templates/js/translated/report.js:225 msgid "Select Parts" msgstr "" -#: templates/js/translated/build.js:1936 templates/js/translated/order.js:2860 +#: templates/js/translated/build.js:1969 templates/js/translated/order.js:2899 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1985 templates/js/translated/order.js:2808 +#: templates/js/translated/build.js:2018 templates/js/translated/order.js:2847 msgid "Specify stock allocation quantity" msgstr "" -#: templates/js/translated/build.js:2059 +#: templates/js/translated/build.js:2092 msgid "All Parts Allocated" msgstr "" -#: templates/js/translated/build.js:2060 +#: templates/js/translated/build.js:2093 msgid "All selected parts have been fully allocated" msgstr "" -#: templates/js/translated/build.js:2074 templates/js/translated/order.js:2874 +#: templates/js/translated/build.js:2107 templates/js/translated/order.js:2913 msgid "Select source location (leave blank to take from all locations)" msgstr "" -#: templates/js/translated/build.js:2102 +#: templates/js/translated/build.js:2135 msgid "Allocate Stock Items to Build Order" msgstr "" -#: templates/js/translated/build.js:2113 templates/js/translated/order.js:2971 +#: templates/js/translated/build.js:2146 templates/js/translated/order.js:3010 msgid "No matching stock locations" msgstr "" -#: templates/js/translated/build.js:2185 templates/js/translated/order.js:3048 +#: templates/js/translated/build.js:2218 templates/js/translated/order.js:3087 msgid "No matching stock items" msgstr "" -#: templates/js/translated/build.js:2282 +#: templates/js/translated/build.js:2315 msgid "Automatic Stock Allocation" msgstr "" -#: templates/js/translated/build.js:2283 +#: templates/js/translated/build.js:2316 msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines" msgstr "" -#: templates/js/translated/build.js:2285 +#: templates/js/translated/build.js:2318 msgid "If a location is specifed, stock will only be allocated from that location" msgstr "" -#: templates/js/translated/build.js:2286 +#: templates/js/translated/build.js:2319 msgid "If stock is considered interchangeable, it will be allocated from the first location it is found" msgstr "" -#: templates/js/translated/build.js:2287 +#: templates/js/translated/build.js:2320 msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found" msgstr "" -#: templates/js/translated/build.js:2308 +#: templates/js/translated/build.js:2341 msgid "Allocate Stock Items" msgstr "" -#: templates/js/translated/build.js:2414 +#: templates/js/translated/build.js:2447 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387 -#: templates/js/translated/part.js:1899 templates/js/translated/stock.js:1686 +#: templates/js/translated/build.js:2482 templates/js/translated/part.js:1387 +#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1686 #: templates/js/translated/stock.js:2386 msgid "Select" msgstr "" -#: templates/js/translated/build.js:2463 +#: templates/js/translated/build.js:2496 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:2491 +#: templates/js/translated/build.js:2524 msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647 +#: templates/js/translated/build.js:2560 templates/js/translated/stock.js:2647 msgid "No user information" msgstr "Pas d'informations sur l'utilisateur" -#: templates/js/translated/build.js:2633 +#: templates/js/translated/build.js:2666 msgid "No parts allocated for" msgstr "" @@ -8390,11 +8404,11 @@ msgstr "" msgid "Edit Manufacturer Part" msgstr "" -#: templates/js/translated/company.js:167 templates/js/translated/order.js:509 +#: templates/js/translated/company.js:167 templates/js/translated/order.js:510 msgid "Add Supplier" msgstr "" -#: templates/js/translated/company.js:195 templates/js/translated/order.js:628 +#: templates/js/translated/company.js:195 templates/js/translated/order.js:667 msgid "Add Supplier Part" msgstr "" @@ -8765,381 +8779,385 @@ msgstr "" msgid "Notifications will load here" msgstr "" -#: templates/js/translated/order.js:94 +#: templates/js/translated/order.js:95 msgid "No stock items have been allocated to this shipment" msgstr "" -#: templates/js/translated/order.js:99 +#: templates/js/translated/order.js:100 msgid "The following stock items will be shipped" msgstr "" -#: templates/js/translated/order.js:139 +#: templates/js/translated/order.js:140 msgid "Complete Shipment" msgstr "" -#: templates/js/translated/order.js:159 +#: templates/js/translated/order.js:160 msgid "Confirm Shipment" msgstr "" -#: templates/js/translated/order.js:215 +#: templates/js/translated/order.js:216 msgid "No pending shipments found" msgstr "" -#: templates/js/translated/order.js:219 +#: templates/js/translated/order.js:220 msgid "No stock items have been allocated to pending shipments" msgstr "" -#: templates/js/translated/order.js:251 +#: templates/js/translated/order.js:252 msgid "Skip" msgstr "" -#: templates/js/translated/order.js:281 +#: templates/js/translated/order.js:282 msgid "Complete Purchase Order" msgstr "" -#: templates/js/translated/order.js:287 +#: templates/js/translated/order.js:288 msgid "Mark this order as complete?" msgstr "" -#: templates/js/translated/order.js:293 +#: templates/js/translated/order.js:294 msgid "All line items have been received" msgstr "" -#: templates/js/translated/order.js:298 +#: templates/js/translated/order.js:299 msgid "This order has line items which have not been marked as received." msgstr "" -#: templates/js/translated/order.js:299 +#: templates/js/translated/order.js:300 msgid "Completing this order means that the order and line items will no longer be editable." msgstr "" -#: templates/js/translated/order.js:322 +#: templates/js/translated/order.js:323 msgid "Cancel Purchase Order" msgstr "" -#: templates/js/translated/order.js:327 +#: templates/js/translated/order.js:328 msgid "Are you sure you wish to cancel this purchase order?" msgstr "" -#: templates/js/translated/order.js:333 +#: templates/js/translated/order.js:334 msgid "This purchase order can not be cancelled" msgstr "" -#: templates/js/translated/order.js:356 +#: templates/js/translated/order.js:357 msgid "Issue Purchase Order" msgstr "" -#: templates/js/translated/order.js:361 +#: templates/js/translated/order.js:362 msgid "After placing this purchase order, line items will no longer be editable." msgstr "" -#: templates/js/translated/order.js:383 +#: templates/js/translated/order.js:384 msgid "Cancel Sales Order" msgstr "" -#: templates/js/translated/order.js:388 +#: templates/js/translated/order.js:389 msgid "Cancelling this order means that the order will no longer be editable." msgstr "" -#: templates/js/translated/order.js:442 +#: templates/js/translated/order.js:443 msgid "Create New Shipment" msgstr "" -#: templates/js/translated/order.js:467 +#: templates/js/translated/order.js:468 msgid "Add Customer" msgstr "" -#: templates/js/translated/order.js:492 +#: templates/js/translated/order.js:493 msgid "Create Sales Order" msgstr "" -#: templates/js/translated/order.js:757 +#: templates/js/translated/order.js:554 +msgid "Edit Purchase Order" +msgstr "" + +#: templates/js/translated/order.js:796 msgid "Export Order" msgstr "" -#: templates/js/translated/order.js:808 +#: templates/js/translated/order.js:847 msgid "At least one purchaseable part must be selected" msgstr "" -#: templates/js/translated/order.js:833 +#: templates/js/translated/order.js:872 msgid "Quantity to order" msgstr "" -#: templates/js/translated/order.js:842 +#: templates/js/translated/order.js:881 msgid "New supplier part" msgstr "" -#: templates/js/translated/order.js:860 +#: templates/js/translated/order.js:899 msgid "New purchase order" msgstr "" -#: templates/js/translated/order.js:893 +#: templates/js/translated/order.js:932 msgid "Add to purchase order" msgstr "" -#: templates/js/translated/order.js:1002 +#: templates/js/translated/order.js:1041 msgid "No matching supplier parts" msgstr "" -#: templates/js/translated/order.js:1017 +#: templates/js/translated/order.js:1056 msgid "No matching purchase orders" msgstr "" -#: templates/js/translated/order.js:1194 +#: templates/js/translated/order.js:1233 msgid "Select Line Items" msgstr "" -#: templates/js/translated/order.js:1195 +#: templates/js/translated/order.js:1234 msgid "At least one line item must be selected" msgstr "" -#: templates/js/translated/order.js:1215 templates/js/translated/order.js:1314 +#: templates/js/translated/order.js:1254 templates/js/translated/order.js:1353 msgid "Add batch code" msgstr "" -#: templates/js/translated/order.js:1221 templates/js/translated/order.js:1325 +#: templates/js/translated/order.js:1260 templates/js/translated/order.js:1364 msgid "Add serial numbers" msgstr "" -#: templates/js/translated/order.js:1233 +#: templates/js/translated/order.js:1272 msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144 +#: templates/js/translated/order.js:1336 templates/js/translated/stock.js:2144 msgid "Stock Status" msgstr "" -#: templates/js/translated/order.js:1388 +#: templates/js/translated/order.js:1427 msgid "Order Code" msgstr "Référence de commande" -#: templates/js/translated/order.js:1389 +#: templates/js/translated/order.js:1428 msgid "Ordered" msgstr "Commandé" -#: templates/js/translated/order.js:1391 +#: templates/js/translated/order.js:1430 msgid "Quantity to Receive" msgstr "" -#: templates/js/translated/order.js:1410 +#: templates/js/translated/order.js:1449 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/order.js:1411 +#: templates/js/translated/order.js:1450 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943 +#: templates/js/translated/order.js:1711 templates/js/translated/part.js:943 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/order.js:1699 templates/js/translated/order.js:2503 +#: templates/js/translated/order.js:1738 templates/js/translated/order.js:2542 msgid "Order is overdue" msgstr "Commande en retard" -#: templates/js/translated/order.js:1749 templates/js/translated/order.js:2568 -#: templates/js/translated/order.js:2709 +#: templates/js/translated/order.js:1788 templates/js/translated/order.js:2607 +#: templates/js/translated/order.js:2748 msgid "Items" msgstr "" -#: templates/js/translated/order.js:1847 templates/js/translated/order.js:3783 +#: templates/js/translated/order.js:1886 templates/js/translated/order.js:3822 msgid "Duplicate Line Item" msgstr "" -#: templates/js/translated/order.js:1864 templates/js/translated/order.js:3805 +#: templates/js/translated/order.js:1903 templates/js/translated/order.js:3844 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/order.js:1877 templates/js/translated/order.js:3816 +#: templates/js/translated/order.js:1916 templates/js/translated/order.js:3855 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/order.js:1920 +#: templates/js/translated/order.js:1959 msgid "No line items found" msgstr "" -#: templates/js/translated/order.js:1947 templates/js/translated/order.js:3517 +#: templates/js/translated/order.js:1986 templates/js/translated/order.js:3556 msgid "Total" msgstr "" -#: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203 -#: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050 -#: templates/js/translated/part.js:2135 templates/js/translated/part.js:2488 +#: templates/js/translated/order.js:2040 templates/js/translated/order.js:2242 +#: templates/js/translated/order.js:3581 templates/js/translated/order.js:4089 +#: templates/js/translated/part.js:2131 templates/js/translated/part.js:2703 msgid "Unit Price" msgstr "" -#: templates/js/translated/order.js:2016 templates/js/translated/order.js:2219 -#: templates/js/translated/order.js:3558 templates/js/translated/order.js:4066 +#: templates/js/translated/order.js:2055 templates/js/translated/order.js:2258 +#: templates/js/translated/order.js:3597 templates/js/translated/order.js:4105 msgid "Total Price" msgstr "" -#: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600 +#: templates/js/translated/order.js:2096 templates/js/translated/order.js:3639 #: templates/js/translated/part.js:1050 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096 +#: templates/js/translated/order.js:2155 templates/js/translated/part.js:1096 msgid "Receive line item" msgstr "" -#: templates/js/translated/order.js:2120 templates/js/translated/order.js:3737 +#: templates/js/translated/order.js:2159 templates/js/translated/order.js:3776 msgid "Duplicate line item" msgstr "" -#: templates/js/translated/order.js:2121 templates/js/translated/order.js:3738 +#: templates/js/translated/order.js:2160 templates/js/translated/order.js:3777 msgid "Edit line item" msgstr "" -#: templates/js/translated/order.js:2122 templates/js/translated/order.js:3742 +#: templates/js/translated/order.js:2161 templates/js/translated/order.js:3781 msgid "Delete line item" msgstr "" -#: templates/js/translated/order.js:2268 templates/js/translated/order.js:4115 +#: templates/js/translated/order.js:2307 templates/js/translated/order.js:4154 msgid "Duplicate line" msgstr "" -#: templates/js/translated/order.js:2269 templates/js/translated/order.js:4116 +#: templates/js/translated/order.js:2308 templates/js/translated/order.js:4155 msgid "Edit line" msgstr "" -#: templates/js/translated/order.js:2270 templates/js/translated/order.js:4117 +#: templates/js/translated/order.js:2309 templates/js/translated/order.js:4156 msgid "Delete line" msgstr "" -#: templates/js/translated/order.js:2300 templates/js/translated/order.js:4147 +#: templates/js/translated/order.js:2339 templates/js/translated/order.js:4186 msgid "Duplicate Line" msgstr "" -#: templates/js/translated/order.js:2321 templates/js/translated/order.js:4168 +#: templates/js/translated/order.js:2360 templates/js/translated/order.js:4207 msgid "Edit Line" msgstr "" -#: templates/js/translated/order.js:2332 templates/js/translated/order.js:4179 +#: templates/js/translated/order.js:2371 templates/js/translated/order.js:4218 msgid "Delete Line" msgstr "" -#: templates/js/translated/order.js:2343 +#: templates/js/translated/order.js:2382 msgid "No matching line" msgstr "" -#: templates/js/translated/order.js:2454 +#: templates/js/translated/order.js:2493 msgid "No sales orders found" msgstr "" -#: templates/js/translated/order.js:2517 +#: templates/js/translated/order.js:2556 msgid "Invalid Customer" msgstr "" -#: templates/js/translated/order.js:2615 +#: templates/js/translated/order.js:2654 msgid "Edit shipment" msgstr "" -#: templates/js/translated/order.js:2618 +#: templates/js/translated/order.js:2657 msgid "Complete shipment" msgstr "" -#: templates/js/translated/order.js:2623 +#: templates/js/translated/order.js:2662 msgid "Delete shipment" msgstr "" -#: templates/js/translated/order.js:2643 +#: templates/js/translated/order.js:2682 msgid "Edit Shipment" msgstr "" -#: templates/js/translated/order.js:2660 +#: templates/js/translated/order.js:2699 msgid "Delete Shipment" msgstr "" -#: templates/js/translated/order.js:2694 +#: templates/js/translated/order.js:2733 msgid "No matching shipments found" msgstr "" -#: templates/js/translated/order.js:2704 +#: templates/js/translated/order.js:2743 msgid "Shipment Reference" msgstr "" -#: templates/js/translated/order.js:2728 +#: templates/js/translated/order.js:2767 msgid "Not shipped" msgstr "" -#: templates/js/translated/order.js:2734 +#: templates/js/translated/order.js:2773 msgid "Tracking" msgstr "" -#: templates/js/translated/order.js:2738 +#: templates/js/translated/order.js:2777 msgid "Invoice" msgstr "" -#: templates/js/translated/order.js:2907 +#: templates/js/translated/order.js:2946 msgid "Add Shipment" msgstr "" -#: templates/js/translated/order.js:2958 +#: templates/js/translated/order.js:2997 msgid "Confirm stock allocation" msgstr "" -#: templates/js/translated/order.js:2959 +#: templates/js/translated/order.js:2998 msgid "Allocate Stock Items to Sales Order" msgstr "" -#: templates/js/translated/order.js:3167 +#: templates/js/translated/order.js:3206 msgid "No sales order allocations found" msgstr "" -#: templates/js/translated/order.js:3246 +#: templates/js/translated/order.js:3285 msgid "Edit Stock Allocation" msgstr "" -#: templates/js/translated/order.js:3263 +#: templates/js/translated/order.js:3302 msgid "Confirm Delete Operation" msgstr "" -#: templates/js/translated/order.js:3264 +#: templates/js/translated/order.js:3303 msgid "Delete Stock Allocation" msgstr "" -#: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398 +#: templates/js/translated/order.js:3348 templates/js/translated/order.js:3437 #: templates/js/translated/stock.js:1602 msgid "Shipped to customer" msgstr "Livré au client" -#: templates/js/translated/order.js:3317 templates/js/translated/order.js:3407 +#: templates/js/translated/order.js:3356 templates/js/translated/order.js:3446 msgid "Stock location not specified" msgstr "" -#: templates/js/translated/order.js:3721 +#: templates/js/translated/order.js:3760 msgid "Allocate serial numbers" msgstr "Allouer des numéros de série" -#: templates/js/translated/order.js:3727 +#: templates/js/translated/order.js:3766 msgid "Purchase stock" msgstr "Acheter du stock" -#: templates/js/translated/order.js:3734 templates/js/translated/order.js:3932 +#: templates/js/translated/order.js:3773 templates/js/translated/order.js:3971 msgid "Calculate price" msgstr "Calculer le prix" -#: templates/js/translated/order.js:3746 +#: templates/js/translated/order.js:3785 msgid "Cannot be deleted as items have been shipped" msgstr "" -#: templates/js/translated/order.js:3749 +#: templates/js/translated/order.js:3788 msgid "Cannot be deleted as items have been allocated" msgstr "" -#: templates/js/translated/order.js:3831 +#: templates/js/translated/order.js:3870 msgid "Allocate Serial Numbers" msgstr "Allouer des numéros de série" -#: templates/js/translated/order.js:3940 +#: templates/js/translated/order.js:3979 msgid "Update Unit Price" msgstr "" -#: templates/js/translated/order.js:3954 +#: templates/js/translated/order.js:3993 msgid "No matching line items" msgstr "" -#: templates/js/translated/order.js:4190 +#: templates/js/translated/order.js:4229 msgid "No matching lines" msgstr "" @@ -9319,12 +9337,12 @@ msgstr "" msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:586 templates/js/translated/part.js:1470 +#: templates/js/translated/part.js:586 templates/js/translated/part.js:1478 #: templates/js/translated/table_filters.js:468 msgid "Low stock" msgstr "Stock bas" -#: templates/js/translated/part.js:596 templates/js/translated/part.js:1482 +#: templates/js/translated/part.js:596 msgid "No stock available" msgstr "" @@ -9356,7 +9374,7 @@ msgstr "" msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1553 +#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1549 msgid "No parts found" msgstr "Aucune pièce trouvée" @@ -9368,100 +9386,124 @@ msgstr "" msgid "No category" msgstr "Aucune catégorie" -#: templates/js/translated/part.js:1577 templates/js/translated/part.js:1820 +#: templates/js/translated/part.js:1476 +msgid "No stock" +msgstr "" + +#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816 #: templates/js/translated/stock.js:2347 msgid "Display as list" msgstr "Afficher sous forme de liste" -#: templates/js/translated/part.js:1593 +#: templates/js/translated/part.js:1589 msgid "Display as grid" msgstr "Afficher sous forme de grille" -#: templates/js/translated/part.js:1659 +#: templates/js/translated/part.js:1655 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:1664 +#: templates/js/translated/part.js:1660 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:1669 +#: templates/js/translated/part.js:1665 msgid "Select Part Category" msgstr "" -#: templates/js/translated/part.js:1682 +#: templates/js/translated/part.js:1678 msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1839 templates/js/translated/stock.js:2366 +#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2366 msgid "Display as tree" msgstr "Afficher sous forme d'arborescence" -#: templates/js/translated/part.js:1918 +#: templates/js/translated/part.js:1914 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:1934 +#: templates/js/translated/part.js:1930 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:1992 +#: templates/js/translated/part.js:1988 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2043 templates/js/translated/stock.js:1299 +#: templates/js/translated/part.js:2039 templates/js/translated/stock.js:1299 msgid "Edit test result" msgstr "Modifier le résultat du test" -#: templates/js/translated/part.js:2044 templates/js/translated/stock.js:1300 +#: templates/js/translated/part.js:2040 templates/js/translated/stock.js:1300 #: templates/js/translated/stock.js:1560 msgid "Delete test result" msgstr "Supprimer le résultat du test" -#: templates/js/translated/part.js:2050 +#: templates/js/translated/part.js:2046 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2072 +#: templates/js/translated/part.js:2068 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2086 +#: templates/js/translated/part.js:2082 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2111 +#: templates/js/translated/part.js:2107 #, python-brace-format msgid "No ${human_name} information found" msgstr "" -#: templates/js/translated/part.js:2168 +#: templates/js/translated/part.js:2164 #, python-brace-format msgid "Edit ${human_name}" msgstr "" -#: templates/js/translated/part.js:2169 +#: templates/js/translated/part.js:2165 #, python-brace-format msgid "Delete ${human_name}" msgstr "" -#: templates/js/translated/part.js:2283 -msgid "Current Stock" +#: templates/js/translated/part.js:2330 templates/js/translated/part.js:2331 +msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:2316 +#: templates/js/translated/part.js:2333 +msgid "Specified date is in the past" +msgstr "" + +#: templates/js/translated/part.js:2339 +msgid "Speculative" +msgstr "" + +#: templates/js/translated/part.js:2389 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2342 +#: templates/js/translated/part.js:2395 +msgid "Error fetching scheduling information for this part" +msgstr "" + +#: templates/js/translated/part.js:2491 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2412 +#: templates/js/translated/part.js:2507 +msgid "Maximum Quantity" +msgstr "" + +#: templates/js/translated/part.js:2533 +msgid "Minimum Stock Level" +msgstr "" + +#: templates/js/translated/part.js:2627 msgid "Single Price" msgstr "" -#: templates/js/translated/part.js:2431 +#: templates/js/translated/part.js:2646 msgid "Single Price Difference" msgstr "" @@ -10222,10 +10264,6 @@ msgstr "Aucun résultat correspondant n'a été trouvé" msgid "Hide/Show pagination" msgstr "Masquer/Afficher la pagination" -#: templates/js/translated/tables.js:558 -msgid "Refresh" -msgstr "Actualiser" - #: templates/js/translated/tables.js:561 msgid "Toggle" msgstr "" diff --git a/InvenTree/locale/he/LC_MESSAGES/django.po b/InvenTree/locale/he/LC_MESSAGES/django.po index ee92ef3a0d..cd9d63a2f2 100644 --- a/InvenTree/locale/he/LC_MESSAGES/django.po +++ b/InvenTree/locale/he/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-16 11:53+0000\n" -"PO-Revision-Date: 2022-08-16 21:36\n" +"POT-Creation-Date: 2022-08-18 05:14+0000\n" +"PO-Revision-Date: 2022-08-18 21:39\n" "Last-Translator: \n" "Language-Team: Hebrew\n" "Language: he_IL\n" @@ -40,10 +40,10 @@ msgstr "הזן תאריך סיום" #: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825 #: stock/serializers.py:924 stock/serializers.py:1056 #: stock/templates/stock/stock_sidebar.html:25 -#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101 -#: templates/js/translated/company.js:964 templates/js/translated/order.js:2104 -#: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753 -#: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102 +#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1099 +#: templates/js/translated/company.js:964 templates/js/translated/order.js:2143 +#: templates/js/translated/order.js:2294 templates/js/translated/order.js:2792 +#: templates/js/translated/order.js:3743 templates/js/translated/order.js:4141 #: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980 msgid "Notes" msgstr "" @@ -211,11 +211,11 @@ msgstr "בחר קובץ לצירוף" #: InvenTree/models.py:402 company/models.py:124 company/models.py:276 #: company/models.py:510 order/models.py:84 order/models.py:1245 -#: part/models.py:802 +#: part/models.py:802 part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_base.html:164 #: templates/js/translated/company.js:656 -#: templates/js/translated/company.js:948 templates/js/translated/order.js:2742 -#: templates/js/translated/part.js:1514 +#: templates/js/translated/company.js:948 templates/js/translated/order.js:2781 +#: templates/js/translated/part.js:1510 msgid "Link" msgstr "קישור" @@ -235,8 +235,8 @@ msgstr "הערת קובץ" #: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665 #: common/models.py:1666 common/models.py:1889 common/models.py:1890 -#: common/models.py:2152 common/models.py:2153 part/models.py:2200 -#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257 +#: common/models.py:2152 common/models.py:2153 part/models.py:2247 +#: part/models.py:2267 plugin/models.py:256 plugin/models.py:257 #: report/templates/report/inventree_test_report_base.html:96 #: templates/js/translated/stock.js:2641 msgid "User" @@ -277,7 +277,7 @@ msgstr "בחירה שגויה" #: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875 #: company/models.py:358 label/models.py:101 part/models.py:746 -#: part/models.py:2378 plugin/models.py:94 report/models.py:152 +#: part/models.py:2425 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 #: templates/InvenTree/settings/plugin.html:51 #: templates/InvenTree/settings/plugin.html:134 @@ -287,7 +287,7 @@ msgstr "בחירה שגויה" #: templates/js/translated/company.js:758 #: templates/js/translated/notification.js:71 #: templates/js/translated/part.js:688 templates/js/translated/part.js:840 -#: templates/js/translated/part.js:1906 templates/js/translated/stock.js:2392 +#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2392 msgid "Name" msgstr "שם" @@ -297,19 +297,20 @@ msgstr "שם" #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:87 label/models.py:108 #: order/models.py:82 part/models.py:769 part/templates/part/category.html:80 -#: part/templates/part/part_base.html:167 report/models.py:165 +#: part/templates/part/part_base.html:167 +#: part/templates/part/part_scheduling.html:12 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 #: stock/templates/stock/location.html:108 #: templates/InvenTree/settings/plugin_settings.html:33 -#: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848 -#: templates/js/translated/build.js:2471 templates/js/translated/company.js:409 +#: templates/js/translated/bom.js:553 templates/js/translated/bom.js:846 +#: templates/js/translated/build.js:2504 templates/js/translated/company.js:409 #: templates/js/translated/company.js:667 -#: templates/js/translated/company.js:959 templates/js/translated/order.js:1720 -#: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531 +#: templates/js/translated/company.js:959 templates/js/translated/order.js:1759 +#: templates/js/translated/order.js:1991 templates/js/translated/order.js:2570 #: templates/js/translated/part.js:747 templates/js/translated/part.js:1153 -#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1942 -#: templates/js/translated/part.js:2011 templates/js/translated/stock.js:1743 +#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1938 +#: templates/js/translated/part.js:2007 templates/js/translated/stock.js:1743 #: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478 msgid "Description" msgstr "תיאור" @@ -323,7 +324,7 @@ msgid "parent" msgstr "מקור" #: InvenTree/models.py:560 InvenTree/models.py:561 -#: templates/js/translated/part.js:1948 templates/js/translated/stock.js:2430 +#: templates/js/translated/part.js:1944 templates/js/translated/stock.js:2430 msgid "Path" msgstr "" @@ -335,7 +336,7 @@ msgstr "" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:55 part/models.py:2699 +#: InvenTree/serializers.py:55 part/models.py:2746 msgid "Must be a valid number" msgstr "המספר חייב להיות תקין" @@ -541,7 +542,7 @@ msgid "Returned" msgstr "הוחזר" #: InvenTree/status_codes.py:141 order/models.py:1128 -#: templates/js/translated/order.js:3330 templates/js/translated/order.js:3679 +#: templates/js/translated/order.js:3369 templates/js/translated/order.js:3718 msgid "Shipped" msgstr "נשלח" @@ -728,7 +729,7 @@ msgstr "" #: report/templates/report/inventree_build_order_base.html:105 #: templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 -#: templates/js/translated/build.js:731 +#: templates/js/translated/build.js:763 msgid "Build Order" msgstr "" @@ -747,14 +748,14 @@ msgid "Build Order Reference" msgstr "" #: build/models.py:166 order/models.py:240 order/models.py:623 -#: order/models.py:904 part/models.py:2617 +#: order/models.py:904 part/models.py:2664 #: part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 -#: templates/js/translated/bom.js:692 templates/js/translated/bom.js:855 -#: templates/js/translated/build.js:1779 templates/js/translated/order.js:1983 -#: templates/js/translated/order.js:2184 templates/js/translated/order.js:3523 -#: templates/js/translated/order.js:4031 +#: templates/js/translated/bom.js:690 templates/js/translated/bom.js:853 +#: templates/js/translated/build.js:1811 templates/js/translated/order.js:2022 +#: templates/js/translated/order.js:2223 templates/js/translated/order.js:3562 +#: templates/js/translated/order.js:4070 msgid "Reference" msgstr "מקט" @@ -762,7 +763,7 @@ msgstr "מקט" msgid "Brief description of the build" msgstr "תיאור קצר אודות הבנייה" -#: build/models.py:185 build/templates/build/build_base.html:169 +#: build/models.py:185 build/templates/build/build_base.html:172 #: build/templates/build/detail.html:87 msgid "Parent Build" msgstr "מקור הבנייה" @@ -771,13 +772,13 @@ msgstr "מקור הבנייה" msgid "BuildOrder to which this build is allocated" msgstr "" -#: build/models.py:191 build/templates/build/build_base.html:77 +#: build/models.py:191 build/templates/build/build_base.html:80 #: build/templates/build/detail.html:29 company/models.py:670 #: order/models.py:1001 order/models.py:1112 order/models.py:1113 -#: part/models.py:343 part/models.py:2146 part/models.py:2161 -#: part/models.py:2180 part/models.py:2198 part/models.py:2297 -#: part/models.py:2417 part/models.py:2507 part/models.py:2592 -#: part/models.py:2868 part/serializers.py:813 +#: part/models.py:343 part/models.py:2193 part/models.py:2208 +#: part/models.py:2227 part/models.py:2245 part/models.py:2344 +#: part/models.py:2464 part/models.py:2554 part/models.py:2639 +#: part/models.py:2915 part/serializers.py:813 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -789,17 +790,17 @@ msgstr "" #: templates/email/build_order_required_stock.html:17 #: templates/email/low_stock_notification.html:16 #: templates/email/overdue_build_order.html:16 -#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:553 -#: templates/js/translated/bom.js:691 templates/js/translated/bom.js:802 -#: templates/js/translated/build.js:1156 templates/js/translated/build.js:1649 -#: templates/js/translated/build.js:2085 templates/js/translated/build.js:2476 +#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:552 +#: templates/js/translated/bom.js:689 templates/js/translated/bom.js:800 +#: templates/js/translated/build.js:1188 templates/js/translated/build.js:1681 +#: templates/js/translated/build.js:2118 templates/js/translated/build.js:2509 #: templates/js/translated/company.js:266 #: templates/js/translated/company.js:496 #: templates/js/translated/company.js:608 -#: templates/js/translated/company.js:868 templates/js/translated/order.js:103 -#: templates/js/translated/order.js:934 templates/js/translated/order.js:1387 -#: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885 -#: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507 +#: templates/js/translated/company.js:868 templates/js/translated/order.js:104 +#: templates/js/translated/order.js:973 templates/js/translated/order.js:1426 +#: templates/js/translated/order.js:1976 templates/js/translated/order.js:2924 +#: templates/js/translated/order.js:3320 templates/js/translated/order.js:3546 #: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210 #: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586 #: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958 @@ -821,7 +822,7 @@ msgid "SalesOrder to which this build is allocated" msgstr "" #: build/models.py:213 build/serializers.py:800 -#: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873 +#: templates/js/translated/build.js:2106 templates/js/translated/order.js:2912 msgid "Source Location" msgstr "" @@ -862,7 +863,7 @@ msgid "Build status code" msgstr "" #: build/models.py:251 build/serializers.py:225 order/serializers.py:447 -#: stock/models.py:662 templates/js/translated/order.js:1247 +#: stock/models.py:662 templates/js/translated/order.js:1286 msgid "Batch Code" msgstr "" @@ -871,7 +872,7 @@ msgid "Batch code for this build output" msgstr "" #: build/models.py:258 order/models.py:86 part/models.py:938 -#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544 +#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2583 msgid "Creation Date" msgstr "" @@ -884,7 +885,7 @@ msgid "Target date for build completion. Build will be overdue after this date." msgstr "" #: build/models.py:266 order/models.py:286 -#: templates/js/translated/build.js:2553 +#: templates/js/translated/build.js:2586 msgid "Completion Date" msgstr "" @@ -892,7 +893,7 @@ msgstr "" msgid "completed by" msgstr "" -#: build/models.py:280 templates/js/translated/build.js:2521 +#: build/models.py:280 templates/js/translated/build.js:2554 msgid "Issued by" msgstr "" @@ -900,12 +901,12 @@ msgstr "" msgid "User who issued this build order" msgstr "" -#: build/models.py:289 build/templates/build/build_base.html:190 +#: build/models.py:289 build/templates/build/build_base.html:193 #: build/templates/build/detail.html:115 order/models.py:100 #: order/templates/order/order_base.html:176 #: order/templates/order/sales_order_base.html:183 part/models.py:942 #: report/templates/report/inventree_build_order_base.html:158 -#: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754 +#: templates/js/translated/build.js:2566 templates/js/translated/order.js:1793 msgid "Responsible" msgstr "" @@ -972,7 +973,7 @@ msgid "Selected stock item not found in BOM" msgstr "" #: build/models.py:1328 stock/templates/stock/item_base.html:177 -#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2455 +#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2488 #: templates/navbar.html:38 msgid "Build" msgstr "" @@ -986,11 +987,11 @@ msgstr "" #: stock/serializers.py:882 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:199 -#: templates/js/translated/build.js:741 templates/js/translated/build.js:746 -#: templates/js/translated/build.js:2087 templates/js/translated/build.js:2638 -#: templates/js/translated/order.js:104 templates/js/translated/order.js:2886 -#: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193 -#: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380 +#: templates/js/translated/build.js:773 templates/js/translated/build.js:778 +#: templates/js/translated/build.js:2120 templates/js/translated/build.js:2671 +#: templates/js/translated/order.js:105 templates/js/translated/order.js:2925 +#: templates/js/translated/order.js:3227 templates/js/translated/order.js:3232 +#: templates/js/translated/order.js:3327 templates/js/translated/order.js:3419 #: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752 #: templates/js/translated/stock.js:2577 msgid "Stock Item" @@ -1001,13 +1002,13 @@ msgid "Source stock item" msgstr "" #: build/models.py:1358 build/serializers.py:193 -#: build/templates/build/build_base.html:82 +#: build/templates/build/build_base.html:85 #: build/templates/build/detail.html:34 common/models.py:1697 #: company/templates/company/supplier_part.html:279 order/models.py:897 #: order/models.py:1423 order/serializers.py:1155 #: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40 -#: part/models.py:2608 part/templates/part/detail.html:937 -#: part/templates/part/detail.html:1023 +#: part/models.py:2655 part/templates/part/detail.html:951 +#: part/templates/part/detail.html:1037 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 #: report/templates/report/inventree_build_order_base.html:113 @@ -1018,20 +1019,20 @@ msgstr "" #: stock/serializers.py:293 stock/templates/stock/item_base.html:292 #: stock/templates/stock/item_base.html:300 #: templates/email/build_order_completed.html:18 -#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:693 -#: templates/js/translated/bom.js:863 templates/js/translated/build.js:426 -#: templates/js/translated/build.js:578 templates/js/translated/build.js:768 -#: templates/js/translated/build.js:1178 templates/js/translated/build.js:1675 -#: templates/js/translated/build.js:2088 +#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:691 +#: templates/js/translated/bom.js:861 templates/js/translated/build.js:458 +#: templates/js/translated/build.js:610 templates/js/translated/build.js:800 +#: templates/js/translated/build.js:1210 templates/js/translated/build.js:1707 +#: templates/js/translated/build.js:2121 #: templates/js/translated/model_renderers.js:120 -#: templates/js/translated/order.js:120 templates/js/translated/order.js:937 -#: templates/js/translated/order.js:1989 templates/js/translated/order.js:2190 -#: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207 -#: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386 -#: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037 -#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2156 -#: templates/js/translated/part.js:2387 templates/js/translated/part.js:2421 -#: templates/js/translated/part.js:2499 templates/js/translated/stock.js:458 +#: templates/js/translated/order.js:121 templates/js/translated/order.js:976 +#: templates/js/translated/order.js:2028 templates/js/translated/order.js:2229 +#: templates/js/translated/order.js:2926 templates/js/translated/order.js:3246 +#: templates/js/translated/order.js:3333 templates/js/translated/order.js:3425 +#: templates/js/translated/order.js:3568 templates/js/translated/order.js:4076 +#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2152 +#: templates/js/translated/part.js:2602 templates/js/translated/part.js:2636 +#: templates/js/translated/part.js:2714 templates/js/translated/stock.js:458 #: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782 #: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711 msgid "Quantity" @@ -1050,7 +1051,7 @@ msgid "Destination stock item" msgstr "" #: build/serializers.py:138 build/serializers.py:674 -#: templates/js/translated/build.js:1166 +#: templates/js/translated/build.js:1198 msgid "Build Output" msgstr "" @@ -1090,7 +1091,7 @@ msgid "Integer quantity required, as the bill of materials contains trackable pa msgstr "" #: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159 -#: stock/serializers.py:311 templates/js/translated/order.js:1258 +#: stock/serializers.py:311 templates/js/translated/order.js:1297 #: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459 msgid "Serial Numbers" msgstr "מספרים סידוריים" @@ -1120,10 +1121,10 @@ msgstr "" #: stock/serializers.py:917 stock/serializers.py:1150 #: stock/templates/stock/item_base.html:390 #: templates/js/translated/barcode.js:436 -#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753 -#: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285 -#: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305 -#: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394 +#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:785 +#: templates/js/translated/build.js:1719 templates/js/translated/order.js:1324 +#: templates/js/translated/order.js:3239 templates/js/translated/order.js:3344 +#: templates/js/translated/order.js:3352 templates/js/translated/order.js:3433 #: templates/js/translated/part.js:181 templates/js/translated/stock.js:588 #: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960 #: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518 @@ -1134,12 +1135,12 @@ msgstr "" msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:373 build/templates/build/build_base.html:142 +#: build/serializers.py:373 build/templates/build/build_base.html:145 #: build/templates/build/detail.html:62 order/models.py:642 #: order/serializers.py:465 stock/templates/stock/item_base.html:423 -#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505 -#: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724 -#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829 +#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2538 +#: templates/js/translated/order.js:1431 templates/js/translated/order.js:1763 +#: templates/js/translated/order.js:2575 templates/js/translated/stock.js:1829 #: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727 msgid "Status" msgstr "" @@ -1196,7 +1197,7 @@ msgstr "" msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:522 templates/js/translated/build.js:195 +#: build/serializers.py:522 templates/js/translated/build.js:227 msgid "Required stock has not been fully allocated" msgstr "" @@ -1208,7 +1209,7 @@ msgstr "" msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:538 templates/js/translated/build.js:199 +#: build/serializers.py:538 templates/js/translated/build.js:231 msgid "Required build quantity has not been completed" msgstr "" @@ -1216,8 +1217,8 @@ msgstr "" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726 -#: part/models.py:2860 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2773 +#: part/models.py:2907 msgid "BOM Item" msgstr "" @@ -1322,66 +1323,70 @@ msgid "Cancel Build" msgstr "" #: build/templates/build/build_base.html:59 +msgid "Duplicate Build" +msgstr "" + +#: build/templates/build/build_base.html:62 msgid "Delete Build" msgstr "" -#: build/templates/build/build_base.html:64 -#: build/templates/build/build_base.html:65 +#: build/templates/build/build_base.html:67 +#: build/templates/build/build_base.html:68 msgid "Complete Build" msgstr "" -#: build/templates/build/build_base.html:87 +#: build/templates/build/build_base.html:90 msgid "Build Description" msgstr "" -#: build/templates/build/build_base.html:95 +#: build/templates/build/build_base.html:98 msgid "No build outputs have been created for this build order" msgstr "" -#: build/templates/build/build_base.html:101 +#: build/templates/build/build_base.html:104 #, python-format msgid "This Build Order is allocated to Sales Order %(link)s" msgstr "" -#: build/templates/build/build_base.html:108 +#: build/templates/build/build_base.html:111 #, python-format msgid "This Build Order is a child of Build Order %(link)s" msgstr "" -#: build/templates/build/build_base.html:115 +#: build/templates/build/build_base.html:118 msgid "Build Order is ready to mark as completed" msgstr "" -#: build/templates/build/build_base.html:120 +#: build/templates/build/build_base.html:123 msgid "Build Order cannot be completed as outstanding outputs remain" msgstr "" -#: build/templates/build/build_base.html:125 +#: build/templates/build/build_base.html:128 msgid "Required build quantity has not yet been completed" msgstr "" -#: build/templates/build/build_base.html:130 +#: build/templates/build/build_base.html:133 msgid "Stock has not been fully allocated to this Build Order" msgstr "" -#: build/templates/build/build_base.html:151 +#: build/templates/build/build_base.html:154 #: build/templates/build/detail.html:131 order/models.py:910 #: order/templates/order/order_base.html:162 #: order/templates/order/sales_order_base.html:164 #: report/templates/report/inventree_build_order_base.html:125 -#: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741 -#: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552 -#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042 +#: templates/js/translated/build.js:2578 templates/js/translated/order.js:1780 +#: templates/js/translated/order.js:2090 templates/js/translated/order.js:2591 +#: templates/js/translated/order.js:3631 templates/js/translated/part.js:1042 msgid "Target Date" msgstr "" -#: build/templates/build/build_base.html:156 +#: build/templates/build/build_base.html:159 #, python-format msgid "This build was due on %(target)s" msgstr "" -#: build/templates/build/build_base.html:156 -#: build/templates/build/build_base.html:201 +#: build/templates/build/build_base.html:159 +#: build/templates/build/build_base.html:204 #: order/templates/order/order_base.html:98 #: order/templates/order/sales_order_base.html:94 #: templates/js/translated/table_filters.js:320 @@ -1390,14 +1395,14 @@ msgstr "" msgid "Overdue" msgstr "" -#: build/templates/build/build_base.html:163 +#: build/templates/build/build_base.html:166 #: build/templates/build/detail.html:67 build/templates/build/detail.html:142 #: order/templates/order/sales_order_base.html:171 #: templates/js/translated/table_filters.js:400 msgid "Completed" msgstr "" -#: build/templates/build/build_base.html:176 +#: build/templates/build/build_base.html:179 #: build/templates/build/detail.html:94 order/models.py:1105 #: order/models.py:1199 order/models.py:1330 #: order/templates/order/sales_order_base.html:9 @@ -1406,17 +1411,17 @@ msgstr "" #: report/templates/report/inventree_so_report.html:77 #: stock/templates/stock/item_base.html:370 #: templates/email/overdue_sales_order.html:15 -#: templates/js/translated/order.js:2498 +#: templates/js/translated/order.js:2537 msgid "Sales Order" msgstr "" -#: build/templates/build/build_base.html:183 +#: build/templates/build/build_base.html:186 #: build/templates/build/detail.html:108 #: report/templates/report/inventree_build_order_base.html:152 msgid "Issued By" msgstr "" -#: build/templates/build/build_base.html:245 +#: build/templates/build/build_base.html:256 msgid "Delete Build Order" msgstr "" @@ -1433,7 +1438,7 @@ msgid "Stock can be taken from any available location." msgstr "" #: build/templates/build/detail.html:49 order/models.py:1023 -#: templates/js/translated/order.js:1393 templates/js/translated/order.js:2093 +#: templates/js/translated/order.js:1432 templates/js/translated/order.js:2132 msgid "Destination" msgstr "" @@ -1447,7 +1452,7 @@ msgstr "" #: build/templates/build/detail.html:80 #: stock/templates/stock/item_base.html:170 -#: templates/js/translated/build.js:1182 +#: templates/js/translated/build.js:1214 #: templates/js/translated/model_renderers.js:124 #: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843 #: templates/js/translated/stock.js:2734 @@ -1459,7 +1464,7 @@ msgstr "" #: build/templates/build/detail.html:126 #: order/templates/order/order_base.html:149 #: order/templates/order/sales_order_base.html:158 -#: templates/js/translated/build.js:2513 +#: templates/js/translated/build.js:2546 msgid "Created" msgstr "" @@ -1479,7 +1484,7 @@ msgstr "" msgid "Allocate Stock to Build" msgstr "" -#: build/templates/build/detail.html:176 templates/js/translated/build.js:1901 +#: build/templates/build/detail.html:176 templates/js/translated/build.js:1934 msgid "Unallocate stock" msgstr "" @@ -1510,7 +1515,7 @@ msgstr "" #: build/templates/build/detail.html:187 #: company/templates/company/detail.html:37 #: company/templates/company/detail.html:85 -#: part/templates/part/category.html:183 templates/js/translated/order.js:977 +#: part/templates/part/category.html:183 templates/js/translated/order.js:1016 msgid "Order Parts" msgstr "" @@ -1582,7 +1587,7 @@ msgstr "" #: order/templates/order/po_sidebar.html:9 #: order/templates/order/purchase_order_detail.html:82 #: order/templates/order/sales_order_detail.html:135 -#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:207 +#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:212 #: part/templates/part/part_sidebar.html:57 stock/templates/stock/item.html:117 #: stock/templates/stock/stock_sidebar.html:23 msgid "Attachments" @@ -1600,7 +1605,7 @@ msgstr "" msgid "All untracked stock items have been allocated" msgstr "" -#: build/templates/build/index.html:18 part/templates/part/detail.html:313 +#: build/templates/build/index.html:18 part/templates/part/detail.html:318 msgid "New Build Order" msgstr "" @@ -1845,7 +1850,7 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:951 part/models.py:2419 report/models.py:158 +#: common/models.py:951 part/models.py:2466 report/models.py:158 #: templates/js/translated/table_filters.js:38 #: templates/js/translated/table_filters.js:484 msgid "Template" @@ -1855,7 +1860,7 @@ msgstr "" msgid "Parts are templates by default" msgstr "" -#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448 +#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1446 #: templates/js/translated/table_filters.js:176 #: templates/js/translated/table_filters.js:447 msgid "Assembly" @@ -2591,7 +2596,7 @@ msgstr "" #: common/models.py:1705 company/serializers.py:366 #: company/templates/company/supplier_part.html:284 order/models.py:938 -#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2161 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2157 msgid "Price" msgstr "" @@ -2830,7 +2835,7 @@ msgstr "" #: company/models.py:248 company/models.py:481 stock/models.py:598 #: stock/serializers.py:87 stock/templates/stock/item_base.html:148 -#: templates/js/translated/bom.js:543 +#: templates/js/translated/bom.js:542 msgid "Base Part" msgstr "" @@ -2859,7 +2864,7 @@ msgstr "" #: templates/js/translated/company.js:269 #: templates/js/translated/company.js:497 #: templates/js/translated/company.js:649 -#: templates/js/translated/company.js:937 templates/js/translated/order.js:1971 +#: templates/js/translated/company.js:937 templates/js/translated/order.js:2010 #: templates/js/translated/part.js:247 templates/js/translated/part.js:1027 msgid "MPN" msgstr "" @@ -2899,7 +2904,7 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:372 part/models.py:888 part/models.py:2386 +#: company/models.py:372 part/models.py:888 part/models.py:2433 #: part/templates/part/part_base.html:280 #: templates/InvenTree/settings/settings.html:352 #: templates/js/translated/company.js:770 templates/js/translated/part.js:855 @@ -2921,7 +2926,7 @@ msgstr "" #: templates/email/overdue_purchase_order.html:16 #: templates/js/translated/company.js:268 #: templates/js/translated/company.js:401 -#: templates/js/translated/company.js:893 templates/js/translated/order.js:1707 +#: templates/js/translated/company.js:893 templates/js/translated/order.js:1746 #: templates/js/translated/part.js:217 templates/js/translated/part.js:995 #: templates/js/translated/table_filters.js:423 msgid "Supplier" @@ -2933,7 +2938,7 @@ msgstr "" #: company/models.py:497 company/templates/company/supplier_part.html:118 #: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267 -#: templates/js/translated/order.js:1958 templates/js/translated/part.js:228 +#: templates/js/translated/order.js:1997 templates/js/translated/part.js:228 #: templates/js/translated/part.js:1013 msgid "SKU" msgstr "" @@ -2955,17 +2960,17 @@ msgid "Supplier part description" msgstr "" #: company/models.py:522 company/templates/company/supplier_part.html:146 -#: part/models.py:2620 part/templates/part/upload_bom.html:59 +#: part/models.py:2667 part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401 msgid "Note" msgstr "" -#: company/models.py:526 part/models.py:1742 +#: company/models.py:526 part/models.py:1789 msgid "base cost" msgstr "" -#: company/models.py:526 part/models.py:1742 +#: company/models.py:526 part/models.py:1789 msgid "Minimum charge (e.g. stocking fee)" msgstr "" @@ -2979,7 +2984,7 @@ msgstr "" msgid "Part packaging" msgstr "" -#: company/models.py:530 part/models.py:1744 +#: company/models.py:530 part/models.py:1791 msgid "multiple" msgstr "" @@ -2990,8 +2995,8 @@ msgstr "" #: company/models.py:538 company/templates/company/supplier_part.html:94 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789 -#: templates/js/translated/build.js:2645 templates/js/translated/company.js:979 +#: templates/js/translated/bom.js:911 templates/js/translated/build.js:1821 +#: templates/js/translated/build.js:2678 templates/js/translated/company.js:979 #: templates/js/translated/part.js:600 templates/js/translated/part.js:603 #: templates/js/translated/table_filters.js:186 msgid "Available" @@ -3028,7 +3033,7 @@ msgid "Company" msgstr "" #: company/templates/company/company_base.html:22 -#: templates/js/translated/order.js:540 +#: templates/js/translated/order.js:579 msgid "Create Purchase Order" msgstr "" @@ -3069,7 +3074,7 @@ msgstr "" #: stock/models.py:644 stock/serializers.py:811 #: stock/templates/stock/item_base.html:401 #: templates/email/overdue_sales_order.html:16 -#: templates/js/translated/company.js:393 templates/js/translated/order.js:2513 +#: templates/js/translated/company.js:393 templates/js/translated/order.js:2552 #: templates/js/translated/stock.js:2559 #: templates/js/translated/table_filters.js:427 msgid "Customer" @@ -3105,7 +3110,7 @@ msgstr "" #: company/templates/company/detail.html:19 #: company/templates/company/manufacturer_part.html:123 -#: part/templates/part/detail.html:354 +#: part/templates/part/detail.html:359 msgid "New Supplier Part" msgstr "" @@ -3134,7 +3139,7 @@ msgstr "" msgid "Create new manufacturer part" msgstr "" -#: company/templates/company/detail.html:66 part/templates/part/detail.html:384 +#: company/templates/company/detail.html:66 part/templates/part/detail.html:389 msgid "New Manufacturer Part" msgstr "" @@ -3148,7 +3153,7 @@ msgstr "" #: order/templates/order/order_base.html:13 #: order/templates/order/purchase_orders.html:8 #: order/templates/order/purchase_orders.html:12 -#: part/templates/part/detail.html:79 part/templates/part/part_sidebar.html:37 +#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:37 #: templates/InvenTree/index.html:252 templates/InvenTree/search.html:198 #: templates/InvenTree/settings/sidebar.html:49 #: templates/js/translated/search.js:275 templates/navbar.html:50 @@ -3171,7 +3176,7 @@ msgstr "" #: order/templates/order/sales_order_base.html:13 #: order/templates/order/sales_orders.html:8 #: order/templates/order/sales_orders.html:15 -#: part/templates/part/detail.html:102 part/templates/part/part_sidebar.html:41 +#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:41 #: templates/InvenTree/index.html:283 templates/InvenTree/search.html:218 #: templates/InvenTree/settings/sidebar.html:51 #: templates/js/translated/search.js:299 templates/navbar.html:61 @@ -3190,7 +3195,7 @@ msgid "New Sales Order" msgstr "" #: company/templates/company/detail.html:168 -#: templates/js/translated/build.js:1660 +#: templates/js/translated/build.js:1692 msgid "Assigned Stock" msgstr "" @@ -3206,7 +3211,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:35 #: company/templates/company/supplier_part.html:186 -#: part/templates/part/detail.html:82 part/templates/part/part_base.html:80 +#: part/templates/part/detail.html:87 part/templates/part/part_base.html:80 msgid "Order part" msgstr "" @@ -3237,13 +3242,13 @@ msgid "Suppliers" msgstr "" #: company/templates/company/manufacturer_part.html:136 -#: part/templates/part/detail.html:365 +#: part/templates/part/detail.html:370 msgid "Delete supplier parts" msgstr "" #: company/templates/company/manufacturer_part.html:136 #: company/templates/company/manufacturer_part.html:183 -#: part/templates/part/detail.html:366 part/templates/part/detail.html:396 +#: part/templates/part/detail.html:371 part/templates/part/detail.html:401 #: templates/js/translated/forms.js:453 templates/js/translated/helpers.js:33 #: users/models.py:220 msgid "Delete" @@ -3252,12 +3257,12 @@ msgstr "" #: company/templates/company/manufacturer_part.html:166 #: company/templates/company/manufacturer_part_sidebar.html:5 #: part/templates/part/category_sidebar.html:19 -#: part/templates/part/detail.html:181 part/templates/part/part_sidebar.html:8 +#: part/templates/part/detail.html:186 part/templates/part/part_sidebar.html:8 msgid "Parameters" msgstr "" #: company/templates/company/manufacturer_part.html:170 -#: part/templates/part/detail.html:186 +#: part/templates/part/detail.html:191 #: templates/InvenTree/settings/category.html:12 #: templates/InvenTree/settings/part.html:68 msgid "New Parameter" @@ -3268,7 +3273,7 @@ msgid "Delete parameters" msgstr "" #: company/templates/company/manufacturer_part.html:245 -#: part/templates/part/detail.html:826 +#: part/templates/part/detail.html:840 msgid "Add Parameter" msgstr "" @@ -3291,7 +3296,7 @@ msgstr "" #: company/templates/company/supplier_part.html:7 #: company/templates/company/supplier_part.html:24 stock/models.py:607 #: stock/templates/stock/item_base.html:238 -#: templates/js/translated/company.js:909 templates/js/translated/order.js:935 +#: templates/js/translated/company.js:909 templates/js/translated/order.js:974 #: templates/js/translated/stock.js:1933 msgid "Supplier Part" msgstr "" @@ -3303,7 +3308,7 @@ msgstr "" #: company/templates/company/supplier_part.html:40 #: company/templates/company/supplier_part.html:41 #: company/templates/company/supplier_part.html:187 -#: part/templates/part/detail.html:83 +#: part/templates/part/detail.html:88 msgid "Order Part" msgstr "" @@ -3358,7 +3363,7 @@ msgstr "" #: company/templates/company/supplier_part.html:212 #: company/templates/company/supplier_part.html:326 -#: part/templates/part/prices.html:276 templates/js/translated/part.js:2233 +#: part/templates/part/prices.html:276 templates/js/translated/part.js:2229 msgid "Add Price Break" msgstr "" @@ -3367,12 +3372,12 @@ msgid "No price break information found" msgstr "" #: company/templates/company/supplier_part.html:252 -#: templates/js/translated/part.js:2243 +#: templates/js/translated/part.js:2239 msgid "Delete Price Break" msgstr "" #: company/templates/company/supplier_part.html:266 -#: templates/js/translated/part.js:2257 +#: templates/js/translated/part.js:2253 msgid "Edit Price Break" msgstr "" @@ -3398,10 +3403,9 @@ msgstr "" #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:151 #: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751 -#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460 -#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754 -#: templates/navbar.html:31 +#: templates/js/translated/part.js:751 templates/js/translated/part.js:1299 +#: templates/js/translated/part.js:1460 templates/js/translated/stock.js:959 +#: templates/js/translated/stock.js:1754 templates/navbar.html:31 msgid "Stock" msgstr "" @@ -3554,7 +3558,7 @@ msgid "Company from which the items are being ordered" msgstr "" #: order/models.py:262 order/templates/order/order_base.html:124 -#: templates/js/translated/order.js:1716 +#: templates/js/translated/order.js:1755 msgid "Supplier Reference" msgstr "" @@ -3611,7 +3615,7 @@ msgid "Target date for order completion. Order will be overdue after this date." msgstr "" #: order/models.py:652 order/models.py:1204 -#: templates/js/translated/order.js:2560 templates/js/translated/order.js:2722 +#: templates/js/translated/order.js:2599 templates/js/translated/order.js:2761 msgid "Shipment Date" msgstr "" @@ -3673,7 +3677,7 @@ msgstr "" #: order/models.py:983 order/models.py:1063 order/models.py:1104 #: order/models.py:1198 order/models.py:1330 -#: templates/js/translated/order.js:3178 +#: templates/js/translated/order.js:3217 msgid "Order" msgstr "" @@ -3683,7 +3687,7 @@ msgstr "" #: report/templates/report/inventree_po_report.html:76 #: stock/templates/stock/item_base.html:184 #: templates/email/overdue_purchase_order.html:15 -#: templates/js/translated/order.js:936 templates/js/translated/order.js:1691 +#: templates/js/translated/order.js:975 templates/js/translated/order.js:1730 #: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913 #: templates/js/translated/stock.js:2540 msgid "Purchase Order" @@ -3694,7 +3698,7 @@ msgid "Supplier part" msgstr "" #: order/models.py:1009 order/templates/order/order_base.html:169 -#: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073 +#: templates/js/translated/order.js:1429 templates/js/translated/order.js:2112 #: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091 #: templates/js/translated/table_filters.js:338 msgid "Received" @@ -3880,11 +3884,11 @@ msgstr "" msgid "Select destination location for received items" msgstr "" -#: order/serializers.py:448 templates/js/translated/order.js:1248 +#: order/serializers.py:448 templates/js/translated/order.js:1287 msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:456 templates/js/translated/order.js:1259 +#: order/serializers.py:456 templates/js/translated/order.js:1298 msgid "Enter serial numbers for incoming stock items" msgstr "" @@ -4061,10 +4065,6 @@ msgstr "" msgid "Total cost could not be calculated" msgstr "" -#: order/templates/order/order_base.html:243 -msgid "Edit Purchase Order" -msgstr "" - #: order/templates/order/order_wizard/match_parts.html:12 #: part/templates/part/import_wizard/ajax_match_references.html:12 #: part/templates/part/import_wizard/match_references.html:12 @@ -4091,10 +4091,10 @@ msgstr "" #: part/templates/part/import_wizard/ajax_match_fields.html:64 #: part/templates/part/import_wizard/ajax_match_references.html:42 #: part/templates/part/import_wizard/match_references.html:49 -#: templates/js/translated/bom.js:77 templates/js/translated/build.js:431 -#: templates/js/translated/build.js:583 templates/js/translated/build.js:1974 -#: templates/js/translated/order.js:884 templates/js/translated/order.js:1337 -#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625 +#: templates/js/translated/bom.js:77 templates/js/translated/build.js:463 +#: templates/js/translated/build.js:615 templates/js/translated/build.js:2007 +#: templates/js/translated/order.js:923 templates/js/translated/order.js:1376 +#: templates/js/translated/order.js:2836 templates/js/translated/stock.js:625 #: templates/js/translated/stock.js:793 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" @@ -4130,7 +4130,7 @@ msgstr "" #: order/templates/order/purchase_order_detail.html:26 #: order/templates/order/sales_order_detail.html:22 #: order/templates/order/sales_order_detail.html:255 -#: templates/js/translated/order.js:557 +#: templates/js/translated/order.js:596 msgid "Add Line Item" msgstr "" @@ -4176,7 +4176,7 @@ msgid "Print packing list" msgstr "" #: order/templates/order/sales_order_base.html:60 -#: templates/js/translated/order.js:229 +#: templates/js/translated/order.js:230 msgid "Complete Shipments" msgstr "" @@ -4190,7 +4190,7 @@ msgid "This Sales Order has not been fully allocated" msgstr "" #: order/templates/order/sales_order_base.html:123 -#: templates/js/translated/order.js:2526 +#: templates/js/translated/order.js:2565 msgid "Customer Reference" msgstr "" @@ -4214,8 +4214,8 @@ msgid "Pending Shipments" msgstr "" #: order/templates/order/sales_order_detail.html:72 -#: templates/attachment_table.html:6 templates/js/translated/bom.js:1110 -#: templates/js/translated/build.js:1882 +#: templates/attachment_table.html:6 templates/js/translated/bom.js:1108 +#: templates/js/translated/build.js:1915 msgid "Actions" msgstr "" @@ -4257,35 +4257,35 @@ msgstr "" msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:584 +#: part/api.py:621 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:704 +#: part/api.py:758 msgid "Valid" msgstr "" -#: part/api.py:705 +#: part/api.py:759 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:711 +#: part/api.py:765 msgid "This option must be selected" msgstr "" -#: part/api.py:1134 +#: part/api.py:1188 msgid "Must be greater than zero" msgstr "" -#: part/api.py:1138 +#: part/api.py:1192 msgid "Must be a valid quantity" msgstr "" -#: part/api.py:1153 +#: part/api.py:1207 msgid "Specify location for initial part stock" msgstr "" -#: part/api.py:1184 part/api.py:1188 part/api.py:1203 part/api.py:1207 +#: part/api.py:1238 part/api.py:1242 part/api.py:1257 part/api.py:1261 msgid "This field is required" msgstr "" @@ -4299,14 +4299,14 @@ msgid "Total Stock" msgstr "" #: part/bom.py:129 part/templates/part/part_base.html:189 -#: templates/js/translated/order.js:3618 +#: templates/js/translated/order.js:3657 msgid "Available Stock" msgstr "" #: part/bom.py:130 part/templates/part/part_base.html:207 -#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590 +#: templates/js/translated/bom.js:945 templates/js/translated/part.js:590 #: templates/js/translated/part.js:610 templates/js/translated/part.js:1302 -#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490 +#: templates/js/translated/part.js:1483 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "" @@ -4335,7 +4335,7 @@ msgstr "" msgid "Icon (optional)" msgstr "" -#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16 +#: part/models.py:122 part/models.py:2509 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" @@ -4352,7 +4352,7 @@ msgstr "" #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82 #: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:1955 templates/js/translated/search.js:144 +#: templates/js/translated/part.js:1951 templates/js/translated/search.js:144 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "" @@ -4382,7 +4382,7 @@ msgstr "" msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:745 part/models.py:2516 +#: part/models.py:745 part/models.py:2563 msgid "Part name" msgstr "" @@ -4415,11 +4415,11 @@ msgstr "" msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:783 part/models.py:2218 part/models.py:2461 +#: part/models.py:783 part/models.py:2265 part/models.py:2508 #: part/templates/part/part_base.html:257 #: templates/InvenTree/settings/settings.html:232 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1668 +#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1664 msgid "Category" msgstr "" @@ -4530,245 +4530,245 @@ msgstr "" msgid "Creation User" msgstr "" -#: part/models.py:1744 +#: part/models.py:1791 msgid "Sell multiple" msgstr "" -#: part/models.py:2265 +#: part/models.py:2312 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:2282 +#: part/models.py:2329 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:2302 templates/js/translated/part.js:2006 +#: part/models.py:2349 templates/js/translated/part.js:2002 #: templates/js/translated/stock.js:1340 msgid "Test Name" msgstr "" -#: part/models.py:2303 +#: part/models.py:2350 msgid "Enter a name for the test" msgstr "" -#: part/models.py:2308 +#: part/models.py:2355 msgid "Test Description" msgstr "" -#: part/models.py:2309 +#: part/models.py:2356 msgid "Enter description for this test" msgstr "" -#: part/models.py:2314 templates/js/translated/part.js:2015 +#: part/models.py:2361 templates/js/translated/part.js:2011 #: templates/js/translated/table_filters.js:302 msgid "Required" msgstr "" -#: part/models.py:2315 +#: part/models.py:2362 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:2320 templates/js/translated/part.js:2023 +#: part/models.py:2367 templates/js/translated/part.js:2019 msgid "Requires Value" msgstr "" -#: part/models.py:2321 +#: part/models.py:2368 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:2326 templates/js/translated/part.js:2030 +#: part/models.py:2373 templates/js/translated/part.js:2026 msgid "Requires Attachment" msgstr "" -#: part/models.py:2327 +#: part/models.py:2374 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:2335 +#: part/models.py:2382 #, python-brace-format msgid "Illegal character in template name ({c})" msgstr "" -#: part/models.py:2371 +#: part/models.py:2418 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:2379 +#: part/models.py:2426 msgid "Parameter Name" msgstr "" -#: part/models.py:2386 +#: part/models.py:2433 msgid "Parameter Units" msgstr "" -#: part/models.py:2417 +#: part/models.py:2464 msgid "Parent Part" msgstr "" -#: part/models.py:2419 part/models.py:2467 part/models.py:2468 +#: part/models.py:2466 part/models.py:2514 part/models.py:2515 #: templates/InvenTree/settings/settings.html:227 msgid "Parameter Template" msgstr "" -#: part/models.py:2421 +#: part/models.py:2468 msgid "Data" msgstr "" -#: part/models.py:2421 +#: part/models.py:2468 msgid "Parameter Value" msgstr "" -#: part/models.py:2472 templates/InvenTree/settings/settings.html:236 +#: part/models.py:2519 templates/InvenTree/settings/settings.html:236 msgid "Default Value" msgstr "" -#: part/models.py:2473 +#: part/models.py:2520 msgid "Default Parameter Value" msgstr "" -#: part/models.py:2508 +#: part/models.py:2555 msgid "Part ID or part name" msgstr "" -#: part/models.py:2511 templates/js/translated/model_renderers.js:212 +#: part/models.py:2558 templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "" -#: part/models.py:2512 +#: part/models.py:2559 msgid "Unique part ID value" msgstr "" -#: part/models.py:2515 +#: part/models.py:2562 msgid "Part Name" msgstr "" -#: part/models.py:2519 +#: part/models.py:2566 msgid "Part IPN" msgstr "" -#: part/models.py:2520 +#: part/models.py:2567 msgid "Part IPN value" msgstr "" -#: part/models.py:2523 +#: part/models.py:2570 msgid "Level" msgstr "" -#: part/models.py:2524 +#: part/models.py:2571 msgid "BOM level" msgstr "" -#: part/models.py:2593 +#: part/models.py:2640 msgid "Select parent part" msgstr "" -#: part/models.py:2601 +#: part/models.py:2648 msgid "Sub part" msgstr "" -#: part/models.py:2602 +#: part/models.py:2649 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:2608 +#: part/models.py:2655 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:2610 part/templates/part/upload_bom.html:58 -#: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999 +#: part/models.py:2657 part/templates/part/upload_bom.html:58 +#: templates/js/translated/bom.js:872 templates/js/translated/bom.js:997 #: templates/js/translated/table_filters.js:100 msgid "Optional" msgstr "" -#: part/models.py:2610 +#: part/models.py:2657 msgid "This BOM item is optional" msgstr "" -#: part/models.py:2613 part/templates/part/upload_bom.html:55 +#: part/models.py:2660 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:2614 +#: part/models.py:2661 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:2617 +#: part/models.py:2664 msgid "BOM item reference" msgstr "" -#: part/models.py:2620 +#: part/models.py:2667 msgid "BOM item notes" msgstr "" -#: part/models.py:2622 +#: part/models.py:2669 msgid "Checksum" msgstr "" -#: part/models.py:2622 +#: part/models.py:2669 msgid "BOM line checksum" msgstr "" -#: part/models.py:2626 part/templates/part/upload_bom.html:57 -#: templates/js/translated/bom.js:1016 +#: part/models.py:2673 part/templates/part/upload_bom.html:57 +#: templates/js/translated/bom.js:1014 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:96 msgid "Inherited" msgstr "" -#: part/models.py:2627 +#: part/models.py:2674 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:2632 part/templates/part/upload_bom.html:56 -#: templates/js/translated/bom.js:1008 +#: part/models.py:2679 part/templates/part/upload_bom.html:56 +#: templates/js/translated/bom.js:1006 msgid "Allow Variants" msgstr "" -#: part/models.py:2633 +#: part/models.py:2680 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:2711 stock/models.py:468 +#: part/models.py:2758 stock/models.py:468 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:2720 part/models.py:2722 +#: part/models.py:2767 part/models.py:2769 msgid "Sub part must be specified" msgstr "" -#: part/models.py:2827 +#: part/models.py:2874 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:2848 +#: part/models.py:2895 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:2861 +#: part/models.py:2908 msgid "Parent BOM item" msgstr "" -#: part/models.py:2869 +#: part/models.py:2916 msgid "Substitute part" msgstr "" -#: part/models.py:2884 +#: part/models.py:2931 msgid "Part 1" msgstr "" -#: part/models.py:2888 +#: part/models.py:2935 msgid "Part 2" msgstr "" -#: part/models.py:2888 +#: part/models.py:2935 msgid "Select Related Part" msgstr "" -#: part/models.py:2906 +#: part/models.py:2953 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:2910 +#: part/models.py:2957 msgid "Duplicate relationship already exists" msgstr "" @@ -4876,7 +4876,7 @@ msgstr "" msgid "The BOM for %(part)s has not been validated." msgstr "" -#: part/templates/part/bom.html:30 part/templates/part/detail.html:264 +#: part/templates/part/bom.html:30 part/templates/part/detail.html:269 msgid "BOM actions" msgstr "" @@ -4945,8 +4945,8 @@ msgstr "" msgid "New Part" msgstr "" -#: part/templates/part/category.html:174 part/templates/part/detail.html:363 -#: part/templates/part/detail.html:394 +#: part/templates/part/category.html:174 part/templates/part/detail.html:368 +#: part/templates/part/detail.html:399 msgid "Options" msgstr "" @@ -5014,138 +5014,146 @@ msgstr "" msgid "Part Stock" msgstr "" -#: part/templates/part/detail.html:54 -msgid "Part Test Templates" +#: part/templates/part/detail.html:44 +msgid "Refresh scheduling data" +msgstr "" + +#: part/templates/part/detail.html:45 templates/js/translated/tables.js:558 +msgid "Refresh" msgstr "" #: part/templates/part/detail.html:59 +msgid "Part Test Templates" +msgstr "" + +#: part/templates/part/detail.html:64 msgid "Add Test Template" msgstr "" -#: part/templates/part/detail.html:116 stock/templates/stock/item.html:53 +#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53 msgid "Sales Order Allocations" msgstr "" -#: part/templates/part/detail.html:138 +#: part/templates/part/detail.html:143 msgid "Part Notes" msgstr "" -#: part/templates/part/detail.html:153 +#: part/templates/part/detail.html:158 msgid "Part Variants" msgstr "" -#: part/templates/part/detail.html:157 +#: part/templates/part/detail.html:162 msgid "Create new variant" msgstr "" -#: part/templates/part/detail.html:158 +#: part/templates/part/detail.html:163 msgid "New Variant" msgstr "" -#: part/templates/part/detail.html:185 +#: part/templates/part/detail.html:190 msgid "Add new parameter" msgstr "" -#: part/templates/part/detail.html:222 part/templates/part/part_sidebar.html:54 +#: part/templates/part/detail.html:227 part/templates/part/part_sidebar.html:54 msgid "Related Parts" msgstr "" -#: part/templates/part/detail.html:226 part/templates/part/detail.html:227 +#: part/templates/part/detail.html:231 part/templates/part/detail.html:232 msgid "Add Related" msgstr "" -#: part/templates/part/detail.html:247 part/templates/part/part_sidebar.html:17 +#: part/templates/part/detail.html:252 part/templates/part/part_sidebar.html:17 msgid "Bill of Materials" msgstr "" -#: part/templates/part/detail.html:252 +#: part/templates/part/detail.html:257 msgid "Export actions" msgstr "" -#: part/templates/part/detail.html:256 templates/js/translated/bom.js:284 +#: part/templates/part/detail.html:261 templates/js/translated/bom.js:284 msgid "Export BOM" msgstr "" -#: part/templates/part/detail.html:258 +#: part/templates/part/detail.html:263 msgid "Print BOM Report" msgstr "" -#: part/templates/part/detail.html:268 +#: part/templates/part/detail.html:273 msgid "Upload BOM" msgstr "" -#: part/templates/part/detail.html:269 templates/js/translated/part.js:274 +#: part/templates/part/detail.html:274 templates/js/translated/part.js:274 msgid "Copy BOM" msgstr "" -#: part/templates/part/detail.html:270 +#: part/templates/part/detail.html:275 msgid "Validate BOM" msgstr "" -#: part/templates/part/detail.html:275 +#: part/templates/part/detail.html:280 msgid "New BOM Item" msgstr "" -#: part/templates/part/detail.html:276 +#: part/templates/part/detail.html:281 msgid "Add BOM Item" msgstr "" -#: part/templates/part/detail.html:289 +#: part/templates/part/detail.html:294 msgid "Assemblies" msgstr "" -#: part/templates/part/detail.html:307 +#: part/templates/part/detail.html:312 msgid "Part Builds" msgstr "" -#: part/templates/part/detail.html:334 stock/templates/stock/item.html:38 +#: part/templates/part/detail.html:339 stock/templates/stock/item.html:38 msgid "Build Order Allocations" msgstr "" -#: part/templates/part/detail.html:350 +#: part/templates/part/detail.html:355 msgid "Part Suppliers" msgstr "" -#: part/templates/part/detail.html:380 +#: part/templates/part/detail.html:385 msgid "Part Manufacturers" msgstr "" -#: part/templates/part/detail.html:396 +#: part/templates/part/detail.html:401 msgid "Delete manufacturer parts" msgstr "" -#: part/templates/part/detail.html:612 +#: part/templates/part/detail.html:626 msgid "Create BOM Item" msgstr "" -#: part/templates/part/detail.html:656 +#: part/templates/part/detail.html:670 msgid "Related Part" msgstr "" -#: part/templates/part/detail.html:664 +#: part/templates/part/detail.html:678 msgid "Add Related Part" msgstr "" -#: part/templates/part/detail.html:756 +#: part/templates/part/detail.html:770 msgid "Add Test Result Template" msgstr "" -#: part/templates/part/detail.html:900 +#: part/templates/part/detail.html:914 #, python-format msgid "Purchase Unit Price - %(currency)s" msgstr "" -#: part/templates/part/detail.html:912 +#: part/templates/part/detail.html:926 #, python-format msgid "Unit Price-Cost Difference - %(currency)s" msgstr "" -#: part/templates/part/detail.html:924 +#: part/templates/part/detail.html:938 #, python-format msgid "Supplier Unit Cost - %(currency)s" msgstr "" -#: part/templates/part/detail.html:1013 +#: part/templates/part/detail.html:1027 #, python-format msgid "Unit Price - %(currency)s" msgstr "" @@ -5321,13 +5329,13 @@ msgstr "" msgid "Allocated to Sales Orders" msgstr "" -#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1037 +#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1035 msgid "Can Build" msgstr "" #: part/templates/part/part_base.html:238 templates/js/translated/part.js:593 #: templates/js/translated/part.js:613 templates/js/translated/part.js:1306 -#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1494 +#: templates/js/translated/part.js:1490 msgid "Building" msgstr "" @@ -5379,7 +5387,7 @@ msgid "Total Cost" msgstr "" #: part/templates/part/part_pricing.html:40 part/templates/part/prices.html:43 -#: templates/js/translated/bom.js:991 +#: templates/js/translated/bom.js:989 msgid "No supplier pricing available" msgstr "" @@ -5414,6 +5422,18 @@ msgstr "" msgid "No pricing information is available for this part." msgstr "" +#: part/templates/part/part_scheduling.html:13 +#: report/templates/report/inventree_test_report_base.html:97 +#: templates/InvenTree/settings/plugin.html:53 +#: templates/InvenTree/settings/plugin_settings.html:38 +#: templates/js/translated/order.js:1772 templates/js/translated/stock.js:2468 +msgid "Date" +msgstr "" + +#: part/templates/part/part_scheduling.html:14 +msgid "Scheduled Quantity" +msgstr "" + #: part/templates/part/part_sidebar.html:11 msgid "Variants" msgstr "" @@ -5462,7 +5482,7 @@ msgstr "" msgid "Calculation parameters" msgstr "" -#: part/templates/part/prices.html:160 templates/js/translated/bom.js:985 +#: part/templates/part/prices.html:160 templates/js/translated/bom.js:983 msgid "Supplier Cost" msgstr "" @@ -5501,7 +5521,7 @@ msgid "No sale pice history available for this part." msgstr "" #: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616 -#: templates/js/translated/part.js:1294 templates/js/translated/part.js:1498 +#: templates/js/translated/part.js:1294 msgid "No Stock" msgstr "" @@ -5893,11 +5913,11 @@ msgstr "" #: report/templates/report/inventree_test_report_base.html:79 #: stock/models.py:648 stock/templates/stock/item_base.html:322 -#: templates/js/translated/build.js:424 templates/js/translated/build.js:576 -#: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673 +#: templates/js/translated/build.js:456 templates/js/translated/build.js:608 +#: templates/js/translated/build.js:1208 templates/js/translated/build.js:1705 #: templates/js/translated/model_renderers.js:118 -#: templates/js/translated/order.js:118 templates/js/translated/order.js:3297 -#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490 +#: templates/js/translated/order.js:119 templates/js/translated/order.js:3336 +#: templates/js/translated/order.js:3423 templates/js/translated/stock.js:490 msgid "Serial Number" msgstr "" @@ -5915,13 +5935,6 @@ msgstr "" msgid "Result" msgstr "" -#: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:53 -#: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468 -msgid "Date" -msgstr "" - #: report/templates/report/inventree_test_report_base.html:108 msgid "Pass" msgstr "" @@ -6519,7 +6532,7 @@ msgid "Available Quantity" msgstr "" #: stock/templates/stock/item_base.html:394 -#: templates/js/translated/build.js:1695 +#: templates/js/translated/build.js:1727 msgid "No location set" msgstr "" @@ -7702,7 +7715,7 @@ msgid "The following parts are low on required stock" msgstr "" #: templates/email/build_order_required_stock.html:18 -#: templates/js/translated/bom.js:1483 +#: templates/js/translated/bom.js:1481 msgid "Required Quantity" msgstr "" @@ -7716,6 +7729,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:19 +#: templates/js/translated/part.js:2498 msgid "Minimum Quantity" msgstr "" @@ -7917,10 +7931,10 @@ msgstr "" msgid "Row Data" msgstr "" -#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:622 +#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:620 #: templates/js/translated/modals.js:56 templates/js/translated/modals.js:601 #: templates/js/translated/modals.js:695 templates/js/translated/modals.js:1003 -#: templates/js/translated/order.js:979 templates/modals.html:15 +#: templates/js/translated/order.js:1018 templates/modals.html:15 #: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50 msgid "Close" msgstr "" @@ -7930,12 +7944,12 @@ msgid "Download BOM Template" msgstr "" #: templates/js/translated/bom.js:253 templates/js/translated/bom.js:287 -#: templates/js/translated/order.js:760 templates/js/translated/tables.js:145 +#: templates/js/translated/order.js:799 templates/js/translated/tables.js:145 msgid "Format" msgstr "" #: templates/js/translated/bom.js:254 templates/js/translated/bom.js:288 -#: templates/js/translated/order.js:761 +#: templates/js/translated/order.js:800 msgid "Select file format" msgstr "" @@ -7991,390 +8005,390 @@ msgstr "" msgid "Remove substitute part" msgstr "" -#: templates/js/translated/bom.js:567 +#: templates/js/translated/bom.js:565 msgid "Select and add a new substitute part using the input below" msgstr "" -#: templates/js/translated/bom.js:578 +#: templates/js/translated/bom.js:576 msgid "Are you sure you wish to remove this substitute part link?" msgstr "" -#: templates/js/translated/bom.js:584 +#: templates/js/translated/bom.js:582 msgid "Remove Substitute Part" msgstr "" -#: templates/js/translated/bom.js:623 +#: templates/js/translated/bom.js:621 msgid "Add Substitute" msgstr "" -#: templates/js/translated/bom.js:624 +#: templates/js/translated/bom.js:622 msgid "Edit BOM Item Substitutes" msgstr "" -#: templates/js/translated/bom.js:686 +#: templates/js/translated/bom.js:684 msgid "All selected BOM items will be deleted" msgstr "" -#: templates/js/translated/bom.js:702 +#: templates/js/translated/bom.js:700 msgid "Delete selected BOM items?" msgstr "" -#: templates/js/translated/bom.js:821 +#: templates/js/translated/bom.js:819 msgid "Load BOM for subassembly" msgstr "" -#: templates/js/translated/bom.js:831 +#: templates/js/translated/bom.js:829 msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:835 templates/js/translated/build.js:1771 +#: templates/js/translated/bom.js:833 templates/js/translated/build.js:1803 msgid "Variant stock allowed" msgstr "" -#: templates/js/translated/bom.js:929 templates/js/translated/build.js:1816 -#: templates/js/translated/order.js:3632 +#: templates/js/translated/bom.js:927 templates/js/translated/build.js:1849 +#: templates/js/translated/order.js:3671 msgid "No Stock Available" msgstr "" -#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1820 +#: templates/js/translated/bom.js:932 templates/js/translated/build.js:1853 msgid "Includes variant and substitute stock" msgstr "" -#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822 +#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1855 #: templates/js/translated/part.js:763 msgid "Includes variant stock" msgstr "" -#: templates/js/translated/bom.js:938 templates/js/translated/build.js:1824 +#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1857 msgid "Includes substitute stock" msgstr "" -#: templates/js/translated/bom.js:956 +#: templates/js/translated/bom.js:954 msgid "Substitutes" msgstr "" -#: templates/js/translated/bom.js:971 +#: templates/js/translated/bom.js:969 msgid "Purchase Price Range" msgstr "" -#: templates/js/translated/bom.js:978 +#: templates/js/translated/bom.js:976 msgid "Purchase Price Average" msgstr "" -#: templates/js/translated/bom.js:1027 templates/js/translated/bom.js:1147 +#: templates/js/translated/bom.js:1025 templates/js/translated/bom.js:1145 msgid "View BOM" msgstr "" -#: templates/js/translated/bom.js:1054 +#: templates/js/translated/bom.js:1052 msgid "Including On Order" msgstr "" -#: templates/js/translated/bom.js:1118 +#: templates/js/translated/bom.js:1116 msgid "Validate BOM Item" msgstr "" -#: templates/js/translated/bom.js:1120 +#: templates/js/translated/bom.js:1118 msgid "This line has been validated" msgstr "" -#: templates/js/translated/bom.js:1122 +#: templates/js/translated/bom.js:1120 msgid "Edit substitute parts" msgstr "" -#: templates/js/translated/bom.js:1124 templates/js/translated/bom.js:1286 +#: templates/js/translated/bom.js:1122 templates/js/translated/bom.js:1284 msgid "Edit BOM Item" msgstr "" -#: templates/js/translated/bom.js:1126 +#: templates/js/translated/bom.js:1124 msgid "Delete BOM Item" msgstr "" -#: templates/js/translated/bom.js:1222 templates/js/translated/build.js:1617 +#: templates/js/translated/bom.js:1220 templates/js/translated/build.js:1649 msgid "No BOM items found" msgstr "" -#: templates/js/translated/bom.js:1466 templates/js/translated/build.js:1755 +#: templates/js/translated/bom.js:1464 templates/js/translated/build.js:1787 msgid "Required Part" msgstr "" -#: templates/js/translated/bom.js:1488 +#: templates/js/translated/bom.js:1486 msgid "Inherited from parent BOM" msgstr "" -#: templates/js/translated/build.js:86 +#: templates/js/translated/build.js:89 msgid "Edit Build Order" msgstr "" -#: templates/js/translated/build.js:120 +#: templates/js/translated/build.js:132 msgid "Create Build Order" msgstr "" -#: templates/js/translated/build.js:133 +#: templates/js/translated/build.js:165 msgid "Cancel Build Order" msgstr "" -#: templates/js/translated/build.js:142 +#: templates/js/translated/build.js:174 msgid "Are you sure you wish to cancel this build?" msgstr "" -#: templates/js/translated/build.js:148 +#: templates/js/translated/build.js:180 msgid "Stock items have been allocated to this build order" msgstr "" -#: templates/js/translated/build.js:155 +#: templates/js/translated/build.js:187 msgid "There are incomplete outputs remaining for this build order" msgstr "" -#: templates/js/translated/build.js:185 +#: templates/js/translated/build.js:217 msgid "Build order is ready to be completed" msgstr "" -#: templates/js/translated/build.js:190 +#: templates/js/translated/build.js:222 msgid "Build Order is incomplete" msgstr "" -#: templates/js/translated/build.js:222 +#: templates/js/translated/build.js:254 msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:263 templates/js/translated/stock.js:92 +#: templates/js/translated/build.js:295 templates/js/translated/stock.js:92 #: templates/js/translated/stock.js:214 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:265 templates/js/translated/stock.js:94 +#: templates/js/translated/build.js:297 templates/js/translated/stock.js:94 #: templates/js/translated/stock.js:216 msgid "Latest serial number" msgstr "" -#: templates/js/translated/build.js:274 +#: templates/js/translated/build.js:306 msgid "The Bill of Materials contains trackable parts" msgstr "" -#: templates/js/translated/build.js:275 +#: templates/js/translated/build.js:307 msgid "Build outputs must be generated individually" msgstr "" -#: templates/js/translated/build.js:283 +#: templates/js/translated/build.js:315 msgid "Trackable parts can have serial numbers specified" msgstr "" -#: templates/js/translated/build.js:284 +#: templates/js/translated/build.js:316 msgid "Enter serial numbers to generate multiple single build outputs" msgstr "" -#: templates/js/translated/build.js:291 +#: templates/js/translated/build.js:323 msgid "Create Build Output" msgstr "" -#: templates/js/translated/build.js:322 +#: templates/js/translated/build.js:354 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:333 +#: templates/js/translated/build.js:365 msgid "Unallocate stock from build output" msgstr "" -#: templates/js/translated/build.js:342 +#: templates/js/translated/build.js:374 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:350 +#: templates/js/translated/build.js:382 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:373 +#: templates/js/translated/build.js:405 msgid "Are you sure you wish to unallocate stock items from this build?" msgstr "" -#: templates/js/translated/build.js:391 +#: templates/js/translated/build.js:423 msgid "Unallocate Stock Items" msgstr "" -#: templates/js/translated/build.js:411 templates/js/translated/build.js:563 +#: templates/js/translated/build.js:443 templates/js/translated/build.js:595 msgid "Select Build Outputs" msgstr "" -#: templates/js/translated/build.js:412 templates/js/translated/build.js:564 +#: templates/js/translated/build.js:444 templates/js/translated/build.js:596 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:466 templates/js/translated/build.js:618 +#: templates/js/translated/build.js:498 templates/js/translated/build.js:650 msgid "Output" msgstr "" -#: templates/js/translated/build.js:484 +#: templates/js/translated/build.js:516 msgid "Complete Build Outputs" msgstr "" -#: templates/js/translated/build.js:631 +#: templates/js/translated/build.js:663 msgid "Delete Build Outputs" msgstr "" -#: templates/js/translated/build.js:720 +#: templates/js/translated/build.js:752 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:757 +#: templates/js/translated/build.js:789 msgid "Location not specified" msgstr "" -#: templates/js/translated/build.js:1136 +#: templates/js/translated/build.js:1168 msgid "No active build outputs found" msgstr "" -#: templates/js/translated/build.js:1205 +#: templates/js/translated/build.js:1237 msgid "Allocated Stock" msgstr "" -#: templates/js/translated/build.js:1212 +#: templates/js/translated/build.js:1244 msgid "No tracked BOM items for this build" msgstr "" -#: templates/js/translated/build.js:1234 +#: templates/js/translated/build.js:1266 msgid "Completed Tests" msgstr "" -#: templates/js/translated/build.js:1239 +#: templates/js/translated/build.js:1271 msgid "No required tests for this build" msgstr "" -#: templates/js/translated/build.js:1712 templates/js/translated/build.js:2656 -#: templates/js/translated/order.js:3332 +#: templates/js/translated/build.js:1744 templates/js/translated/build.js:2689 +#: templates/js/translated/order.js:3371 msgid "Edit stock allocation" msgstr "" -#: templates/js/translated/build.js:1714 templates/js/translated/build.js:2657 -#: templates/js/translated/order.js:3333 +#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2690 +#: templates/js/translated/order.js:3372 msgid "Delete stock allocation" msgstr "" -#: templates/js/translated/build.js:1732 +#: templates/js/translated/build.js:1764 msgid "Edit Allocation" msgstr "" -#: templates/js/translated/build.js:1742 +#: templates/js/translated/build.js:1774 msgid "Remove Allocation" msgstr "" -#: templates/js/translated/build.js:1767 +#: templates/js/translated/build.js:1799 msgid "Substitute parts available" msgstr "" -#: templates/js/translated/build.js:1784 +#: templates/js/translated/build.js:1816 msgid "Quantity Per" msgstr "" -#: templates/js/translated/build.js:1810 templates/js/translated/order.js:3639 +#: templates/js/translated/build.js:1843 templates/js/translated/order.js:3678 msgid "Insufficient stock available" msgstr "" -#: templates/js/translated/build.js:1812 templates/js/translated/order.js:3637 +#: templates/js/translated/build.js:1845 templates/js/translated/order.js:3676 msgid "Sufficient stock available" msgstr "" -#: templates/js/translated/build.js:1841 templates/js/translated/build.js:2086 -#: templates/js/translated/build.js:2652 templates/js/translated/order.js:3651 +#: templates/js/translated/build.js:1874 templates/js/translated/build.js:2119 +#: templates/js/translated/build.js:2685 templates/js/translated/order.js:3690 msgid "Allocated" msgstr "" -#: templates/js/translated/build.js:1889 templates/js/translated/order.js:3731 +#: templates/js/translated/build.js:1922 templates/js/translated/order.js:3770 msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:1893 templates/stock_table.html:50 +#: templates/js/translated/build.js:1926 templates/stock_table.html:50 msgid "Order stock" msgstr "" -#: templates/js/translated/build.js:1896 templates/js/translated/order.js:3724 +#: templates/js/translated/build.js:1929 templates/js/translated/order.js:3763 msgid "Allocate stock" msgstr "" -#: templates/js/translated/build.js:1935 templates/js/translated/label.js:172 -#: templates/js/translated/order.js:807 templates/js/translated/order.js:2859 +#: templates/js/translated/build.js:1968 templates/js/translated/label.js:172 +#: templates/js/translated/order.js:846 templates/js/translated/order.js:2898 #: templates/js/translated/report.js:225 msgid "Select Parts" msgstr "" -#: templates/js/translated/build.js:1936 templates/js/translated/order.js:2860 +#: templates/js/translated/build.js:1969 templates/js/translated/order.js:2899 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1985 templates/js/translated/order.js:2808 +#: templates/js/translated/build.js:2018 templates/js/translated/order.js:2847 msgid "Specify stock allocation quantity" msgstr "" -#: templates/js/translated/build.js:2059 +#: templates/js/translated/build.js:2092 msgid "All Parts Allocated" msgstr "" -#: templates/js/translated/build.js:2060 +#: templates/js/translated/build.js:2093 msgid "All selected parts have been fully allocated" msgstr "" -#: templates/js/translated/build.js:2074 templates/js/translated/order.js:2874 +#: templates/js/translated/build.js:2107 templates/js/translated/order.js:2913 msgid "Select source location (leave blank to take from all locations)" msgstr "" -#: templates/js/translated/build.js:2102 +#: templates/js/translated/build.js:2135 msgid "Allocate Stock Items to Build Order" msgstr "" -#: templates/js/translated/build.js:2113 templates/js/translated/order.js:2971 +#: templates/js/translated/build.js:2146 templates/js/translated/order.js:3010 msgid "No matching stock locations" msgstr "" -#: templates/js/translated/build.js:2185 templates/js/translated/order.js:3048 +#: templates/js/translated/build.js:2218 templates/js/translated/order.js:3087 msgid "No matching stock items" msgstr "" -#: templates/js/translated/build.js:2282 +#: templates/js/translated/build.js:2315 msgid "Automatic Stock Allocation" msgstr "" -#: templates/js/translated/build.js:2283 +#: templates/js/translated/build.js:2316 msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines" msgstr "" -#: templates/js/translated/build.js:2285 +#: templates/js/translated/build.js:2318 msgid "If a location is specifed, stock will only be allocated from that location" msgstr "" -#: templates/js/translated/build.js:2286 +#: templates/js/translated/build.js:2319 msgid "If stock is considered interchangeable, it will be allocated from the first location it is found" msgstr "" -#: templates/js/translated/build.js:2287 +#: templates/js/translated/build.js:2320 msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found" msgstr "" -#: templates/js/translated/build.js:2308 +#: templates/js/translated/build.js:2341 msgid "Allocate Stock Items" msgstr "" -#: templates/js/translated/build.js:2414 +#: templates/js/translated/build.js:2447 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387 -#: templates/js/translated/part.js:1899 templates/js/translated/stock.js:1686 +#: templates/js/translated/build.js:2482 templates/js/translated/part.js:1387 +#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1686 #: templates/js/translated/stock.js:2386 msgid "Select" msgstr "" -#: templates/js/translated/build.js:2463 +#: templates/js/translated/build.js:2496 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:2491 +#: templates/js/translated/build.js:2524 msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647 +#: templates/js/translated/build.js:2560 templates/js/translated/stock.js:2647 msgid "No user information" msgstr "" -#: templates/js/translated/build.js:2633 +#: templates/js/translated/build.js:2666 msgid "No parts allocated for" msgstr "" @@ -8390,11 +8404,11 @@ msgstr "" msgid "Edit Manufacturer Part" msgstr "" -#: templates/js/translated/company.js:167 templates/js/translated/order.js:509 +#: templates/js/translated/company.js:167 templates/js/translated/order.js:510 msgid "Add Supplier" msgstr "" -#: templates/js/translated/company.js:195 templates/js/translated/order.js:628 +#: templates/js/translated/company.js:195 templates/js/translated/order.js:667 msgid "Add Supplier Part" msgstr "" @@ -8765,381 +8779,385 @@ msgstr "" msgid "Notifications will load here" msgstr "" -#: templates/js/translated/order.js:94 +#: templates/js/translated/order.js:95 msgid "No stock items have been allocated to this shipment" msgstr "" -#: templates/js/translated/order.js:99 +#: templates/js/translated/order.js:100 msgid "The following stock items will be shipped" msgstr "" -#: templates/js/translated/order.js:139 +#: templates/js/translated/order.js:140 msgid "Complete Shipment" msgstr "" -#: templates/js/translated/order.js:159 +#: templates/js/translated/order.js:160 msgid "Confirm Shipment" msgstr "" -#: templates/js/translated/order.js:215 +#: templates/js/translated/order.js:216 msgid "No pending shipments found" msgstr "" -#: templates/js/translated/order.js:219 +#: templates/js/translated/order.js:220 msgid "No stock items have been allocated to pending shipments" msgstr "" -#: templates/js/translated/order.js:251 +#: templates/js/translated/order.js:252 msgid "Skip" msgstr "" -#: templates/js/translated/order.js:281 +#: templates/js/translated/order.js:282 msgid "Complete Purchase Order" msgstr "" -#: templates/js/translated/order.js:287 +#: templates/js/translated/order.js:288 msgid "Mark this order as complete?" msgstr "" -#: templates/js/translated/order.js:293 +#: templates/js/translated/order.js:294 msgid "All line items have been received" msgstr "" -#: templates/js/translated/order.js:298 +#: templates/js/translated/order.js:299 msgid "This order has line items which have not been marked as received." msgstr "" -#: templates/js/translated/order.js:299 +#: templates/js/translated/order.js:300 msgid "Completing this order means that the order and line items will no longer be editable." msgstr "" -#: templates/js/translated/order.js:322 +#: templates/js/translated/order.js:323 msgid "Cancel Purchase Order" msgstr "" -#: templates/js/translated/order.js:327 +#: templates/js/translated/order.js:328 msgid "Are you sure you wish to cancel this purchase order?" msgstr "" -#: templates/js/translated/order.js:333 +#: templates/js/translated/order.js:334 msgid "This purchase order can not be cancelled" msgstr "" -#: templates/js/translated/order.js:356 +#: templates/js/translated/order.js:357 msgid "Issue Purchase Order" msgstr "" -#: templates/js/translated/order.js:361 +#: templates/js/translated/order.js:362 msgid "After placing this purchase order, line items will no longer be editable." msgstr "" -#: templates/js/translated/order.js:383 +#: templates/js/translated/order.js:384 msgid "Cancel Sales Order" msgstr "" -#: templates/js/translated/order.js:388 +#: templates/js/translated/order.js:389 msgid "Cancelling this order means that the order will no longer be editable." msgstr "" -#: templates/js/translated/order.js:442 +#: templates/js/translated/order.js:443 msgid "Create New Shipment" msgstr "" -#: templates/js/translated/order.js:467 +#: templates/js/translated/order.js:468 msgid "Add Customer" msgstr "" -#: templates/js/translated/order.js:492 +#: templates/js/translated/order.js:493 msgid "Create Sales Order" msgstr "" -#: templates/js/translated/order.js:757 +#: templates/js/translated/order.js:554 +msgid "Edit Purchase Order" +msgstr "" + +#: templates/js/translated/order.js:796 msgid "Export Order" msgstr "" -#: templates/js/translated/order.js:808 +#: templates/js/translated/order.js:847 msgid "At least one purchaseable part must be selected" msgstr "" -#: templates/js/translated/order.js:833 +#: templates/js/translated/order.js:872 msgid "Quantity to order" msgstr "" -#: templates/js/translated/order.js:842 +#: templates/js/translated/order.js:881 msgid "New supplier part" msgstr "" -#: templates/js/translated/order.js:860 +#: templates/js/translated/order.js:899 msgid "New purchase order" msgstr "" -#: templates/js/translated/order.js:893 +#: templates/js/translated/order.js:932 msgid "Add to purchase order" msgstr "" -#: templates/js/translated/order.js:1002 +#: templates/js/translated/order.js:1041 msgid "No matching supplier parts" msgstr "" -#: templates/js/translated/order.js:1017 +#: templates/js/translated/order.js:1056 msgid "No matching purchase orders" msgstr "" -#: templates/js/translated/order.js:1194 +#: templates/js/translated/order.js:1233 msgid "Select Line Items" msgstr "" -#: templates/js/translated/order.js:1195 +#: templates/js/translated/order.js:1234 msgid "At least one line item must be selected" msgstr "" -#: templates/js/translated/order.js:1215 templates/js/translated/order.js:1314 +#: templates/js/translated/order.js:1254 templates/js/translated/order.js:1353 msgid "Add batch code" msgstr "" -#: templates/js/translated/order.js:1221 templates/js/translated/order.js:1325 +#: templates/js/translated/order.js:1260 templates/js/translated/order.js:1364 msgid "Add serial numbers" msgstr "" -#: templates/js/translated/order.js:1233 +#: templates/js/translated/order.js:1272 msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144 +#: templates/js/translated/order.js:1336 templates/js/translated/stock.js:2144 msgid "Stock Status" msgstr "" -#: templates/js/translated/order.js:1388 +#: templates/js/translated/order.js:1427 msgid "Order Code" msgstr "" -#: templates/js/translated/order.js:1389 +#: templates/js/translated/order.js:1428 msgid "Ordered" msgstr "" -#: templates/js/translated/order.js:1391 +#: templates/js/translated/order.js:1430 msgid "Quantity to Receive" msgstr "" -#: templates/js/translated/order.js:1410 +#: templates/js/translated/order.js:1449 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/order.js:1411 +#: templates/js/translated/order.js:1450 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943 +#: templates/js/translated/order.js:1711 templates/js/translated/part.js:943 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/order.js:1699 templates/js/translated/order.js:2503 +#: templates/js/translated/order.js:1738 templates/js/translated/order.js:2542 msgid "Order is overdue" msgstr "" -#: templates/js/translated/order.js:1749 templates/js/translated/order.js:2568 -#: templates/js/translated/order.js:2709 +#: templates/js/translated/order.js:1788 templates/js/translated/order.js:2607 +#: templates/js/translated/order.js:2748 msgid "Items" msgstr "" -#: templates/js/translated/order.js:1847 templates/js/translated/order.js:3783 +#: templates/js/translated/order.js:1886 templates/js/translated/order.js:3822 msgid "Duplicate Line Item" msgstr "" -#: templates/js/translated/order.js:1864 templates/js/translated/order.js:3805 +#: templates/js/translated/order.js:1903 templates/js/translated/order.js:3844 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/order.js:1877 templates/js/translated/order.js:3816 +#: templates/js/translated/order.js:1916 templates/js/translated/order.js:3855 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/order.js:1920 +#: templates/js/translated/order.js:1959 msgid "No line items found" msgstr "" -#: templates/js/translated/order.js:1947 templates/js/translated/order.js:3517 +#: templates/js/translated/order.js:1986 templates/js/translated/order.js:3556 msgid "Total" msgstr "" -#: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203 -#: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050 -#: templates/js/translated/part.js:2135 templates/js/translated/part.js:2488 +#: templates/js/translated/order.js:2040 templates/js/translated/order.js:2242 +#: templates/js/translated/order.js:3581 templates/js/translated/order.js:4089 +#: templates/js/translated/part.js:2131 templates/js/translated/part.js:2703 msgid "Unit Price" msgstr "" -#: templates/js/translated/order.js:2016 templates/js/translated/order.js:2219 -#: templates/js/translated/order.js:3558 templates/js/translated/order.js:4066 +#: templates/js/translated/order.js:2055 templates/js/translated/order.js:2258 +#: templates/js/translated/order.js:3597 templates/js/translated/order.js:4105 msgid "Total Price" msgstr "" -#: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600 +#: templates/js/translated/order.js:2096 templates/js/translated/order.js:3639 #: templates/js/translated/part.js:1050 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096 +#: templates/js/translated/order.js:2155 templates/js/translated/part.js:1096 msgid "Receive line item" msgstr "" -#: templates/js/translated/order.js:2120 templates/js/translated/order.js:3737 +#: templates/js/translated/order.js:2159 templates/js/translated/order.js:3776 msgid "Duplicate line item" msgstr "" -#: templates/js/translated/order.js:2121 templates/js/translated/order.js:3738 +#: templates/js/translated/order.js:2160 templates/js/translated/order.js:3777 msgid "Edit line item" msgstr "" -#: templates/js/translated/order.js:2122 templates/js/translated/order.js:3742 +#: templates/js/translated/order.js:2161 templates/js/translated/order.js:3781 msgid "Delete line item" msgstr "" -#: templates/js/translated/order.js:2268 templates/js/translated/order.js:4115 +#: templates/js/translated/order.js:2307 templates/js/translated/order.js:4154 msgid "Duplicate line" msgstr "" -#: templates/js/translated/order.js:2269 templates/js/translated/order.js:4116 +#: templates/js/translated/order.js:2308 templates/js/translated/order.js:4155 msgid "Edit line" msgstr "" -#: templates/js/translated/order.js:2270 templates/js/translated/order.js:4117 +#: templates/js/translated/order.js:2309 templates/js/translated/order.js:4156 msgid "Delete line" msgstr "" -#: templates/js/translated/order.js:2300 templates/js/translated/order.js:4147 +#: templates/js/translated/order.js:2339 templates/js/translated/order.js:4186 msgid "Duplicate Line" msgstr "" -#: templates/js/translated/order.js:2321 templates/js/translated/order.js:4168 +#: templates/js/translated/order.js:2360 templates/js/translated/order.js:4207 msgid "Edit Line" msgstr "" -#: templates/js/translated/order.js:2332 templates/js/translated/order.js:4179 +#: templates/js/translated/order.js:2371 templates/js/translated/order.js:4218 msgid "Delete Line" msgstr "" -#: templates/js/translated/order.js:2343 +#: templates/js/translated/order.js:2382 msgid "No matching line" msgstr "" -#: templates/js/translated/order.js:2454 +#: templates/js/translated/order.js:2493 msgid "No sales orders found" msgstr "" -#: templates/js/translated/order.js:2517 +#: templates/js/translated/order.js:2556 msgid "Invalid Customer" msgstr "" -#: templates/js/translated/order.js:2615 +#: templates/js/translated/order.js:2654 msgid "Edit shipment" msgstr "" -#: templates/js/translated/order.js:2618 +#: templates/js/translated/order.js:2657 msgid "Complete shipment" msgstr "" -#: templates/js/translated/order.js:2623 +#: templates/js/translated/order.js:2662 msgid "Delete shipment" msgstr "" -#: templates/js/translated/order.js:2643 +#: templates/js/translated/order.js:2682 msgid "Edit Shipment" msgstr "" -#: templates/js/translated/order.js:2660 +#: templates/js/translated/order.js:2699 msgid "Delete Shipment" msgstr "" -#: templates/js/translated/order.js:2694 +#: templates/js/translated/order.js:2733 msgid "No matching shipments found" msgstr "" -#: templates/js/translated/order.js:2704 +#: templates/js/translated/order.js:2743 msgid "Shipment Reference" msgstr "" -#: templates/js/translated/order.js:2728 +#: templates/js/translated/order.js:2767 msgid "Not shipped" msgstr "" -#: templates/js/translated/order.js:2734 +#: templates/js/translated/order.js:2773 msgid "Tracking" msgstr "" -#: templates/js/translated/order.js:2738 +#: templates/js/translated/order.js:2777 msgid "Invoice" msgstr "" -#: templates/js/translated/order.js:2907 +#: templates/js/translated/order.js:2946 msgid "Add Shipment" msgstr "" -#: templates/js/translated/order.js:2958 +#: templates/js/translated/order.js:2997 msgid "Confirm stock allocation" msgstr "" -#: templates/js/translated/order.js:2959 +#: templates/js/translated/order.js:2998 msgid "Allocate Stock Items to Sales Order" msgstr "" -#: templates/js/translated/order.js:3167 +#: templates/js/translated/order.js:3206 msgid "No sales order allocations found" msgstr "" -#: templates/js/translated/order.js:3246 +#: templates/js/translated/order.js:3285 msgid "Edit Stock Allocation" msgstr "" -#: templates/js/translated/order.js:3263 +#: templates/js/translated/order.js:3302 msgid "Confirm Delete Operation" msgstr "" -#: templates/js/translated/order.js:3264 +#: templates/js/translated/order.js:3303 msgid "Delete Stock Allocation" msgstr "" -#: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398 +#: templates/js/translated/order.js:3348 templates/js/translated/order.js:3437 #: templates/js/translated/stock.js:1602 msgid "Shipped to customer" msgstr "" -#: templates/js/translated/order.js:3317 templates/js/translated/order.js:3407 +#: templates/js/translated/order.js:3356 templates/js/translated/order.js:3446 msgid "Stock location not specified" msgstr "" -#: templates/js/translated/order.js:3721 +#: templates/js/translated/order.js:3760 msgid "Allocate serial numbers" msgstr "" -#: templates/js/translated/order.js:3727 +#: templates/js/translated/order.js:3766 msgid "Purchase stock" msgstr "" -#: templates/js/translated/order.js:3734 templates/js/translated/order.js:3932 +#: templates/js/translated/order.js:3773 templates/js/translated/order.js:3971 msgid "Calculate price" msgstr "" -#: templates/js/translated/order.js:3746 +#: templates/js/translated/order.js:3785 msgid "Cannot be deleted as items have been shipped" msgstr "" -#: templates/js/translated/order.js:3749 +#: templates/js/translated/order.js:3788 msgid "Cannot be deleted as items have been allocated" msgstr "" -#: templates/js/translated/order.js:3831 +#: templates/js/translated/order.js:3870 msgid "Allocate Serial Numbers" msgstr "" -#: templates/js/translated/order.js:3940 +#: templates/js/translated/order.js:3979 msgid "Update Unit Price" msgstr "" -#: templates/js/translated/order.js:3954 +#: templates/js/translated/order.js:3993 msgid "No matching line items" msgstr "" -#: templates/js/translated/order.js:4190 +#: templates/js/translated/order.js:4229 msgid "No matching lines" msgstr "" @@ -9319,12 +9337,12 @@ msgstr "" msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:586 templates/js/translated/part.js:1470 +#: templates/js/translated/part.js:586 templates/js/translated/part.js:1478 #: templates/js/translated/table_filters.js:468 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:596 templates/js/translated/part.js:1482 +#: templates/js/translated/part.js:596 msgid "No stock available" msgstr "" @@ -9356,7 +9374,7 @@ msgstr "" msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1553 +#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1549 msgid "No parts found" msgstr "" @@ -9368,100 +9386,124 @@ msgstr "" msgid "No category" msgstr "" -#: templates/js/translated/part.js:1577 templates/js/translated/part.js:1820 +#: templates/js/translated/part.js:1476 +msgid "No stock" +msgstr "" + +#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816 #: templates/js/translated/stock.js:2347 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:1593 +#: templates/js/translated/part.js:1589 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:1659 +#: templates/js/translated/part.js:1655 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:1664 +#: templates/js/translated/part.js:1660 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:1669 +#: templates/js/translated/part.js:1665 msgid "Select Part Category" msgstr "" -#: templates/js/translated/part.js:1682 +#: templates/js/translated/part.js:1678 msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1839 templates/js/translated/stock.js:2366 +#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2366 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:1918 +#: templates/js/translated/part.js:1914 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:1934 +#: templates/js/translated/part.js:1930 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:1992 +#: templates/js/translated/part.js:1988 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2043 templates/js/translated/stock.js:1299 +#: templates/js/translated/part.js:2039 templates/js/translated/stock.js:1299 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:2044 templates/js/translated/stock.js:1300 +#: templates/js/translated/part.js:2040 templates/js/translated/stock.js:1300 #: templates/js/translated/stock.js:1560 msgid "Delete test result" msgstr "" -#: templates/js/translated/part.js:2050 +#: templates/js/translated/part.js:2046 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2072 +#: templates/js/translated/part.js:2068 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2086 +#: templates/js/translated/part.js:2082 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2111 +#: templates/js/translated/part.js:2107 #, python-brace-format msgid "No ${human_name} information found" msgstr "" -#: templates/js/translated/part.js:2168 +#: templates/js/translated/part.js:2164 #, python-brace-format msgid "Edit ${human_name}" msgstr "" -#: templates/js/translated/part.js:2169 +#: templates/js/translated/part.js:2165 #, python-brace-format msgid "Delete ${human_name}" msgstr "" -#: templates/js/translated/part.js:2283 -msgid "Current Stock" +#: templates/js/translated/part.js:2330 templates/js/translated/part.js:2331 +msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:2316 +#: templates/js/translated/part.js:2333 +msgid "Specified date is in the past" +msgstr "" + +#: templates/js/translated/part.js:2339 +msgid "Speculative" +msgstr "" + +#: templates/js/translated/part.js:2389 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2342 +#: templates/js/translated/part.js:2395 +msgid "Error fetching scheduling information for this part" +msgstr "" + +#: templates/js/translated/part.js:2491 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2412 +#: templates/js/translated/part.js:2507 +msgid "Maximum Quantity" +msgstr "" + +#: templates/js/translated/part.js:2533 +msgid "Minimum Stock Level" +msgstr "" + +#: templates/js/translated/part.js:2627 msgid "Single Price" msgstr "" -#: templates/js/translated/part.js:2431 +#: templates/js/translated/part.js:2646 msgid "Single Price Difference" msgstr "" @@ -10222,10 +10264,6 @@ msgstr "" msgid "Hide/Show pagination" msgstr "" -#: templates/js/translated/tables.js:558 -msgid "Refresh" -msgstr "" - #: templates/js/translated/tables.js:561 msgid "Toggle" msgstr "" diff --git a/InvenTree/locale/hu/LC_MESSAGES/django.po b/InvenTree/locale/hu/LC_MESSAGES/django.po index 5b359bb46c..0ea3d9e3e2 100644 --- a/InvenTree/locale/hu/LC_MESSAGES/django.po +++ b/InvenTree/locale/hu/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-16 11:53+0000\n" -"PO-Revision-Date: 2022-08-16 21:36\n" +"POT-Creation-Date: 2022-08-18 05:14+0000\n" +"PO-Revision-Date: 2022-08-18 21:39\n" "Last-Translator: \n" "Language-Team: Hungarian\n" "Language: hu_HU\n" @@ -40,10 +40,10 @@ msgstr "Dátum megadása" #: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825 #: stock/serializers.py:924 stock/serializers.py:1056 #: stock/templates/stock/stock_sidebar.html:25 -#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101 -#: templates/js/translated/company.js:964 templates/js/translated/order.js:2104 -#: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753 -#: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102 +#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1099 +#: templates/js/translated/company.js:964 templates/js/translated/order.js:2143 +#: templates/js/translated/order.js:2294 templates/js/translated/order.js:2792 +#: templates/js/translated/order.js:3743 templates/js/translated/order.js:4141 #: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980 msgid "Notes" msgstr "Megjegyzések" @@ -211,11 +211,11 @@ msgstr "Válaszd ki a mellekelni kívánt fájlt" #: InvenTree/models.py:402 company/models.py:124 company/models.py:276 #: company/models.py:510 order/models.py:84 order/models.py:1245 -#: part/models.py:802 +#: part/models.py:802 part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_base.html:164 #: templates/js/translated/company.js:656 -#: templates/js/translated/company.js:948 templates/js/translated/order.js:2742 -#: templates/js/translated/part.js:1514 +#: templates/js/translated/company.js:948 templates/js/translated/order.js:2781 +#: templates/js/translated/part.js:1510 msgid "Link" msgstr "Link" @@ -235,8 +235,8 @@ msgstr "Leírás, bővebb infó" #: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665 #: common/models.py:1666 common/models.py:1889 common/models.py:1890 -#: common/models.py:2152 common/models.py:2153 part/models.py:2200 -#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257 +#: common/models.py:2152 common/models.py:2153 part/models.py:2247 +#: part/models.py:2267 plugin/models.py:256 plugin/models.py:257 #: report/templates/report/inventree_test_report_base.html:96 #: templates/js/translated/stock.js:2641 msgid "User" @@ -277,7 +277,7 @@ msgstr "Érvénytelen választás" #: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875 #: company/models.py:358 label/models.py:101 part/models.py:746 -#: part/models.py:2378 plugin/models.py:94 report/models.py:152 +#: part/models.py:2425 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 #: templates/InvenTree/settings/plugin.html:51 #: templates/InvenTree/settings/plugin.html:134 @@ -287,7 +287,7 @@ msgstr "Érvénytelen választás" #: templates/js/translated/company.js:758 #: templates/js/translated/notification.js:71 #: templates/js/translated/part.js:688 templates/js/translated/part.js:840 -#: templates/js/translated/part.js:1906 templates/js/translated/stock.js:2392 +#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2392 msgid "Name" msgstr "Név" @@ -297,19 +297,20 @@ msgstr "Név" #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:87 label/models.py:108 #: order/models.py:82 part/models.py:769 part/templates/part/category.html:80 -#: part/templates/part/part_base.html:167 report/models.py:165 +#: part/templates/part/part_base.html:167 +#: part/templates/part/part_scheduling.html:12 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 #: stock/templates/stock/location.html:108 #: templates/InvenTree/settings/plugin_settings.html:33 -#: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848 -#: templates/js/translated/build.js:2471 templates/js/translated/company.js:409 +#: templates/js/translated/bom.js:553 templates/js/translated/bom.js:846 +#: templates/js/translated/build.js:2504 templates/js/translated/company.js:409 #: templates/js/translated/company.js:667 -#: templates/js/translated/company.js:959 templates/js/translated/order.js:1720 -#: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531 +#: templates/js/translated/company.js:959 templates/js/translated/order.js:1759 +#: templates/js/translated/order.js:1991 templates/js/translated/order.js:2570 #: templates/js/translated/part.js:747 templates/js/translated/part.js:1153 -#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1942 -#: templates/js/translated/part.js:2011 templates/js/translated/stock.js:1743 +#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1938 +#: templates/js/translated/part.js:2007 templates/js/translated/stock.js:1743 #: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478 msgid "Description" msgstr "Leírás" @@ -323,7 +324,7 @@ msgid "parent" msgstr "szülő" #: InvenTree/models.py:560 InvenTree/models.py:561 -#: templates/js/translated/part.js:1948 templates/js/translated/stock.js:2430 +#: templates/js/translated/part.js:1944 templates/js/translated/stock.js:2430 msgid "Path" msgstr "Elérési út" @@ -335,7 +336,7 @@ msgstr "Kiszolgálóhiba" msgid "An error has been logged by the server." msgstr "A kiszolgáló egy hibaüzenetet rögzített." -#: InvenTree/serializers.py:55 part/models.py:2699 +#: InvenTree/serializers.py:55 part/models.py:2746 msgid "Must be a valid number" msgstr "Érvényes számnak kell lennie" @@ -541,7 +542,7 @@ msgid "Returned" msgstr "Visszaküldve" #: InvenTree/status_codes.py:141 order/models.py:1128 -#: templates/js/translated/order.js:3330 templates/js/translated/order.js:3679 +#: templates/js/translated/order.js:3369 templates/js/translated/order.js:3718 msgid "Shipped" msgstr "Kiszállítva" @@ -728,7 +729,7 @@ msgstr "Hibás választás a szülő gyártásra" #: report/templates/report/inventree_build_order_base.html:105 #: templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 -#: templates/js/translated/build.js:731 +#: templates/js/translated/build.js:763 msgid "Build Order" msgstr "Gyártási utasítás" @@ -747,14 +748,14 @@ msgid "Build Order Reference" msgstr "Gyártási utasítás azonosító" #: build/models.py:166 order/models.py:240 order/models.py:623 -#: order/models.py:904 part/models.py:2617 +#: order/models.py:904 part/models.py:2664 #: part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 -#: templates/js/translated/bom.js:692 templates/js/translated/bom.js:855 -#: templates/js/translated/build.js:1779 templates/js/translated/order.js:1983 -#: templates/js/translated/order.js:2184 templates/js/translated/order.js:3523 -#: templates/js/translated/order.js:4031 +#: templates/js/translated/bom.js:690 templates/js/translated/bom.js:853 +#: templates/js/translated/build.js:1811 templates/js/translated/order.js:2022 +#: templates/js/translated/order.js:2223 templates/js/translated/order.js:3562 +#: templates/js/translated/order.js:4070 msgid "Reference" msgstr "Azonosító" @@ -762,7 +763,7 @@ msgstr "Azonosító" msgid "Brief description of the build" msgstr "Gyártás rövid leírása" -#: build/models.py:185 build/templates/build/build_base.html:169 +#: build/models.py:185 build/templates/build/build_base.html:172 #: build/templates/build/detail.html:87 msgid "Parent Build" msgstr "Szülő gyártás" @@ -771,13 +772,13 @@ msgstr "Szülő gyártás" msgid "BuildOrder to which this build is allocated" msgstr "Gyártás, amihez ez a gyártás hozzá van rendelve" -#: build/models.py:191 build/templates/build/build_base.html:77 +#: build/models.py:191 build/templates/build/build_base.html:80 #: build/templates/build/detail.html:29 company/models.py:670 #: order/models.py:1001 order/models.py:1112 order/models.py:1113 -#: part/models.py:343 part/models.py:2146 part/models.py:2161 -#: part/models.py:2180 part/models.py:2198 part/models.py:2297 -#: part/models.py:2417 part/models.py:2507 part/models.py:2592 -#: part/models.py:2868 part/serializers.py:813 +#: part/models.py:343 part/models.py:2193 part/models.py:2208 +#: part/models.py:2227 part/models.py:2245 part/models.py:2344 +#: part/models.py:2464 part/models.py:2554 part/models.py:2639 +#: part/models.py:2915 part/serializers.py:813 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -789,17 +790,17 @@ msgstr "Gyártás, amihez ez a gyártás hozzá van rendelve" #: templates/email/build_order_required_stock.html:17 #: templates/email/low_stock_notification.html:16 #: templates/email/overdue_build_order.html:16 -#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:553 -#: templates/js/translated/bom.js:691 templates/js/translated/bom.js:802 -#: templates/js/translated/build.js:1156 templates/js/translated/build.js:1649 -#: templates/js/translated/build.js:2085 templates/js/translated/build.js:2476 +#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:552 +#: templates/js/translated/bom.js:689 templates/js/translated/bom.js:800 +#: templates/js/translated/build.js:1188 templates/js/translated/build.js:1681 +#: templates/js/translated/build.js:2118 templates/js/translated/build.js:2509 #: templates/js/translated/company.js:266 #: templates/js/translated/company.js:496 #: templates/js/translated/company.js:608 -#: templates/js/translated/company.js:868 templates/js/translated/order.js:103 -#: templates/js/translated/order.js:934 templates/js/translated/order.js:1387 -#: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885 -#: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507 +#: templates/js/translated/company.js:868 templates/js/translated/order.js:104 +#: templates/js/translated/order.js:973 templates/js/translated/order.js:1426 +#: templates/js/translated/order.js:1976 templates/js/translated/order.js:2924 +#: templates/js/translated/order.js:3320 templates/js/translated/order.js:3546 #: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210 #: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586 #: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958 @@ -821,7 +822,7 @@ msgid "SalesOrder to which this build is allocated" msgstr "Vevői rendelés amihez ez a gyártás hozzá van rendelve" #: build/models.py:213 build/serializers.py:800 -#: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873 +#: templates/js/translated/build.js:2106 templates/js/translated/order.js:2912 msgid "Source Location" msgstr "Forrás hely" @@ -862,7 +863,7 @@ msgid "Build status code" msgstr "Gyártás státusz kód" #: build/models.py:251 build/serializers.py:225 order/serializers.py:447 -#: stock/models.py:662 templates/js/translated/order.js:1247 +#: stock/models.py:662 templates/js/translated/order.js:1286 msgid "Batch Code" msgstr "Batch kód" @@ -871,7 +872,7 @@ msgid "Batch code for this build output" msgstr "Batch kód a gyártás kimenetéhez" #: build/models.py:258 order/models.py:86 part/models.py:938 -#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544 +#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2583 msgid "Creation Date" msgstr "Létrehozás dátuma" @@ -884,7 +885,7 @@ msgid "Target date for build completion. Build will be overdue after this date." msgstr "Cél dátum a gyártás befejezéséhez. Ez után késettnek számít majd." #: build/models.py:266 order/models.py:286 -#: templates/js/translated/build.js:2553 +#: templates/js/translated/build.js:2586 msgid "Completion Date" msgstr "Elkészítés dátuma" @@ -892,7 +893,7 @@ msgstr "Elkészítés dátuma" msgid "completed by" msgstr "elkészítette" -#: build/models.py:280 templates/js/translated/build.js:2521 +#: build/models.py:280 templates/js/translated/build.js:2554 msgid "Issued by" msgstr "Kiállította" @@ -900,12 +901,12 @@ msgstr "Kiállította" msgid "User who issued this build order" msgstr "Felhasználó aki ezt a gyártási utasítást kiállította" -#: build/models.py:289 build/templates/build/build_base.html:190 +#: build/models.py:289 build/templates/build/build_base.html:193 #: build/templates/build/detail.html:115 order/models.py:100 #: order/templates/order/order_base.html:176 #: order/templates/order/sales_order_base.html:183 part/models.py:942 #: report/templates/report/inventree_build_order_base.html:158 -#: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754 +#: templates/js/translated/build.js:2566 templates/js/translated/order.js:1793 msgid "Responsible" msgstr "Felelős" @@ -972,7 +973,7 @@ msgid "Selected stock item not found in BOM" msgstr "Kiválasztott készlet tétel nem található az alkatrészjegyzékben" #: build/models.py:1328 stock/templates/stock/item_base.html:177 -#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2455 +#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2488 #: templates/navbar.html:38 msgid "Build" msgstr "Gyártás" @@ -986,11 +987,11 @@ msgstr "Gyártás amihez készletet foglaljunk" #: stock/serializers.py:882 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:199 -#: templates/js/translated/build.js:741 templates/js/translated/build.js:746 -#: templates/js/translated/build.js:2087 templates/js/translated/build.js:2638 -#: templates/js/translated/order.js:104 templates/js/translated/order.js:2886 -#: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193 -#: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380 +#: templates/js/translated/build.js:773 templates/js/translated/build.js:778 +#: templates/js/translated/build.js:2120 templates/js/translated/build.js:2671 +#: templates/js/translated/order.js:105 templates/js/translated/order.js:2925 +#: templates/js/translated/order.js:3227 templates/js/translated/order.js:3232 +#: templates/js/translated/order.js:3327 templates/js/translated/order.js:3419 #: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752 #: templates/js/translated/stock.js:2577 msgid "Stock Item" @@ -1001,13 +1002,13 @@ msgid "Source stock item" msgstr "Forrás készlet tétel" #: build/models.py:1358 build/serializers.py:193 -#: build/templates/build/build_base.html:82 +#: build/templates/build/build_base.html:85 #: build/templates/build/detail.html:34 common/models.py:1697 #: company/templates/company/supplier_part.html:279 order/models.py:897 #: order/models.py:1423 order/serializers.py:1155 #: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40 -#: part/models.py:2608 part/templates/part/detail.html:937 -#: part/templates/part/detail.html:1023 +#: part/models.py:2655 part/templates/part/detail.html:951 +#: part/templates/part/detail.html:1037 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 #: report/templates/report/inventree_build_order_base.html:113 @@ -1018,20 +1019,20 @@ msgstr "Forrás készlet tétel" #: stock/serializers.py:293 stock/templates/stock/item_base.html:292 #: stock/templates/stock/item_base.html:300 #: templates/email/build_order_completed.html:18 -#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:693 -#: templates/js/translated/bom.js:863 templates/js/translated/build.js:426 -#: templates/js/translated/build.js:578 templates/js/translated/build.js:768 -#: templates/js/translated/build.js:1178 templates/js/translated/build.js:1675 -#: templates/js/translated/build.js:2088 +#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:691 +#: templates/js/translated/bom.js:861 templates/js/translated/build.js:458 +#: templates/js/translated/build.js:610 templates/js/translated/build.js:800 +#: templates/js/translated/build.js:1210 templates/js/translated/build.js:1707 +#: templates/js/translated/build.js:2121 #: templates/js/translated/model_renderers.js:120 -#: templates/js/translated/order.js:120 templates/js/translated/order.js:937 -#: templates/js/translated/order.js:1989 templates/js/translated/order.js:2190 -#: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207 -#: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386 -#: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037 -#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2156 -#: templates/js/translated/part.js:2387 templates/js/translated/part.js:2421 -#: templates/js/translated/part.js:2499 templates/js/translated/stock.js:458 +#: templates/js/translated/order.js:121 templates/js/translated/order.js:976 +#: templates/js/translated/order.js:2028 templates/js/translated/order.js:2229 +#: templates/js/translated/order.js:2926 templates/js/translated/order.js:3246 +#: templates/js/translated/order.js:3333 templates/js/translated/order.js:3425 +#: templates/js/translated/order.js:3568 templates/js/translated/order.js:4076 +#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2152 +#: templates/js/translated/part.js:2602 templates/js/translated/part.js:2636 +#: templates/js/translated/part.js:2714 templates/js/translated/stock.js:458 #: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782 #: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711 msgid "Quantity" @@ -1050,7 +1051,7 @@ msgid "Destination stock item" msgstr "Cél készlet tétel" #: build/serializers.py:138 build/serializers.py:674 -#: templates/js/translated/build.js:1166 +#: templates/js/translated/build.js:1198 msgid "Build Output" msgstr "Gyártás kimenet" @@ -1090,7 +1091,7 @@ msgid "Integer quantity required, as the bill of materials contains trackable pa msgstr "Egész számú mennyiség szükséges, mivel az alkatrészjegyzék egyedi követésre kötelezett alkatrészeket tartalmaz" #: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159 -#: stock/serializers.py:311 templates/js/translated/order.js:1258 +#: stock/serializers.py:311 templates/js/translated/order.js:1297 #: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459 msgid "Serial Numbers" msgstr "Sorozatszámok" @@ -1120,10 +1121,10 @@ msgstr "A gyártási kimenetek listáját meg kell adni" #: stock/serializers.py:917 stock/serializers.py:1150 #: stock/templates/stock/item_base.html:390 #: templates/js/translated/barcode.js:436 -#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753 -#: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285 -#: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305 -#: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394 +#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:785 +#: templates/js/translated/build.js:1719 templates/js/translated/order.js:1324 +#: templates/js/translated/order.js:3239 templates/js/translated/order.js:3344 +#: templates/js/translated/order.js:3352 templates/js/translated/order.js:3433 #: templates/js/translated/part.js:181 templates/js/translated/stock.js:588 #: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960 #: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518 @@ -1134,12 +1135,12 @@ msgstr "Hely" msgid "Location for completed build outputs" msgstr "A kész gyártási kimenetek helye" -#: build/serializers.py:373 build/templates/build/build_base.html:142 +#: build/serializers.py:373 build/templates/build/build_base.html:145 #: build/templates/build/detail.html:62 order/models.py:642 #: order/serializers.py:465 stock/templates/stock/item_base.html:423 -#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505 -#: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724 -#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829 +#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2538 +#: templates/js/translated/order.js:1431 templates/js/translated/order.js:1763 +#: templates/js/translated/order.js:2575 templates/js/translated/stock.js:1829 #: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727 msgid "Status" msgstr "Állapot" @@ -1197,7 +1198,7 @@ msgstr "Kiosztatlanok elfogadása" msgid "Accept that stock items have not been fully allocated to this build order" msgstr "Fogadd el hogy a készlet tételek nincsenek teljesen lefoglalva ehhez a gyártási utastáshoz" -#: build/serializers.py:522 templates/js/translated/build.js:195 +#: build/serializers.py:522 templates/js/translated/build.js:227 msgid "Required stock has not been fully allocated" msgstr "A szükséges készlet nem lett teljesen lefoglalva" @@ -1209,7 +1210,7 @@ msgstr "Befejezetlenek elfogadása" msgid "Accept that the required number of build outputs have not been completed" msgstr "Fogadd el hogy a szükséges számú gyártási kimenet nem lett elérve" -#: build/serializers.py:538 templates/js/translated/build.js:199 +#: build/serializers.py:538 templates/js/translated/build.js:231 msgid "Required build quantity has not been completed" msgstr "Szükséges gyártási mennyiség nem lett elérve" @@ -1217,8 +1218,8 @@ msgstr "Szükséges gyártási mennyiség nem lett elérve" msgid "Build order has incomplete outputs" msgstr "A gyártási utasítás befejezetlen kimeneteket tartalmaz" -#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726 -#: part/models.py:2860 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2773 +#: part/models.py:2907 msgid "BOM Item" msgstr "Alkatrészjegyzék tétel" @@ -1323,66 +1324,70 @@ msgid "Cancel Build" msgstr "Gyártás törlése" #: build/templates/build/build_base.html:59 +msgid "Duplicate Build" +msgstr "" + +#: build/templates/build/build_base.html:62 msgid "Delete Build" msgstr "Gyártás törlése" -#: build/templates/build/build_base.html:64 -#: build/templates/build/build_base.html:65 +#: build/templates/build/build_base.html:67 +#: build/templates/build/build_base.html:68 msgid "Complete Build" msgstr "Gyártás befejezése" -#: build/templates/build/build_base.html:87 +#: build/templates/build/build_base.html:90 msgid "Build Description" msgstr "Gyártás leírása" -#: build/templates/build/build_base.html:95 +#: build/templates/build/build_base.html:98 msgid "No build outputs have been created for this build order" msgstr "Ehhez a gyártási utasításhoz nem készült kimenet" -#: build/templates/build/build_base.html:101 +#: build/templates/build/build_base.html:104 #, python-format msgid "This Build Order is allocated to Sales Order %(link)s" msgstr "Ez a gyártási utasítás hozzátendelve a %(link)s vevői rendeléshez" -#: build/templates/build/build_base.html:108 +#: build/templates/build/build_base.html:111 #, python-format msgid "This Build Order is a child of Build Order %(link)s" msgstr "Ez gyártási utasítás a %(link)s gyártási utasítás gyermeke" -#: build/templates/build/build_base.html:115 +#: build/templates/build/build_base.html:118 msgid "Build Order is ready to mark as completed" msgstr "Gyártási utasítás elkészültnek jelölhető" -#: build/templates/build/build_base.html:120 +#: build/templates/build/build_base.html:123 msgid "Build Order cannot be completed as outstanding outputs remain" msgstr "Befejezetlen gyártási kimenetek vannak" -#: build/templates/build/build_base.html:125 +#: build/templates/build/build_base.html:128 msgid "Required build quantity has not yet been completed" msgstr "Szükséges gyártási mennyiség még nincs meg" -#: build/templates/build/build_base.html:130 +#: build/templates/build/build_base.html:133 msgid "Stock has not been fully allocated to this Build Order" msgstr "Még nincs lefoglalva a szükséges készlet" -#: build/templates/build/build_base.html:151 +#: build/templates/build/build_base.html:154 #: build/templates/build/detail.html:131 order/models.py:910 #: order/templates/order/order_base.html:162 #: order/templates/order/sales_order_base.html:164 #: report/templates/report/inventree_build_order_base.html:125 -#: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741 -#: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552 -#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042 +#: templates/js/translated/build.js:2578 templates/js/translated/order.js:1780 +#: templates/js/translated/order.js:2090 templates/js/translated/order.js:2591 +#: templates/js/translated/order.js:3631 templates/js/translated/part.js:1042 msgid "Target Date" msgstr "Cél dátum" -#: build/templates/build/build_base.html:156 +#: build/templates/build/build_base.html:159 #, python-format msgid "This build was due on %(target)s" msgstr "Ez a gyártás %(target)s-n volt esedékes" -#: build/templates/build/build_base.html:156 -#: build/templates/build/build_base.html:201 +#: build/templates/build/build_base.html:159 +#: build/templates/build/build_base.html:204 #: order/templates/order/order_base.html:98 #: order/templates/order/sales_order_base.html:94 #: templates/js/translated/table_filters.js:320 @@ -1391,14 +1396,14 @@ msgstr "Ez a gyártás %(target)s-n volt esedékes" msgid "Overdue" msgstr "Késésben" -#: build/templates/build/build_base.html:163 +#: build/templates/build/build_base.html:166 #: build/templates/build/detail.html:67 build/templates/build/detail.html:142 #: order/templates/order/sales_order_base.html:171 #: templates/js/translated/table_filters.js:400 msgid "Completed" msgstr "Kész" -#: build/templates/build/build_base.html:176 +#: build/templates/build/build_base.html:179 #: build/templates/build/detail.html:94 order/models.py:1105 #: order/models.py:1199 order/models.py:1330 #: order/templates/order/sales_order_base.html:9 @@ -1407,17 +1412,17 @@ msgstr "Kész" #: report/templates/report/inventree_so_report.html:77 #: stock/templates/stock/item_base.html:370 #: templates/email/overdue_sales_order.html:15 -#: templates/js/translated/order.js:2498 +#: templates/js/translated/order.js:2537 msgid "Sales Order" msgstr "Vevői rendelés" -#: build/templates/build/build_base.html:183 +#: build/templates/build/build_base.html:186 #: build/templates/build/detail.html:108 #: report/templates/report/inventree_build_order_base.html:152 msgid "Issued By" msgstr "Kiállította" -#: build/templates/build/build_base.html:245 +#: build/templates/build/build_base.html:256 msgid "Delete Build Order" msgstr "Gyártási utasítás törlése" @@ -1434,7 +1439,7 @@ msgid "Stock can be taken from any available location." msgstr "Készlet bármely rendelkezésre álló helyről felhasználható." #: build/templates/build/detail.html:49 order/models.py:1023 -#: templates/js/translated/order.js:1393 templates/js/translated/order.js:2093 +#: templates/js/translated/order.js:1432 templates/js/translated/order.js:2132 msgid "Destination" msgstr "Cél" @@ -1448,7 +1453,7 @@ msgstr "Lefoglalt alkatrészek" #: build/templates/build/detail.html:80 #: stock/templates/stock/item_base.html:170 -#: templates/js/translated/build.js:1182 +#: templates/js/translated/build.js:1214 #: templates/js/translated/model_renderers.js:124 #: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843 #: templates/js/translated/stock.js:2734 @@ -1460,7 +1465,7 @@ msgstr "Batch" #: build/templates/build/detail.html:126 #: order/templates/order/order_base.html:149 #: order/templates/order/sales_order_base.html:158 -#: templates/js/translated/build.js:2513 +#: templates/js/translated/build.js:2546 msgid "Created" msgstr "Létrehozva" @@ -1480,7 +1485,7 @@ msgstr "Alárendelt gyártások" msgid "Allocate Stock to Build" msgstr "Készlet foglalása gyártáshoz" -#: build/templates/build/detail.html:176 templates/js/translated/build.js:1901 +#: build/templates/build/detail.html:176 templates/js/translated/build.js:1934 msgid "Unallocate stock" msgstr "Készlet felszabadítása" @@ -1511,7 +1516,7 @@ msgstr "Szükséges alkatrészek rendelése" #: build/templates/build/detail.html:187 #: company/templates/company/detail.html:37 #: company/templates/company/detail.html:85 -#: part/templates/part/category.html:183 templates/js/translated/order.js:977 +#: part/templates/part/category.html:183 templates/js/translated/order.js:1016 msgid "Order Parts" msgstr "Alkatrész rendelés" @@ -1583,7 +1588,7 @@ msgstr "Befejezett gyártási kimenetek" #: order/templates/order/po_sidebar.html:9 #: order/templates/order/purchase_order_detail.html:82 #: order/templates/order/sales_order_detail.html:135 -#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:207 +#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:212 #: part/templates/part/part_sidebar.html:57 stock/templates/stock/item.html:117 #: stock/templates/stock/stock_sidebar.html:23 msgid "Attachments" @@ -1601,7 +1606,7 @@ msgstr "Lefoglalás kész" msgid "All untracked stock items have been allocated" msgstr "Az összes nem követett készlet lefoglalásra került" -#: build/templates/build/index.html:18 part/templates/part/detail.html:313 +#: build/templates/build/index.html:18 part/templates/part/detail.html:318 msgid "New Build Order" msgstr "Új gyártási utasítás" @@ -1846,7 +1851,7 @@ msgstr "Kategória paraméter sablonok másolása" msgid "Copy category parameter templates when creating a part" msgstr "Kategória paraméter sablonok másolása alkatrész létrehozásakor" -#: common/models.py:951 part/models.py:2419 report/models.py:158 +#: common/models.py:951 part/models.py:2466 report/models.py:158 #: templates/js/translated/table_filters.js:38 #: templates/js/translated/table_filters.js:484 msgid "Template" @@ -1856,7 +1861,7 @@ msgstr "Sablon" msgid "Parts are templates by default" msgstr "Alkatrészek alapból sablon alkatrészek legyenek" -#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448 +#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1446 #: templates/js/translated/table_filters.js:176 #: templates/js/translated/table_filters.js:447 msgid "Assembly" @@ -2592,7 +2597,7 @@ msgstr "Árlépcső mennyiség" #: common/models.py:1705 company/serializers.py:366 #: company/templates/company/supplier_part.html:284 order/models.py:938 -#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2161 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2157 msgid "Price" msgstr "Ár" @@ -2831,7 +2836,7 @@ msgstr "Cég által használt alapértelmezett pénznem" #: company/models.py:248 company/models.py:481 stock/models.py:598 #: stock/serializers.py:87 stock/templates/stock/item_base.html:148 -#: templates/js/translated/bom.js:543 +#: templates/js/translated/bom.js:542 msgid "Base Part" msgstr "Kiindulási alkatrész" @@ -2860,7 +2865,7 @@ msgstr "Gyártó kiválasztása" #: templates/js/translated/company.js:269 #: templates/js/translated/company.js:497 #: templates/js/translated/company.js:649 -#: templates/js/translated/company.js:937 templates/js/translated/order.js:1971 +#: templates/js/translated/company.js:937 templates/js/translated/order.js:2010 #: templates/js/translated/part.js:247 templates/js/translated/part.js:1027 msgid "MPN" msgstr "MPN" @@ -2900,7 +2905,7 @@ msgstr "Érték" msgid "Parameter value" msgstr "Paraméter értéke" -#: company/models.py:372 part/models.py:888 part/models.py:2386 +#: company/models.py:372 part/models.py:888 part/models.py:2433 #: part/templates/part/part_base.html:280 #: templates/InvenTree/settings/settings.html:352 #: templates/js/translated/company.js:770 templates/js/translated/part.js:855 @@ -2922,7 +2927,7 @@ msgstr "Kapcsolódó gyártói alkatrésznek ugyanarra a kiindulási alkatrészr #: templates/email/overdue_purchase_order.html:16 #: templates/js/translated/company.js:268 #: templates/js/translated/company.js:401 -#: templates/js/translated/company.js:893 templates/js/translated/order.js:1707 +#: templates/js/translated/company.js:893 templates/js/translated/order.js:1746 #: templates/js/translated/part.js:217 templates/js/translated/part.js:995 #: templates/js/translated/table_filters.js:423 msgid "Supplier" @@ -2934,7 +2939,7 @@ msgstr "Beszállító kiválasztása" #: company/models.py:497 company/templates/company/supplier_part.html:118 #: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267 -#: templates/js/translated/order.js:1958 templates/js/translated/part.js:228 +#: templates/js/translated/order.js:1997 templates/js/translated/part.js:228 #: templates/js/translated/part.js:1013 msgid "SKU" msgstr "SKU" @@ -2956,17 +2961,17 @@ msgid "Supplier part description" msgstr "Beszállítói alkatrész leírása" #: company/models.py:522 company/templates/company/supplier_part.html:146 -#: part/models.py:2620 part/templates/part/upload_bom.html:59 +#: part/models.py:2667 part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401 msgid "Note" msgstr "Megjegyzés" -#: company/models.py:526 part/models.py:1742 +#: company/models.py:526 part/models.py:1789 msgid "base cost" msgstr "alap költség" -#: company/models.py:526 part/models.py:1742 +#: company/models.py:526 part/models.py:1789 msgid "Minimum charge (e.g. stocking fee)" msgstr "Minimális díj (pl. tárolási díj)" @@ -2980,7 +2985,7 @@ msgstr "Csomagolás" msgid "Part packaging" msgstr "Alkatrész csomagolás" -#: company/models.py:530 part/models.py:1744 +#: company/models.py:530 part/models.py:1791 msgid "multiple" msgstr "többszörös" @@ -2991,8 +2996,8 @@ msgstr "Többszörös rendelés" #: company/models.py:538 company/templates/company/supplier_part.html:94 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789 -#: templates/js/translated/build.js:2645 templates/js/translated/company.js:979 +#: templates/js/translated/bom.js:911 templates/js/translated/build.js:1821 +#: templates/js/translated/build.js:2678 templates/js/translated/company.js:979 #: templates/js/translated/part.js:600 templates/js/translated/part.js:603 #: templates/js/translated/table_filters.js:186 msgid "Available" @@ -3029,7 +3034,7 @@ msgid "Company" msgstr "Cég" #: company/templates/company/company_base.html:22 -#: templates/js/translated/order.js:540 +#: templates/js/translated/order.js:579 msgid "Create Purchase Order" msgstr "Beszerzési rendelés létrehozása" @@ -3070,7 +3075,7 @@ msgstr "Kép letöltése URL-ről" #: stock/models.py:644 stock/serializers.py:811 #: stock/templates/stock/item_base.html:401 #: templates/email/overdue_sales_order.html:16 -#: templates/js/translated/company.js:393 templates/js/translated/order.js:2513 +#: templates/js/translated/company.js:393 templates/js/translated/order.js:2552 #: templates/js/translated/stock.js:2559 #: templates/js/translated/table_filters.js:427 msgid "Customer" @@ -3106,7 +3111,7 @@ msgstr "Új beszállítói alkatrész létrehozása" #: company/templates/company/detail.html:19 #: company/templates/company/manufacturer_part.html:123 -#: part/templates/part/detail.html:354 +#: part/templates/part/detail.html:359 msgid "New Supplier Part" msgstr "Új beszállítói alkatrész" @@ -3135,7 +3140,7 @@ msgstr "Gyártói alkatrészek" msgid "Create new manufacturer part" msgstr "Új gyártói alkatrész létrehozása" -#: company/templates/company/detail.html:66 part/templates/part/detail.html:384 +#: company/templates/company/detail.html:66 part/templates/part/detail.html:389 msgid "New Manufacturer Part" msgstr "Új gyártói alkatrész" @@ -3149,7 +3154,7 @@ msgstr "Beszállítói készlet" #: order/templates/order/order_base.html:13 #: order/templates/order/purchase_orders.html:8 #: order/templates/order/purchase_orders.html:12 -#: part/templates/part/detail.html:79 part/templates/part/part_sidebar.html:37 +#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:37 #: templates/InvenTree/index.html:252 templates/InvenTree/search.html:198 #: templates/InvenTree/settings/sidebar.html:49 #: templates/js/translated/search.js:275 templates/navbar.html:50 @@ -3172,7 +3177,7 @@ msgstr "Új beszerzési rendelés" #: order/templates/order/sales_order_base.html:13 #: order/templates/order/sales_orders.html:8 #: order/templates/order/sales_orders.html:15 -#: part/templates/part/detail.html:102 part/templates/part/part_sidebar.html:41 +#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:41 #: templates/InvenTree/index.html:283 templates/InvenTree/search.html:218 #: templates/InvenTree/settings/sidebar.html:51 #: templates/js/translated/search.js:299 templates/navbar.html:61 @@ -3191,7 +3196,7 @@ msgid "New Sales Order" msgstr "Új vevői rendelés" #: company/templates/company/detail.html:168 -#: templates/js/translated/build.js:1660 +#: templates/js/translated/build.js:1692 msgid "Assigned Stock" msgstr "Hozzárendelt készlet" @@ -3207,7 +3212,7 @@ msgstr "Gyártók" #: company/templates/company/manufacturer_part.html:35 #: company/templates/company/supplier_part.html:186 -#: part/templates/part/detail.html:82 part/templates/part/part_base.html:80 +#: part/templates/part/detail.html:87 part/templates/part/part_base.html:80 msgid "Order part" msgstr "Alkatrész rendelés" @@ -3238,13 +3243,13 @@ msgid "Suppliers" msgstr "Beszállítók" #: company/templates/company/manufacturer_part.html:136 -#: part/templates/part/detail.html:365 +#: part/templates/part/detail.html:370 msgid "Delete supplier parts" msgstr "Beszállítói alkatrész törlése" #: company/templates/company/manufacturer_part.html:136 #: company/templates/company/manufacturer_part.html:183 -#: part/templates/part/detail.html:366 part/templates/part/detail.html:396 +#: part/templates/part/detail.html:371 part/templates/part/detail.html:401 #: templates/js/translated/forms.js:453 templates/js/translated/helpers.js:33 #: users/models.py:220 msgid "Delete" @@ -3253,12 +3258,12 @@ msgstr "Törlés" #: company/templates/company/manufacturer_part.html:166 #: company/templates/company/manufacturer_part_sidebar.html:5 #: part/templates/part/category_sidebar.html:19 -#: part/templates/part/detail.html:181 part/templates/part/part_sidebar.html:8 +#: part/templates/part/detail.html:186 part/templates/part/part_sidebar.html:8 msgid "Parameters" msgstr "Paraméterek" #: company/templates/company/manufacturer_part.html:170 -#: part/templates/part/detail.html:186 +#: part/templates/part/detail.html:191 #: templates/InvenTree/settings/category.html:12 #: templates/InvenTree/settings/part.html:68 msgid "New Parameter" @@ -3269,7 +3274,7 @@ msgid "Delete parameters" msgstr "Paraméterek törlése" #: company/templates/company/manufacturer_part.html:245 -#: part/templates/part/detail.html:826 +#: part/templates/part/detail.html:840 msgid "Add Parameter" msgstr "Paraméter hozzáadása" @@ -3292,7 +3297,7 @@ msgstr "Hozzárendelt készlet tételek" #: company/templates/company/supplier_part.html:7 #: company/templates/company/supplier_part.html:24 stock/models.py:607 #: stock/templates/stock/item_base.html:238 -#: templates/js/translated/company.js:909 templates/js/translated/order.js:935 +#: templates/js/translated/company.js:909 templates/js/translated/order.js:974 #: templates/js/translated/stock.js:1933 msgid "Supplier Part" msgstr "Beszállítói alkatrész" @@ -3304,7 +3309,7 @@ msgstr "Beszállítói alkatrész műveletek" #: company/templates/company/supplier_part.html:40 #: company/templates/company/supplier_part.html:41 #: company/templates/company/supplier_part.html:187 -#: part/templates/part/detail.html:83 +#: part/templates/part/detail.html:88 msgid "Order Part" msgstr "Alkatrész rendelése" @@ -3359,7 +3364,7 @@ msgstr "Árinformációk" #: company/templates/company/supplier_part.html:212 #: company/templates/company/supplier_part.html:326 -#: part/templates/part/prices.html:276 templates/js/translated/part.js:2233 +#: part/templates/part/prices.html:276 templates/js/translated/part.js:2229 msgid "Add Price Break" msgstr "Árlépcső hozzáadása" @@ -3368,12 +3373,12 @@ msgid "No price break information found" msgstr "Nincs árlépcső információ" #: company/templates/company/supplier_part.html:252 -#: templates/js/translated/part.js:2243 +#: templates/js/translated/part.js:2239 msgid "Delete Price Break" msgstr "Árlépcső törlése" #: company/templates/company/supplier_part.html:266 -#: templates/js/translated/part.js:2257 +#: templates/js/translated/part.js:2253 msgid "Edit Price Break" msgstr "Árlépcső szerkesztése" @@ -3399,10 +3404,9 @@ msgstr "Alkatrész elérhetőség frissítése" #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:151 #: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751 -#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460 -#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754 -#: templates/navbar.html:31 +#: templates/js/translated/part.js:751 templates/js/translated/part.js:1299 +#: templates/js/translated/part.js:1460 templates/js/translated/stock.js:959 +#: templates/js/translated/stock.js:1754 templates/navbar.html:31 msgid "Stock" msgstr "Készlet" @@ -3555,7 +3559,7 @@ msgid "Company from which the items are being ordered" msgstr "Cég akitől a tételek beszerzésre kerülnek" #: order/models.py:262 order/templates/order/order_base.html:124 -#: templates/js/translated/order.js:1716 +#: templates/js/translated/order.js:1755 msgid "Supplier Reference" msgstr "Beszállítói azonosító" @@ -3612,7 +3616,7 @@ msgid "Target date for order completion. Order will be overdue after this date." msgstr "Cél dátum a rendelés teljesítéséhez. Ez után számít majd késettnek." #: order/models.py:652 order/models.py:1204 -#: templates/js/translated/order.js:2560 templates/js/translated/order.js:2722 +#: templates/js/translated/order.js:2599 templates/js/translated/order.js:2761 msgid "Shipment Date" msgstr "Kiszállítás dátuma" @@ -3674,7 +3678,7 @@ msgstr "törölve" #: order/models.py:983 order/models.py:1063 order/models.py:1104 #: order/models.py:1198 order/models.py:1330 -#: templates/js/translated/order.js:3178 +#: templates/js/translated/order.js:3217 msgid "Order" msgstr "Rendelés" @@ -3684,7 +3688,7 @@ msgstr "Rendelés" #: report/templates/report/inventree_po_report.html:76 #: stock/templates/stock/item_base.html:184 #: templates/email/overdue_purchase_order.html:15 -#: templates/js/translated/order.js:936 templates/js/translated/order.js:1691 +#: templates/js/translated/order.js:975 templates/js/translated/order.js:1730 #: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913 #: templates/js/translated/stock.js:2540 msgid "Purchase Order" @@ -3695,7 +3699,7 @@ msgid "Supplier part" msgstr "Beszállítói alkatrész" #: order/models.py:1009 order/templates/order/order_base.html:169 -#: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073 +#: templates/js/translated/order.js:1429 templates/js/translated/order.js:2112 #: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091 #: templates/js/translated/table_filters.js:338 msgid "Received" @@ -3881,11 +3885,11 @@ msgstr "Sortétel nem egyezik a beszerzési megrendeléssel" msgid "Select destination location for received items" msgstr "Válassz cél helyet a beérkezett tételeknek" -#: order/serializers.py:448 templates/js/translated/order.js:1248 +#: order/serializers.py:448 templates/js/translated/order.js:1287 msgid "Enter batch code for incoming stock items" msgstr "Írd be a batch kódját a beérkezett tételeknek" -#: order/serializers.py:456 templates/js/translated/order.js:1259 +#: order/serializers.py:456 templates/js/translated/order.js:1298 msgid "Enter serial numbers for incoming stock items" msgstr "Írd be a sorozatszámokat a beérkezett tételekhez" @@ -4062,10 +4066,6 @@ msgstr "Teljes költség" msgid "Total cost could not be calculated" msgstr "A teljes költség nem számolható" -#: order/templates/order/order_base.html:243 -msgid "Edit Purchase Order" -msgstr "Beszerzési rendelés szerkesztése" - #: order/templates/order/order_wizard/match_parts.html:12 #: part/templates/part/import_wizard/ajax_match_references.html:12 #: part/templates/part/import_wizard/match_references.html:12 @@ -4092,10 +4092,10 @@ msgstr "Beszállítói alkatrész kiválasztása" #: part/templates/part/import_wizard/ajax_match_fields.html:64 #: part/templates/part/import_wizard/ajax_match_references.html:42 #: part/templates/part/import_wizard/match_references.html:49 -#: templates/js/translated/bom.js:77 templates/js/translated/build.js:431 -#: templates/js/translated/build.js:583 templates/js/translated/build.js:1974 -#: templates/js/translated/order.js:884 templates/js/translated/order.js:1337 -#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625 +#: templates/js/translated/bom.js:77 templates/js/translated/build.js:463 +#: templates/js/translated/build.js:615 templates/js/translated/build.js:2007 +#: templates/js/translated/order.js:923 templates/js/translated/order.js:1376 +#: templates/js/translated/order.js:2836 templates/js/translated/stock.js:625 #: templates/js/translated/stock.js:793 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" @@ -4131,7 +4131,7 @@ msgstr "Beszerzési rendelés tételei" #: order/templates/order/purchase_order_detail.html:26 #: order/templates/order/sales_order_detail.html:22 #: order/templates/order/sales_order_detail.html:255 -#: templates/js/translated/order.js:557 +#: templates/js/translated/order.js:596 msgid "Add Line Item" msgstr "Sortétel hozzáadása" @@ -4177,7 +4177,7 @@ msgid "Print packing list" msgstr "Csomagolási lista nyomtatása" #: order/templates/order/sales_order_base.html:60 -#: templates/js/translated/order.js:229 +#: templates/js/translated/order.js:230 msgid "Complete Shipments" msgstr "Szállítmányok készen" @@ -4191,7 +4191,7 @@ msgid "This Sales Order has not been fully allocated" msgstr "Ehhez a vevői rendeléshez nincs minden alkatrész lefoglalva" #: order/templates/order/sales_order_base.html:123 -#: templates/js/translated/order.js:2526 +#: templates/js/translated/order.js:2565 msgid "Customer Reference" msgstr "Vevői azonosító" @@ -4215,8 +4215,8 @@ msgid "Pending Shipments" msgstr "Függő szállítmányok" #: order/templates/order/sales_order_detail.html:72 -#: templates/attachment_table.html:6 templates/js/translated/bom.js:1110 -#: templates/js/translated/build.js:1882 +#: templates/attachment_table.html:6 templates/js/translated/bom.js:1108 +#: templates/js/translated/build.js:1915 msgid "Actions" msgstr "Műveletek" @@ -4258,35 +4258,35 @@ msgstr "Kimenő vevői rendelés" msgid "Stock produced by Build Order" msgstr "Gyártással előállított készlet" -#: part/api.py:584 +#: part/api.py:621 msgid "Stock required for Build Order" msgstr "A gyártási utasításhoz szükséges készlet" -#: part/api.py:704 +#: part/api.py:758 msgid "Valid" msgstr "Érvényes" -#: part/api.py:705 +#: part/api.py:759 msgid "Validate entire Bill of Materials" msgstr "Teljes alkatrészjegyzék jóváhagyása" -#: part/api.py:711 +#: part/api.py:765 msgid "This option must be selected" msgstr "Ennek az opciónak ki kll lennie választva" -#: part/api.py:1134 +#: part/api.py:1188 msgid "Must be greater than zero" msgstr "Nullánál nagyobb kell legyen" -#: part/api.py:1138 +#: part/api.py:1192 msgid "Must be a valid quantity" msgstr "Érvényes mennyiségnek kell lennie" -#: part/api.py:1153 +#: part/api.py:1207 msgid "Specify location for initial part stock" msgstr "Hely megadása a kezdeti alkarész készlethez" -#: part/api.py:1184 part/api.py:1188 part/api.py:1203 part/api.py:1207 +#: part/api.py:1238 part/api.py:1242 part/api.py:1257 part/api.py:1261 msgid "This field is required" msgstr "Ez a mező kötelező" @@ -4300,14 +4300,14 @@ msgid "Total Stock" msgstr "Teljes készlet" #: part/bom.py:129 part/templates/part/part_base.html:189 -#: templates/js/translated/order.js:3618 +#: templates/js/translated/order.js:3657 msgid "Available Stock" msgstr "Elérhető készlet" #: part/bom.py:130 part/templates/part/part_base.html:207 -#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590 +#: templates/js/translated/bom.js:945 templates/js/translated/part.js:590 #: templates/js/translated/part.js:610 templates/js/translated/part.js:1302 -#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490 +#: templates/js/translated/part.js:1483 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "Rendelve" @@ -4336,7 +4336,7 @@ msgstr "" msgid "Icon (optional)" msgstr "" -#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16 +#: part/models.py:122 part/models.py:2509 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "Alkatrész kategória" @@ -4353,7 +4353,7 @@ msgstr "Alkatrész kategóriák" #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82 #: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:1955 templates/js/translated/search.js:144 +#: templates/js/translated/part.js:1951 templates/js/translated/search.js:144 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "Alkatrészek" @@ -4383,7 +4383,7 @@ msgstr "A legutóbbi sorozatszám" msgid "Duplicate IPN not allowed in part settings" msgstr "Azonos IPN nem engedélyezett az alkatrész beállításokban" -#: part/models.py:745 part/models.py:2516 +#: part/models.py:745 part/models.py:2563 msgid "Part name" msgstr "Alkatrész neve" @@ -4416,11 +4416,11 @@ msgstr "Kulcsszavak" msgid "Part keywords to improve visibility in search results" msgstr "Alkatrész kulcsszavak amik segítik a megjelenést a keresési eredményekben" -#: part/models.py:783 part/models.py:2218 part/models.py:2461 +#: part/models.py:783 part/models.py:2265 part/models.py:2508 #: part/templates/part/part_base.html:257 #: templates/InvenTree/settings/settings.html:232 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1668 +#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1664 msgid "Category" msgstr "Kategória" @@ -4531,245 +4531,245 @@ msgstr "Alkatrészjegyzék ellenőrzési dátuma" msgid "Creation User" msgstr "Létrehozó" -#: part/models.py:1744 +#: part/models.py:1791 msgid "Sell multiple" msgstr "Több értékesítése" -#: part/models.py:2265 +#: part/models.py:2312 msgid "Test templates can only be created for trackable parts" msgstr "Teszt sablont csak követésre kötelezett alkatrészhez lehet csinálni" -#: part/models.py:2282 +#: part/models.py:2329 msgid "Test with this name already exists for this part" msgstr "Erre az alkatrészre már létezik teszt ilyen névvel" -#: part/models.py:2302 templates/js/translated/part.js:2006 +#: part/models.py:2349 templates/js/translated/part.js:2002 #: templates/js/translated/stock.js:1340 msgid "Test Name" msgstr "Teszt név" -#: part/models.py:2303 +#: part/models.py:2350 msgid "Enter a name for the test" msgstr "Add meg a teszt nevét" -#: part/models.py:2308 +#: part/models.py:2355 msgid "Test Description" msgstr "Teszt leírása" -#: part/models.py:2309 +#: part/models.py:2356 msgid "Enter description for this test" msgstr "Adj hozzá egy leírást ehhez a teszthez" -#: part/models.py:2314 templates/js/translated/part.js:2015 +#: part/models.py:2361 templates/js/translated/part.js:2011 #: templates/js/translated/table_filters.js:302 msgid "Required" msgstr "Kötelező" -#: part/models.py:2315 +#: part/models.py:2362 msgid "Is this test required to pass?" msgstr "Szükséges-e hogy ez a teszt sikeres legyen?" -#: part/models.py:2320 templates/js/translated/part.js:2023 +#: part/models.py:2367 templates/js/translated/part.js:2019 msgid "Requires Value" msgstr "Kötelező érték" -#: part/models.py:2321 +#: part/models.py:2368 msgid "Does this test require a value when adding a test result?" msgstr "Szükséges-e hogy ennek a tesztnek az eredményéhez kötelezően érték legyen rendelve?" -#: part/models.py:2326 templates/js/translated/part.js:2030 +#: part/models.py:2373 templates/js/translated/part.js:2026 msgid "Requires Attachment" msgstr "Kötelező melléklet" -#: part/models.py:2327 +#: part/models.py:2374 msgid "Does this test require a file attachment when adding a test result?" msgstr "Szükséges-e hogy ennek a tesztnek az eredményéhez kötelezően fájl melléklet legyen rendelve?" -#: part/models.py:2335 +#: part/models.py:2382 #, python-brace-format msgid "Illegal character in template name ({c})" msgstr "Érvénytelen karakter ({c}) a sablon nevében" -#: part/models.py:2371 +#: part/models.py:2418 msgid "Parameter template name must be unique" msgstr "A paraméter sablon nevének egyedinek kell lennie" -#: part/models.py:2379 +#: part/models.py:2426 msgid "Parameter Name" msgstr "Paraméter neve" -#: part/models.py:2386 +#: part/models.py:2433 msgid "Parameter Units" msgstr "Paraméter mértékegysége" -#: part/models.py:2417 +#: part/models.py:2464 msgid "Parent Part" msgstr "Szülő alkatrész" -#: part/models.py:2419 part/models.py:2467 part/models.py:2468 +#: part/models.py:2466 part/models.py:2514 part/models.py:2515 #: templates/InvenTree/settings/settings.html:227 msgid "Parameter Template" msgstr "Paraméter sablon" -#: part/models.py:2421 +#: part/models.py:2468 msgid "Data" msgstr "Adat" -#: part/models.py:2421 +#: part/models.py:2468 msgid "Parameter Value" msgstr "Paraméter értéke" -#: part/models.py:2472 templates/InvenTree/settings/settings.html:236 +#: part/models.py:2519 templates/InvenTree/settings/settings.html:236 msgid "Default Value" msgstr "Alapértelmezett érték" -#: part/models.py:2473 +#: part/models.py:2520 msgid "Default Parameter Value" msgstr "Alapértelmezett paraméter érték" -#: part/models.py:2508 +#: part/models.py:2555 msgid "Part ID or part name" msgstr "Alkatrész ID vagy alkatrész név" -#: part/models.py:2511 templates/js/translated/model_renderers.js:212 +#: part/models.py:2558 templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "Alkatrész ID" -#: part/models.py:2512 +#: part/models.py:2559 msgid "Unique part ID value" msgstr "Egyedi alkatrész ID értéke" -#: part/models.py:2515 +#: part/models.py:2562 msgid "Part Name" msgstr "Alkatrész neve" -#: part/models.py:2519 +#: part/models.py:2566 msgid "Part IPN" msgstr "Alkatrész IPN" -#: part/models.py:2520 +#: part/models.py:2567 msgid "Part IPN value" msgstr "Alkatrész IPN érték" -#: part/models.py:2523 +#: part/models.py:2570 msgid "Level" msgstr "Szint" -#: part/models.py:2524 +#: part/models.py:2571 msgid "BOM level" msgstr "Alkatrészjegyzék szint" -#: part/models.py:2593 +#: part/models.py:2640 msgid "Select parent part" msgstr "Szülő alkatrész kiválasztása" -#: part/models.py:2601 +#: part/models.py:2648 msgid "Sub part" msgstr "Al alkatrész" -#: part/models.py:2602 +#: part/models.py:2649 msgid "Select part to be used in BOM" msgstr "Válaszd ki az alkatrészjegyzékben használandó alkatrészt" -#: part/models.py:2608 +#: part/models.py:2655 msgid "BOM quantity for this BOM item" msgstr "Alkatrészjegyzék mennyiség ehhez az alkatrészjegyzék tételhez" -#: part/models.py:2610 part/templates/part/upload_bom.html:58 -#: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999 +#: part/models.py:2657 part/templates/part/upload_bom.html:58 +#: templates/js/translated/bom.js:872 templates/js/translated/bom.js:997 #: templates/js/translated/table_filters.js:100 msgid "Optional" msgstr "Opcionális" -#: part/models.py:2610 +#: part/models.py:2657 msgid "This BOM item is optional" msgstr "Ez az alkatrészjegyzék tétel opcionális" -#: part/models.py:2613 part/templates/part/upload_bom.html:55 +#: part/models.py:2660 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "Többlet" -#: part/models.py:2614 +#: part/models.py:2661 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "Becsült gyártási veszteség (abszolút vagy százalékos)" -#: part/models.py:2617 +#: part/models.py:2664 msgid "BOM item reference" msgstr "Alkatrészjegyzék tétel azonosító" -#: part/models.py:2620 +#: part/models.py:2667 msgid "BOM item notes" msgstr "Alkatrészjegyzék tétel megjegyzései" -#: part/models.py:2622 +#: part/models.py:2669 msgid "Checksum" msgstr "Ellenőrző összeg" -#: part/models.py:2622 +#: part/models.py:2669 msgid "BOM line checksum" msgstr "Alkatrészjegyzék sor ellenőrző összeg" -#: part/models.py:2626 part/templates/part/upload_bom.html:57 -#: templates/js/translated/bom.js:1016 +#: part/models.py:2673 part/templates/part/upload_bom.html:57 +#: templates/js/translated/bom.js:1014 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:96 msgid "Inherited" msgstr "Örökölt" -#: part/models.py:2627 +#: part/models.py:2674 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "Ezt az alkatrészjegyzék tételt az alkatrész változatok alkatrészjegyzékei is öröklik" -#: part/models.py:2632 part/templates/part/upload_bom.html:56 -#: templates/js/translated/bom.js:1008 +#: part/models.py:2679 part/templates/part/upload_bom.html:56 +#: templates/js/translated/bom.js:1006 msgid "Allow Variants" msgstr "Változatok" -#: part/models.py:2633 +#: part/models.py:2680 msgid "Stock items for variant parts can be used for this BOM item" msgstr "Alkatrészváltozatok készlet tételei használhatók ehhez az alkatrészjegyzék tételhez" -#: part/models.py:2711 stock/models.py:468 +#: part/models.py:2758 stock/models.py:468 msgid "Quantity must be integer value for trackable parts" msgstr "A mennyiség egész szám kell legyen a követésre kötelezett alkatrészek esetén" -#: part/models.py:2720 part/models.py:2722 +#: part/models.py:2767 part/models.py:2769 msgid "Sub part must be specified" msgstr "Al alkatrészt kötelező megadni" -#: part/models.py:2827 +#: part/models.py:2874 msgid "BOM Item Substitute" msgstr "Alkatrészjegyzék tétel helyettesítő" -#: part/models.py:2848 +#: part/models.py:2895 msgid "Substitute part cannot be the same as the master part" msgstr "A helyettesítő alkatrész nem lehet ugyanaz mint a fő alkatrész" -#: part/models.py:2861 +#: part/models.py:2908 msgid "Parent BOM item" msgstr "Szülő alkatrészjegyzék tétel" -#: part/models.py:2869 +#: part/models.py:2916 msgid "Substitute part" msgstr "Helyettesítő alkatrész" -#: part/models.py:2884 +#: part/models.py:2931 msgid "Part 1" msgstr "1.rész" -#: part/models.py:2888 +#: part/models.py:2935 msgid "Part 2" msgstr "2.rész" -#: part/models.py:2888 +#: part/models.py:2935 msgid "Select Related Part" msgstr "Válassz kapcsolódó alkatrészt" -#: part/models.py:2906 +#: part/models.py:2953 msgid "Part relationship cannot be created between a part and itself" msgstr "Alkatrész kapcsolat nem hozható létre önmagával" -#: part/models.py:2910 +#: part/models.py:2957 msgid "Duplicate relationship already exists" msgstr "Már létezik duplikált alkatrész kapcsolat" @@ -4877,7 +4877,7 @@ msgstr "A %(part)s alkatrészhez tartozó alkatrészjegyzéket utoljár msgid "The BOM for %(part)s has not been validated." msgstr "A %(part)s alkatrészhez tartozó alkatrészjegyzék még nincs jóváhagyva." -#: part/templates/part/bom.html:30 part/templates/part/detail.html:264 +#: part/templates/part/bom.html:30 part/templates/part/detail.html:269 msgid "BOM actions" msgstr "Alkatrészjegyzék műveletek" @@ -4946,8 +4946,8 @@ msgstr "Alkatrész létrehozása" msgid "New Part" msgstr "Új alkatrész" -#: part/templates/part/category.html:174 part/templates/part/detail.html:363 -#: part/templates/part/detail.html:394 +#: part/templates/part/category.html:174 part/templates/part/detail.html:368 +#: part/templates/part/detail.html:399 msgid "Options" msgstr "Opciók" @@ -5015,138 +5015,146 @@ msgstr "%(full_name)s - %(desc)s (%(match_per)s%% egyezik)" msgid "Part Stock" msgstr "Alkatrész készlet" -#: part/templates/part/detail.html:54 +#: part/templates/part/detail.html:44 +msgid "Refresh scheduling data" +msgstr "" + +#: part/templates/part/detail.html:45 templates/js/translated/tables.js:558 +msgid "Refresh" +msgstr "Frissítés" + +#: part/templates/part/detail.html:59 msgid "Part Test Templates" msgstr "Alkatrész teszt sablonok" -#: part/templates/part/detail.html:59 +#: part/templates/part/detail.html:64 msgid "Add Test Template" msgstr "Teszt sablon hozzáadása" -#: part/templates/part/detail.html:116 stock/templates/stock/item.html:53 +#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53 msgid "Sales Order Allocations" msgstr "Vevői rendeléshez foglalások" -#: part/templates/part/detail.html:138 +#: part/templates/part/detail.html:143 msgid "Part Notes" msgstr "Alkatrész megjegyzések" -#: part/templates/part/detail.html:153 +#: part/templates/part/detail.html:158 msgid "Part Variants" msgstr "Alkatrész változatok" -#: part/templates/part/detail.html:157 +#: part/templates/part/detail.html:162 msgid "Create new variant" msgstr "Új változat létrehozása" -#: part/templates/part/detail.html:158 +#: part/templates/part/detail.html:163 msgid "New Variant" msgstr "Új változat" -#: part/templates/part/detail.html:185 +#: part/templates/part/detail.html:190 msgid "Add new parameter" msgstr "Paraméter hozzáadása" -#: part/templates/part/detail.html:222 part/templates/part/part_sidebar.html:54 +#: part/templates/part/detail.html:227 part/templates/part/part_sidebar.html:54 msgid "Related Parts" msgstr "Kapcsolódó alkatrészek" -#: part/templates/part/detail.html:226 part/templates/part/detail.html:227 +#: part/templates/part/detail.html:231 part/templates/part/detail.html:232 msgid "Add Related" msgstr "Kapcsolódó hozzáadása" -#: part/templates/part/detail.html:247 part/templates/part/part_sidebar.html:17 +#: part/templates/part/detail.html:252 part/templates/part/part_sidebar.html:17 msgid "Bill of Materials" msgstr "Alkatrészjegyzék" -#: part/templates/part/detail.html:252 +#: part/templates/part/detail.html:257 msgid "Export actions" msgstr "Exportálási műveletek" -#: part/templates/part/detail.html:256 templates/js/translated/bom.js:284 +#: part/templates/part/detail.html:261 templates/js/translated/bom.js:284 msgid "Export BOM" msgstr "Alkatrészjegyzék exportálása" -#: part/templates/part/detail.html:258 +#: part/templates/part/detail.html:263 msgid "Print BOM Report" msgstr "Alkatrészjegyzék riport nyomtatása" -#: part/templates/part/detail.html:268 +#: part/templates/part/detail.html:273 msgid "Upload BOM" msgstr "Alkatrészjegyzék feltöltése" -#: part/templates/part/detail.html:269 templates/js/translated/part.js:274 +#: part/templates/part/detail.html:274 templates/js/translated/part.js:274 msgid "Copy BOM" msgstr "Alkatrészjegyzék másolása" -#: part/templates/part/detail.html:270 +#: part/templates/part/detail.html:275 msgid "Validate BOM" msgstr "Alkatrészjegyzék jóváhagyása" -#: part/templates/part/detail.html:275 +#: part/templates/part/detail.html:280 msgid "New BOM Item" msgstr "Új alkatrészjegyzék tétel" -#: part/templates/part/detail.html:276 +#: part/templates/part/detail.html:281 msgid "Add BOM Item" msgstr "Alkatrészjegyzék tétel hozzáadása" -#: part/templates/part/detail.html:289 +#: part/templates/part/detail.html:294 msgid "Assemblies" msgstr "Gyártmányok" -#: part/templates/part/detail.html:307 +#: part/templates/part/detail.html:312 msgid "Part Builds" msgstr "Alkatrész gyártások" -#: part/templates/part/detail.html:334 stock/templates/stock/item.html:38 +#: part/templates/part/detail.html:339 stock/templates/stock/item.html:38 msgid "Build Order Allocations" msgstr "Gyártáshoz foglalások" -#: part/templates/part/detail.html:350 +#: part/templates/part/detail.html:355 msgid "Part Suppliers" msgstr "Alkatrész beszállítók" -#: part/templates/part/detail.html:380 +#: part/templates/part/detail.html:385 msgid "Part Manufacturers" msgstr "Alkatrész gyártók" -#: part/templates/part/detail.html:396 +#: part/templates/part/detail.html:401 msgid "Delete manufacturer parts" msgstr "Gyártói alkatrészek törlése" -#: part/templates/part/detail.html:612 +#: part/templates/part/detail.html:626 msgid "Create BOM Item" msgstr "Alkatrészjegyzék tétel létrehozása" -#: part/templates/part/detail.html:656 +#: part/templates/part/detail.html:670 msgid "Related Part" msgstr "Kapcsolódó alkatrész" -#: part/templates/part/detail.html:664 +#: part/templates/part/detail.html:678 msgid "Add Related Part" msgstr "Kapcsolódó alkatrész hozzáadása" -#: part/templates/part/detail.html:756 +#: part/templates/part/detail.html:770 msgid "Add Test Result Template" msgstr "Teszt eredmény sablon hozzáadása" -#: part/templates/part/detail.html:900 +#: part/templates/part/detail.html:914 #, python-format msgid "Purchase Unit Price - %(currency)s" msgstr "Beszerzési egységár - %(currency)s" -#: part/templates/part/detail.html:912 +#: part/templates/part/detail.html:926 #, python-format msgid "Unit Price-Cost Difference - %(currency)s" msgstr "Egységár-önköltség különbség - %(currency)s" -#: part/templates/part/detail.html:924 +#: part/templates/part/detail.html:938 #, python-format msgid "Supplier Unit Cost - %(currency)s" msgstr "Beszállítói egység költség - %(currency)s" -#: part/templates/part/detail.html:1013 +#: part/templates/part/detail.html:1027 #, python-format msgid "Unit Price - %(currency)s" msgstr "Egységár - %(currency)s" @@ -5322,13 +5330,13 @@ msgstr "Gyártáshoz lefoglalva" msgid "Allocated to Sales Orders" msgstr "Vevő rendeléshez lefoglalva" -#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1037 +#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1035 msgid "Can Build" msgstr "Gyártható" #: part/templates/part/part_base.html:238 templates/js/translated/part.js:593 #: templates/js/translated/part.js:613 templates/js/translated/part.js:1306 -#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1494 +#: templates/js/translated/part.js:1490 msgid "Building" msgstr "Gyártásban" @@ -5380,7 +5388,7 @@ msgid "Total Cost" msgstr "Teljes költség" #: part/templates/part/part_pricing.html:40 part/templates/part/prices.html:43 -#: templates/js/translated/bom.js:991 +#: templates/js/translated/bom.js:989 msgid "No supplier pricing available" msgstr "Nincs beszállítói árinfomáció" @@ -5415,6 +5423,18 @@ msgstr "Belső ár" msgid "No pricing information is available for this part." msgstr "Az alkatrészhez nem áll rendelkezésre árinformáció." +#: part/templates/part/part_scheduling.html:13 +#: report/templates/report/inventree_test_report_base.html:97 +#: templates/InvenTree/settings/plugin.html:53 +#: templates/InvenTree/settings/plugin_settings.html:38 +#: templates/js/translated/order.js:1772 templates/js/translated/stock.js:2468 +msgid "Date" +msgstr "Dátum" + +#: part/templates/part/part_scheduling.html:14 +msgid "Scheduled Quantity" +msgstr "" + #: part/templates/part/part_sidebar.html:11 msgid "Variants" msgstr "Változatok" @@ -5463,7 +5483,7 @@ msgstr "Eladási ár megjelenítése" msgid "Calculation parameters" msgstr "Számítási paraméterek" -#: part/templates/part/prices.html:160 templates/js/translated/bom.js:985 +#: part/templates/part/prices.html:160 templates/js/translated/bom.js:983 msgid "Supplier Cost" msgstr "Beszállítói költség" @@ -5502,7 +5522,7 @@ msgid "No sale pice history available for this part." msgstr "Az alkatrészhez nem áll rendelkezésre eladási ártörténet." #: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616 -#: templates/js/translated/part.js:1294 templates/js/translated/part.js:1498 +#: templates/js/translated/part.js:1294 msgid "No Stock" msgstr "Nincs készlet" @@ -5894,11 +5914,11 @@ msgstr "Készlet tétel teszt riport" #: report/templates/report/inventree_test_report_base.html:79 #: stock/models.py:648 stock/templates/stock/item_base.html:322 -#: templates/js/translated/build.js:424 templates/js/translated/build.js:576 -#: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673 +#: templates/js/translated/build.js:456 templates/js/translated/build.js:608 +#: templates/js/translated/build.js:1208 templates/js/translated/build.js:1705 #: templates/js/translated/model_renderers.js:118 -#: templates/js/translated/order.js:118 templates/js/translated/order.js:3297 -#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490 +#: templates/js/translated/order.js:119 templates/js/translated/order.js:3336 +#: templates/js/translated/order.js:3423 templates/js/translated/stock.js:490 msgid "Serial Number" msgstr "Sorozatszám" @@ -5916,13 +5936,6 @@ msgstr "Teszt" msgid "Result" msgstr "Eredmény" -#: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:53 -#: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468 -msgid "Date" -msgstr "Dátum" - #: report/templates/report/inventree_test_report_base.html:108 msgid "Pass" msgstr "Sikeres" @@ -6520,7 +6533,7 @@ msgid "Available Quantity" msgstr "Elérhető mennyiség" #: stock/templates/stock/item_base.html:394 -#: templates/js/translated/build.js:1695 +#: templates/js/translated/build.js:1727 msgid "No location set" msgstr "Nincs beállítva hely" @@ -7703,7 +7716,7 @@ msgid "The following parts are low on required stock" msgstr "A következő alkatrészek szükséges készlete alacsony" #: templates/email/build_order_required_stock.html:18 -#: templates/js/translated/bom.js:1483 +#: templates/js/translated/bom.js:1481 msgid "Required Quantity" msgstr "Szükséges mennyiség" @@ -7717,6 +7730,7 @@ msgid "Click on the following link to view this part" msgstr "Klikk a következő linkre az alkatrész megjelenítéséhez" #: templates/email/low_stock_notification.html:19 +#: templates/js/translated/part.js:2498 msgid "Minimum Quantity" msgstr "Minimum mennyiség" @@ -7918,10 +7932,10 @@ msgstr "Sor adatok mutatása" msgid "Row Data" msgstr "Sor adat" -#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:622 +#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:620 #: templates/js/translated/modals.js:56 templates/js/translated/modals.js:601 #: templates/js/translated/modals.js:695 templates/js/translated/modals.js:1003 -#: templates/js/translated/order.js:979 templates/modals.html:15 +#: templates/js/translated/order.js:1018 templates/modals.html:15 #: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50 msgid "Close" msgstr "Bezárás" @@ -7931,12 +7945,12 @@ msgid "Download BOM Template" msgstr "Alkarészjegyzék sablon letöltése" #: templates/js/translated/bom.js:253 templates/js/translated/bom.js:287 -#: templates/js/translated/order.js:760 templates/js/translated/tables.js:145 +#: templates/js/translated/order.js:799 templates/js/translated/tables.js:145 msgid "Format" msgstr "Formátum" #: templates/js/translated/bom.js:254 templates/js/translated/bom.js:288 -#: templates/js/translated/order.js:761 +#: templates/js/translated/order.js:800 msgid "Select file format" msgstr "Fájlfomátum kiválasztása" @@ -7992,390 +8006,390 @@ msgstr "Beszállítói adatok megjelenítése az exportált alkatrészjegyzékbe msgid "Remove substitute part" msgstr "Helyettesítő alkatrész törlése" -#: templates/js/translated/bom.js:567 +#: templates/js/translated/bom.js:565 msgid "Select and add a new substitute part using the input below" msgstr "Válassz és adj hozzá új helyettesítő alkatrészt a lenti mezőben" -#: templates/js/translated/bom.js:578 +#: templates/js/translated/bom.js:576 msgid "Are you sure you wish to remove this substitute part link?" msgstr "Biztosan törölni akarod ezt a helyettesítő alkatrész hozzárendelést?" -#: templates/js/translated/bom.js:584 +#: templates/js/translated/bom.js:582 msgid "Remove Substitute Part" msgstr "Helyettesítő alkatrész törlése" -#: templates/js/translated/bom.js:623 +#: templates/js/translated/bom.js:621 msgid "Add Substitute" msgstr "Helyettesítő hozzáadása" -#: templates/js/translated/bom.js:624 +#: templates/js/translated/bom.js:622 msgid "Edit BOM Item Substitutes" msgstr "Alkatrészjegyzék tétel helyettesítők szerkesztése" -#: templates/js/translated/bom.js:686 +#: templates/js/translated/bom.js:684 msgid "All selected BOM items will be deleted" msgstr "Az összes kijelölt alkatrészjegyzék tétel törlésre kerül" -#: templates/js/translated/bom.js:702 +#: templates/js/translated/bom.js:700 msgid "Delete selected BOM items?" msgstr "Töröljük a kiválasztott alkatrészjegyzék tételeket?" -#: templates/js/translated/bom.js:821 +#: templates/js/translated/bom.js:819 msgid "Load BOM for subassembly" msgstr "BOM betöltése az al-gyártmányhoz" -#: templates/js/translated/bom.js:831 +#: templates/js/translated/bom.js:829 msgid "Substitutes Available" msgstr "Vannak helyettesítők" -#: templates/js/translated/bom.js:835 templates/js/translated/build.js:1771 +#: templates/js/translated/bom.js:833 templates/js/translated/build.js:1803 msgid "Variant stock allowed" msgstr "Készletváltozatok engedélyezve" -#: templates/js/translated/bom.js:929 templates/js/translated/build.js:1816 -#: templates/js/translated/order.js:3632 +#: templates/js/translated/bom.js:927 templates/js/translated/build.js:1849 +#: templates/js/translated/order.js:3671 msgid "No Stock Available" msgstr "Nincs szabad" -#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1820 +#: templates/js/translated/bom.js:932 templates/js/translated/build.js:1853 msgid "Includes variant and substitute stock" msgstr "Változatokkal és helyettesítőkkel együtt" -#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822 +#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1855 #: templates/js/translated/part.js:763 msgid "Includes variant stock" msgstr "Változatokkal együtt" -#: templates/js/translated/bom.js:938 templates/js/translated/build.js:1824 +#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1857 msgid "Includes substitute stock" msgstr "Helyettesítőkkel együtt" -#: templates/js/translated/bom.js:956 +#: templates/js/translated/bom.js:954 msgid "Substitutes" msgstr "Helyettesítõk" -#: templates/js/translated/bom.js:971 +#: templates/js/translated/bom.js:969 msgid "Purchase Price Range" msgstr "Beszerzési ártartomány" -#: templates/js/translated/bom.js:978 +#: templates/js/translated/bom.js:976 msgid "Purchase Price Average" msgstr "Beszerzési átlagár" -#: templates/js/translated/bom.js:1027 templates/js/translated/bom.js:1147 +#: templates/js/translated/bom.js:1025 templates/js/translated/bom.js:1145 msgid "View BOM" msgstr "Alkatrészjegyzék megtekintése" -#: templates/js/translated/bom.js:1054 +#: templates/js/translated/bom.js:1052 msgid "Including On Order" msgstr "Rendelés allattival együtt" -#: templates/js/translated/bom.js:1118 +#: templates/js/translated/bom.js:1116 msgid "Validate BOM Item" msgstr "Alkatrészjegyzék tétel jóváhagyása" -#: templates/js/translated/bom.js:1120 +#: templates/js/translated/bom.js:1118 msgid "This line has been validated" msgstr "Ez a sor jóvá lett hagyva" -#: templates/js/translated/bom.js:1122 +#: templates/js/translated/bom.js:1120 msgid "Edit substitute parts" msgstr "Helyettesítő alkatrészek szerkesztése" -#: templates/js/translated/bom.js:1124 templates/js/translated/bom.js:1286 +#: templates/js/translated/bom.js:1122 templates/js/translated/bom.js:1284 msgid "Edit BOM Item" msgstr "Alkatrészjegyzék tétel szerkesztése" -#: templates/js/translated/bom.js:1126 +#: templates/js/translated/bom.js:1124 msgid "Delete BOM Item" msgstr "Alkatrészjegyzék tétel törlése" -#: templates/js/translated/bom.js:1222 templates/js/translated/build.js:1617 +#: templates/js/translated/bom.js:1220 templates/js/translated/build.js:1649 msgid "No BOM items found" msgstr "Nem találhatók alkatrészjegyzék tételek" -#: templates/js/translated/bom.js:1466 templates/js/translated/build.js:1755 +#: templates/js/translated/bom.js:1464 templates/js/translated/build.js:1787 msgid "Required Part" msgstr "Szükséges alkatrész" -#: templates/js/translated/bom.js:1488 +#: templates/js/translated/bom.js:1486 msgid "Inherited from parent BOM" msgstr "Örökölve a szülő alkatrészjegyzéktől" -#: templates/js/translated/build.js:86 +#: templates/js/translated/build.js:89 msgid "Edit Build Order" msgstr "Gyártási utasítás szerkesztése" -#: templates/js/translated/build.js:120 +#: templates/js/translated/build.js:132 msgid "Create Build Order" msgstr "Gyártási utasítás létrehozása" -#: templates/js/translated/build.js:133 +#: templates/js/translated/build.js:165 msgid "Cancel Build Order" msgstr "Gyártási utasítás törlése" -#: templates/js/translated/build.js:142 +#: templates/js/translated/build.js:174 msgid "Are you sure you wish to cancel this build?" msgstr "Biztosan meg szeretnéd szakítani ezt a gyártást?" -#: templates/js/translated/build.js:148 +#: templates/js/translated/build.js:180 msgid "Stock items have been allocated to this build order" msgstr "Ehhez a gyártáshoz készlet lett hozzárendelve" -#: templates/js/translated/build.js:155 +#: templates/js/translated/build.js:187 msgid "There are incomplete outputs remaining for this build order" msgstr "Ennek a gyártásnak befejezetlen kimenetei vannak" -#: templates/js/translated/build.js:185 +#: templates/js/translated/build.js:217 msgid "Build order is ready to be completed" msgstr "Gyártási utasítás készen áll a befejezésre" -#: templates/js/translated/build.js:190 +#: templates/js/translated/build.js:222 msgid "Build Order is incomplete" msgstr "Gyártási utasítás befejezetlen" -#: templates/js/translated/build.js:222 +#: templates/js/translated/build.js:254 msgid "Complete Build Order" msgstr "Gyártási utasítás befejezése" -#: templates/js/translated/build.js:263 templates/js/translated/stock.js:92 +#: templates/js/translated/build.js:295 templates/js/translated/stock.js:92 #: templates/js/translated/stock.js:214 msgid "Next available serial number" msgstr "Következő szabad sorozatszám" -#: templates/js/translated/build.js:265 templates/js/translated/stock.js:94 +#: templates/js/translated/build.js:297 templates/js/translated/stock.js:94 #: templates/js/translated/stock.js:216 msgid "Latest serial number" msgstr "Legutolsó sorozatszám" -#: templates/js/translated/build.js:274 +#: templates/js/translated/build.js:306 msgid "The Bill of Materials contains trackable parts" msgstr "Az alkatrészjegyzék követésre kötelezett alkatrészeket tartalmaz" -#: templates/js/translated/build.js:275 +#: templates/js/translated/build.js:307 msgid "Build outputs must be generated individually" msgstr "A gyártási kimeneteket egyesével kell előállítani" -#: templates/js/translated/build.js:283 +#: templates/js/translated/build.js:315 msgid "Trackable parts can have serial numbers specified" msgstr "A követésre kötelezett alkatrészekhez sorozatszámot lehet rendelni" -#: templates/js/translated/build.js:284 +#: templates/js/translated/build.js:316 msgid "Enter serial numbers to generate multiple single build outputs" msgstr "Adj meg sorozatszámokat a több egyedi gyártási kimenet létrehozásához" -#: templates/js/translated/build.js:291 +#: templates/js/translated/build.js:323 msgid "Create Build Output" msgstr "Gyártási kimenet létrehozása" -#: templates/js/translated/build.js:322 +#: templates/js/translated/build.js:354 msgid "Allocate stock items to this build output" msgstr "Készlet tételek foglalása ehhez a gyártási kimenethez" -#: templates/js/translated/build.js:333 +#: templates/js/translated/build.js:365 msgid "Unallocate stock from build output" msgstr "Készlet felszabadítása a gyártási kimenetből" -#: templates/js/translated/build.js:342 +#: templates/js/translated/build.js:374 msgid "Complete build output" msgstr "Gyártási kimenet befejezése" -#: templates/js/translated/build.js:350 +#: templates/js/translated/build.js:382 msgid "Delete build output" msgstr "Gyártási kimenet törlése" -#: templates/js/translated/build.js:373 +#: templates/js/translated/build.js:405 msgid "Are you sure you wish to unallocate stock items from this build?" msgstr "Biztosan szeretnéd a már lefoglalt készlet tételeket felszabadítani ebből a gyártási utasításból?" -#: templates/js/translated/build.js:391 +#: templates/js/translated/build.js:423 msgid "Unallocate Stock Items" msgstr "Készlet tételek felszabadítása" -#: templates/js/translated/build.js:411 templates/js/translated/build.js:563 +#: templates/js/translated/build.js:443 templates/js/translated/build.js:595 msgid "Select Build Outputs" msgstr "Gyártási kimenetek kiválasztása" -#: templates/js/translated/build.js:412 templates/js/translated/build.js:564 +#: templates/js/translated/build.js:444 templates/js/translated/build.js:596 msgid "At least one build output must be selected" msgstr "Legalább egy gyártási kimenetet ki kell választani" -#: templates/js/translated/build.js:466 templates/js/translated/build.js:618 +#: templates/js/translated/build.js:498 templates/js/translated/build.js:650 msgid "Output" msgstr "Kimenet" -#: templates/js/translated/build.js:484 +#: templates/js/translated/build.js:516 msgid "Complete Build Outputs" msgstr "Gyártási kimenetek befejezése" -#: templates/js/translated/build.js:631 +#: templates/js/translated/build.js:663 msgid "Delete Build Outputs" msgstr "Gyártási kimenetek törlése" -#: templates/js/translated/build.js:720 +#: templates/js/translated/build.js:752 msgid "No build order allocations found" msgstr "Nincs gyártási utasításhoz történő foglalás" -#: templates/js/translated/build.js:757 +#: templates/js/translated/build.js:789 msgid "Location not specified" msgstr "Hely nincs megadva" -#: templates/js/translated/build.js:1136 +#: templates/js/translated/build.js:1168 msgid "No active build outputs found" msgstr "Nem található aktív gyártási kimenet" -#: templates/js/translated/build.js:1205 +#: templates/js/translated/build.js:1237 msgid "Allocated Stock" msgstr "Lefoglalt készlet" -#: templates/js/translated/build.js:1212 +#: templates/js/translated/build.js:1244 msgid "No tracked BOM items for this build" msgstr "Nincsenek követett BOM tételek ehhez a gyártáshoz" -#: templates/js/translated/build.js:1234 +#: templates/js/translated/build.js:1266 msgid "Completed Tests" msgstr "Befejezett tesztek" -#: templates/js/translated/build.js:1239 +#: templates/js/translated/build.js:1271 msgid "No required tests for this build" msgstr "Nincsenek szükséges tesztek ehhez a gyártáshoz" -#: templates/js/translated/build.js:1712 templates/js/translated/build.js:2656 -#: templates/js/translated/order.js:3332 +#: templates/js/translated/build.js:1744 templates/js/translated/build.js:2689 +#: templates/js/translated/order.js:3371 msgid "Edit stock allocation" msgstr "Készlet foglalások szerkesztése" -#: templates/js/translated/build.js:1714 templates/js/translated/build.js:2657 -#: templates/js/translated/order.js:3333 +#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2690 +#: templates/js/translated/order.js:3372 msgid "Delete stock allocation" msgstr "Készlet foglalások törlése" -#: templates/js/translated/build.js:1732 +#: templates/js/translated/build.js:1764 msgid "Edit Allocation" msgstr "Foglalás szerkesztése" -#: templates/js/translated/build.js:1742 +#: templates/js/translated/build.js:1774 msgid "Remove Allocation" msgstr "Foglalás törlése" -#: templates/js/translated/build.js:1767 +#: templates/js/translated/build.js:1799 msgid "Substitute parts available" msgstr "Vannak helyettesítő alkatrészek" -#: templates/js/translated/build.js:1784 +#: templates/js/translated/build.js:1816 msgid "Quantity Per" msgstr "Szükséges/db" -#: templates/js/translated/build.js:1810 templates/js/translated/order.js:3639 +#: templates/js/translated/build.js:1843 templates/js/translated/order.js:3678 msgid "Insufficient stock available" msgstr "Nincs elegendő" -#: templates/js/translated/build.js:1812 templates/js/translated/order.js:3637 +#: templates/js/translated/build.js:1845 templates/js/translated/order.js:3676 msgid "Sufficient stock available" msgstr "Van elegendő" -#: templates/js/translated/build.js:1841 templates/js/translated/build.js:2086 -#: templates/js/translated/build.js:2652 templates/js/translated/order.js:3651 +#: templates/js/translated/build.js:1874 templates/js/translated/build.js:2119 +#: templates/js/translated/build.js:2685 templates/js/translated/order.js:3690 msgid "Allocated" msgstr "Lefoglalva" -#: templates/js/translated/build.js:1889 templates/js/translated/order.js:3731 +#: templates/js/translated/build.js:1922 templates/js/translated/order.js:3770 msgid "Build stock" msgstr "Gyártási készlet" -#: templates/js/translated/build.js:1893 templates/stock_table.html:50 +#: templates/js/translated/build.js:1926 templates/stock_table.html:50 msgid "Order stock" msgstr "Készlet rendelés" -#: templates/js/translated/build.js:1896 templates/js/translated/order.js:3724 +#: templates/js/translated/build.js:1929 templates/js/translated/order.js:3763 msgid "Allocate stock" msgstr "Lefoglalt készlet" -#: templates/js/translated/build.js:1935 templates/js/translated/label.js:172 -#: templates/js/translated/order.js:807 templates/js/translated/order.js:2859 +#: templates/js/translated/build.js:1968 templates/js/translated/label.js:172 +#: templates/js/translated/order.js:846 templates/js/translated/order.js:2898 #: templates/js/translated/report.js:225 msgid "Select Parts" msgstr "Kiválasztott alkatrészek" -#: templates/js/translated/build.js:1936 templates/js/translated/order.js:2860 +#: templates/js/translated/build.js:1969 templates/js/translated/order.js:2899 msgid "You must select at least one part to allocate" msgstr "Legalább egy alkatrész választása szükséges a foglaláshoz" -#: templates/js/translated/build.js:1985 templates/js/translated/order.js:2808 +#: templates/js/translated/build.js:2018 templates/js/translated/order.js:2847 msgid "Specify stock allocation quantity" msgstr "Készlet foglalási mennyiség megadása" -#: templates/js/translated/build.js:2059 +#: templates/js/translated/build.js:2092 msgid "All Parts Allocated" msgstr "Minden alkatrész lefoglalva" -#: templates/js/translated/build.js:2060 +#: templates/js/translated/build.js:2093 msgid "All selected parts have been fully allocated" msgstr "Minden kiválasztott alkatrész teljesen lefoglalva" -#: templates/js/translated/build.js:2074 templates/js/translated/order.js:2874 +#: templates/js/translated/build.js:2107 templates/js/translated/order.js:2913 msgid "Select source location (leave blank to take from all locations)" msgstr "Válassz forrás helyet (vagy hagyd üresen ha bárhonnan)" -#: templates/js/translated/build.js:2102 +#: templates/js/translated/build.js:2135 msgid "Allocate Stock Items to Build Order" msgstr "Készlet foglalása a gyártási utasításhoz" -#: templates/js/translated/build.js:2113 templates/js/translated/order.js:2971 +#: templates/js/translated/build.js:2146 templates/js/translated/order.js:3010 msgid "No matching stock locations" msgstr "Nincs egyező készlethely" -#: templates/js/translated/build.js:2185 templates/js/translated/order.js:3048 +#: templates/js/translated/build.js:2218 templates/js/translated/order.js:3087 msgid "No matching stock items" msgstr "Nincs egyező készlet" -#: templates/js/translated/build.js:2282 +#: templates/js/translated/build.js:2315 msgid "Automatic Stock Allocation" msgstr "Automatikus készlet foglalás" -#: templates/js/translated/build.js:2283 +#: templates/js/translated/build.js:2316 msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines" msgstr "A készlet automatikusan lefoglalásra került ehhez a gyártási utasításhoz, a megadott feltételek szerint" -#: templates/js/translated/build.js:2285 +#: templates/js/translated/build.js:2318 msgid "If a location is specifed, stock will only be allocated from that location" msgstr "Ha egy készlet hely meg van adva, akkor készlet csak arról a helyről lesz foglalva" -#: templates/js/translated/build.js:2286 +#: templates/js/translated/build.js:2319 msgid "If stock is considered interchangeable, it will be allocated from the first location it is found" msgstr "Ha a készlet helyettesíthetőnek minősül, akkor az első rendelkezésre álló helyről lesz lefoglalva" -#: templates/js/translated/build.js:2287 +#: templates/js/translated/build.js:2320 msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found" msgstr "Ha a helyettesítő készlet engedélyezve van, akkor ott az lesz használva ha az elsődleges alkatrésznek nincs készlete" -#: templates/js/translated/build.js:2308 +#: templates/js/translated/build.js:2341 msgid "Allocate Stock Items" msgstr "Készlet tételek foglalása" -#: templates/js/translated/build.js:2414 +#: templates/js/translated/build.js:2447 msgid "No builds matching query" msgstr "Nincs a lekérdezéssel egyező gyártási utasítás" -#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387 -#: templates/js/translated/part.js:1899 templates/js/translated/stock.js:1686 +#: templates/js/translated/build.js:2482 templates/js/translated/part.js:1387 +#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1686 #: templates/js/translated/stock.js:2386 msgid "Select" msgstr "Kiválaszt" -#: templates/js/translated/build.js:2463 +#: templates/js/translated/build.js:2496 msgid "Build order is overdue" msgstr "Gyártás késésben van" -#: templates/js/translated/build.js:2491 +#: templates/js/translated/build.js:2524 msgid "Progress" msgstr "Haladás" -#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647 +#: templates/js/translated/build.js:2560 templates/js/translated/stock.js:2647 msgid "No user information" msgstr "Nincs felhasználói információ" -#: templates/js/translated/build.js:2633 +#: templates/js/translated/build.js:2666 msgid "No parts allocated for" msgstr "Nincs lefoglalt alkatrész ehhez" @@ -8391,11 +8405,11 @@ msgstr "Gyártói alkatrész hozzáadása" msgid "Edit Manufacturer Part" msgstr "Gyártói alkatrész szerkesztése" -#: templates/js/translated/company.js:167 templates/js/translated/order.js:509 +#: templates/js/translated/company.js:167 templates/js/translated/order.js:510 msgid "Add Supplier" msgstr "Beszállító hozzáadása" -#: templates/js/translated/company.js:195 templates/js/translated/order.js:628 +#: templates/js/translated/company.js:195 templates/js/translated/order.js:667 msgid "Add Supplier Part" msgstr "Beszállítói alkatrész hozzáadása" @@ -8766,381 +8780,385 @@ msgstr "Nincs olvasatlan értesítés" msgid "Notifications will load here" msgstr "Az értesítések itt fognak megjelenni" -#: templates/js/translated/order.js:94 +#: templates/js/translated/order.js:95 msgid "No stock items have been allocated to this shipment" msgstr "Ehhez a szállítmányhoz nincs készlet hozzárendelve" -#: templates/js/translated/order.js:99 +#: templates/js/translated/order.js:100 msgid "The following stock items will be shipped" msgstr "A következő készlet tételek ki lesznek szállítva" -#: templates/js/translated/order.js:139 +#: templates/js/translated/order.js:140 msgid "Complete Shipment" msgstr "Szállítmány kész" -#: templates/js/translated/order.js:159 +#: templates/js/translated/order.js:160 msgid "Confirm Shipment" msgstr "Szállítmány megerősítése" -#: templates/js/translated/order.js:215 +#: templates/js/translated/order.js:216 msgid "No pending shipments found" msgstr "Nincs függő szállítmány" -#: templates/js/translated/order.js:219 +#: templates/js/translated/order.js:220 msgid "No stock items have been allocated to pending shipments" msgstr "A függő a szállítmányokhoz nincs készlet hozzárendelve" -#: templates/js/translated/order.js:251 +#: templates/js/translated/order.js:252 msgid "Skip" msgstr "Kihagyás" -#: templates/js/translated/order.js:281 +#: templates/js/translated/order.js:282 msgid "Complete Purchase Order" msgstr "Beszerzési rendelés befejezése" -#: templates/js/translated/order.js:287 +#: templates/js/translated/order.js:288 msgid "Mark this order as complete?" msgstr "Rendelés befejezettnek jelölése?" -#: templates/js/translated/order.js:293 +#: templates/js/translated/order.js:294 msgid "All line items have been received" msgstr "Minden sortétel megérkezett" -#: templates/js/translated/order.js:298 +#: templates/js/translated/order.js:299 msgid "This order has line items which have not been marked as received." msgstr "Ez a rendelés olyan sortételeket tartalmaz amik még nem érkeztek be." -#: templates/js/translated/order.js:299 +#: templates/js/translated/order.js:300 msgid "Completing this order means that the order and line items will no longer be editable." msgstr "A rendelés befejezésével jelölésével annak adatai és sortételei a továbbiakban már nem lesznek szerkeszthetők." -#: templates/js/translated/order.js:322 +#: templates/js/translated/order.js:323 msgid "Cancel Purchase Order" msgstr "Beszerzési rendelés törlése" -#: templates/js/translated/order.js:327 +#: templates/js/translated/order.js:328 msgid "Are you sure you wish to cancel this purchase order?" msgstr "Biztosan törölni szeretnéd ezt a beszerzési rendelést?" -#: templates/js/translated/order.js:333 +#: templates/js/translated/order.js:334 msgid "This purchase order can not be cancelled" msgstr "Ezt a beszerzési rendelést nem lehet törölni" -#: templates/js/translated/order.js:356 +#: templates/js/translated/order.js:357 msgid "Issue Purchase Order" msgstr "Beszerzési rendelés kiküldése" -#: templates/js/translated/order.js:361 +#: templates/js/translated/order.js:362 msgid "After placing this purchase order, line items will no longer be editable." msgstr "A beszerzési rendelés kiküldése után annak sortételei a továbbiakban már nem lesznek szerkeszthetők." -#: templates/js/translated/order.js:383 +#: templates/js/translated/order.js:384 msgid "Cancel Sales Order" msgstr "Vevő rendelés törlése" -#: templates/js/translated/order.js:388 +#: templates/js/translated/order.js:389 msgid "Cancelling this order means that the order will no longer be editable." msgstr "A rendelés törlésével annak adatai a továbbiakban már nem lesznek szerkeszthetők." -#: templates/js/translated/order.js:442 +#: templates/js/translated/order.js:443 msgid "Create New Shipment" msgstr "Szállítmány létrehozása" -#: templates/js/translated/order.js:467 +#: templates/js/translated/order.js:468 msgid "Add Customer" msgstr "Vevő hozzáadása" -#: templates/js/translated/order.js:492 +#: templates/js/translated/order.js:493 msgid "Create Sales Order" msgstr "Vevői rendelés létrehozása" -#: templates/js/translated/order.js:757 +#: templates/js/translated/order.js:554 +msgid "Edit Purchase Order" +msgstr "Beszerzési rendelés szerkesztése" + +#: templates/js/translated/order.js:796 msgid "Export Order" msgstr "Rendelés exportálása" -#: templates/js/translated/order.js:808 +#: templates/js/translated/order.js:847 msgid "At least one purchaseable part must be selected" msgstr "Legalább egy beszerezhető alkatrészt ki kell választani" -#: templates/js/translated/order.js:833 +#: templates/js/translated/order.js:872 msgid "Quantity to order" msgstr "Rendelendő mennyiség" -#: templates/js/translated/order.js:842 +#: templates/js/translated/order.js:881 msgid "New supplier part" msgstr "Új beszállítói alkatrész" -#: templates/js/translated/order.js:860 +#: templates/js/translated/order.js:899 msgid "New purchase order" msgstr "Új beszerzési rendelés" -#: templates/js/translated/order.js:893 +#: templates/js/translated/order.js:932 msgid "Add to purchase order" msgstr "Hozzáadás beszerzési rendeléshez" -#: templates/js/translated/order.js:1002 +#: templates/js/translated/order.js:1041 msgid "No matching supplier parts" msgstr "Nincsenek egyező beszállítói alkatrészek" -#: templates/js/translated/order.js:1017 +#: templates/js/translated/order.js:1056 msgid "No matching purchase orders" msgstr "Nincsenek egyező beszerzési rendelések" -#: templates/js/translated/order.js:1194 +#: templates/js/translated/order.js:1233 msgid "Select Line Items" msgstr "Sortételek kiválasztása" -#: templates/js/translated/order.js:1195 +#: templates/js/translated/order.js:1234 msgid "At least one line item must be selected" msgstr "Legalább egy sortételt ki kell választani" -#: templates/js/translated/order.js:1215 templates/js/translated/order.js:1314 +#: templates/js/translated/order.js:1254 templates/js/translated/order.js:1353 msgid "Add batch code" msgstr "Batch kód hozzáadása" -#: templates/js/translated/order.js:1221 templates/js/translated/order.js:1325 +#: templates/js/translated/order.js:1260 templates/js/translated/order.js:1364 msgid "Add serial numbers" msgstr "Sorozatszám hozzáadása" -#: templates/js/translated/order.js:1233 +#: templates/js/translated/order.js:1272 msgid "Quantity to receive" msgstr "Érkező mennyiség" -#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144 +#: templates/js/translated/order.js:1336 templates/js/translated/stock.js:2144 msgid "Stock Status" msgstr "Készlet állapota" -#: templates/js/translated/order.js:1388 +#: templates/js/translated/order.js:1427 msgid "Order Code" msgstr "Rendelési kód" -#: templates/js/translated/order.js:1389 +#: templates/js/translated/order.js:1428 msgid "Ordered" msgstr "Megrendelve" -#: templates/js/translated/order.js:1391 +#: templates/js/translated/order.js:1430 msgid "Quantity to Receive" msgstr "Érkező mennyiség" -#: templates/js/translated/order.js:1410 +#: templates/js/translated/order.js:1449 msgid "Confirm receipt of items" msgstr "Bevételezés megerősítése" -#: templates/js/translated/order.js:1411 +#: templates/js/translated/order.js:1450 msgid "Receive Purchase Order Items" msgstr "Beszerzési rendelés tételeinek bevételezése" -#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943 +#: templates/js/translated/order.js:1711 templates/js/translated/part.js:943 msgid "No purchase orders found" msgstr "Nem található beszerzési rendelés" -#: templates/js/translated/order.js:1699 templates/js/translated/order.js:2503 +#: templates/js/translated/order.js:1738 templates/js/translated/order.js:2542 msgid "Order is overdue" msgstr "Rendelés késésben" -#: templates/js/translated/order.js:1749 templates/js/translated/order.js:2568 -#: templates/js/translated/order.js:2709 +#: templates/js/translated/order.js:1788 templates/js/translated/order.js:2607 +#: templates/js/translated/order.js:2748 msgid "Items" msgstr "Tételek" -#: templates/js/translated/order.js:1847 templates/js/translated/order.js:3783 +#: templates/js/translated/order.js:1886 templates/js/translated/order.js:3822 msgid "Duplicate Line Item" msgstr "Sortétel másolása" -#: templates/js/translated/order.js:1864 templates/js/translated/order.js:3805 +#: templates/js/translated/order.js:1903 templates/js/translated/order.js:3844 msgid "Edit Line Item" msgstr "Sortétel szerkesztése" -#: templates/js/translated/order.js:1877 templates/js/translated/order.js:3816 +#: templates/js/translated/order.js:1916 templates/js/translated/order.js:3855 msgid "Delete Line Item" msgstr "Sortétel törlése" -#: templates/js/translated/order.js:1920 +#: templates/js/translated/order.js:1959 msgid "No line items found" msgstr "Nem találhatók sortételek" -#: templates/js/translated/order.js:1947 templates/js/translated/order.js:3517 +#: templates/js/translated/order.js:1986 templates/js/translated/order.js:3556 msgid "Total" msgstr "Összesen" -#: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203 -#: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050 -#: templates/js/translated/part.js:2135 templates/js/translated/part.js:2488 +#: templates/js/translated/order.js:2040 templates/js/translated/order.js:2242 +#: templates/js/translated/order.js:3581 templates/js/translated/order.js:4089 +#: templates/js/translated/part.js:2131 templates/js/translated/part.js:2703 msgid "Unit Price" msgstr "Egységár" -#: templates/js/translated/order.js:2016 templates/js/translated/order.js:2219 -#: templates/js/translated/order.js:3558 templates/js/translated/order.js:4066 +#: templates/js/translated/order.js:2055 templates/js/translated/order.js:2258 +#: templates/js/translated/order.js:3597 templates/js/translated/order.js:4105 msgid "Total Price" msgstr "Teljes ár" -#: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600 +#: templates/js/translated/order.js:2096 templates/js/translated/order.js:3639 #: templates/js/translated/part.js:1050 msgid "This line item is overdue" msgstr "Ez a sortétel késésben van" -#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096 +#: templates/js/translated/order.js:2155 templates/js/translated/part.js:1096 msgid "Receive line item" msgstr "Sortétel bevételezése" -#: templates/js/translated/order.js:2120 templates/js/translated/order.js:3737 +#: templates/js/translated/order.js:2159 templates/js/translated/order.js:3776 msgid "Duplicate line item" msgstr "Sortétel másolása" -#: templates/js/translated/order.js:2121 templates/js/translated/order.js:3738 +#: templates/js/translated/order.js:2160 templates/js/translated/order.js:3777 msgid "Edit line item" msgstr "Sortétel szerkesztése" -#: templates/js/translated/order.js:2122 templates/js/translated/order.js:3742 +#: templates/js/translated/order.js:2161 templates/js/translated/order.js:3781 msgid "Delete line item" msgstr "Sortétel törlése" -#: templates/js/translated/order.js:2268 templates/js/translated/order.js:4115 +#: templates/js/translated/order.js:2307 templates/js/translated/order.js:4154 msgid "Duplicate line" msgstr "Sor másolása" -#: templates/js/translated/order.js:2269 templates/js/translated/order.js:4116 +#: templates/js/translated/order.js:2308 templates/js/translated/order.js:4155 msgid "Edit line" msgstr "Sor szerkesztése" -#: templates/js/translated/order.js:2270 templates/js/translated/order.js:4117 +#: templates/js/translated/order.js:2309 templates/js/translated/order.js:4156 msgid "Delete line" msgstr "Sor törlése" -#: templates/js/translated/order.js:2300 templates/js/translated/order.js:4147 +#: templates/js/translated/order.js:2339 templates/js/translated/order.js:4186 msgid "Duplicate Line" msgstr "Sor másolása" -#: templates/js/translated/order.js:2321 templates/js/translated/order.js:4168 +#: templates/js/translated/order.js:2360 templates/js/translated/order.js:4207 msgid "Edit Line" msgstr "Sor szerkesztése" -#: templates/js/translated/order.js:2332 templates/js/translated/order.js:4179 +#: templates/js/translated/order.js:2371 templates/js/translated/order.js:4218 msgid "Delete Line" msgstr "Sor törlése" -#: templates/js/translated/order.js:2343 +#: templates/js/translated/order.js:2382 msgid "No matching line" msgstr "Nincs egyező sor" -#: templates/js/translated/order.js:2454 +#: templates/js/translated/order.js:2493 msgid "No sales orders found" msgstr "Nem található vevői rendelés" -#: templates/js/translated/order.js:2517 +#: templates/js/translated/order.js:2556 msgid "Invalid Customer" msgstr "Érvénytelen vevő" -#: templates/js/translated/order.js:2615 +#: templates/js/translated/order.js:2654 msgid "Edit shipment" msgstr "Szállítmány szerkesztése" -#: templates/js/translated/order.js:2618 +#: templates/js/translated/order.js:2657 msgid "Complete shipment" msgstr "Szállítmány kész" -#: templates/js/translated/order.js:2623 +#: templates/js/translated/order.js:2662 msgid "Delete shipment" msgstr "Szállítmány törlése" -#: templates/js/translated/order.js:2643 +#: templates/js/translated/order.js:2682 msgid "Edit Shipment" msgstr "Szállítmány szerkesztése" -#: templates/js/translated/order.js:2660 +#: templates/js/translated/order.js:2699 msgid "Delete Shipment" msgstr "Szállítmány törlése" -#: templates/js/translated/order.js:2694 +#: templates/js/translated/order.js:2733 msgid "No matching shipments found" msgstr "Nincs egyező szállímány" -#: templates/js/translated/order.js:2704 +#: templates/js/translated/order.js:2743 msgid "Shipment Reference" msgstr "Szállítmány azonosító" -#: templates/js/translated/order.js:2728 +#: templates/js/translated/order.js:2767 msgid "Not shipped" msgstr "Nincs kiszállítva" -#: templates/js/translated/order.js:2734 +#: templates/js/translated/order.js:2773 msgid "Tracking" msgstr "Nyomkövetés" -#: templates/js/translated/order.js:2738 +#: templates/js/translated/order.js:2777 msgid "Invoice" msgstr "Számla" -#: templates/js/translated/order.js:2907 +#: templates/js/translated/order.js:2946 msgid "Add Shipment" msgstr "Szállítmány hozzáadása" -#: templates/js/translated/order.js:2958 +#: templates/js/translated/order.js:2997 msgid "Confirm stock allocation" msgstr "Készlet foglalás megerősítése" -#: templates/js/translated/order.js:2959 +#: templates/js/translated/order.js:2998 msgid "Allocate Stock Items to Sales Order" msgstr "Készlet foglalása a vevői rendeléshez" -#: templates/js/translated/order.js:3167 +#: templates/js/translated/order.js:3206 msgid "No sales order allocations found" msgstr "Nincs vevői rendeléshez történő foglalás" -#: templates/js/translated/order.js:3246 +#: templates/js/translated/order.js:3285 msgid "Edit Stock Allocation" msgstr "Készlet foglalások szerkesztése" -#: templates/js/translated/order.js:3263 +#: templates/js/translated/order.js:3302 msgid "Confirm Delete Operation" msgstr "Törlési művelet megerősítése" -#: templates/js/translated/order.js:3264 +#: templates/js/translated/order.js:3303 msgid "Delete Stock Allocation" msgstr "Készlet foglalások törlése" -#: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398 +#: templates/js/translated/order.js:3348 templates/js/translated/order.js:3437 #: templates/js/translated/stock.js:1602 msgid "Shipped to customer" msgstr "Vevőnek kiszállítva" -#: templates/js/translated/order.js:3317 templates/js/translated/order.js:3407 +#: templates/js/translated/order.js:3356 templates/js/translated/order.js:3446 msgid "Stock location not specified" msgstr "Készlethely nincs megadva" -#: templates/js/translated/order.js:3721 +#: templates/js/translated/order.js:3760 msgid "Allocate serial numbers" msgstr "Sorozatszámok kiosztása" -#: templates/js/translated/order.js:3727 +#: templates/js/translated/order.js:3766 msgid "Purchase stock" msgstr "Készletrendelés" -#: templates/js/translated/order.js:3734 templates/js/translated/order.js:3932 +#: templates/js/translated/order.js:3773 templates/js/translated/order.js:3971 msgid "Calculate price" msgstr "Árszámítás" -#: templates/js/translated/order.js:3746 +#: templates/js/translated/order.js:3785 msgid "Cannot be deleted as items have been shipped" msgstr "Nem törölhető mivel a tételek ki lettek szállítva" -#: templates/js/translated/order.js:3749 +#: templates/js/translated/order.js:3788 msgid "Cannot be deleted as items have been allocated" msgstr "Nem törölhető mivel tételek vannak lefoglalva" -#: templates/js/translated/order.js:3831 +#: templates/js/translated/order.js:3870 msgid "Allocate Serial Numbers" msgstr "Sorozatszámok kiosztása" -#: templates/js/translated/order.js:3940 +#: templates/js/translated/order.js:3979 msgid "Update Unit Price" msgstr "Egységár módosítása" -#: templates/js/translated/order.js:3954 +#: templates/js/translated/order.js:3993 msgid "No matching line items" msgstr "Nincs egyező sortétel" -#: templates/js/translated/order.js:4190 +#: templates/js/translated/order.js:4229 msgid "No matching lines" msgstr "Nincsenek egyező sorok" @@ -9320,12 +9338,12 @@ msgstr "Alkatrészjegyzék jóvá lett hagyva" msgid "Copy Bill of Materials" msgstr "Alkatrészjegyzék másolása" -#: templates/js/translated/part.js:586 templates/js/translated/part.js:1470 +#: templates/js/translated/part.js:586 templates/js/translated/part.js:1478 #: templates/js/translated/table_filters.js:468 msgid "Low stock" msgstr "Alacsony készlet" -#: templates/js/translated/part.js:596 templates/js/translated/part.js:1482 +#: templates/js/translated/part.js:596 msgid "No stock available" msgstr "Nincs szabad" @@ -9357,7 +9375,7 @@ msgstr "Alkatrész kapcsolatok törlése" msgid "Delete Part Relationship" msgstr "Alkatrész kapcsolatok törlése" -#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1553 +#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1549 msgid "No parts found" msgstr "Nincs alkatrész" @@ -9369,100 +9387,124 @@ msgstr "Nincs szabad" msgid "No category" msgstr "Nincs kategória" -#: templates/js/translated/part.js:1577 templates/js/translated/part.js:1820 +#: templates/js/translated/part.js:1476 +msgid "No stock" +msgstr "" + +#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816 #: templates/js/translated/stock.js:2347 msgid "Display as list" msgstr "Megjelenítés listaként" -#: templates/js/translated/part.js:1593 +#: templates/js/translated/part.js:1589 msgid "Display as grid" msgstr "Megjelenítés rácsnézetként" -#: templates/js/translated/part.js:1659 +#: templates/js/translated/part.js:1655 msgid "Set the part category for the selected parts" msgstr "Kategória beállítása a kiválasztott alkatrészekhez" -#: templates/js/translated/part.js:1664 +#: templates/js/translated/part.js:1660 msgid "Set Part Category" msgstr "Alkatrész kategória beállítása" -#: templates/js/translated/part.js:1669 +#: templates/js/translated/part.js:1665 msgid "Select Part Category" msgstr "Alkatrész kategória kiválasztása" -#: templates/js/translated/part.js:1682 +#: templates/js/translated/part.js:1678 msgid "Category is required" msgstr "Kategória megadása kötelező" -#: templates/js/translated/part.js:1839 templates/js/translated/stock.js:2366 +#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2366 msgid "Display as tree" msgstr "Megjelenítés fában" -#: templates/js/translated/part.js:1918 +#: templates/js/translated/part.js:1914 msgid "Load Subcategories" msgstr "Alkategóriák betöltése" -#: templates/js/translated/part.js:1934 +#: templates/js/translated/part.js:1930 msgid "Subscribed category" msgstr "Értesítésre beállított kategória" -#: templates/js/translated/part.js:1992 +#: templates/js/translated/part.js:1988 msgid "No test templates matching query" msgstr "Nincs a lekérdezéssel egyező teszt sablon" -#: templates/js/translated/part.js:2043 templates/js/translated/stock.js:1299 +#: templates/js/translated/part.js:2039 templates/js/translated/stock.js:1299 msgid "Edit test result" msgstr "Teszt eredmény szerkesztése" -#: templates/js/translated/part.js:2044 templates/js/translated/stock.js:1300 +#: templates/js/translated/part.js:2040 templates/js/translated/stock.js:1300 #: templates/js/translated/stock.js:1560 msgid "Delete test result" msgstr "Teszt eredmény törlése" -#: templates/js/translated/part.js:2050 +#: templates/js/translated/part.js:2046 msgid "This test is defined for a parent part" msgstr "Ez a teszt a szülő alkatrészhez lett felvéve" -#: templates/js/translated/part.js:2072 +#: templates/js/translated/part.js:2068 msgid "Edit Test Result Template" msgstr "Teszt eredmény sablon szerkesztése" -#: templates/js/translated/part.js:2086 +#: templates/js/translated/part.js:2082 msgid "Delete Test Result Template" msgstr "Teszt eredmény sablon törlése" -#: templates/js/translated/part.js:2111 +#: templates/js/translated/part.js:2107 #, python-brace-format msgid "No ${human_name} information found" msgstr "Nincs ${human_name} információ" -#: templates/js/translated/part.js:2168 +#: templates/js/translated/part.js:2164 #, python-brace-format msgid "Edit ${human_name}" msgstr "${human_name} szerkesztése" -#: templates/js/translated/part.js:2169 +#: templates/js/translated/part.js:2165 #, python-brace-format msgid "Delete ${human_name}" msgstr "${human_name} törlése" -#: templates/js/translated/part.js:2283 -msgid "Current Stock" -msgstr "Aktuális készlet" +#: templates/js/translated/part.js:2330 templates/js/translated/part.js:2331 +msgid "No date specified" +msgstr "" -#: templates/js/translated/part.js:2316 +#: templates/js/translated/part.js:2333 +msgid "Specified date is in the past" +msgstr "" + +#: templates/js/translated/part.js:2339 +msgid "Speculative" +msgstr "" + +#: templates/js/translated/part.js:2389 msgid "No scheduling information available for this part" msgstr "Az alkatrészhez nem áll rendelkezésre ütemezési információ" -#: templates/js/translated/part.js:2342 +#: templates/js/translated/part.js:2395 +msgid "Error fetching scheduling information for this part" +msgstr "" + +#: templates/js/translated/part.js:2491 msgid "Scheduled Stock Quantities" msgstr "Ütemezett készlet mennyiség" -#: templates/js/translated/part.js:2412 +#: templates/js/translated/part.js:2507 +msgid "Maximum Quantity" +msgstr "" + +#: templates/js/translated/part.js:2533 +msgid "Minimum Stock Level" +msgstr "" + +#: templates/js/translated/part.js:2627 msgid "Single Price" msgstr "Egységes ár" -#: templates/js/translated/part.js:2431 +#: templates/js/translated/part.js:2646 msgid "Single Price Difference" msgstr "Egységes ár különbség" @@ -10223,10 +10265,6 @@ msgstr "Nincs egyező eredmény" msgid "Hide/Show pagination" msgstr "Lapozó elrejtése/megjelenítése" -#: templates/js/translated/tables.js:558 -msgid "Refresh" -msgstr "Frissítés" - #: templates/js/translated/tables.js:561 msgid "Toggle" msgstr "Átváltás" diff --git a/InvenTree/locale/id/LC_MESSAGES/django.po b/InvenTree/locale/id/LC_MESSAGES/django.po index ad26b515ea..6baf79a631 100644 --- a/InvenTree/locale/id/LC_MESSAGES/django.po +++ b/InvenTree/locale/id/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-16 11:53+0000\n" -"PO-Revision-Date: 2022-08-16 21:35\n" +"POT-Creation-Date: 2022-08-18 05:14+0000\n" +"PO-Revision-Date: 2022-08-18 21:38\n" "Last-Translator: \n" "Language-Team: Indonesian\n" "Language: id_ID\n" @@ -40,10 +40,10 @@ msgstr "Masukkan tanggal" #: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825 #: stock/serializers.py:924 stock/serializers.py:1056 #: stock/templates/stock/stock_sidebar.html:25 -#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101 -#: templates/js/translated/company.js:964 templates/js/translated/order.js:2104 -#: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753 -#: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102 +#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1099 +#: templates/js/translated/company.js:964 templates/js/translated/order.js:2143 +#: templates/js/translated/order.js:2294 templates/js/translated/order.js:2792 +#: templates/js/translated/order.js:3743 templates/js/translated/order.js:4141 #: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980 msgid "Notes" msgstr "" @@ -211,11 +211,11 @@ msgstr "" #: InvenTree/models.py:402 company/models.py:124 company/models.py:276 #: company/models.py:510 order/models.py:84 order/models.py:1245 -#: part/models.py:802 +#: part/models.py:802 part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_base.html:164 #: templates/js/translated/company.js:656 -#: templates/js/translated/company.js:948 templates/js/translated/order.js:2742 -#: templates/js/translated/part.js:1514 +#: templates/js/translated/company.js:948 templates/js/translated/order.js:2781 +#: templates/js/translated/part.js:1510 msgid "Link" msgstr "" @@ -235,8 +235,8 @@ msgstr "" #: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665 #: common/models.py:1666 common/models.py:1889 common/models.py:1890 -#: common/models.py:2152 common/models.py:2153 part/models.py:2200 -#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257 +#: common/models.py:2152 common/models.py:2153 part/models.py:2247 +#: part/models.py:2267 plugin/models.py:256 plugin/models.py:257 #: report/templates/report/inventree_test_report_base.html:96 #: templates/js/translated/stock.js:2641 msgid "User" @@ -277,7 +277,7 @@ msgstr "" #: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875 #: company/models.py:358 label/models.py:101 part/models.py:746 -#: part/models.py:2378 plugin/models.py:94 report/models.py:152 +#: part/models.py:2425 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 #: templates/InvenTree/settings/plugin.html:51 #: templates/InvenTree/settings/plugin.html:134 @@ -287,7 +287,7 @@ msgstr "" #: templates/js/translated/company.js:758 #: templates/js/translated/notification.js:71 #: templates/js/translated/part.js:688 templates/js/translated/part.js:840 -#: templates/js/translated/part.js:1906 templates/js/translated/stock.js:2392 +#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2392 msgid "Name" msgstr "" @@ -297,19 +297,20 @@ msgstr "" #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:87 label/models.py:108 #: order/models.py:82 part/models.py:769 part/templates/part/category.html:80 -#: part/templates/part/part_base.html:167 report/models.py:165 +#: part/templates/part/part_base.html:167 +#: part/templates/part/part_scheduling.html:12 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 #: stock/templates/stock/location.html:108 #: templates/InvenTree/settings/plugin_settings.html:33 -#: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848 -#: templates/js/translated/build.js:2471 templates/js/translated/company.js:409 +#: templates/js/translated/bom.js:553 templates/js/translated/bom.js:846 +#: templates/js/translated/build.js:2504 templates/js/translated/company.js:409 #: templates/js/translated/company.js:667 -#: templates/js/translated/company.js:959 templates/js/translated/order.js:1720 -#: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531 +#: templates/js/translated/company.js:959 templates/js/translated/order.js:1759 +#: templates/js/translated/order.js:1991 templates/js/translated/order.js:2570 #: templates/js/translated/part.js:747 templates/js/translated/part.js:1153 -#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1942 -#: templates/js/translated/part.js:2011 templates/js/translated/stock.js:1743 +#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1938 +#: templates/js/translated/part.js:2007 templates/js/translated/stock.js:1743 #: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478 msgid "Description" msgstr "" @@ -323,7 +324,7 @@ msgid "parent" msgstr "" #: InvenTree/models.py:560 InvenTree/models.py:561 -#: templates/js/translated/part.js:1948 templates/js/translated/stock.js:2430 +#: templates/js/translated/part.js:1944 templates/js/translated/stock.js:2430 msgid "Path" msgstr "" @@ -335,7 +336,7 @@ msgstr "" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:55 part/models.py:2699 +#: InvenTree/serializers.py:55 part/models.py:2746 msgid "Must be a valid number" msgstr "" @@ -541,7 +542,7 @@ msgid "Returned" msgstr "" #: InvenTree/status_codes.py:141 order/models.py:1128 -#: templates/js/translated/order.js:3330 templates/js/translated/order.js:3679 +#: templates/js/translated/order.js:3369 templates/js/translated/order.js:3718 msgid "Shipped" msgstr "" @@ -728,7 +729,7 @@ msgstr "" #: report/templates/report/inventree_build_order_base.html:105 #: templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 -#: templates/js/translated/build.js:731 +#: templates/js/translated/build.js:763 msgid "Build Order" msgstr "" @@ -747,14 +748,14 @@ msgid "Build Order Reference" msgstr "" #: build/models.py:166 order/models.py:240 order/models.py:623 -#: order/models.py:904 part/models.py:2617 +#: order/models.py:904 part/models.py:2664 #: part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 -#: templates/js/translated/bom.js:692 templates/js/translated/bom.js:855 -#: templates/js/translated/build.js:1779 templates/js/translated/order.js:1983 -#: templates/js/translated/order.js:2184 templates/js/translated/order.js:3523 -#: templates/js/translated/order.js:4031 +#: templates/js/translated/bom.js:690 templates/js/translated/bom.js:853 +#: templates/js/translated/build.js:1811 templates/js/translated/order.js:2022 +#: templates/js/translated/order.js:2223 templates/js/translated/order.js:3562 +#: templates/js/translated/order.js:4070 msgid "Reference" msgstr "" @@ -762,7 +763,7 @@ msgstr "" msgid "Brief description of the build" msgstr "" -#: build/models.py:185 build/templates/build/build_base.html:169 +#: build/models.py:185 build/templates/build/build_base.html:172 #: build/templates/build/detail.html:87 msgid "Parent Build" msgstr "" @@ -771,13 +772,13 @@ msgstr "" msgid "BuildOrder to which this build is allocated" msgstr "" -#: build/models.py:191 build/templates/build/build_base.html:77 +#: build/models.py:191 build/templates/build/build_base.html:80 #: build/templates/build/detail.html:29 company/models.py:670 #: order/models.py:1001 order/models.py:1112 order/models.py:1113 -#: part/models.py:343 part/models.py:2146 part/models.py:2161 -#: part/models.py:2180 part/models.py:2198 part/models.py:2297 -#: part/models.py:2417 part/models.py:2507 part/models.py:2592 -#: part/models.py:2868 part/serializers.py:813 +#: part/models.py:343 part/models.py:2193 part/models.py:2208 +#: part/models.py:2227 part/models.py:2245 part/models.py:2344 +#: part/models.py:2464 part/models.py:2554 part/models.py:2639 +#: part/models.py:2915 part/serializers.py:813 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -789,17 +790,17 @@ msgstr "" #: templates/email/build_order_required_stock.html:17 #: templates/email/low_stock_notification.html:16 #: templates/email/overdue_build_order.html:16 -#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:553 -#: templates/js/translated/bom.js:691 templates/js/translated/bom.js:802 -#: templates/js/translated/build.js:1156 templates/js/translated/build.js:1649 -#: templates/js/translated/build.js:2085 templates/js/translated/build.js:2476 +#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:552 +#: templates/js/translated/bom.js:689 templates/js/translated/bom.js:800 +#: templates/js/translated/build.js:1188 templates/js/translated/build.js:1681 +#: templates/js/translated/build.js:2118 templates/js/translated/build.js:2509 #: templates/js/translated/company.js:266 #: templates/js/translated/company.js:496 #: templates/js/translated/company.js:608 -#: templates/js/translated/company.js:868 templates/js/translated/order.js:103 -#: templates/js/translated/order.js:934 templates/js/translated/order.js:1387 -#: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885 -#: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507 +#: templates/js/translated/company.js:868 templates/js/translated/order.js:104 +#: templates/js/translated/order.js:973 templates/js/translated/order.js:1426 +#: templates/js/translated/order.js:1976 templates/js/translated/order.js:2924 +#: templates/js/translated/order.js:3320 templates/js/translated/order.js:3546 #: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210 #: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586 #: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958 @@ -821,7 +822,7 @@ msgid "SalesOrder to which this build is allocated" msgstr "" #: build/models.py:213 build/serializers.py:800 -#: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873 +#: templates/js/translated/build.js:2106 templates/js/translated/order.js:2912 msgid "Source Location" msgstr "" @@ -862,7 +863,7 @@ msgid "Build status code" msgstr "" #: build/models.py:251 build/serializers.py:225 order/serializers.py:447 -#: stock/models.py:662 templates/js/translated/order.js:1247 +#: stock/models.py:662 templates/js/translated/order.js:1286 msgid "Batch Code" msgstr "" @@ -871,7 +872,7 @@ msgid "Batch code for this build output" msgstr "" #: build/models.py:258 order/models.py:86 part/models.py:938 -#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544 +#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2583 msgid "Creation Date" msgstr "" @@ -884,7 +885,7 @@ msgid "Target date for build completion. Build will be overdue after this date." msgstr "" #: build/models.py:266 order/models.py:286 -#: templates/js/translated/build.js:2553 +#: templates/js/translated/build.js:2586 msgid "Completion Date" msgstr "" @@ -892,7 +893,7 @@ msgstr "" msgid "completed by" msgstr "" -#: build/models.py:280 templates/js/translated/build.js:2521 +#: build/models.py:280 templates/js/translated/build.js:2554 msgid "Issued by" msgstr "" @@ -900,12 +901,12 @@ msgstr "" msgid "User who issued this build order" msgstr "" -#: build/models.py:289 build/templates/build/build_base.html:190 +#: build/models.py:289 build/templates/build/build_base.html:193 #: build/templates/build/detail.html:115 order/models.py:100 #: order/templates/order/order_base.html:176 #: order/templates/order/sales_order_base.html:183 part/models.py:942 #: report/templates/report/inventree_build_order_base.html:158 -#: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754 +#: templates/js/translated/build.js:2566 templates/js/translated/order.js:1793 msgid "Responsible" msgstr "" @@ -972,7 +973,7 @@ msgid "Selected stock item not found in BOM" msgstr "" #: build/models.py:1328 stock/templates/stock/item_base.html:177 -#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2455 +#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2488 #: templates/navbar.html:38 msgid "Build" msgstr "" @@ -986,11 +987,11 @@ msgstr "" #: stock/serializers.py:882 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:199 -#: templates/js/translated/build.js:741 templates/js/translated/build.js:746 -#: templates/js/translated/build.js:2087 templates/js/translated/build.js:2638 -#: templates/js/translated/order.js:104 templates/js/translated/order.js:2886 -#: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193 -#: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380 +#: templates/js/translated/build.js:773 templates/js/translated/build.js:778 +#: templates/js/translated/build.js:2120 templates/js/translated/build.js:2671 +#: templates/js/translated/order.js:105 templates/js/translated/order.js:2925 +#: templates/js/translated/order.js:3227 templates/js/translated/order.js:3232 +#: templates/js/translated/order.js:3327 templates/js/translated/order.js:3419 #: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752 #: templates/js/translated/stock.js:2577 msgid "Stock Item" @@ -1001,13 +1002,13 @@ msgid "Source stock item" msgstr "" #: build/models.py:1358 build/serializers.py:193 -#: build/templates/build/build_base.html:82 +#: build/templates/build/build_base.html:85 #: build/templates/build/detail.html:34 common/models.py:1697 #: company/templates/company/supplier_part.html:279 order/models.py:897 #: order/models.py:1423 order/serializers.py:1155 #: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40 -#: part/models.py:2608 part/templates/part/detail.html:937 -#: part/templates/part/detail.html:1023 +#: part/models.py:2655 part/templates/part/detail.html:951 +#: part/templates/part/detail.html:1037 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 #: report/templates/report/inventree_build_order_base.html:113 @@ -1018,20 +1019,20 @@ msgstr "" #: stock/serializers.py:293 stock/templates/stock/item_base.html:292 #: stock/templates/stock/item_base.html:300 #: templates/email/build_order_completed.html:18 -#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:693 -#: templates/js/translated/bom.js:863 templates/js/translated/build.js:426 -#: templates/js/translated/build.js:578 templates/js/translated/build.js:768 -#: templates/js/translated/build.js:1178 templates/js/translated/build.js:1675 -#: templates/js/translated/build.js:2088 +#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:691 +#: templates/js/translated/bom.js:861 templates/js/translated/build.js:458 +#: templates/js/translated/build.js:610 templates/js/translated/build.js:800 +#: templates/js/translated/build.js:1210 templates/js/translated/build.js:1707 +#: templates/js/translated/build.js:2121 #: templates/js/translated/model_renderers.js:120 -#: templates/js/translated/order.js:120 templates/js/translated/order.js:937 -#: templates/js/translated/order.js:1989 templates/js/translated/order.js:2190 -#: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207 -#: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386 -#: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037 -#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2156 -#: templates/js/translated/part.js:2387 templates/js/translated/part.js:2421 -#: templates/js/translated/part.js:2499 templates/js/translated/stock.js:458 +#: templates/js/translated/order.js:121 templates/js/translated/order.js:976 +#: templates/js/translated/order.js:2028 templates/js/translated/order.js:2229 +#: templates/js/translated/order.js:2926 templates/js/translated/order.js:3246 +#: templates/js/translated/order.js:3333 templates/js/translated/order.js:3425 +#: templates/js/translated/order.js:3568 templates/js/translated/order.js:4076 +#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2152 +#: templates/js/translated/part.js:2602 templates/js/translated/part.js:2636 +#: templates/js/translated/part.js:2714 templates/js/translated/stock.js:458 #: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782 #: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711 msgid "Quantity" @@ -1050,7 +1051,7 @@ msgid "Destination stock item" msgstr "" #: build/serializers.py:138 build/serializers.py:674 -#: templates/js/translated/build.js:1166 +#: templates/js/translated/build.js:1198 msgid "Build Output" msgstr "" @@ -1090,7 +1091,7 @@ msgid "Integer quantity required, as the bill of materials contains trackable pa msgstr "" #: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159 -#: stock/serializers.py:311 templates/js/translated/order.js:1258 +#: stock/serializers.py:311 templates/js/translated/order.js:1297 #: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459 msgid "Serial Numbers" msgstr "" @@ -1120,10 +1121,10 @@ msgstr "" #: stock/serializers.py:917 stock/serializers.py:1150 #: stock/templates/stock/item_base.html:390 #: templates/js/translated/barcode.js:436 -#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753 -#: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285 -#: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305 -#: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394 +#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:785 +#: templates/js/translated/build.js:1719 templates/js/translated/order.js:1324 +#: templates/js/translated/order.js:3239 templates/js/translated/order.js:3344 +#: templates/js/translated/order.js:3352 templates/js/translated/order.js:3433 #: templates/js/translated/part.js:181 templates/js/translated/stock.js:588 #: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960 #: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518 @@ -1134,12 +1135,12 @@ msgstr "" msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:373 build/templates/build/build_base.html:142 +#: build/serializers.py:373 build/templates/build/build_base.html:145 #: build/templates/build/detail.html:62 order/models.py:642 #: order/serializers.py:465 stock/templates/stock/item_base.html:423 -#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505 -#: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724 -#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829 +#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2538 +#: templates/js/translated/order.js:1431 templates/js/translated/order.js:1763 +#: templates/js/translated/order.js:2575 templates/js/translated/stock.js:1829 #: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727 msgid "Status" msgstr "" @@ -1196,7 +1197,7 @@ msgstr "" msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:522 templates/js/translated/build.js:195 +#: build/serializers.py:522 templates/js/translated/build.js:227 msgid "Required stock has not been fully allocated" msgstr "" @@ -1208,7 +1209,7 @@ msgstr "" msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:538 templates/js/translated/build.js:199 +#: build/serializers.py:538 templates/js/translated/build.js:231 msgid "Required build quantity has not been completed" msgstr "" @@ -1216,8 +1217,8 @@ msgstr "" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726 -#: part/models.py:2860 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2773 +#: part/models.py:2907 msgid "BOM Item" msgstr "" @@ -1322,66 +1323,70 @@ msgid "Cancel Build" msgstr "" #: build/templates/build/build_base.html:59 +msgid "Duplicate Build" +msgstr "" + +#: build/templates/build/build_base.html:62 msgid "Delete Build" msgstr "" -#: build/templates/build/build_base.html:64 -#: build/templates/build/build_base.html:65 +#: build/templates/build/build_base.html:67 +#: build/templates/build/build_base.html:68 msgid "Complete Build" msgstr "" -#: build/templates/build/build_base.html:87 +#: build/templates/build/build_base.html:90 msgid "Build Description" msgstr "" -#: build/templates/build/build_base.html:95 +#: build/templates/build/build_base.html:98 msgid "No build outputs have been created for this build order" msgstr "" -#: build/templates/build/build_base.html:101 +#: build/templates/build/build_base.html:104 #, python-format msgid "This Build Order is allocated to Sales Order %(link)s" msgstr "" -#: build/templates/build/build_base.html:108 +#: build/templates/build/build_base.html:111 #, python-format msgid "This Build Order is a child of Build Order %(link)s" msgstr "" -#: build/templates/build/build_base.html:115 +#: build/templates/build/build_base.html:118 msgid "Build Order is ready to mark as completed" msgstr "" -#: build/templates/build/build_base.html:120 +#: build/templates/build/build_base.html:123 msgid "Build Order cannot be completed as outstanding outputs remain" msgstr "" -#: build/templates/build/build_base.html:125 +#: build/templates/build/build_base.html:128 msgid "Required build quantity has not yet been completed" msgstr "" -#: build/templates/build/build_base.html:130 +#: build/templates/build/build_base.html:133 msgid "Stock has not been fully allocated to this Build Order" msgstr "" -#: build/templates/build/build_base.html:151 +#: build/templates/build/build_base.html:154 #: build/templates/build/detail.html:131 order/models.py:910 #: order/templates/order/order_base.html:162 #: order/templates/order/sales_order_base.html:164 #: report/templates/report/inventree_build_order_base.html:125 -#: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741 -#: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552 -#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042 +#: templates/js/translated/build.js:2578 templates/js/translated/order.js:1780 +#: templates/js/translated/order.js:2090 templates/js/translated/order.js:2591 +#: templates/js/translated/order.js:3631 templates/js/translated/part.js:1042 msgid "Target Date" msgstr "" -#: build/templates/build/build_base.html:156 +#: build/templates/build/build_base.html:159 #, python-format msgid "This build was due on %(target)s" msgstr "" -#: build/templates/build/build_base.html:156 -#: build/templates/build/build_base.html:201 +#: build/templates/build/build_base.html:159 +#: build/templates/build/build_base.html:204 #: order/templates/order/order_base.html:98 #: order/templates/order/sales_order_base.html:94 #: templates/js/translated/table_filters.js:320 @@ -1390,14 +1395,14 @@ msgstr "" msgid "Overdue" msgstr "" -#: build/templates/build/build_base.html:163 +#: build/templates/build/build_base.html:166 #: build/templates/build/detail.html:67 build/templates/build/detail.html:142 #: order/templates/order/sales_order_base.html:171 #: templates/js/translated/table_filters.js:400 msgid "Completed" msgstr "" -#: build/templates/build/build_base.html:176 +#: build/templates/build/build_base.html:179 #: build/templates/build/detail.html:94 order/models.py:1105 #: order/models.py:1199 order/models.py:1330 #: order/templates/order/sales_order_base.html:9 @@ -1406,17 +1411,17 @@ msgstr "" #: report/templates/report/inventree_so_report.html:77 #: stock/templates/stock/item_base.html:370 #: templates/email/overdue_sales_order.html:15 -#: templates/js/translated/order.js:2498 +#: templates/js/translated/order.js:2537 msgid "Sales Order" msgstr "" -#: build/templates/build/build_base.html:183 +#: build/templates/build/build_base.html:186 #: build/templates/build/detail.html:108 #: report/templates/report/inventree_build_order_base.html:152 msgid "Issued By" msgstr "" -#: build/templates/build/build_base.html:245 +#: build/templates/build/build_base.html:256 msgid "Delete Build Order" msgstr "" @@ -1433,7 +1438,7 @@ msgid "Stock can be taken from any available location." msgstr "" #: build/templates/build/detail.html:49 order/models.py:1023 -#: templates/js/translated/order.js:1393 templates/js/translated/order.js:2093 +#: templates/js/translated/order.js:1432 templates/js/translated/order.js:2132 msgid "Destination" msgstr "" @@ -1447,7 +1452,7 @@ msgstr "" #: build/templates/build/detail.html:80 #: stock/templates/stock/item_base.html:170 -#: templates/js/translated/build.js:1182 +#: templates/js/translated/build.js:1214 #: templates/js/translated/model_renderers.js:124 #: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843 #: templates/js/translated/stock.js:2734 @@ -1459,7 +1464,7 @@ msgstr "" #: build/templates/build/detail.html:126 #: order/templates/order/order_base.html:149 #: order/templates/order/sales_order_base.html:158 -#: templates/js/translated/build.js:2513 +#: templates/js/translated/build.js:2546 msgid "Created" msgstr "" @@ -1479,7 +1484,7 @@ msgstr "" msgid "Allocate Stock to Build" msgstr "" -#: build/templates/build/detail.html:176 templates/js/translated/build.js:1901 +#: build/templates/build/detail.html:176 templates/js/translated/build.js:1934 msgid "Unallocate stock" msgstr "" @@ -1510,7 +1515,7 @@ msgstr "" #: build/templates/build/detail.html:187 #: company/templates/company/detail.html:37 #: company/templates/company/detail.html:85 -#: part/templates/part/category.html:183 templates/js/translated/order.js:977 +#: part/templates/part/category.html:183 templates/js/translated/order.js:1016 msgid "Order Parts" msgstr "" @@ -1582,7 +1587,7 @@ msgstr "" #: order/templates/order/po_sidebar.html:9 #: order/templates/order/purchase_order_detail.html:82 #: order/templates/order/sales_order_detail.html:135 -#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:207 +#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:212 #: part/templates/part/part_sidebar.html:57 stock/templates/stock/item.html:117 #: stock/templates/stock/stock_sidebar.html:23 msgid "Attachments" @@ -1600,7 +1605,7 @@ msgstr "" msgid "All untracked stock items have been allocated" msgstr "" -#: build/templates/build/index.html:18 part/templates/part/detail.html:313 +#: build/templates/build/index.html:18 part/templates/part/detail.html:318 msgid "New Build Order" msgstr "" @@ -1845,7 +1850,7 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:951 part/models.py:2419 report/models.py:158 +#: common/models.py:951 part/models.py:2466 report/models.py:158 #: templates/js/translated/table_filters.js:38 #: templates/js/translated/table_filters.js:484 msgid "Template" @@ -1855,7 +1860,7 @@ msgstr "" msgid "Parts are templates by default" msgstr "" -#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448 +#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1446 #: templates/js/translated/table_filters.js:176 #: templates/js/translated/table_filters.js:447 msgid "Assembly" @@ -2591,7 +2596,7 @@ msgstr "" #: common/models.py:1705 company/serializers.py:366 #: company/templates/company/supplier_part.html:284 order/models.py:938 -#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2161 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2157 msgid "Price" msgstr "" @@ -2830,7 +2835,7 @@ msgstr "" #: company/models.py:248 company/models.py:481 stock/models.py:598 #: stock/serializers.py:87 stock/templates/stock/item_base.html:148 -#: templates/js/translated/bom.js:543 +#: templates/js/translated/bom.js:542 msgid "Base Part" msgstr "" @@ -2859,7 +2864,7 @@ msgstr "" #: templates/js/translated/company.js:269 #: templates/js/translated/company.js:497 #: templates/js/translated/company.js:649 -#: templates/js/translated/company.js:937 templates/js/translated/order.js:1971 +#: templates/js/translated/company.js:937 templates/js/translated/order.js:2010 #: templates/js/translated/part.js:247 templates/js/translated/part.js:1027 msgid "MPN" msgstr "" @@ -2899,7 +2904,7 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:372 part/models.py:888 part/models.py:2386 +#: company/models.py:372 part/models.py:888 part/models.py:2433 #: part/templates/part/part_base.html:280 #: templates/InvenTree/settings/settings.html:352 #: templates/js/translated/company.js:770 templates/js/translated/part.js:855 @@ -2921,7 +2926,7 @@ msgstr "" #: templates/email/overdue_purchase_order.html:16 #: templates/js/translated/company.js:268 #: templates/js/translated/company.js:401 -#: templates/js/translated/company.js:893 templates/js/translated/order.js:1707 +#: templates/js/translated/company.js:893 templates/js/translated/order.js:1746 #: templates/js/translated/part.js:217 templates/js/translated/part.js:995 #: templates/js/translated/table_filters.js:423 msgid "Supplier" @@ -2933,7 +2938,7 @@ msgstr "" #: company/models.py:497 company/templates/company/supplier_part.html:118 #: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267 -#: templates/js/translated/order.js:1958 templates/js/translated/part.js:228 +#: templates/js/translated/order.js:1997 templates/js/translated/part.js:228 #: templates/js/translated/part.js:1013 msgid "SKU" msgstr "" @@ -2955,17 +2960,17 @@ msgid "Supplier part description" msgstr "" #: company/models.py:522 company/templates/company/supplier_part.html:146 -#: part/models.py:2620 part/templates/part/upload_bom.html:59 +#: part/models.py:2667 part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401 msgid "Note" msgstr "" -#: company/models.py:526 part/models.py:1742 +#: company/models.py:526 part/models.py:1789 msgid "base cost" msgstr "" -#: company/models.py:526 part/models.py:1742 +#: company/models.py:526 part/models.py:1789 msgid "Minimum charge (e.g. stocking fee)" msgstr "" @@ -2979,7 +2984,7 @@ msgstr "" msgid "Part packaging" msgstr "" -#: company/models.py:530 part/models.py:1744 +#: company/models.py:530 part/models.py:1791 msgid "multiple" msgstr "" @@ -2990,8 +2995,8 @@ msgstr "" #: company/models.py:538 company/templates/company/supplier_part.html:94 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789 -#: templates/js/translated/build.js:2645 templates/js/translated/company.js:979 +#: templates/js/translated/bom.js:911 templates/js/translated/build.js:1821 +#: templates/js/translated/build.js:2678 templates/js/translated/company.js:979 #: templates/js/translated/part.js:600 templates/js/translated/part.js:603 #: templates/js/translated/table_filters.js:186 msgid "Available" @@ -3028,7 +3033,7 @@ msgid "Company" msgstr "" #: company/templates/company/company_base.html:22 -#: templates/js/translated/order.js:540 +#: templates/js/translated/order.js:579 msgid "Create Purchase Order" msgstr "" @@ -3069,7 +3074,7 @@ msgstr "" #: stock/models.py:644 stock/serializers.py:811 #: stock/templates/stock/item_base.html:401 #: templates/email/overdue_sales_order.html:16 -#: templates/js/translated/company.js:393 templates/js/translated/order.js:2513 +#: templates/js/translated/company.js:393 templates/js/translated/order.js:2552 #: templates/js/translated/stock.js:2559 #: templates/js/translated/table_filters.js:427 msgid "Customer" @@ -3105,7 +3110,7 @@ msgstr "" #: company/templates/company/detail.html:19 #: company/templates/company/manufacturer_part.html:123 -#: part/templates/part/detail.html:354 +#: part/templates/part/detail.html:359 msgid "New Supplier Part" msgstr "" @@ -3134,7 +3139,7 @@ msgstr "" msgid "Create new manufacturer part" msgstr "" -#: company/templates/company/detail.html:66 part/templates/part/detail.html:384 +#: company/templates/company/detail.html:66 part/templates/part/detail.html:389 msgid "New Manufacturer Part" msgstr "" @@ -3148,7 +3153,7 @@ msgstr "" #: order/templates/order/order_base.html:13 #: order/templates/order/purchase_orders.html:8 #: order/templates/order/purchase_orders.html:12 -#: part/templates/part/detail.html:79 part/templates/part/part_sidebar.html:37 +#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:37 #: templates/InvenTree/index.html:252 templates/InvenTree/search.html:198 #: templates/InvenTree/settings/sidebar.html:49 #: templates/js/translated/search.js:275 templates/navbar.html:50 @@ -3171,7 +3176,7 @@ msgstr "" #: order/templates/order/sales_order_base.html:13 #: order/templates/order/sales_orders.html:8 #: order/templates/order/sales_orders.html:15 -#: part/templates/part/detail.html:102 part/templates/part/part_sidebar.html:41 +#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:41 #: templates/InvenTree/index.html:283 templates/InvenTree/search.html:218 #: templates/InvenTree/settings/sidebar.html:51 #: templates/js/translated/search.js:299 templates/navbar.html:61 @@ -3190,7 +3195,7 @@ msgid "New Sales Order" msgstr "" #: company/templates/company/detail.html:168 -#: templates/js/translated/build.js:1660 +#: templates/js/translated/build.js:1692 msgid "Assigned Stock" msgstr "" @@ -3206,7 +3211,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:35 #: company/templates/company/supplier_part.html:186 -#: part/templates/part/detail.html:82 part/templates/part/part_base.html:80 +#: part/templates/part/detail.html:87 part/templates/part/part_base.html:80 msgid "Order part" msgstr "" @@ -3237,13 +3242,13 @@ msgid "Suppliers" msgstr "" #: company/templates/company/manufacturer_part.html:136 -#: part/templates/part/detail.html:365 +#: part/templates/part/detail.html:370 msgid "Delete supplier parts" msgstr "" #: company/templates/company/manufacturer_part.html:136 #: company/templates/company/manufacturer_part.html:183 -#: part/templates/part/detail.html:366 part/templates/part/detail.html:396 +#: part/templates/part/detail.html:371 part/templates/part/detail.html:401 #: templates/js/translated/forms.js:453 templates/js/translated/helpers.js:33 #: users/models.py:220 msgid "Delete" @@ -3252,12 +3257,12 @@ msgstr "" #: company/templates/company/manufacturer_part.html:166 #: company/templates/company/manufacturer_part_sidebar.html:5 #: part/templates/part/category_sidebar.html:19 -#: part/templates/part/detail.html:181 part/templates/part/part_sidebar.html:8 +#: part/templates/part/detail.html:186 part/templates/part/part_sidebar.html:8 msgid "Parameters" msgstr "" #: company/templates/company/manufacturer_part.html:170 -#: part/templates/part/detail.html:186 +#: part/templates/part/detail.html:191 #: templates/InvenTree/settings/category.html:12 #: templates/InvenTree/settings/part.html:68 msgid "New Parameter" @@ -3268,7 +3273,7 @@ msgid "Delete parameters" msgstr "" #: company/templates/company/manufacturer_part.html:245 -#: part/templates/part/detail.html:826 +#: part/templates/part/detail.html:840 msgid "Add Parameter" msgstr "" @@ -3291,7 +3296,7 @@ msgstr "" #: company/templates/company/supplier_part.html:7 #: company/templates/company/supplier_part.html:24 stock/models.py:607 #: stock/templates/stock/item_base.html:238 -#: templates/js/translated/company.js:909 templates/js/translated/order.js:935 +#: templates/js/translated/company.js:909 templates/js/translated/order.js:974 #: templates/js/translated/stock.js:1933 msgid "Supplier Part" msgstr "" @@ -3303,7 +3308,7 @@ msgstr "" #: company/templates/company/supplier_part.html:40 #: company/templates/company/supplier_part.html:41 #: company/templates/company/supplier_part.html:187 -#: part/templates/part/detail.html:83 +#: part/templates/part/detail.html:88 msgid "Order Part" msgstr "" @@ -3358,7 +3363,7 @@ msgstr "" #: company/templates/company/supplier_part.html:212 #: company/templates/company/supplier_part.html:326 -#: part/templates/part/prices.html:276 templates/js/translated/part.js:2233 +#: part/templates/part/prices.html:276 templates/js/translated/part.js:2229 msgid "Add Price Break" msgstr "" @@ -3367,12 +3372,12 @@ msgid "No price break information found" msgstr "" #: company/templates/company/supplier_part.html:252 -#: templates/js/translated/part.js:2243 +#: templates/js/translated/part.js:2239 msgid "Delete Price Break" msgstr "" #: company/templates/company/supplier_part.html:266 -#: templates/js/translated/part.js:2257 +#: templates/js/translated/part.js:2253 msgid "Edit Price Break" msgstr "" @@ -3398,10 +3403,9 @@ msgstr "" #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:151 #: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751 -#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460 -#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754 -#: templates/navbar.html:31 +#: templates/js/translated/part.js:751 templates/js/translated/part.js:1299 +#: templates/js/translated/part.js:1460 templates/js/translated/stock.js:959 +#: templates/js/translated/stock.js:1754 templates/navbar.html:31 msgid "Stock" msgstr "" @@ -3554,7 +3558,7 @@ msgid "Company from which the items are being ordered" msgstr "" #: order/models.py:262 order/templates/order/order_base.html:124 -#: templates/js/translated/order.js:1716 +#: templates/js/translated/order.js:1755 msgid "Supplier Reference" msgstr "" @@ -3611,7 +3615,7 @@ msgid "Target date for order completion. Order will be overdue after this date." msgstr "" #: order/models.py:652 order/models.py:1204 -#: templates/js/translated/order.js:2560 templates/js/translated/order.js:2722 +#: templates/js/translated/order.js:2599 templates/js/translated/order.js:2761 msgid "Shipment Date" msgstr "" @@ -3673,7 +3677,7 @@ msgstr "" #: order/models.py:983 order/models.py:1063 order/models.py:1104 #: order/models.py:1198 order/models.py:1330 -#: templates/js/translated/order.js:3178 +#: templates/js/translated/order.js:3217 msgid "Order" msgstr "" @@ -3683,7 +3687,7 @@ msgstr "" #: report/templates/report/inventree_po_report.html:76 #: stock/templates/stock/item_base.html:184 #: templates/email/overdue_purchase_order.html:15 -#: templates/js/translated/order.js:936 templates/js/translated/order.js:1691 +#: templates/js/translated/order.js:975 templates/js/translated/order.js:1730 #: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913 #: templates/js/translated/stock.js:2540 msgid "Purchase Order" @@ -3694,7 +3698,7 @@ msgid "Supplier part" msgstr "" #: order/models.py:1009 order/templates/order/order_base.html:169 -#: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073 +#: templates/js/translated/order.js:1429 templates/js/translated/order.js:2112 #: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091 #: templates/js/translated/table_filters.js:338 msgid "Received" @@ -3880,11 +3884,11 @@ msgstr "" msgid "Select destination location for received items" msgstr "" -#: order/serializers.py:448 templates/js/translated/order.js:1248 +#: order/serializers.py:448 templates/js/translated/order.js:1287 msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:456 templates/js/translated/order.js:1259 +#: order/serializers.py:456 templates/js/translated/order.js:1298 msgid "Enter serial numbers for incoming stock items" msgstr "" @@ -4061,10 +4065,6 @@ msgstr "" msgid "Total cost could not be calculated" msgstr "" -#: order/templates/order/order_base.html:243 -msgid "Edit Purchase Order" -msgstr "" - #: order/templates/order/order_wizard/match_parts.html:12 #: part/templates/part/import_wizard/ajax_match_references.html:12 #: part/templates/part/import_wizard/match_references.html:12 @@ -4091,10 +4091,10 @@ msgstr "" #: part/templates/part/import_wizard/ajax_match_fields.html:64 #: part/templates/part/import_wizard/ajax_match_references.html:42 #: part/templates/part/import_wizard/match_references.html:49 -#: templates/js/translated/bom.js:77 templates/js/translated/build.js:431 -#: templates/js/translated/build.js:583 templates/js/translated/build.js:1974 -#: templates/js/translated/order.js:884 templates/js/translated/order.js:1337 -#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625 +#: templates/js/translated/bom.js:77 templates/js/translated/build.js:463 +#: templates/js/translated/build.js:615 templates/js/translated/build.js:2007 +#: templates/js/translated/order.js:923 templates/js/translated/order.js:1376 +#: templates/js/translated/order.js:2836 templates/js/translated/stock.js:625 #: templates/js/translated/stock.js:793 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" @@ -4130,7 +4130,7 @@ msgstr "" #: order/templates/order/purchase_order_detail.html:26 #: order/templates/order/sales_order_detail.html:22 #: order/templates/order/sales_order_detail.html:255 -#: templates/js/translated/order.js:557 +#: templates/js/translated/order.js:596 msgid "Add Line Item" msgstr "" @@ -4176,7 +4176,7 @@ msgid "Print packing list" msgstr "" #: order/templates/order/sales_order_base.html:60 -#: templates/js/translated/order.js:229 +#: templates/js/translated/order.js:230 msgid "Complete Shipments" msgstr "" @@ -4190,7 +4190,7 @@ msgid "This Sales Order has not been fully allocated" msgstr "" #: order/templates/order/sales_order_base.html:123 -#: templates/js/translated/order.js:2526 +#: templates/js/translated/order.js:2565 msgid "Customer Reference" msgstr "" @@ -4214,8 +4214,8 @@ msgid "Pending Shipments" msgstr "" #: order/templates/order/sales_order_detail.html:72 -#: templates/attachment_table.html:6 templates/js/translated/bom.js:1110 -#: templates/js/translated/build.js:1882 +#: templates/attachment_table.html:6 templates/js/translated/bom.js:1108 +#: templates/js/translated/build.js:1915 msgid "Actions" msgstr "" @@ -4257,35 +4257,35 @@ msgstr "" msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:584 +#: part/api.py:621 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:704 +#: part/api.py:758 msgid "Valid" msgstr "" -#: part/api.py:705 +#: part/api.py:759 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:711 +#: part/api.py:765 msgid "This option must be selected" msgstr "" -#: part/api.py:1134 +#: part/api.py:1188 msgid "Must be greater than zero" msgstr "" -#: part/api.py:1138 +#: part/api.py:1192 msgid "Must be a valid quantity" msgstr "" -#: part/api.py:1153 +#: part/api.py:1207 msgid "Specify location for initial part stock" msgstr "" -#: part/api.py:1184 part/api.py:1188 part/api.py:1203 part/api.py:1207 +#: part/api.py:1238 part/api.py:1242 part/api.py:1257 part/api.py:1261 msgid "This field is required" msgstr "" @@ -4299,14 +4299,14 @@ msgid "Total Stock" msgstr "" #: part/bom.py:129 part/templates/part/part_base.html:189 -#: templates/js/translated/order.js:3618 +#: templates/js/translated/order.js:3657 msgid "Available Stock" msgstr "" #: part/bom.py:130 part/templates/part/part_base.html:207 -#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590 +#: templates/js/translated/bom.js:945 templates/js/translated/part.js:590 #: templates/js/translated/part.js:610 templates/js/translated/part.js:1302 -#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490 +#: templates/js/translated/part.js:1483 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "" @@ -4335,7 +4335,7 @@ msgstr "" msgid "Icon (optional)" msgstr "" -#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16 +#: part/models.py:122 part/models.py:2509 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" @@ -4352,7 +4352,7 @@ msgstr "" #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82 #: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:1955 templates/js/translated/search.js:144 +#: templates/js/translated/part.js:1951 templates/js/translated/search.js:144 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "" @@ -4382,7 +4382,7 @@ msgstr "" msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:745 part/models.py:2516 +#: part/models.py:745 part/models.py:2563 msgid "Part name" msgstr "" @@ -4415,11 +4415,11 @@ msgstr "" msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:783 part/models.py:2218 part/models.py:2461 +#: part/models.py:783 part/models.py:2265 part/models.py:2508 #: part/templates/part/part_base.html:257 #: templates/InvenTree/settings/settings.html:232 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1668 +#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1664 msgid "Category" msgstr "" @@ -4530,245 +4530,245 @@ msgstr "" msgid "Creation User" msgstr "" -#: part/models.py:1744 +#: part/models.py:1791 msgid "Sell multiple" msgstr "" -#: part/models.py:2265 +#: part/models.py:2312 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:2282 +#: part/models.py:2329 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:2302 templates/js/translated/part.js:2006 +#: part/models.py:2349 templates/js/translated/part.js:2002 #: templates/js/translated/stock.js:1340 msgid "Test Name" msgstr "" -#: part/models.py:2303 +#: part/models.py:2350 msgid "Enter a name for the test" msgstr "" -#: part/models.py:2308 +#: part/models.py:2355 msgid "Test Description" msgstr "" -#: part/models.py:2309 +#: part/models.py:2356 msgid "Enter description for this test" msgstr "" -#: part/models.py:2314 templates/js/translated/part.js:2015 +#: part/models.py:2361 templates/js/translated/part.js:2011 #: templates/js/translated/table_filters.js:302 msgid "Required" msgstr "" -#: part/models.py:2315 +#: part/models.py:2362 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:2320 templates/js/translated/part.js:2023 +#: part/models.py:2367 templates/js/translated/part.js:2019 msgid "Requires Value" msgstr "" -#: part/models.py:2321 +#: part/models.py:2368 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:2326 templates/js/translated/part.js:2030 +#: part/models.py:2373 templates/js/translated/part.js:2026 msgid "Requires Attachment" msgstr "" -#: part/models.py:2327 +#: part/models.py:2374 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:2335 +#: part/models.py:2382 #, python-brace-format msgid "Illegal character in template name ({c})" msgstr "" -#: part/models.py:2371 +#: part/models.py:2418 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:2379 +#: part/models.py:2426 msgid "Parameter Name" msgstr "" -#: part/models.py:2386 +#: part/models.py:2433 msgid "Parameter Units" msgstr "" -#: part/models.py:2417 +#: part/models.py:2464 msgid "Parent Part" msgstr "" -#: part/models.py:2419 part/models.py:2467 part/models.py:2468 +#: part/models.py:2466 part/models.py:2514 part/models.py:2515 #: templates/InvenTree/settings/settings.html:227 msgid "Parameter Template" msgstr "" -#: part/models.py:2421 +#: part/models.py:2468 msgid "Data" msgstr "" -#: part/models.py:2421 +#: part/models.py:2468 msgid "Parameter Value" msgstr "" -#: part/models.py:2472 templates/InvenTree/settings/settings.html:236 +#: part/models.py:2519 templates/InvenTree/settings/settings.html:236 msgid "Default Value" msgstr "" -#: part/models.py:2473 +#: part/models.py:2520 msgid "Default Parameter Value" msgstr "" -#: part/models.py:2508 +#: part/models.py:2555 msgid "Part ID or part name" msgstr "" -#: part/models.py:2511 templates/js/translated/model_renderers.js:212 +#: part/models.py:2558 templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "" -#: part/models.py:2512 +#: part/models.py:2559 msgid "Unique part ID value" msgstr "" -#: part/models.py:2515 +#: part/models.py:2562 msgid "Part Name" msgstr "" -#: part/models.py:2519 +#: part/models.py:2566 msgid "Part IPN" msgstr "" -#: part/models.py:2520 +#: part/models.py:2567 msgid "Part IPN value" msgstr "" -#: part/models.py:2523 +#: part/models.py:2570 msgid "Level" msgstr "" -#: part/models.py:2524 +#: part/models.py:2571 msgid "BOM level" msgstr "" -#: part/models.py:2593 +#: part/models.py:2640 msgid "Select parent part" msgstr "" -#: part/models.py:2601 +#: part/models.py:2648 msgid "Sub part" msgstr "" -#: part/models.py:2602 +#: part/models.py:2649 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:2608 +#: part/models.py:2655 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:2610 part/templates/part/upload_bom.html:58 -#: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999 +#: part/models.py:2657 part/templates/part/upload_bom.html:58 +#: templates/js/translated/bom.js:872 templates/js/translated/bom.js:997 #: templates/js/translated/table_filters.js:100 msgid "Optional" msgstr "" -#: part/models.py:2610 +#: part/models.py:2657 msgid "This BOM item is optional" msgstr "" -#: part/models.py:2613 part/templates/part/upload_bom.html:55 +#: part/models.py:2660 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:2614 +#: part/models.py:2661 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:2617 +#: part/models.py:2664 msgid "BOM item reference" msgstr "" -#: part/models.py:2620 +#: part/models.py:2667 msgid "BOM item notes" msgstr "" -#: part/models.py:2622 +#: part/models.py:2669 msgid "Checksum" msgstr "" -#: part/models.py:2622 +#: part/models.py:2669 msgid "BOM line checksum" msgstr "" -#: part/models.py:2626 part/templates/part/upload_bom.html:57 -#: templates/js/translated/bom.js:1016 +#: part/models.py:2673 part/templates/part/upload_bom.html:57 +#: templates/js/translated/bom.js:1014 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:96 msgid "Inherited" msgstr "" -#: part/models.py:2627 +#: part/models.py:2674 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:2632 part/templates/part/upload_bom.html:56 -#: templates/js/translated/bom.js:1008 +#: part/models.py:2679 part/templates/part/upload_bom.html:56 +#: templates/js/translated/bom.js:1006 msgid "Allow Variants" msgstr "" -#: part/models.py:2633 +#: part/models.py:2680 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:2711 stock/models.py:468 +#: part/models.py:2758 stock/models.py:468 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:2720 part/models.py:2722 +#: part/models.py:2767 part/models.py:2769 msgid "Sub part must be specified" msgstr "" -#: part/models.py:2827 +#: part/models.py:2874 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:2848 +#: part/models.py:2895 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:2861 +#: part/models.py:2908 msgid "Parent BOM item" msgstr "" -#: part/models.py:2869 +#: part/models.py:2916 msgid "Substitute part" msgstr "" -#: part/models.py:2884 +#: part/models.py:2931 msgid "Part 1" msgstr "" -#: part/models.py:2888 +#: part/models.py:2935 msgid "Part 2" msgstr "" -#: part/models.py:2888 +#: part/models.py:2935 msgid "Select Related Part" msgstr "" -#: part/models.py:2906 +#: part/models.py:2953 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:2910 +#: part/models.py:2957 msgid "Duplicate relationship already exists" msgstr "" @@ -4876,7 +4876,7 @@ msgstr "" msgid "The BOM for %(part)s has not been validated." msgstr "" -#: part/templates/part/bom.html:30 part/templates/part/detail.html:264 +#: part/templates/part/bom.html:30 part/templates/part/detail.html:269 msgid "BOM actions" msgstr "" @@ -4945,8 +4945,8 @@ msgstr "" msgid "New Part" msgstr "" -#: part/templates/part/category.html:174 part/templates/part/detail.html:363 -#: part/templates/part/detail.html:394 +#: part/templates/part/category.html:174 part/templates/part/detail.html:368 +#: part/templates/part/detail.html:399 msgid "Options" msgstr "" @@ -5014,138 +5014,146 @@ msgstr "" msgid "Part Stock" msgstr "" -#: part/templates/part/detail.html:54 -msgid "Part Test Templates" +#: part/templates/part/detail.html:44 +msgid "Refresh scheduling data" +msgstr "" + +#: part/templates/part/detail.html:45 templates/js/translated/tables.js:558 +msgid "Refresh" msgstr "" #: part/templates/part/detail.html:59 +msgid "Part Test Templates" +msgstr "" + +#: part/templates/part/detail.html:64 msgid "Add Test Template" msgstr "" -#: part/templates/part/detail.html:116 stock/templates/stock/item.html:53 +#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53 msgid "Sales Order Allocations" msgstr "" -#: part/templates/part/detail.html:138 +#: part/templates/part/detail.html:143 msgid "Part Notes" msgstr "" -#: part/templates/part/detail.html:153 +#: part/templates/part/detail.html:158 msgid "Part Variants" msgstr "" -#: part/templates/part/detail.html:157 +#: part/templates/part/detail.html:162 msgid "Create new variant" msgstr "" -#: part/templates/part/detail.html:158 +#: part/templates/part/detail.html:163 msgid "New Variant" msgstr "" -#: part/templates/part/detail.html:185 +#: part/templates/part/detail.html:190 msgid "Add new parameter" msgstr "" -#: part/templates/part/detail.html:222 part/templates/part/part_sidebar.html:54 +#: part/templates/part/detail.html:227 part/templates/part/part_sidebar.html:54 msgid "Related Parts" msgstr "" -#: part/templates/part/detail.html:226 part/templates/part/detail.html:227 +#: part/templates/part/detail.html:231 part/templates/part/detail.html:232 msgid "Add Related" msgstr "" -#: part/templates/part/detail.html:247 part/templates/part/part_sidebar.html:17 +#: part/templates/part/detail.html:252 part/templates/part/part_sidebar.html:17 msgid "Bill of Materials" msgstr "" -#: part/templates/part/detail.html:252 +#: part/templates/part/detail.html:257 msgid "Export actions" msgstr "" -#: part/templates/part/detail.html:256 templates/js/translated/bom.js:284 +#: part/templates/part/detail.html:261 templates/js/translated/bom.js:284 msgid "Export BOM" msgstr "" -#: part/templates/part/detail.html:258 +#: part/templates/part/detail.html:263 msgid "Print BOM Report" msgstr "" -#: part/templates/part/detail.html:268 +#: part/templates/part/detail.html:273 msgid "Upload BOM" msgstr "" -#: part/templates/part/detail.html:269 templates/js/translated/part.js:274 +#: part/templates/part/detail.html:274 templates/js/translated/part.js:274 msgid "Copy BOM" msgstr "" -#: part/templates/part/detail.html:270 +#: part/templates/part/detail.html:275 msgid "Validate BOM" msgstr "" -#: part/templates/part/detail.html:275 +#: part/templates/part/detail.html:280 msgid "New BOM Item" msgstr "" -#: part/templates/part/detail.html:276 +#: part/templates/part/detail.html:281 msgid "Add BOM Item" msgstr "" -#: part/templates/part/detail.html:289 +#: part/templates/part/detail.html:294 msgid "Assemblies" msgstr "" -#: part/templates/part/detail.html:307 +#: part/templates/part/detail.html:312 msgid "Part Builds" msgstr "" -#: part/templates/part/detail.html:334 stock/templates/stock/item.html:38 +#: part/templates/part/detail.html:339 stock/templates/stock/item.html:38 msgid "Build Order Allocations" msgstr "" -#: part/templates/part/detail.html:350 +#: part/templates/part/detail.html:355 msgid "Part Suppliers" msgstr "" -#: part/templates/part/detail.html:380 +#: part/templates/part/detail.html:385 msgid "Part Manufacturers" msgstr "" -#: part/templates/part/detail.html:396 +#: part/templates/part/detail.html:401 msgid "Delete manufacturer parts" msgstr "" -#: part/templates/part/detail.html:612 +#: part/templates/part/detail.html:626 msgid "Create BOM Item" msgstr "" -#: part/templates/part/detail.html:656 +#: part/templates/part/detail.html:670 msgid "Related Part" msgstr "" -#: part/templates/part/detail.html:664 +#: part/templates/part/detail.html:678 msgid "Add Related Part" msgstr "" -#: part/templates/part/detail.html:756 +#: part/templates/part/detail.html:770 msgid "Add Test Result Template" msgstr "" -#: part/templates/part/detail.html:900 +#: part/templates/part/detail.html:914 #, python-format msgid "Purchase Unit Price - %(currency)s" msgstr "" -#: part/templates/part/detail.html:912 +#: part/templates/part/detail.html:926 #, python-format msgid "Unit Price-Cost Difference - %(currency)s" msgstr "" -#: part/templates/part/detail.html:924 +#: part/templates/part/detail.html:938 #, python-format msgid "Supplier Unit Cost - %(currency)s" msgstr "" -#: part/templates/part/detail.html:1013 +#: part/templates/part/detail.html:1027 #, python-format msgid "Unit Price - %(currency)s" msgstr "" @@ -5321,13 +5329,13 @@ msgstr "" msgid "Allocated to Sales Orders" msgstr "" -#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1037 +#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1035 msgid "Can Build" msgstr "" #: part/templates/part/part_base.html:238 templates/js/translated/part.js:593 #: templates/js/translated/part.js:613 templates/js/translated/part.js:1306 -#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1494 +#: templates/js/translated/part.js:1490 msgid "Building" msgstr "" @@ -5379,7 +5387,7 @@ msgid "Total Cost" msgstr "" #: part/templates/part/part_pricing.html:40 part/templates/part/prices.html:43 -#: templates/js/translated/bom.js:991 +#: templates/js/translated/bom.js:989 msgid "No supplier pricing available" msgstr "" @@ -5414,6 +5422,18 @@ msgstr "" msgid "No pricing information is available for this part." msgstr "" +#: part/templates/part/part_scheduling.html:13 +#: report/templates/report/inventree_test_report_base.html:97 +#: templates/InvenTree/settings/plugin.html:53 +#: templates/InvenTree/settings/plugin_settings.html:38 +#: templates/js/translated/order.js:1772 templates/js/translated/stock.js:2468 +msgid "Date" +msgstr "" + +#: part/templates/part/part_scheduling.html:14 +msgid "Scheduled Quantity" +msgstr "" + #: part/templates/part/part_sidebar.html:11 msgid "Variants" msgstr "" @@ -5462,7 +5482,7 @@ msgstr "" msgid "Calculation parameters" msgstr "" -#: part/templates/part/prices.html:160 templates/js/translated/bom.js:985 +#: part/templates/part/prices.html:160 templates/js/translated/bom.js:983 msgid "Supplier Cost" msgstr "" @@ -5501,7 +5521,7 @@ msgid "No sale pice history available for this part." msgstr "" #: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616 -#: templates/js/translated/part.js:1294 templates/js/translated/part.js:1498 +#: templates/js/translated/part.js:1294 msgid "No Stock" msgstr "" @@ -5893,11 +5913,11 @@ msgstr "" #: report/templates/report/inventree_test_report_base.html:79 #: stock/models.py:648 stock/templates/stock/item_base.html:322 -#: templates/js/translated/build.js:424 templates/js/translated/build.js:576 -#: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673 +#: templates/js/translated/build.js:456 templates/js/translated/build.js:608 +#: templates/js/translated/build.js:1208 templates/js/translated/build.js:1705 #: templates/js/translated/model_renderers.js:118 -#: templates/js/translated/order.js:118 templates/js/translated/order.js:3297 -#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490 +#: templates/js/translated/order.js:119 templates/js/translated/order.js:3336 +#: templates/js/translated/order.js:3423 templates/js/translated/stock.js:490 msgid "Serial Number" msgstr "" @@ -5915,13 +5935,6 @@ msgstr "" msgid "Result" msgstr "" -#: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:53 -#: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468 -msgid "Date" -msgstr "" - #: report/templates/report/inventree_test_report_base.html:108 msgid "Pass" msgstr "" @@ -6519,7 +6532,7 @@ msgid "Available Quantity" msgstr "" #: stock/templates/stock/item_base.html:394 -#: templates/js/translated/build.js:1695 +#: templates/js/translated/build.js:1727 msgid "No location set" msgstr "" @@ -7702,7 +7715,7 @@ msgid "The following parts are low on required stock" msgstr "" #: templates/email/build_order_required_stock.html:18 -#: templates/js/translated/bom.js:1483 +#: templates/js/translated/bom.js:1481 msgid "Required Quantity" msgstr "" @@ -7716,6 +7729,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:19 +#: templates/js/translated/part.js:2498 msgid "Minimum Quantity" msgstr "" @@ -7917,10 +7931,10 @@ msgstr "" msgid "Row Data" msgstr "" -#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:622 +#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:620 #: templates/js/translated/modals.js:56 templates/js/translated/modals.js:601 #: templates/js/translated/modals.js:695 templates/js/translated/modals.js:1003 -#: templates/js/translated/order.js:979 templates/modals.html:15 +#: templates/js/translated/order.js:1018 templates/modals.html:15 #: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50 msgid "Close" msgstr "" @@ -7930,12 +7944,12 @@ msgid "Download BOM Template" msgstr "" #: templates/js/translated/bom.js:253 templates/js/translated/bom.js:287 -#: templates/js/translated/order.js:760 templates/js/translated/tables.js:145 +#: templates/js/translated/order.js:799 templates/js/translated/tables.js:145 msgid "Format" msgstr "" #: templates/js/translated/bom.js:254 templates/js/translated/bom.js:288 -#: templates/js/translated/order.js:761 +#: templates/js/translated/order.js:800 msgid "Select file format" msgstr "" @@ -7991,390 +8005,390 @@ msgstr "" msgid "Remove substitute part" msgstr "" -#: templates/js/translated/bom.js:567 +#: templates/js/translated/bom.js:565 msgid "Select and add a new substitute part using the input below" msgstr "" -#: templates/js/translated/bom.js:578 +#: templates/js/translated/bom.js:576 msgid "Are you sure you wish to remove this substitute part link?" msgstr "" -#: templates/js/translated/bom.js:584 +#: templates/js/translated/bom.js:582 msgid "Remove Substitute Part" msgstr "" -#: templates/js/translated/bom.js:623 +#: templates/js/translated/bom.js:621 msgid "Add Substitute" msgstr "" -#: templates/js/translated/bom.js:624 +#: templates/js/translated/bom.js:622 msgid "Edit BOM Item Substitutes" msgstr "" -#: templates/js/translated/bom.js:686 +#: templates/js/translated/bom.js:684 msgid "All selected BOM items will be deleted" msgstr "" -#: templates/js/translated/bom.js:702 +#: templates/js/translated/bom.js:700 msgid "Delete selected BOM items?" msgstr "" -#: templates/js/translated/bom.js:821 +#: templates/js/translated/bom.js:819 msgid "Load BOM for subassembly" msgstr "" -#: templates/js/translated/bom.js:831 +#: templates/js/translated/bom.js:829 msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:835 templates/js/translated/build.js:1771 +#: templates/js/translated/bom.js:833 templates/js/translated/build.js:1803 msgid "Variant stock allowed" msgstr "" -#: templates/js/translated/bom.js:929 templates/js/translated/build.js:1816 -#: templates/js/translated/order.js:3632 +#: templates/js/translated/bom.js:927 templates/js/translated/build.js:1849 +#: templates/js/translated/order.js:3671 msgid "No Stock Available" msgstr "" -#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1820 +#: templates/js/translated/bom.js:932 templates/js/translated/build.js:1853 msgid "Includes variant and substitute stock" msgstr "" -#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822 +#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1855 #: templates/js/translated/part.js:763 msgid "Includes variant stock" msgstr "" -#: templates/js/translated/bom.js:938 templates/js/translated/build.js:1824 +#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1857 msgid "Includes substitute stock" msgstr "" -#: templates/js/translated/bom.js:956 +#: templates/js/translated/bom.js:954 msgid "Substitutes" msgstr "" -#: templates/js/translated/bom.js:971 +#: templates/js/translated/bom.js:969 msgid "Purchase Price Range" msgstr "" -#: templates/js/translated/bom.js:978 +#: templates/js/translated/bom.js:976 msgid "Purchase Price Average" msgstr "" -#: templates/js/translated/bom.js:1027 templates/js/translated/bom.js:1147 +#: templates/js/translated/bom.js:1025 templates/js/translated/bom.js:1145 msgid "View BOM" msgstr "" -#: templates/js/translated/bom.js:1054 +#: templates/js/translated/bom.js:1052 msgid "Including On Order" msgstr "" -#: templates/js/translated/bom.js:1118 +#: templates/js/translated/bom.js:1116 msgid "Validate BOM Item" msgstr "" -#: templates/js/translated/bom.js:1120 +#: templates/js/translated/bom.js:1118 msgid "This line has been validated" msgstr "" -#: templates/js/translated/bom.js:1122 +#: templates/js/translated/bom.js:1120 msgid "Edit substitute parts" msgstr "" -#: templates/js/translated/bom.js:1124 templates/js/translated/bom.js:1286 +#: templates/js/translated/bom.js:1122 templates/js/translated/bom.js:1284 msgid "Edit BOM Item" msgstr "" -#: templates/js/translated/bom.js:1126 +#: templates/js/translated/bom.js:1124 msgid "Delete BOM Item" msgstr "" -#: templates/js/translated/bom.js:1222 templates/js/translated/build.js:1617 +#: templates/js/translated/bom.js:1220 templates/js/translated/build.js:1649 msgid "No BOM items found" msgstr "" -#: templates/js/translated/bom.js:1466 templates/js/translated/build.js:1755 +#: templates/js/translated/bom.js:1464 templates/js/translated/build.js:1787 msgid "Required Part" msgstr "" -#: templates/js/translated/bom.js:1488 +#: templates/js/translated/bom.js:1486 msgid "Inherited from parent BOM" msgstr "" -#: templates/js/translated/build.js:86 +#: templates/js/translated/build.js:89 msgid "Edit Build Order" msgstr "" -#: templates/js/translated/build.js:120 +#: templates/js/translated/build.js:132 msgid "Create Build Order" msgstr "" -#: templates/js/translated/build.js:133 +#: templates/js/translated/build.js:165 msgid "Cancel Build Order" msgstr "" -#: templates/js/translated/build.js:142 +#: templates/js/translated/build.js:174 msgid "Are you sure you wish to cancel this build?" msgstr "" -#: templates/js/translated/build.js:148 +#: templates/js/translated/build.js:180 msgid "Stock items have been allocated to this build order" msgstr "" -#: templates/js/translated/build.js:155 +#: templates/js/translated/build.js:187 msgid "There are incomplete outputs remaining for this build order" msgstr "" -#: templates/js/translated/build.js:185 +#: templates/js/translated/build.js:217 msgid "Build order is ready to be completed" msgstr "" -#: templates/js/translated/build.js:190 +#: templates/js/translated/build.js:222 msgid "Build Order is incomplete" msgstr "" -#: templates/js/translated/build.js:222 +#: templates/js/translated/build.js:254 msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:263 templates/js/translated/stock.js:92 +#: templates/js/translated/build.js:295 templates/js/translated/stock.js:92 #: templates/js/translated/stock.js:214 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:265 templates/js/translated/stock.js:94 +#: templates/js/translated/build.js:297 templates/js/translated/stock.js:94 #: templates/js/translated/stock.js:216 msgid "Latest serial number" msgstr "" -#: templates/js/translated/build.js:274 +#: templates/js/translated/build.js:306 msgid "The Bill of Materials contains trackable parts" msgstr "" -#: templates/js/translated/build.js:275 +#: templates/js/translated/build.js:307 msgid "Build outputs must be generated individually" msgstr "" -#: templates/js/translated/build.js:283 +#: templates/js/translated/build.js:315 msgid "Trackable parts can have serial numbers specified" msgstr "" -#: templates/js/translated/build.js:284 +#: templates/js/translated/build.js:316 msgid "Enter serial numbers to generate multiple single build outputs" msgstr "" -#: templates/js/translated/build.js:291 +#: templates/js/translated/build.js:323 msgid "Create Build Output" msgstr "" -#: templates/js/translated/build.js:322 +#: templates/js/translated/build.js:354 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:333 +#: templates/js/translated/build.js:365 msgid "Unallocate stock from build output" msgstr "" -#: templates/js/translated/build.js:342 +#: templates/js/translated/build.js:374 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:350 +#: templates/js/translated/build.js:382 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:373 +#: templates/js/translated/build.js:405 msgid "Are you sure you wish to unallocate stock items from this build?" msgstr "" -#: templates/js/translated/build.js:391 +#: templates/js/translated/build.js:423 msgid "Unallocate Stock Items" msgstr "" -#: templates/js/translated/build.js:411 templates/js/translated/build.js:563 +#: templates/js/translated/build.js:443 templates/js/translated/build.js:595 msgid "Select Build Outputs" msgstr "" -#: templates/js/translated/build.js:412 templates/js/translated/build.js:564 +#: templates/js/translated/build.js:444 templates/js/translated/build.js:596 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:466 templates/js/translated/build.js:618 +#: templates/js/translated/build.js:498 templates/js/translated/build.js:650 msgid "Output" msgstr "" -#: templates/js/translated/build.js:484 +#: templates/js/translated/build.js:516 msgid "Complete Build Outputs" msgstr "" -#: templates/js/translated/build.js:631 +#: templates/js/translated/build.js:663 msgid "Delete Build Outputs" msgstr "" -#: templates/js/translated/build.js:720 +#: templates/js/translated/build.js:752 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:757 +#: templates/js/translated/build.js:789 msgid "Location not specified" msgstr "" -#: templates/js/translated/build.js:1136 +#: templates/js/translated/build.js:1168 msgid "No active build outputs found" msgstr "" -#: templates/js/translated/build.js:1205 +#: templates/js/translated/build.js:1237 msgid "Allocated Stock" msgstr "" -#: templates/js/translated/build.js:1212 +#: templates/js/translated/build.js:1244 msgid "No tracked BOM items for this build" msgstr "" -#: templates/js/translated/build.js:1234 +#: templates/js/translated/build.js:1266 msgid "Completed Tests" msgstr "" -#: templates/js/translated/build.js:1239 +#: templates/js/translated/build.js:1271 msgid "No required tests for this build" msgstr "" -#: templates/js/translated/build.js:1712 templates/js/translated/build.js:2656 -#: templates/js/translated/order.js:3332 +#: templates/js/translated/build.js:1744 templates/js/translated/build.js:2689 +#: templates/js/translated/order.js:3371 msgid "Edit stock allocation" msgstr "" -#: templates/js/translated/build.js:1714 templates/js/translated/build.js:2657 -#: templates/js/translated/order.js:3333 +#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2690 +#: templates/js/translated/order.js:3372 msgid "Delete stock allocation" msgstr "" -#: templates/js/translated/build.js:1732 +#: templates/js/translated/build.js:1764 msgid "Edit Allocation" msgstr "" -#: templates/js/translated/build.js:1742 +#: templates/js/translated/build.js:1774 msgid "Remove Allocation" msgstr "" -#: templates/js/translated/build.js:1767 +#: templates/js/translated/build.js:1799 msgid "Substitute parts available" msgstr "" -#: templates/js/translated/build.js:1784 +#: templates/js/translated/build.js:1816 msgid "Quantity Per" msgstr "" -#: templates/js/translated/build.js:1810 templates/js/translated/order.js:3639 +#: templates/js/translated/build.js:1843 templates/js/translated/order.js:3678 msgid "Insufficient stock available" msgstr "" -#: templates/js/translated/build.js:1812 templates/js/translated/order.js:3637 +#: templates/js/translated/build.js:1845 templates/js/translated/order.js:3676 msgid "Sufficient stock available" msgstr "" -#: templates/js/translated/build.js:1841 templates/js/translated/build.js:2086 -#: templates/js/translated/build.js:2652 templates/js/translated/order.js:3651 +#: templates/js/translated/build.js:1874 templates/js/translated/build.js:2119 +#: templates/js/translated/build.js:2685 templates/js/translated/order.js:3690 msgid "Allocated" msgstr "" -#: templates/js/translated/build.js:1889 templates/js/translated/order.js:3731 +#: templates/js/translated/build.js:1922 templates/js/translated/order.js:3770 msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:1893 templates/stock_table.html:50 +#: templates/js/translated/build.js:1926 templates/stock_table.html:50 msgid "Order stock" msgstr "" -#: templates/js/translated/build.js:1896 templates/js/translated/order.js:3724 +#: templates/js/translated/build.js:1929 templates/js/translated/order.js:3763 msgid "Allocate stock" msgstr "" -#: templates/js/translated/build.js:1935 templates/js/translated/label.js:172 -#: templates/js/translated/order.js:807 templates/js/translated/order.js:2859 +#: templates/js/translated/build.js:1968 templates/js/translated/label.js:172 +#: templates/js/translated/order.js:846 templates/js/translated/order.js:2898 #: templates/js/translated/report.js:225 msgid "Select Parts" msgstr "" -#: templates/js/translated/build.js:1936 templates/js/translated/order.js:2860 +#: templates/js/translated/build.js:1969 templates/js/translated/order.js:2899 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1985 templates/js/translated/order.js:2808 +#: templates/js/translated/build.js:2018 templates/js/translated/order.js:2847 msgid "Specify stock allocation quantity" msgstr "" -#: templates/js/translated/build.js:2059 +#: templates/js/translated/build.js:2092 msgid "All Parts Allocated" msgstr "" -#: templates/js/translated/build.js:2060 +#: templates/js/translated/build.js:2093 msgid "All selected parts have been fully allocated" msgstr "" -#: templates/js/translated/build.js:2074 templates/js/translated/order.js:2874 +#: templates/js/translated/build.js:2107 templates/js/translated/order.js:2913 msgid "Select source location (leave blank to take from all locations)" msgstr "" -#: templates/js/translated/build.js:2102 +#: templates/js/translated/build.js:2135 msgid "Allocate Stock Items to Build Order" msgstr "" -#: templates/js/translated/build.js:2113 templates/js/translated/order.js:2971 +#: templates/js/translated/build.js:2146 templates/js/translated/order.js:3010 msgid "No matching stock locations" msgstr "" -#: templates/js/translated/build.js:2185 templates/js/translated/order.js:3048 +#: templates/js/translated/build.js:2218 templates/js/translated/order.js:3087 msgid "No matching stock items" msgstr "" -#: templates/js/translated/build.js:2282 +#: templates/js/translated/build.js:2315 msgid "Automatic Stock Allocation" msgstr "" -#: templates/js/translated/build.js:2283 +#: templates/js/translated/build.js:2316 msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines" msgstr "" -#: templates/js/translated/build.js:2285 +#: templates/js/translated/build.js:2318 msgid "If a location is specifed, stock will only be allocated from that location" msgstr "" -#: templates/js/translated/build.js:2286 +#: templates/js/translated/build.js:2319 msgid "If stock is considered interchangeable, it will be allocated from the first location it is found" msgstr "" -#: templates/js/translated/build.js:2287 +#: templates/js/translated/build.js:2320 msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found" msgstr "" -#: templates/js/translated/build.js:2308 +#: templates/js/translated/build.js:2341 msgid "Allocate Stock Items" msgstr "" -#: templates/js/translated/build.js:2414 +#: templates/js/translated/build.js:2447 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387 -#: templates/js/translated/part.js:1899 templates/js/translated/stock.js:1686 +#: templates/js/translated/build.js:2482 templates/js/translated/part.js:1387 +#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1686 #: templates/js/translated/stock.js:2386 msgid "Select" msgstr "" -#: templates/js/translated/build.js:2463 +#: templates/js/translated/build.js:2496 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:2491 +#: templates/js/translated/build.js:2524 msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647 +#: templates/js/translated/build.js:2560 templates/js/translated/stock.js:2647 msgid "No user information" msgstr "" -#: templates/js/translated/build.js:2633 +#: templates/js/translated/build.js:2666 msgid "No parts allocated for" msgstr "" @@ -8390,11 +8404,11 @@ msgstr "" msgid "Edit Manufacturer Part" msgstr "" -#: templates/js/translated/company.js:167 templates/js/translated/order.js:509 +#: templates/js/translated/company.js:167 templates/js/translated/order.js:510 msgid "Add Supplier" msgstr "" -#: templates/js/translated/company.js:195 templates/js/translated/order.js:628 +#: templates/js/translated/company.js:195 templates/js/translated/order.js:667 msgid "Add Supplier Part" msgstr "" @@ -8765,381 +8779,385 @@ msgstr "" msgid "Notifications will load here" msgstr "" -#: templates/js/translated/order.js:94 +#: templates/js/translated/order.js:95 msgid "No stock items have been allocated to this shipment" msgstr "" -#: templates/js/translated/order.js:99 +#: templates/js/translated/order.js:100 msgid "The following stock items will be shipped" msgstr "" -#: templates/js/translated/order.js:139 +#: templates/js/translated/order.js:140 msgid "Complete Shipment" msgstr "" -#: templates/js/translated/order.js:159 +#: templates/js/translated/order.js:160 msgid "Confirm Shipment" msgstr "" -#: templates/js/translated/order.js:215 +#: templates/js/translated/order.js:216 msgid "No pending shipments found" msgstr "" -#: templates/js/translated/order.js:219 +#: templates/js/translated/order.js:220 msgid "No stock items have been allocated to pending shipments" msgstr "" -#: templates/js/translated/order.js:251 +#: templates/js/translated/order.js:252 msgid "Skip" msgstr "" -#: templates/js/translated/order.js:281 +#: templates/js/translated/order.js:282 msgid "Complete Purchase Order" msgstr "" -#: templates/js/translated/order.js:287 +#: templates/js/translated/order.js:288 msgid "Mark this order as complete?" msgstr "" -#: templates/js/translated/order.js:293 +#: templates/js/translated/order.js:294 msgid "All line items have been received" msgstr "" -#: templates/js/translated/order.js:298 +#: templates/js/translated/order.js:299 msgid "This order has line items which have not been marked as received." msgstr "" -#: templates/js/translated/order.js:299 +#: templates/js/translated/order.js:300 msgid "Completing this order means that the order and line items will no longer be editable." msgstr "" -#: templates/js/translated/order.js:322 +#: templates/js/translated/order.js:323 msgid "Cancel Purchase Order" msgstr "" -#: templates/js/translated/order.js:327 +#: templates/js/translated/order.js:328 msgid "Are you sure you wish to cancel this purchase order?" msgstr "" -#: templates/js/translated/order.js:333 +#: templates/js/translated/order.js:334 msgid "This purchase order can not be cancelled" msgstr "" -#: templates/js/translated/order.js:356 +#: templates/js/translated/order.js:357 msgid "Issue Purchase Order" msgstr "" -#: templates/js/translated/order.js:361 +#: templates/js/translated/order.js:362 msgid "After placing this purchase order, line items will no longer be editable." msgstr "" -#: templates/js/translated/order.js:383 +#: templates/js/translated/order.js:384 msgid "Cancel Sales Order" msgstr "" -#: templates/js/translated/order.js:388 +#: templates/js/translated/order.js:389 msgid "Cancelling this order means that the order will no longer be editable." msgstr "" -#: templates/js/translated/order.js:442 +#: templates/js/translated/order.js:443 msgid "Create New Shipment" msgstr "" -#: templates/js/translated/order.js:467 +#: templates/js/translated/order.js:468 msgid "Add Customer" msgstr "" -#: templates/js/translated/order.js:492 +#: templates/js/translated/order.js:493 msgid "Create Sales Order" msgstr "" -#: templates/js/translated/order.js:757 +#: templates/js/translated/order.js:554 +msgid "Edit Purchase Order" +msgstr "" + +#: templates/js/translated/order.js:796 msgid "Export Order" msgstr "" -#: templates/js/translated/order.js:808 +#: templates/js/translated/order.js:847 msgid "At least one purchaseable part must be selected" msgstr "" -#: templates/js/translated/order.js:833 +#: templates/js/translated/order.js:872 msgid "Quantity to order" msgstr "" -#: templates/js/translated/order.js:842 +#: templates/js/translated/order.js:881 msgid "New supplier part" msgstr "" -#: templates/js/translated/order.js:860 +#: templates/js/translated/order.js:899 msgid "New purchase order" msgstr "" -#: templates/js/translated/order.js:893 +#: templates/js/translated/order.js:932 msgid "Add to purchase order" msgstr "" -#: templates/js/translated/order.js:1002 +#: templates/js/translated/order.js:1041 msgid "No matching supplier parts" msgstr "" -#: templates/js/translated/order.js:1017 +#: templates/js/translated/order.js:1056 msgid "No matching purchase orders" msgstr "" -#: templates/js/translated/order.js:1194 +#: templates/js/translated/order.js:1233 msgid "Select Line Items" msgstr "" -#: templates/js/translated/order.js:1195 +#: templates/js/translated/order.js:1234 msgid "At least one line item must be selected" msgstr "" -#: templates/js/translated/order.js:1215 templates/js/translated/order.js:1314 +#: templates/js/translated/order.js:1254 templates/js/translated/order.js:1353 msgid "Add batch code" msgstr "" -#: templates/js/translated/order.js:1221 templates/js/translated/order.js:1325 +#: templates/js/translated/order.js:1260 templates/js/translated/order.js:1364 msgid "Add serial numbers" msgstr "" -#: templates/js/translated/order.js:1233 +#: templates/js/translated/order.js:1272 msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144 +#: templates/js/translated/order.js:1336 templates/js/translated/stock.js:2144 msgid "Stock Status" msgstr "" -#: templates/js/translated/order.js:1388 +#: templates/js/translated/order.js:1427 msgid "Order Code" msgstr "" -#: templates/js/translated/order.js:1389 +#: templates/js/translated/order.js:1428 msgid "Ordered" msgstr "" -#: templates/js/translated/order.js:1391 +#: templates/js/translated/order.js:1430 msgid "Quantity to Receive" msgstr "" -#: templates/js/translated/order.js:1410 +#: templates/js/translated/order.js:1449 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/order.js:1411 +#: templates/js/translated/order.js:1450 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943 +#: templates/js/translated/order.js:1711 templates/js/translated/part.js:943 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/order.js:1699 templates/js/translated/order.js:2503 +#: templates/js/translated/order.js:1738 templates/js/translated/order.js:2542 msgid "Order is overdue" msgstr "" -#: templates/js/translated/order.js:1749 templates/js/translated/order.js:2568 -#: templates/js/translated/order.js:2709 +#: templates/js/translated/order.js:1788 templates/js/translated/order.js:2607 +#: templates/js/translated/order.js:2748 msgid "Items" msgstr "" -#: templates/js/translated/order.js:1847 templates/js/translated/order.js:3783 +#: templates/js/translated/order.js:1886 templates/js/translated/order.js:3822 msgid "Duplicate Line Item" msgstr "" -#: templates/js/translated/order.js:1864 templates/js/translated/order.js:3805 +#: templates/js/translated/order.js:1903 templates/js/translated/order.js:3844 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/order.js:1877 templates/js/translated/order.js:3816 +#: templates/js/translated/order.js:1916 templates/js/translated/order.js:3855 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/order.js:1920 +#: templates/js/translated/order.js:1959 msgid "No line items found" msgstr "" -#: templates/js/translated/order.js:1947 templates/js/translated/order.js:3517 +#: templates/js/translated/order.js:1986 templates/js/translated/order.js:3556 msgid "Total" msgstr "" -#: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203 -#: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050 -#: templates/js/translated/part.js:2135 templates/js/translated/part.js:2488 +#: templates/js/translated/order.js:2040 templates/js/translated/order.js:2242 +#: templates/js/translated/order.js:3581 templates/js/translated/order.js:4089 +#: templates/js/translated/part.js:2131 templates/js/translated/part.js:2703 msgid "Unit Price" msgstr "" -#: templates/js/translated/order.js:2016 templates/js/translated/order.js:2219 -#: templates/js/translated/order.js:3558 templates/js/translated/order.js:4066 +#: templates/js/translated/order.js:2055 templates/js/translated/order.js:2258 +#: templates/js/translated/order.js:3597 templates/js/translated/order.js:4105 msgid "Total Price" msgstr "" -#: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600 +#: templates/js/translated/order.js:2096 templates/js/translated/order.js:3639 #: templates/js/translated/part.js:1050 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096 +#: templates/js/translated/order.js:2155 templates/js/translated/part.js:1096 msgid "Receive line item" msgstr "" -#: templates/js/translated/order.js:2120 templates/js/translated/order.js:3737 +#: templates/js/translated/order.js:2159 templates/js/translated/order.js:3776 msgid "Duplicate line item" msgstr "" -#: templates/js/translated/order.js:2121 templates/js/translated/order.js:3738 +#: templates/js/translated/order.js:2160 templates/js/translated/order.js:3777 msgid "Edit line item" msgstr "" -#: templates/js/translated/order.js:2122 templates/js/translated/order.js:3742 +#: templates/js/translated/order.js:2161 templates/js/translated/order.js:3781 msgid "Delete line item" msgstr "" -#: templates/js/translated/order.js:2268 templates/js/translated/order.js:4115 +#: templates/js/translated/order.js:2307 templates/js/translated/order.js:4154 msgid "Duplicate line" msgstr "" -#: templates/js/translated/order.js:2269 templates/js/translated/order.js:4116 +#: templates/js/translated/order.js:2308 templates/js/translated/order.js:4155 msgid "Edit line" msgstr "" -#: templates/js/translated/order.js:2270 templates/js/translated/order.js:4117 +#: templates/js/translated/order.js:2309 templates/js/translated/order.js:4156 msgid "Delete line" msgstr "" -#: templates/js/translated/order.js:2300 templates/js/translated/order.js:4147 +#: templates/js/translated/order.js:2339 templates/js/translated/order.js:4186 msgid "Duplicate Line" msgstr "" -#: templates/js/translated/order.js:2321 templates/js/translated/order.js:4168 +#: templates/js/translated/order.js:2360 templates/js/translated/order.js:4207 msgid "Edit Line" msgstr "" -#: templates/js/translated/order.js:2332 templates/js/translated/order.js:4179 +#: templates/js/translated/order.js:2371 templates/js/translated/order.js:4218 msgid "Delete Line" msgstr "" -#: templates/js/translated/order.js:2343 +#: templates/js/translated/order.js:2382 msgid "No matching line" msgstr "" -#: templates/js/translated/order.js:2454 +#: templates/js/translated/order.js:2493 msgid "No sales orders found" msgstr "" -#: templates/js/translated/order.js:2517 +#: templates/js/translated/order.js:2556 msgid "Invalid Customer" msgstr "" -#: templates/js/translated/order.js:2615 +#: templates/js/translated/order.js:2654 msgid "Edit shipment" msgstr "" -#: templates/js/translated/order.js:2618 +#: templates/js/translated/order.js:2657 msgid "Complete shipment" msgstr "" -#: templates/js/translated/order.js:2623 +#: templates/js/translated/order.js:2662 msgid "Delete shipment" msgstr "" -#: templates/js/translated/order.js:2643 +#: templates/js/translated/order.js:2682 msgid "Edit Shipment" msgstr "" -#: templates/js/translated/order.js:2660 +#: templates/js/translated/order.js:2699 msgid "Delete Shipment" msgstr "" -#: templates/js/translated/order.js:2694 +#: templates/js/translated/order.js:2733 msgid "No matching shipments found" msgstr "" -#: templates/js/translated/order.js:2704 +#: templates/js/translated/order.js:2743 msgid "Shipment Reference" msgstr "" -#: templates/js/translated/order.js:2728 +#: templates/js/translated/order.js:2767 msgid "Not shipped" msgstr "" -#: templates/js/translated/order.js:2734 +#: templates/js/translated/order.js:2773 msgid "Tracking" msgstr "" -#: templates/js/translated/order.js:2738 +#: templates/js/translated/order.js:2777 msgid "Invoice" msgstr "" -#: templates/js/translated/order.js:2907 +#: templates/js/translated/order.js:2946 msgid "Add Shipment" msgstr "" -#: templates/js/translated/order.js:2958 +#: templates/js/translated/order.js:2997 msgid "Confirm stock allocation" msgstr "" -#: templates/js/translated/order.js:2959 +#: templates/js/translated/order.js:2998 msgid "Allocate Stock Items to Sales Order" msgstr "" -#: templates/js/translated/order.js:3167 +#: templates/js/translated/order.js:3206 msgid "No sales order allocations found" msgstr "" -#: templates/js/translated/order.js:3246 +#: templates/js/translated/order.js:3285 msgid "Edit Stock Allocation" msgstr "" -#: templates/js/translated/order.js:3263 +#: templates/js/translated/order.js:3302 msgid "Confirm Delete Operation" msgstr "" -#: templates/js/translated/order.js:3264 +#: templates/js/translated/order.js:3303 msgid "Delete Stock Allocation" msgstr "" -#: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398 +#: templates/js/translated/order.js:3348 templates/js/translated/order.js:3437 #: templates/js/translated/stock.js:1602 msgid "Shipped to customer" msgstr "" -#: templates/js/translated/order.js:3317 templates/js/translated/order.js:3407 +#: templates/js/translated/order.js:3356 templates/js/translated/order.js:3446 msgid "Stock location not specified" msgstr "" -#: templates/js/translated/order.js:3721 +#: templates/js/translated/order.js:3760 msgid "Allocate serial numbers" msgstr "" -#: templates/js/translated/order.js:3727 +#: templates/js/translated/order.js:3766 msgid "Purchase stock" msgstr "" -#: templates/js/translated/order.js:3734 templates/js/translated/order.js:3932 +#: templates/js/translated/order.js:3773 templates/js/translated/order.js:3971 msgid "Calculate price" msgstr "" -#: templates/js/translated/order.js:3746 +#: templates/js/translated/order.js:3785 msgid "Cannot be deleted as items have been shipped" msgstr "" -#: templates/js/translated/order.js:3749 +#: templates/js/translated/order.js:3788 msgid "Cannot be deleted as items have been allocated" msgstr "" -#: templates/js/translated/order.js:3831 +#: templates/js/translated/order.js:3870 msgid "Allocate Serial Numbers" msgstr "" -#: templates/js/translated/order.js:3940 +#: templates/js/translated/order.js:3979 msgid "Update Unit Price" msgstr "" -#: templates/js/translated/order.js:3954 +#: templates/js/translated/order.js:3993 msgid "No matching line items" msgstr "" -#: templates/js/translated/order.js:4190 +#: templates/js/translated/order.js:4229 msgid "No matching lines" msgstr "" @@ -9319,12 +9337,12 @@ msgstr "" msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:586 templates/js/translated/part.js:1470 +#: templates/js/translated/part.js:586 templates/js/translated/part.js:1478 #: templates/js/translated/table_filters.js:468 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:596 templates/js/translated/part.js:1482 +#: templates/js/translated/part.js:596 msgid "No stock available" msgstr "" @@ -9356,7 +9374,7 @@ msgstr "" msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1553 +#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1549 msgid "No parts found" msgstr "" @@ -9368,100 +9386,124 @@ msgstr "" msgid "No category" msgstr "" -#: templates/js/translated/part.js:1577 templates/js/translated/part.js:1820 +#: templates/js/translated/part.js:1476 +msgid "No stock" +msgstr "" + +#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816 #: templates/js/translated/stock.js:2347 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:1593 +#: templates/js/translated/part.js:1589 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:1659 +#: templates/js/translated/part.js:1655 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:1664 +#: templates/js/translated/part.js:1660 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:1669 +#: templates/js/translated/part.js:1665 msgid "Select Part Category" msgstr "" -#: templates/js/translated/part.js:1682 +#: templates/js/translated/part.js:1678 msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1839 templates/js/translated/stock.js:2366 +#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2366 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:1918 +#: templates/js/translated/part.js:1914 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:1934 +#: templates/js/translated/part.js:1930 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:1992 +#: templates/js/translated/part.js:1988 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2043 templates/js/translated/stock.js:1299 +#: templates/js/translated/part.js:2039 templates/js/translated/stock.js:1299 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:2044 templates/js/translated/stock.js:1300 +#: templates/js/translated/part.js:2040 templates/js/translated/stock.js:1300 #: templates/js/translated/stock.js:1560 msgid "Delete test result" msgstr "" -#: templates/js/translated/part.js:2050 +#: templates/js/translated/part.js:2046 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2072 +#: templates/js/translated/part.js:2068 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2086 +#: templates/js/translated/part.js:2082 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2111 +#: templates/js/translated/part.js:2107 #, python-brace-format msgid "No ${human_name} information found" msgstr "" -#: templates/js/translated/part.js:2168 +#: templates/js/translated/part.js:2164 #, python-brace-format msgid "Edit ${human_name}" msgstr "" -#: templates/js/translated/part.js:2169 +#: templates/js/translated/part.js:2165 #, python-brace-format msgid "Delete ${human_name}" msgstr "" -#: templates/js/translated/part.js:2283 -msgid "Current Stock" +#: templates/js/translated/part.js:2330 templates/js/translated/part.js:2331 +msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:2316 +#: templates/js/translated/part.js:2333 +msgid "Specified date is in the past" +msgstr "" + +#: templates/js/translated/part.js:2339 +msgid "Speculative" +msgstr "" + +#: templates/js/translated/part.js:2389 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2342 +#: templates/js/translated/part.js:2395 +msgid "Error fetching scheduling information for this part" +msgstr "" + +#: templates/js/translated/part.js:2491 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2412 +#: templates/js/translated/part.js:2507 +msgid "Maximum Quantity" +msgstr "" + +#: templates/js/translated/part.js:2533 +msgid "Minimum Stock Level" +msgstr "" + +#: templates/js/translated/part.js:2627 msgid "Single Price" msgstr "" -#: templates/js/translated/part.js:2431 +#: templates/js/translated/part.js:2646 msgid "Single Price Difference" msgstr "" @@ -10222,10 +10264,6 @@ msgstr "" msgid "Hide/Show pagination" msgstr "" -#: templates/js/translated/tables.js:558 -msgid "Refresh" -msgstr "" - #: templates/js/translated/tables.js:561 msgid "Toggle" msgstr "" diff --git a/InvenTree/locale/it/LC_MESSAGES/django.po b/InvenTree/locale/it/LC_MESSAGES/django.po index cfea08479a..f4facfda60 100644 --- a/InvenTree/locale/it/LC_MESSAGES/django.po +++ b/InvenTree/locale/it/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-16 11:53+0000\n" -"PO-Revision-Date: 2022-08-16 21:36\n" +"POT-Creation-Date: 2022-08-18 05:14+0000\n" +"PO-Revision-Date: 2022-08-18 21:39\n" "Last-Translator: \n" "Language-Team: Italian\n" "Language: it_IT\n" @@ -40,10 +40,10 @@ msgstr "Inserisci la data" #: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825 #: stock/serializers.py:924 stock/serializers.py:1056 #: stock/templates/stock/stock_sidebar.html:25 -#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101 -#: templates/js/translated/company.js:964 templates/js/translated/order.js:2104 -#: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753 -#: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102 +#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1099 +#: templates/js/translated/company.js:964 templates/js/translated/order.js:2143 +#: templates/js/translated/order.js:2294 templates/js/translated/order.js:2792 +#: templates/js/translated/order.js:3743 templates/js/translated/order.js:4141 #: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980 msgid "Notes" msgstr "Note" @@ -211,11 +211,11 @@ msgstr "Seleziona file da allegare" #: InvenTree/models.py:402 company/models.py:124 company/models.py:276 #: company/models.py:510 order/models.py:84 order/models.py:1245 -#: part/models.py:802 +#: part/models.py:802 part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_base.html:164 #: templates/js/translated/company.js:656 -#: templates/js/translated/company.js:948 templates/js/translated/order.js:2742 -#: templates/js/translated/part.js:1514 +#: templates/js/translated/company.js:948 templates/js/translated/order.js:2781 +#: templates/js/translated/part.js:1510 msgid "Link" msgstr "Collegamento" @@ -235,8 +235,8 @@ msgstr "Commento del file" #: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665 #: common/models.py:1666 common/models.py:1889 common/models.py:1890 -#: common/models.py:2152 common/models.py:2153 part/models.py:2200 -#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257 +#: common/models.py:2152 common/models.py:2153 part/models.py:2247 +#: part/models.py:2267 plugin/models.py:256 plugin/models.py:257 #: report/templates/report/inventree_test_report_base.html:96 #: templates/js/translated/stock.js:2641 msgid "User" @@ -277,7 +277,7 @@ msgstr "Scelta non valida" #: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875 #: company/models.py:358 label/models.py:101 part/models.py:746 -#: part/models.py:2378 plugin/models.py:94 report/models.py:152 +#: part/models.py:2425 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 #: templates/InvenTree/settings/plugin.html:51 #: templates/InvenTree/settings/plugin.html:134 @@ -287,7 +287,7 @@ msgstr "Scelta non valida" #: templates/js/translated/company.js:758 #: templates/js/translated/notification.js:71 #: templates/js/translated/part.js:688 templates/js/translated/part.js:840 -#: templates/js/translated/part.js:1906 templates/js/translated/stock.js:2392 +#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2392 msgid "Name" msgstr "Nome" @@ -297,19 +297,20 @@ msgstr "Nome" #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:87 label/models.py:108 #: order/models.py:82 part/models.py:769 part/templates/part/category.html:80 -#: part/templates/part/part_base.html:167 report/models.py:165 +#: part/templates/part/part_base.html:167 +#: part/templates/part/part_scheduling.html:12 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 #: stock/templates/stock/location.html:108 #: templates/InvenTree/settings/plugin_settings.html:33 -#: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848 -#: templates/js/translated/build.js:2471 templates/js/translated/company.js:409 +#: templates/js/translated/bom.js:553 templates/js/translated/bom.js:846 +#: templates/js/translated/build.js:2504 templates/js/translated/company.js:409 #: templates/js/translated/company.js:667 -#: templates/js/translated/company.js:959 templates/js/translated/order.js:1720 -#: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531 +#: templates/js/translated/company.js:959 templates/js/translated/order.js:1759 +#: templates/js/translated/order.js:1991 templates/js/translated/order.js:2570 #: templates/js/translated/part.js:747 templates/js/translated/part.js:1153 -#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1942 -#: templates/js/translated/part.js:2011 templates/js/translated/stock.js:1743 +#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1938 +#: templates/js/translated/part.js:2007 templates/js/translated/stock.js:1743 #: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478 msgid "Description" msgstr "Descrizione" @@ -323,7 +324,7 @@ msgid "parent" msgstr "genitore" #: InvenTree/models.py:560 InvenTree/models.py:561 -#: templates/js/translated/part.js:1948 templates/js/translated/stock.js:2430 +#: templates/js/translated/part.js:1944 templates/js/translated/stock.js:2430 msgid "Path" msgstr "Percorso" @@ -335,7 +336,7 @@ msgstr "Errore del server" msgid "An error has been logged by the server." msgstr "Un errore è stato loggato dal server." -#: InvenTree/serializers.py:55 part/models.py:2699 +#: InvenTree/serializers.py:55 part/models.py:2746 msgid "Must be a valid number" msgstr "Deve essere un numero valido" @@ -541,7 +542,7 @@ msgid "Returned" msgstr "Reso" #: InvenTree/status_codes.py:141 order/models.py:1128 -#: templates/js/translated/order.js:3330 templates/js/translated/order.js:3679 +#: templates/js/translated/order.js:3369 templates/js/translated/order.js:3718 msgid "Shipped" msgstr "Spedito" @@ -728,7 +729,7 @@ msgstr "" #: report/templates/report/inventree_build_order_base.html:105 #: templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 -#: templates/js/translated/build.js:731 +#: templates/js/translated/build.js:763 msgid "Build Order" msgstr "Ordine di Produzione" @@ -747,14 +748,14 @@ msgid "Build Order Reference" msgstr "" #: build/models.py:166 order/models.py:240 order/models.py:623 -#: order/models.py:904 part/models.py:2617 +#: order/models.py:904 part/models.py:2664 #: part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 -#: templates/js/translated/bom.js:692 templates/js/translated/bom.js:855 -#: templates/js/translated/build.js:1779 templates/js/translated/order.js:1983 -#: templates/js/translated/order.js:2184 templates/js/translated/order.js:3523 -#: templates/js/translated/order.js:4031 +#: templates/js/translated/bom.js:690 templates/js/translated/bom.js:853 +#: templates/js/translated/build.js:1811 templates/js/translated/order.js:2022 +#: templates/js/translated/order.js:2223 templates/js/translated/order.js:3562 +#: templates/js/translated/order.js:4070 msgid "Reference" msgstr "Riferimento" @@ -762,7 +763,7 @@ msgstr "Riferimento" msgid "Brief description of the build" msgstr "" -#: build/models.py:185 build/templates/build/build_base.html:169 +#: build/models.py:185 build/templates/build/build_base.html:172 #: build/templates/build/detail.html:87 msgid "Parent Build" msgstr "" @@ -771,13 +772,13 @@ msgstr "" msgid "BuildOrder to which this build is allocated" msgstr "" -#: build/models.py:191 build/templates/build/build_base.html:77 +#: build/models.py:191 build/templates/build/build_base.html:80 #: build/templates/build/detail.html:29 company/models.py:670 #: order/models.py:1001 order/models.py:1112 order/models.py:1113 -#: part/models.py:343 part/models.py:2146 part/models.py:2161 -#: part/models.py:2180 part/models.py:2198 part/models.py:2297 -#: part/models.py:2417 part/models.py:2507 part/models.py:2592 -#: part/models.py:2868 part/serializers.py:813 +#: part/models.py:343 part/models.py:2193 part/models.py:2208 +#: part/models.py:2227 part/models.py:2245 part/models.py:2344 +#: part/models.py:2464 part/models.py:2554 part/models.py:2639 +#: part/models.py:2915 part/serializers.py:813 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -789,17 +790,17 @@ msgstr "" #: templates/email/build_order_required_stock.html:17 #: templates/email/low_stock_notification.html:16 #: templates/email/overdue_build_order.html:16 -#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:553 -#: templates/js/translated/bom.js:691 templates/js/translated/bom.js:802 -#: templates/js/translated/build.js:1156 templates/js/translated/build.js:1649 -#: templates/js/translated/build.js:2085 templates/js/translated/build.js:2476 +#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:552 +#: templates/js/translated/bom.js:689 templates/js/translated/bom.js:800 +#: templates/js/translated/build.js:1188 templates/js/translated/build.js:1681 +#: templates/js/translated/build.js:2118 templates/js/translated/build.js:2509 #: templates/js/translated/company.js:266 #: templates/js/translated/company.js:496 #: templates/js/translated/company.js:608 -#: templates/js/translated/company.js:868 templates/js/translated/order.js:103 -#: templates/js/translated/order.js:934 templates/js/translated/order.js:1387 -#: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885 -#: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507 +#: templates/js/translated/company.js:868 templates/js/translated/order.js:104 +#: templates/js/translated/order.js:973 templates/js/translated/order.js:1426 +#: templates/js/translated/order.js:1976 templates/js/translated/order.js:2924 +#: templates/js/translated/order.js:3320 templates/js/translated/order.js:3546 #: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210 #: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586 #: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958 @@ -821,7 +822,7 @@ msgid "SalesOrder to which this build is allocated" msgstr "" #: build/models.py:213 build/serializers.py:800 -#: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873 +#: templates/js/translated/build.js:2106 templates/js/translated/order.js:2912 msgid "Source Location" msgstr "Posizione Di Origine" @@ -862,7 +863,7 @@ msgid "Build status code" msgstr "" #: build/models.py:251 build/serializers.py:225 order/serializers.py:447 -#: stock/models.py:662 templates/js/translated/order.js:1247 +#: stock/models.py:662 templates/js/translated/order.js:1286 msgid "Batch Code" msgstr "Codice Lotto" @@ -871,7 +872,7 @@ msgid "Batch code for this build output" msgstr "" #: build/models.py:258 order/models.py:86 part/models.py:938 -#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544 +#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2583 msgid "Creation Date" msgstr "Data di creazione" @@ -884,7 +885,7 @@ msgid "Target date for build completion. Build will be overdue after this date." msgstr "" #: build/models.py:266 order/models.py:286 -#: templates/js/translated/build.js:2553 +#: templates/js/translated/build.js:2586 msgid "Completion Date" msgstr "Data di completamento" @@ -892,7 +893,7 @@ msgstr "Data di completamento" msgid "completed by" msgstr "Completato da" -#: build/models.py:280 templates/js/translated/build.js:2521 +#: build/models.py:280 templates/js/translated/build.js:2554 msgid "Issued by" msgstr "Rilasciato da" @@ -900,12 +901,12 @@ msgstr "Rilasciato da" msgid "User who issued this build order" msgstr "" -#: build/models.py:289 build/templates/build/build_base.html:190 +#: build/models.py:289 build/templates/build/build_base.html:193 #: build/templates/build/detail.html:115 order/models.py:100 #: order/templates/order/order_base.html:176 #: order/templates/order/sales_order_base.html:183 part/models.py:942 #: report/templates/report/inventree_build_order_base.html:158 -#: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754 +#: templates/js/translated/build.js:2566 templates/js/translated/order.js:1793 msgid "Responsible" msgstr "Responsabile" @@ -972,7 +973,7 @@ msgid "Selected stock item not found in BOM" msgstr "Articolo in giacenza selezionato non trovato nel BOM" #: build/models.py:1328 stock/templates/stock/item_base.html:177 -#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2455 +#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2488 #: templates/navbar.html:38 msgid "Build" msgstr "Produzione" @@ -986,11 +987,11 @@ msgstr "" #: stock/serializers.py:882 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:199 -#: templates/js/translated/build.js:741 templates/js/translated/build.js:746 -#: templates/js/translated/build.js:2087 templates/js/translated/build.js:2638 -#: templates/js/translated/order.js:104 templates/js/translated/order.js:2886 -#: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193 -#: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380 +#: templates/js/translated/build.js:773 templates/js/translated/build.js:778 +#: templates/js/translated/build.js:2120 templates/js/translated/build.js:2671 +#: templates/js/translated/order.js:105 templates/js/translated/order.js:2925 +#: templates/js/translated/order.js:3227 templates/js/translated/order.js:3232 +#: templates/js/translated/order.js:3327 templates/js/translated/order.js:3419 #: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752 #: templates/js/translated/stock.js:2577 msgid "Stock Item" @@ -1001,13 +1002,13 @@ msgid "Source stock item" msgstr "Origine giacenza articolo" #: build/models.py:1358 build/serializers.py:193 -#: build/templates/build/build_base.html:82 +#: build/templates/build/build_base.html:85 #: build/templates/build/detail.html:34 common/models.py:1697 #: company/templates/company/supplier_part.html:279 order/models.py:897 #: order/models.py:1423 order/serializers.py:1155 #: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40 -#: part/models.py:2608 part/templates/part/detail.html:937 -#: part/templates/part/detail.html:1023 +#: part/models.py:2655 part/templates/part/detail.html:951 +#: part/templates/part/detail.html:1037 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 #: report/templates/report/inventree_build_order_base.html:113 @@ -1018,20 +1019,20 @@ msgstr "Origine giacenza articolo" #: stock/serializers.py:293 stock/templates/stock/item_base.html:292 #: stock/templates/stock/item_base.html:300 #: templates/email/build_order_completed.html:18 -#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:693 -#: templates/js/translated/bom.js:863 templates/js/translated/build.js:426 -#: templates/js/translated/build.js:578 templates/js/translated/build.js:768 -#: templates/js/translated/build.js:1178 templates/js/translated/build.js:1675 -#: templates/js/translated/build.js:2088 +#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:691 +#: templates/js/translated/bom.js:861 templates/js/translated/build.js:458 +#: templates/js/translated/build.js:610 templates/js/translated/build.js:800 +#: templates/js/translated/build.js:1210 templates/js/translated/build.js:1707 +#: templates/js/translated/build.js:2121 #: templates/js/translated/model_renderers.js:120 -#: templates/js/translated/order.js:120 templates/js/translated/order.js:937 -#: templates/js/translated/order.js:1989 templates/js/translated/order.js:2190 -#: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207 -#: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386 -#: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037 -#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2156 -#: templates/js/translated/part.js:2387 templates/js/translated/part.js:2421 -#: templates/js/translated/part.js:2499 templates/js/translated/stock.js:458 +#: templates/js/translated/order.js:121 templates/js/translated/order.js:976 +#: templates/js/translated/order.js:2028 templates/js/translated/order.js:2229 +#: templates/js/translated/order.js:2926 templates/js/translated/order.js:3246 +#: templates/js/translated/order.js:3333 templates/js/translated/order.js:3425 +#: templates/js/translated/order.js:3568 templates/js/translated/order.js:4076 +#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2152 +#: templates/js/translated/part.js:2602 templates/js/translated/part.js:2636 +#: templates/js/translated/part.js:2714 templates/js/translated/stock.js:458 #: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782 #: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711 msgid "Quantity" @@ -1050,7 +1051,7 @@ msgid "Destination stock item" msgstr "Destinazione articolo in giacenza" #: build/serializers.py:138 build/serializers.py:674 -#: templates/js/translated/build.js:1166 +#: templates/js/translated/build.js:1198 msgid "Build Output" msgstr "" @@ -1090,7 +1091,7 @@ msgid "Integer quantity required, as the bill of materials contains trackable pa msgstr "" #: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159 -#: stock/serializers.py:311 templates/js/translated/order.js:1258 +#: stock/serializers.py:311 templates/js/translated/order.js:1297 #: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459 msgid "Serial Numbers" msgstr "Codice Seriale" @@ -1120,10 +1121,10 @@ msgstr "" #: stock/serializers.py:917 stock/serializers.py:1150 #: stock/templates/stock/item_base.html:390 #: templates/js/translated/barcode.js:436 -#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753 -#: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285 -#: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305 -#: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394 +#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:785 +#: templates/js/translated/build.js:1719 templates/js/translated/order.js:1324 +#: templates/js/translated/order.js:3239 templates/js/translated/order.js:3344 +#: templates/js/translated/order.js:3352 templates/js/translated/order.js:3433 #: templates/js/translated/part.js:181 templates/js/translated/stock.js:588 #: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960 #: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518 @@ -1134,12 +1135,12 @@ msgstr "Posizione" msgid "Location for completed build outputs" msgstr "Posizione per gli output di build completati" -#: build/serializers.py:373 build/templates/build/build_base.html:142 +#: build/serializers.py:373 build/templates/build/build_base.html:145 #: build/templates/build/detail.html:62 order/models.py:642 #: order/serializers.py:465 stock/templates/stock/item_base.html:423 -#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505 -#: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724 -#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829 +#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2538 +#: templates/js/translated/order.js:1431 templates/js/translated/order.js:1763 +#: templates/js/translated/order.js:2575 templates/js/translated/stock.js:1829 #: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727 msgid "Status" msgstr "Stato" @@ -1196,7 +1197,7 @@ msgstr "" msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:522 templates/js/translated/build.js:195 +#: build/serializers.py:522 templates/js/translated/build.js:227 msgid "Required stock has not been fully allocated" msgstr "" @@ -1208,7 +1209,7 @@ msgstr "" msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:538 templates/js/translated/build.js:199 +#: build/serializers.py:538 templates/js/translated/build.js:231 msgid "Required build quantity has not been completed" msgstr "" @@ -1216,8 +1217,8 @@ msgstr "" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726 -#: part/models.py:2860 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2773 +#: part/models.py:2907 msgid "BOM Item" msgstr "Distinta base (Bom)" @@ -1322,66 +1323,70 @@ msgid "Cancel Build" msgstr "" #: build/templates/build/build_base.html:59 +msgid "Duplicate Build" +msgstr "" + +#: build/templates/build/build_base.html:62 msgid "Delete Build" msgstr "" -#: build/templates/build/build_base.html:64 -#: build/templates/build/build_base.html:65 +#: build/templates/build/build_base.html:67 +#: build/templates/build/build_base.html:68 msgid "Complete Build" msgstr "" -#: build/templates/build/build_base.html:87 +#: build/templates/build/build_base.html:90 msgid "Build Description" msgstr "" -#: build/templates/build/build_base.html:95 +#: build/templates/build/build_base.html:98 msgid "No build outputs have been created for this build order" msgstr "" -#: build/templates/build/build_base.html:101 +#: build/templates/build/build_base.html:104 #, python-format msgid "This Build Order is allocated to Sales Order %(link)s" msgstr "" -#: build/templates/build/build_base.html:108 +#: build/templates/build/build_base.html:111 #, python-format msgid "This Build Order is a child of Build Order %(link)s" msgstr "" -#: build/templates/build/build_base.html:115 +#: build/templates/build/build_base.html:118 msgid "Build Order is ready to mark as completed" msgstr "" -#: build/templates/build/build_base.html:120 +#: build/templates/build/build_base.html:123 msgid "Build Order cannot be completed as outstanding outputs remain" msgstr "" -#: build/templates/build/build_base.html:125 +#: build/templates/build/build_base.html:128 msgid "Required build quantity has not yet been completed" msgstr "" -#: build/templates/build/build_base.html:130 +#: build/templates/build/build_base.html:133 msgid "Stock has not been fully allocated to this Build Order" msgstr "" -#: build/templates/build/build_base.html:151 +#: build/templates/build/build_base.html:154 #: build/templates/build/detail.html:131 order/models.py:910 #: order/templates/order/order_base.html:162 #: order/templates/order/sales_order_base.html:164 #: report/templates/report/inventree_build_order_base.html:125 -#: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741 -#: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552 -#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042 +#: templates/js/translated/build.js:2578 templates/js/translated/order.js:1780 +#: templates/js/translated/order.js:2090 templates/js/translated/order.js:2591 +#: templates/js/translated/order.js:3631 templates/js/translated/part.js:1042 msgid "Target Date" msgstr "Data scadenza" -#: build/templates/build/build_base.html:156 +#: build/templates/build/build_base.html:159 #, python-format msgid "This build was due on %(target)s" msgstr "" -#: build/templates/build/build_base.html:156 -#: build/templates/build/build_base.html:201 +#: build/templates/build/build_base.html:159 +#: build/templates/build/build_base.html:204 #: order/templates/order/order_base.html:98 #: order/templates/order/sales_order_base.html:94 #: templates/js/translated/table_filters.js:320 @@ -1390,14 +1395,14 @@ msgstr "" msgid "Overdue" msgstr "In ritardo" -#: build/templates/build/build_base.html:163 +#: build/templates/build/build_base.html:166 #: build/templates/build/detail.html:67 build/templates/build/detail.html:142 #: order/templates/order/sales_order_base.html:171 #: templates/js/translated/table_filters.js:400 msgid "Completed" msgstr "Completato" -#: build/templates/build/build_base.html:176 +#: build/templates/build/build_base.html:179 #: build/templates/build/detail.html:94 order/models.py:1105 #: order/models.py:1199 order/models.py:1330 #: order/templates/order/sales_order_base.html:9 @@ -1406,17 +1411,17 @@ msgstr "Completato" #: report/templates/report/inventree_so_report.html:77 #: stock/templates/stock/item_base.html:370 #: templates/email/overdue_sales_order.html:15 -#: templates/js/translated/order.js:2498 +#: templates/js/translated/order.js:2537 msgid "Sales Order" msgstr "Ordini di Vendita" -#: build/templates/build/build_base.html:183 +#: build/templates/build/build_base.html:186 #: build/templates/build/detail.html:108 #: report/templates/report/inventree_build_order_base.html:152 msgid "Issued By" msgstr "Inviato da" -#: build/templates/build/build_base.html:245 +#: build/templates/build/build_base.html:256 msgid "Delete Build Order" msgstr "Elimina Ordine Build" @@ -1433,7 +1438,7 @@ msgid "Stock can be taken from any available location." msgstr "Lo stock può essere prelevato da qualsiasi posizione disponibile." #: build/templates/build/detail.html:49 order/models.py:1023 -#: templates/js/translated/order.js:1393 templates/js/translated/order.js:2093 +#: templates/js/translated/order.js:1432 templates/js/translated/order.js:2132 msgid "Destination" msgstr "Destinazione" @@ -1447,7 +1452,7 @@ msgstr "" #: build/templates/build/detail.html:80 #: stock/templates/stock/item_base.html:170 -#: templates/js/translated/build.js:1182 +#: templates/js/translated/build.js:1214 #: templates/js/translated/model_renderers.js:124 #: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843 #: templates/js/translated/stock.js:2734 @@ -1459,7 +1464,7 @@ msgstr "Lotto" #: build/templates/build/detail.html:126 #: order/templates/order/order_base.html:149 #: order/templates/order/sales_order_base.html:158 -#: templates/js/translated/build.js:2513 +#: templates/js/translated/build.js:2546 msgid "Created" msgstr "Creato" @@ -1479,7 +1484,7 @@ msgstr "" msgid "Allocate Stock to Build" msgstr "" -#: build/templates/build/detail.html:176 templates/js/translated/build.js:1901 +#: build/templates/build/detail.html:176 templates/js/translated/build.js:1934 msgid "Unallocate stock" msgstr "" @@ -1510,7 +1515,7 @@ msgstr "Ordina articoli richiesti" #: build/templates/build/detail.html:187 #: company/templates/company/detail.html:37 #: company/templates/company/detail.html:85 -#: part/templates/part/category.html:183 templates/js/translated/order.js:977 +#: part/templates/part/category.html:183 templates/js/translated/order.js:1016 msgid "Order Parts" msgstr "Ordine Articoli" @@ -1582,7 +1587,7 @@ msgstr "" #: order/templates/order/po_sidebar.html:9 #: order/templates/order/purchase_order_detail.html:82 #: order/templates/order/sales_order_detail.html:135 -#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:207 +#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:212 #: part/templates/part/part_sidebar.html:57 stock/templates/stock/item.html:117 #: stock/templates/stock/stock_sidebar.html:23 msgid "Attachments" @@ -1600,7 +1605,7 @@ msgstr "Assegnazione Completa" msgid "All untracked stock items have been allocated" msgstr "Tutte le giacenze non tracciate sono state assegnate" -#: build/templates/build/index.html:18 part/templates/part/detail.html:313 +#: build/templates/build/index.html:18 part/templates/part/detail.html:318 msgid "New Build Order" msgstr "" @@ -1845,7 +1850,7 @@ msgstr "Copia Template Parametri Categoria" msgid "Copy category parameter templates when creating a part" msgstr "Copia i modelli dei parametri categoria quando si crea un articolo" -#: common/models.py:951 part/models.py:2419 report/models.py:158 +#: common/models.py:951 part/models.py:2466 report/models.py:158 #: templates/js/translated/table_filters.js:38 #: templates/js/translated/table_filters.js:484 msgid "Template" @@ -1855,7 +1860,7 @@ msgstr "" msgid "Parts are templates by default" msgstr "Gli articoli sono modelli per impostazione predefinita" -#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448 +#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1446 #: templates/js/translated/table_filters.js:176 #: templates/js/translated/table_filters.js:447 msgid "Assembly" @@ -2591,7 +2596,7 @@ msgstr "" #: common/models.py:1705 company/serializers.py:366 #: company/templates/company/supplier_part.html:284 order/models.py:938 -#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2161 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2157 msgid "Price" msgstr "Prezzo" @@ -2830,7 +2835,7 @@ msgstr "" #: company/models.py:248 company/models.py:481 stock/models.py:598 #: stock/serializers.py:87 stock/templates/stock/item_base.html:148 -#: templates/js/translated/bom.js:543 +#: templates/js/translated/bom.js:542 msgid "Base Part" msgstr "Articolo di base" @@ -2859,7 +2864,7 @@ msgstr "Seleziona Produttore" #: templates/js/translated/company.js:269 #: templates/js/translated/company.js:497 #: templates/js/translated/company.js:649 -#: templates/js/translated/company.js:937 templates/js/translated/order.js:1971 +#: templates/js/translated/company.js:937 templates/js/translated/order.js:2010 #: templates/js/translated/part.js:247 templates/js/translated/part.js:1027 msgid "MPN" msgstr "Codice articolo produttore (MPN)" @@ -2899,7 +2904,7 @@ msgstr "Valore" msgid "Parameter value" msgstr "Valore del parametro" -#: company/models.py:372 part/models.py:888 part/models.py:2386 +#: company/models.py:372 part/models.py:888 part/models.py:2433 #: part/templates/part/part_base.html:280 #: templates/InvenTree/settings/settings.html:352 #: templates/js/translated/company.js:770 templates/js/translated/part.js:855 @@ -2921,7 +2926,7 @@ msgstr "L'articolo del costruttore collegato deve riferirsi alla stesso articolo #: templates/email/overdue_purchase_order.html:16 #: templates/js/translated/company.js:268 #: templates/js/translated/company.js:401 -#: templates/js/translated/company.js:893 templates/js/translated/order.js:1707 +#: templates/js/translated/company.js:893 templates/js/translated/order.js:1746 #: templates/js/translated/part.js:217 templates/js/translated/part.js:995 #: templates/js/translated/table_filters.js:423 msgid "Supplier" @@ -2933,7 +2938,7 @@ msgstr "Seleziona fornitore" #: company/models.py:497 company/templates/company/supplier_part.html:118 #: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267 -#: templates/js/translated/order.js:1958 templates/js/translated/part.js:228 +#: templates/js/translated/order.js:1997 templates/js/translated/part.js:228 #: templates/js/translated/part.js:1013 msgid "SKU" msgstr "" @@ -2955,17 +2960,17 @@ msgid "Supplier part description" msgstr "Descrizione articolo fornitore" #: company/models.py:522 company/templates/company/supplier_part.html:146 -#: part/models.py:2620 part/templates/part/upload_bom.html:59 +#: part/models.py:2667 part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401 msgid "Note" msgstr "Nota" -#: company/models.py:526 part/models.py:1742 +#: company/models.py:526 part/models.py:1789 msgid "base cost" msgstr "costo base" -#: company/models.py:526 part/models.py:1742 +#: company/models.py:526 part/models.py:1789 msgid "Minimum charge (e.g. stocking fee)" msgstr "Onere minimo (ad esempio tassa di stoccaggio)" @@ -2979,7 +2984,7 @@ msgstr "Confezionamento" msgid "Part packaging" msgstr "Imballaggio del pezzo" -#: company/models.py:530 part/models.py:1744 +#: company/models.py:530 part/models.py:1791 msgid "multiple" msgstr "multiplo" @@ -2990,8 +2995,8 @@ msgstr "Ordine multiplo" #: company/models.py:538 company/templates/company/supplier_part.html:94 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789 -#: templates/js/translated/build.js:2645 templates/js/translated/company.js:979 +#: templates/js/translated/bom.js:911 templates/js/translated/build.js:1821 +#: templates/js/translated/build.js:2678 templates/js/translated/company.js:979 #: templates/js/translated/part.js:600 templates/js/translated/part.js:603 #: templates/js/translated/table_filters.js:186 msgid "Available" @@ -3028,7 +3033,7 @@ msgid "Company" msgstr "Azienda" #: company/templates/company/company_base.html:22 -#: templates/js/translated/order.js:540 +#: templates/js/translated/order.js:579 msgid "Create Purchase Order" msgstr "Crea ordine d'acquisto" @@ -3069,7 +3074,7 @@ msgstr "Scarica immagine dall'URL" #: stock/models.py:644 stock/serializers.py:811 #: stock/templates/stock/item_base.html:401 #: templates/email/overdue_sales_order.html:16 -#: templates/js/translated/company.js:393 templates/js/translated/order.js:2513 +#: templates/js/translated/company.js:393 templates/js/translated/order.js:2552 #: templates/js/translated/stock.js:2559 #: templates/js/translated/table_filters.js:427 msgid "Customer" @@ -3105,7 +3110,7 @@ msgstr "Crea nuovo fornitore" #: company/templates/company/detail.html:19 #: company/templates/company/manufacturer_part.html:123 -#: part/templates/part/detail.html:354 +#: part/templates/part/detail.html:359 msgid "New Supplier Part" msgstr "Nuovo fornitore articolo" @@ -3134,7 +3139,7 @@ msgstr "" msgid "Create new manufacturer part" msgstr "" -#: company/templates/company/detail.html:66 part/templates/part/detail.html:384 +#: company/templates/company/detail.html:66 part/templates/part/detail.html:389 msgid "New Manufacturer Part" msgstr "" @@ -3148,7 +3153,7 @@ msgstr "Giacenza Fornitore" #: order/templates/order/order_base.html:13 #: order/templates/order/purchase_orders.html:8 #: order/templates/order/purchase_orders.html:12 -#: part/templates/part/detail.html:79 part/templates/part/part_sidebar.html:37 +#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:37 #: templates/InvenTree/index.html:252 templates/InvenTree/search.html:198 #: templates/InvenTree/settings/sidebar.html:49 #: templates/js/translated/search.js:275 templates/navbar.html:50 @@ -3171,7 +3176,7 @@ msgstr "" #: order/templates/order/sales_order_base.html:13 #: order/templates/order/sales_orders.html:8 #: order/templates/order/sales_orders.html:15 -#: part/templates/part/detail.html:102 part/templates/part/part_sidebar.html:41 +#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:41 #: templates/InvenTree/index.html:283 templates/InvenTree/search.html:218 #: templates/InvenTree/settings/sidebar.html:51 #: templates/js/translated/search.js:299 templates/navbar.html:61 @@ -3190,7 +3195,7 @@ msgid "New Sales Order" msgstr "" #: company/templates/company/detail.html:168 -#: templates/js/translated/build.js:1660 +#: templates/js/translated/build.js:1692 msgid "Assigned Stock" msgstr "" @@ -3206,7 +3211,7 @@ msgstr "Produttori" #: company/templates/company/manufacturer_part.html:35 #: company/templates/company/supplier_part.html:186 -#: part/templates/part/detail.html:82 part/templates/part/part_base.html:80 +#: part/templates/part/detail.html:87 part/templates/part/part_base.html:80 msgid "Order part" msgstr "Articoli ordinati" @@ -3237,13 +3242,13 @@ msgid "Suppliers" msgstr "Fornitori" #: company/templates/company/manufacturer_part.html:136 -#: part/templates/part/detail.html:365 +#: part/templates/part/detail.html:370 msgid "Delete supplier parts" msgstr "Elimina articolo fornitore" #: company/templates/company/manufacturer_part.html:136 #: company/templates/company/manufacturer_part.html:183 -#: part/templates/part/detail.html:366 part/templates/part/detail.html:396 +#: part/templates/part/detail.html:371 part/templates/part/detail.html:401 #: templates/js/translated/forms.js:453 templates/js/translated/helpers.js:33 #: users/models.py:220 msgid "Delete" @@ -3252,12 +3257,12 @@ msgstr "Elimina" #: company/templates/company/manufacturer_part.html:166 #: company/templates/company/manufacturer_part_sidebar.html:5 #: part/templates/part/category_sidebar.html:19 -#: part/templates/part/detail.html:181 part/templates/part/part_sidebar.html:8 +#: part/templates/part/detail.html:186 part/templates/part/part_sidebar.html:8 msgid "Parameters" msgstr "Parametri" #: company/templates/company/manufacturer_part.html:170 -#: part/templates/part/detail.html:186 +#: part/templates/part/detail.html:191 #: templates/InvenTree/settings/category.html:12 #: templates/InvenTree/settings/part.html:68 msgid "New Parameter" @@ -3268,7 +3273,7 @@ msgid "Delete parameters" msgstr "Elimina il parametro" #: company/templates/company/manufacturer_part.html:245 -#: part/templates/part/detail.html:826 +#: part/templates/part/detail.html:840 msgid "Add Parameter" msgstr "Aggiungi parametro" @@ -3291,7 +3296,7 @@ msgstr "" #: company/templates/company/supplier_part.html:7 #: company/templates/company/supplier_part.html:24 stock/models.py:607 #: stock/templates/stock/item_base.html:238 -#: templates/js/translated/company.js:909 templates/js/translated/order.js:935 +#: templates/js/translated/company.js:909 templates/js/translated/order.js:974 #: templates/js/translated/stock.js:1933 msgid "Supplier Part" msgstr "Articolo Fornitore" @@ -3303,7 +3308,7 @@ msgstr "" #: company/templates/company/supplier_part.html:40 #: company/templates/company/supplier_part.html:41 #: company/templates/company/supplier_part.html:187 -#: part/templates/part/detail.html:83 +#: part/templates/part/detail.html:88 msgid "Order Part" msgstr "Ordine Articolo" @@ -3358,7 +3363,7 @@ msgstr "Informazioni Prezzi" #: company/templates/company/supplier_part.html:212 #: company/templates/company/supplier_part.html:326 -#: part/templates/part/prices.html:276 templates/js/translated/part.js:2233 +#: part/templates/part/prices.html:276 templates/js/translated/part.js:2229 msgid "Add Price Break" msgstr "Aggiungi riduzione prezzo" @@ -3367,12 +3372,12 @@ msgid "No price break information found" msgstr "Nessuna informazione di riduzione di prezzo trovata" #: company/templates/company/supplier_part.html:252 -#: templates/js/translated/part.js:2243 +#: templates/js/translated/part.js:2239 msgid "Delete Price Break" msgstr "Elimina riduzione di prezzo" #: company/templates/company/supplier_part.html:266 -#: templates/js/translated/part.js:2257 +#: templates/js/translated/part.js:2253 msgid "Edit Price Break" msgstr "" @@ -3398,10 +3403,9 @@ msgstr "" #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:151 #: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751 -#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460 -#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754 -#: templates/navbar.html:31 +#: templates/js/translated/part.js:751 templates/js/translated/part.js:1299 +#: templates/js/translated/part.js:1460 templates/js/translated/stock.js:959 +#: templates/js/translated/stock.js:1754 templates/navbar.html:31 msgid "Stock" msgstr "Magazzino" @@ -3554,7 +3558,7 @@ msgid "Company from which the items are being ordered" msgstr "Azienda da cui sono stati ordinati gli articoli" #: order/models.py:262 order/templates/order/order_base.html:124 -#: templates/js/translated/order.js:1716 +#: templates/js/translated/order.js:1755 msgid "Supplier Reference" msgstr "Riferimento fornitore" @@ -3611,7 +3615,7 @@ msgid "Target date for order completion. Order will be overdue after this date." msgstr "" #: order/models.py:652 order/models.py:1204 -#: templates/js/translated/order.js:2560 templates/js/translated/order.js:2722 +#: templates/js/translated/order.js:2599 templates/js/translated/order.js:2761 msgid "Shipment Date" msgstr "" @@ -3673,7 +3677,7 @@ msgstr "" #: order/models.py:983 order/models.py:1063 order/models.py:1104 #: order/models.py:1198 order/models.py:1330 -#: templates/js/translated/order.js:3178 +#: templates/js/translated/order.js:3217 msgid "Order" msgstr "" @@ -3683,7 +3687,7 @@ msgstr "" #: report/templates/report/inventree_po_report.html:76 #: stock/templates/stock/item_base.html:184 #: templates/email/overdue_purchase_order.html:15 -#: templates/js/translated/order.js:936 templates/js/translated/order.js:1691 +#: templates/js/translated/order.js:975 templates/js/translated/order.js:1730 #: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913 #: templates/js/translated/stock.js:2540 msgid "Purchase Order" @@ -3694,7 +3698,7 @@ msgid "Supplier part" msgstr "Articolo Fornitore" #: order/models.py:1009 order/templates/order/order_base.html:169 -#: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073 +#: templates/js/translated/order.js:1429 templates/js/translated/order.js:2112 #: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091 #: templates/js/translated/table_filters.js:338 msgid "Received" @@ -3880,11 +3884,11 @@ msgstr "" msgid "Select destination location for received items" msgstr "Seleziona la posizione di destinazione per gli elementi ricevuti" -#: order/serializers.py:448 templates/js/translated/order.js:1248 +#: order/serializers.py:448 templates/js/translated/order.js:1287 msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:456 templates/js/translated/order.js:1259 +#: order/serializers.py:456 templates/js/translated/order.js:1298 msgid "Enter serial numbers for incoming stock items" msgstr "" @@ -4061,10 +4065,6 @@ msgstr "" msgid "Total cost could not be calculated" msgstr "" -#: order/templates/order/order_base.html:243 -msgid "Edit Purchase Order" -msgstr "Modifica ordine d'acquisto" - #: order/templates/order/order_wizard/match_parts.html:12 #: part/templates/part/import_wizard/ajax_match_references.html:12 #: part/templates/part/import_wizard/match_references.html:12 @@ -4091,10 +4091,10 @@ msgstr "Seleziona l'articolo del fornitore" #: part/templates/part/import_wizard/ajax_match_fields.html:64 #: part/templates/part/import_wizard/ajax_match_references.html:42 #: part/templates/part/import_wizard/match_references.html:49 -#: templates/js/translated/bom.js:77 templates/js/translated/build.js:431 -#: templates/js/translated/build.js:583 templates/js/translated/build.js:1974 -#: templates/js/translated/order.js:884 templates/js/translated/order.js:1337 -#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625 +#: templates/js/translated/bom.js:77 templates/js/translated/build.js:463 +#: templates/js/translated/build.js:615 templates/js/translated/build.js:2007 +#: templates/js/translated/order.js:923 templates/js/translated/order.js:1376 +#: templates/js/translated/order.js:2836 templates/js/translated/stock.js:625 #: templates/js/translated/stock.js:793 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" @@ -4130,7 +4130,7 @@ msgstr "" #: order/templates/order/purchase_order_detail.html:26 #: order/templates/order/sales_order_detail.html:22 #: order/templates/order/sales_order_detail.html:255 -#: templates/js/translated/order.js:557 +#: templates/js/translated/order.js:596 msgid "Add Line Item" msgstr "" @@ -4176,7 +4176,7 @@ msgid "Print packing list" msgstr "" #: order/templates/order/sales_order_base.html:60 -#: templates/js/translated/order.js:229 +#: templates/js/translated/order.js:230 msgid "Complete Shipments" msgstr "" @@ -4190,7 +4190,7 @@ msgid "This Sales Order has not been fully allocated" msgstr "" #: order/templates/order/sales_order_base.html:123 -#: templates/js/translated/order.js:2526 +#: templates/js/translated/order.js:2565 msgid "Customer Reference" msgstr "" @@ -4214,8 +4214,8 @@ msgid "Pending Shipments" msgstr "" #: order/templates/order/sales_order_detail.html:72 -#: templates/attachment_table.html:6 templates/js/translated/bom.js:1110 -#: templates/js/translated/build.js:1882 +#: templates/attachment_table.html:6 templates/js/translated/bom.js:1108 +#: templates/js/translated/build.js:1915 msgid "Actions" msgstr "" @@ -4257,35 +4257,35 @@ msgstr "" msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:584 +#: part/api.py:621 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:704 +#: part/api.py:758 msgid "Valid" msgstr "" -#: part/api.py:705 +#: part/api.py:759 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:711 +#: part/api.py:765 msgid "This option must be selected" msgstr "" -#: part/api.py:1134 +#: part/api.py:1188 msgid "Must be greater than zero" msgstr "" -#: part/api.py:1138 +#: part/api.py:1192 msgid "Must be a valid quantity" msgstr "" -#: part/api.py:1153 +#: part/api.py:1207 msgid "Specify location for initial part stock" msgstr "Specifica la posizione per lo stock iniziale" -#: part/api.py:1184 part/api.py:1188 part/api.py:1203 part/api.py:1207 +#: part/api.py:1238 part/api.py:1242 part/api.py:1257 part/api.py:1261 msgid "This field is required" msgstr "" @@ -4299,14 +4299,14 @@ msgid "Total Stock" msgstr "Giacenze Totali" #: part/bom.py:129 part/templates/part/part_base.html:189 -#: templates/js/translated/order.js:3618 +#: templates/js/translated/order.js:3657 msgid "Available Stock" msgstr "Disponibilità in magazzino" #: part/bom.py:130 part/templates/part/part_base.html:207 -#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590 +#: templates/js/translated/bom.js:945 templates/js/translated/part.js:590 #: templates/js/translated/part.js:610 templates/js/translated/part.js:1302 -#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490 +#: templates/js/translated/part.js:1483 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "Ordinato" @@ -4335,7 +4335,7 @@ msgstr "" msgid "Icon (optional)" msgstr "" -#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16 +#: part/models.py:122 part/models.py:2509 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "Categoria Articoli" @@ -4352,7 +4352,7 @@ msgstr "Categorie Articolo" #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82 #: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:1955 templates/js/translated/search.js:144 +#: templates/js/translated/part.js:1951 templates/js/translated/search.js:144 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "Articoli" @@ -4382,7 +4382,7 @@ msgstr "Il numero di serie più recente è" msgid "Duplicate IPN not allowed in part settings" msgstr "Non è consentito duplicare IPN nelle impostazioni dell'articolo" -#: part/models.py:745 part/models.py:2516 +#: part/models.py:745 part/models.py:2563 msgid "Part name" msgstr "Nome articolo" @@ -4415,11 +4415,11 @@ msgstr "Parole Chiave" msgid "Part keywords to improve visibility in search results" msgstr "Parole chiave per migliorare la visibilità nei risultati di ricerca" -#: part/models.py:783 part/models.py:2218 part/models.py:2461 +#: part/models.py:783 part/models.py:2265 part/models.py:2508 #: part/templates/part/part_base.html:257 #: templates/InvenTree/settings/settings.html:232 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1668 +#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1664 msgid "Category" msgstr "Categoria" @@ -4530,245 +4530,245 @@ msgstr "" msgid "Creation User" msgstr "" -#: part/models.py:1744 +#: part/models.py:1791 msgid "Sell multiple" msgstr "" -#: part/models.py:2265 +#: part/models.py:2312 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:2282 +#: part/models.py:2329 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:2302 templates/js/translated/part.js:2006 +#: part/models.py:2349 templates/js/translated/part.js:2002 #: templates/js/translated/stock.js:1340 msgid "Test Name" msgstr "" -#: part/models.py:2303 +#: part/models.py:2350 msgid "Enter a name for the test" msgstr "" -#: part/models.py:2308 +#: part/models.py:2355 msgid "Test Description" msgstr "Descrizione Di Prova" -#: part/models.py:2309 +#: part/models.py:2356 msgid "Enter description for this test" msgstr "" -#: part/models.py:2314 templates/js/translated/part.js:2015 +#: part/models.py:2361 templates/js/translated/part.js:2011 #: templates/js/translated/table_filters.js:302 msgid "Required" msgstr "" -#: part/models.py:2315 +#: part/models.py:2362 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:2320 templates/js/translated/part.js:2023 +#: part/models.py:2367 templates/js/translated/part.js:2019 msgid "Requires Value" msgstr "" -#: part/models.py:2321 +#: part/models.py:2368 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:2326 templates/js/translated/part.js:2030 +#: part/models.py:2373 templates/js/translated/part.js:2026 msgid "Requires Attachment" msgstr "" -#: part/models.py:2327 +#: part/models.py:2374 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:2335 +#: part/models.py:2382 #, python-brace-format msgid "Illegal character in template name ({c})" msgstr "" -#: part/models.py:2371 +#: part/models.py:2418 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:2379 +#: part/models.py:2426 msgid "Parameter Name" msgstr "" -#: part/models.py:2386 +#: part/models.py:2433 msgid "Parameter Units" msgstr "" -#: part/models.py:2417 +#: part/models.py:2464 msgid "Parent Part" msgstr "" -#: part/models.py:2419 part/models.py:2467 part/models.py:2468 +#: part/models.py:2466 part/models.py:2514 part/models.py:2515 #: templates/InvenTree/settings/settings.html:227 msgid "Parameter Template" msgstr "" -#: part/models.py:2421 +#: part/models.py:2468 msgid "Data" msgstr "" -#: part/models.py:2421 +#: part/models.py:2468 msgid "Parameter Value" msgstr "" -#: part/models.py:2472 templates/InvenTree/settings/settings.html:236 +#: part/models.py:2519 templates/InvenTree/settings/settings.html:236 msgid "Default Value" msgstr "" -#: part/models.py:2473 +#: part/models.py:2520 msgid "Default Parameter Value" msgstr "" -#: part/models.py:2508 +#: part/models.py:2555 msgid "Part ID or part name" msgstr "" -#: part/models.py:2511 templates/js/translated/model_renderers.js:212 +#: part/models.py:2558 templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "Codice Articolo" -#: part/models.py:2512 +#: part/models.py:2559 msgid "Unique part ID value" msgstr "" -#: part/models.py:2515 +#: part/models.py:2562 msgid "Part Name" msgstr "" -#: part/models.py:2519 +#: part/models.py:2566 msgid "Part IPN" msgstr "" -#: part/models.py:2520 +#: part/models.py:2567 msgid "Part IPN value" msgstr "" -#: part/models.py:2523 +#: part/models.py:2570 msgid "Level" msgstr "" -#: part/models.py:2524 +#: part/models.py:2571 msgid "BOM level" msgstr "" -#: part/models.py:2593 +#: part/models.py:2640 msgid "Select parent part" msgstr "" -#: part/models.py:2601 +#: part/models.py:2648 msgid "Sub part" msgstr "" -#: part/models.py:2602 +#: part/models.py:2649 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:2608 +#: part/models.py:2655 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:2610 part/templates/part/upload_bom.html:58 -#: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999 +#: part/models.py:2657 part/templates/part/upload_bom.html:58 +#: templates/js/translated/bom.js:872 templates/js/translated/bom.js:997 #: templates/js/translated/table_filters.js:100 msgid "Optional" msgstr "" -#: part/models.py:2610 +#: part/models.py:2657 msgid "This BOM item is optional" msgstr "" -#: part/models.py:2613 part/templates/part/upload_bom.html:55 +#: part/models.py:2660 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:2614 +#: part/models.py:2661 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:2617 +#: part/models.py:2664 msgid "BOM item reference" msgstr "" -#: part/models.py:2620 +#: part/models.py:2667 msgid "BOM item notes" msgstr "" -#: part/models.py:2622 +#: part/models.py:2669 msgid "Checksum" msgstr "" -#: part/models.py:2622 +#: part/models.py:2669 msgid "BOM line checksum" msgstr "" -#: part/models.py:2626 part/templates/part/upload_bom.html:57 -#: templates/js/translated/bom.js:1016 +#: part/models.py:2673 part/templates/part/upload_bom.html:57 +#: templates/js/translated/bom.js:1014 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:96 msgid "Inherited" msgstr "" -#: part/models.py:2627 +#: part/models.py:2674 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:2632 part/templates/part/upload_bom.html:56 -#: templates/js/translated/bom.js:1008 +#: part/models.py:2679 part/templates/part/upload_bom.html:56 +#: templates/js/translated/bom.js:1006 msgid "Allow Variants" msgstr "Consenti Le Varianti" -#: part/models.py:2633 +#: part/models.py:2680 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:2711 stock/models.py:468 +#: part/models.py:2758 stock/models.py:468 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:2720 part/models.py:2722 +#: part/models.py:2767 part/models.py:2769 msgid "Sub part must be specified" msgstr "" -#: part/models.py:2827 +#: part/models.py:2874 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:2848 +#: part/models.py:2895 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:2861 +#: part/models.py:2908 msgid "Parent BOM item" msgstr "" -#: part/models.py:2869 +#: part/models.py:2916 msgid "Substitute part" msgstr "" -#: part/models.py:2884 +#: part/models.py:2931 msgid "Part 1" msgstr "" -#: part/models.py:2888 +#: part/models.py:2935 msgid "Part 2" msgstr "" -#: part/models.py:2888 +#: part/models.py:2935 msgid "Select Related Part" msgstr "" -#: part/models.py:2906 +#: part/models.py:2953 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:2910 +#: part/models.py:2957 msgid "Duplicate relationship already exists" msgstr "" @@ -4876,7 +4876,7 @@ msgstr "" msgid "The BOM for %(part)s has not been validated." msgstr "" -#: part/templates/part/bom.html:30 part/templates/part/detail.html:264 +#: part/templates/part/bom.html:30 part/templates/part/detail.html:269 msgid "BOM actions" msgstr "" @@ -4945,8 +4945,8 @@ msgstr "Crea nuovo articolo" msgid "New Part" msgstr "Nuovo articolo" -#: part/templates/part/category.html:174 part/templates/part/detail.html:363 -#: part/templates/part/detail.html:394 +#: part/templates/part/category.html:174 part/templates/part/detail.html:368 +#: part/templates/part/detail.html:399 msgid "Options" msgstr "Opzioni" @@ -5014,138 +5014,146 @@ msgstr "" msgid "Part Stock" msgstr "" -#: part/templates/part/detail.html:54 +#: part/templates/part/detail.html:44 +msgid "Refresh scheduling data" +msgstr "" + +#: part/templates/part/detail.html:45 templates/js/translated/tables.js:558 +msgid "Refresh" +msgstr "Aggiorna" + +#: part/templates/part/detail.html:59 msgid "Part Test Templates" msgstr "" -#: part/templates/part/detail.html:59 +#: part/templates/part/detail.html:64 msgid "Add Test Template" msgstr "" -#: part/templates/part/detail.html:116 stock/templates/stock/item.html:53 +#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53 msgid "Sales Order Allocations" msgstr "Assegnazione Ordine Di Vendita" -#: part/templates/part/detail.html:138 +#: part/templates/part/detail.html:143 msgid "Part Notes" msgstr "" -#: part/templates/part/detail.html:153 +#: part/templates/part/detail.html:158 msgid "Part Variants" msgstr "" -#: part/templates/part/detail.html:157 +#: part/templates/part/detail.html:162 msgid "Create new variant" msgstr "" -#: part/templates/part/detail.html:158 +#: part/templates/part/detail.html:163 msgid "New Variant" msgstr "" -#: part/templates/part/detail.html:185 +#: part/templates/part/detail.html:190 msgid "Add new parameter" msgstr "" -#: part/templates/part/detail.html:222 part/templates/part/part_sidebar.html:54 +#: part/templates/part/detail.html:227 part/templates/part/part_sidebar.html:54 msgid "Related Parts" msgstr "Articoli correlati" -#: part/templates/part/detail.html:226 part/templates/part/detail.html:227 +#: part/templates/part/detail.html:231 part/templates/part/detail.html:232 msgid "Add Related" msgstr "" -#: part/templates/part/detail.html:247 part/templates/part/part_sidebar.html:17 +#: part/templates/part/detail.html:252 part/templates/part/part_sidebar.html:17 msgid "Bill of Materials" msgstr "Distinta base" -#: part/templates/part/detail.html:252 +#: part/templates/part/detail.html:257 msgid "Export actions" msgstr "" -#: part/templates/part/detail.html:256 templates/js/translated/bom.js:284 +#: part/templates/part/detail.html:261 templates/js/translated/bom.js:284 msgid "Export BOM" msgstr "" -#: part/templates/part/detail.html:258 +#: part/templates/part/detail.html:263 msgid "Print BOM Report" msgstr "" -#: part/templates/part/detail.html:268 +#: part/templates/part/detail.html:273 msgid "Upload BOM" msgstr "" -#: part/templates/part/detail.html:269 templates/js/translated/part.js:274 +#: part/templates/part/detail.html:274 templates/js/translated/part.js:274 msgid "Copy BOM" msgstr "" -#: part/templates/part/detail.html:270 +#: part/templates/part/detail.html:275 msgid "Validate BOM" msgstr "" -#: part/templates/part/detail.html:275 +#: part/templates/part/detail.html:280 msgid "New BOM Item" msgstr "" -#: part/templates/part/detail.html:276 +#: part/templates/part/detail.html:281 msgid "Add BOM Item" msgstr "" -#: part/templates/part/detail.html:289 +#: part/templates/part/detail.html:294 msgid "Assemblies" msgstr "" -#: part/templates/part/detail.html:307 +#: part/templates/part/detail.html:312 msgid "Part Builds" msgstr "" -#: part/templates/part/detail.html:334 stock/templates/stock/item.html:38 +#: part/templates/part/detail.html:339 stock/templates/stock/item.html:38 msgid "Build Order Allocations" msgstr "" -#: part/templates/part/detail.html:350 +#: part/templates/part/detail.html:355 msgid "Part Suppliers" msgstr "Fornitori articoli" -#: part/templates/part/detail.html:380 +#: part/templates/part/detail.html:385 msgid "Part Manufacturers" msgstr "Componenti Produttori" -#: part/templates/part/detail.html:396 +#: part/templates/part/detail.html:401 msgid "Delete manufacturer parts" msgstr "" -#: part/templates/part/detail.html:612 +#: part/templates/part/detail.html:626 msgid "Create BOM Item" msgstr "" -#: part/templates/part/detail.html:656 +#: part/templates/part/detail.html:670 msgid "Related Part" msgstr "Articoli correlati" -#: part/templates/part/detail.html:664 +#: part/templates/part/detail.html:678 msgid "Add Related Part" msgstr "" -#: part/templates/part/detail.html:756 +#: part/templates/part/detail.html:770 msgid "Add Test Result Template" msgstr "" -#: part/templates/part/detail.html:900 +#: part/templates/part/detail.html:914 #, python-format msgid "Purchase Unit Price - %(currency)s" msgstr "" -#: part/templates/part/detail.html:912 +#: part/templates/part/detail.html:926 #, python-format msgid "Unit Price-Cost Difference - %(currency)s" msgstr "" -#: part/templates/part/detail.html:924 +#: part/templates/part/detail.html:938 #, python-format msgid "Supplier Unit Cost - %(currency)s" msgstr "" -#: part/templates/part/detail.html:1013 +#: part/templates/part/detail.html:1027 #, python-format msgid "Unit Price - %(currency)s" msgstr "" @@ -5321,13 +5329,13 @@ msgstr "" msgid "Allocated to Sales Orders" msgstr "" -#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1037 +#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1035 msgid "Can Build" msgstr "" #: part/templates/part/part_base.html:238 templates/js/translated/part.js:593 #: templates/js/translated/part.js:613 templates/js/translated/part.js:1306 -#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1494 +#: templates/js/translated/part.js:1490 msgid "Building" msgstr "" @@ -5379,7 +5387,7 @@ msgid "Total Cost" msgstr "Costo Totale" #: part/templates/part/part_pricing.html:40 part/templates/part/prices.html:43 -#: templates/js/translated/bom.js:991 +#: templates/js/translated/bom.js:989 msgid "No supplier pricing available" msgstr "" @@ -5414,6 +5422,18 @@ msgstr "" msgid "No pricing information is available for this part." msgstr "" +#: part/templates/part/part_scheduling.html:13 +#: report/templates/report/inventree_test_report_base.html:97 +#: templates/InvenTree/settings/plugin.html:53 +#: templates/InvenTree/settings/plugin_settings.html:38 +#: templates/js/translated/order.js:1772 templates/js/translated/stock.js:2468 +msgid "Date" +msgstr "Data" + +#: part/templates/part/part_scheduling.html:14 +msgid "Scheduled Quantity" +msgstr "" + #: part/templates/part/part_sidebar.html:11 msgid "Variants" msgstr "" @@ -5462,7 +5482,7 @@ msgstr "" msgid "Calculation parameters" msgstr "" -#: part/templates/part/prices.html:160 templates/js/translated/bom.js:985 +#: part/templates/part/prices.html:160 templates/js/translated/bom.js:983 msgid "Supplier Cost" msgstr "" @@ -5501,7 +5521,7 @@ msgid "No sale pice history available for this part." msgstr "" #: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616 -#: templates/js/translated/part.js:1294 templates/js/translated/part.js:1498 +#: templates/js/translated/part.js:1294 msgid "No Stock" msgstr "Nessuna giacenza" @@ -5893,11 +5913,11 @@ msgstr "" #: report/templates/report/inventree_test_report_base.html:79 #: stock/models.py:648 stock/templates/stock/item_base.html:322 -#: templates/js/translated/build.js:424 templates/js/translated/build.js:576 -#: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673 +#: templates/js/translated/build.js:456 templates/js/translated/build.js:608 +#: templates/js/translated/build.js:1208 templates/js/translated/build.js:1705 #: templates/js/translated/model_renderers.js:118 -#: templates/js/translated/order.js:118 templates/js/translated/order.js:3297 -#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490 +#: templates/js/translated/order.js:119 templates/js/translated/order.js:3336 +#: templates/js/translated/order.js:3423 templates/js/translated/stock.js:490 msgid "Serial Number" msgstr "" @@ -5915,13 +5935,6 @@ msgstr "" msgid "Result" msgstr "" -#: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:53 -#: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468 -msgid "Date" -msgstr "Data" - #: report/templates/report/inventree_test_report_base.html:108 msgid "Pass" msgstr "" @@ -6519,7 +6532,7 @@ msgid "Available Quantity" msgstr "" #: stock/templates/stock/item_base.html:394 -#: templates/js/translated/build.js:1695 +#: templates/js/translated/build.js:1727 msgid "No location set" msgstr "Nessuna posizione impostata" @@ -7702,7 +7715,7 @@ msgid "The following parts are low on required stock" msgstr "" #: templates/email/build_order_required_stock.html:18 -#: templates/js/translated/bom.js:1483 +#: templates/js/translated/bom.js:1481 msgid "Required Quantity" msgstr "Quantità richiesta" @@ -7716,6 +7729,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:19 +#: templates/js/translated/part.js:2498 msgid "Minimum Quantity" msgstr "Quantità minima" @@ -7917,10 +7931,10 @@ msgstr "" msgid "Row Data" msgstr "" -#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:622 +#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:620 #: templates/js/translated/modals.js:56 templates/js/translated/modals.js:601 #: templates/js/translated/modals.js:695 templates/js/translated/modals.js:1003 -#: templates/js/translated/order.js:979 templates/modals.html:15 +#: templates/js/translated/order.js:1018 templates/modals.html:15 #: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50 msgid "Close" msgstr "Chiudi" @@ -7930,12 +7944,12 @@ msgid "Download BOM Template" msgstr "" #: templates/js/translated/bom.js:253 templates/js/translated/bom.js:287 -#: templates/js/translated/order.js:760 templates/js/translated/tables.js:145 +#: templates/js/translated/order.js:799 templates/js/translated/tables.js:145 msgid "Format" msgstr "Formato" #: templates/js/translated/bom.js:254 templates/js/translated/bom.js:288 -#: templates/js/translated/order.js:761 +#: templates/js/translated/order.js:800 msgid "Select file format" msgstr "" @@ -7991,390 +8005,390 @@ msgstr "" msgid "Remove substitute part" msgstr "" -#: templates/js/translated/bom.js:567 +#: templates/js/translated/bom.js:565 msgid "Select and add a new substitute part using the input below" msgstr "" -#: templates/js/translated/bom.js:578 +#: templates/js/translated/bom.js:576 msgid "Are you sure you wish to remove this substitute part link?" msgstr "" -#: templates/js/translated/bom.js:584 +#: templates/js/translated/bom.js:582 msgid "Remove Substitute Part" msgstr "" -#: templates/js/translated/bom.js:623 +#: templates/js/translated/bom.js:621 msgid "Add Substitute" msgstr "" -#: templates/js/translated/bom.js:624 +#: templates/js/translated/bom.js:622 msgid "Edit BOM Item Substitutes" msgstr "" -#: templates/js/translated/bom.js:686 +#: templates/js/translated/bom.js:684 msgid "All selected BOM items will be deleted" msgstr "" -#: templates/js/translated/bom.js:702 +#: templates/js/translated/bom.js:700 msgid "Delete selected BOM items?" msgstr "" -#: templates/js/translated/bom.js:821 +#: templates/js/translated/bom.js:819 msgid "Load BOM for subassembly" msgstr "" -#: templates/js/translated/bom.js:831 +#: templates/js/translated/bom.js:829 msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:835 templates/js/translated/build.js:1771 +#: templates/js/translated/bom.js:833 templates/js/translated/build.js:1803 msgid "Variant stock allowed" msgstr "" -#: templates/js/translated/bom.js:929 templates/js/translated/build.js:1816 -#: templates/js/translated/order.js:3632 +#: templates/js/translated/bom.js:927 templates/js/translated/build.js:1849 +#: templates/js/translated/order.js:3671 msgid "No Stock Available" msgstr "" -#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1820 +#: templates/js/translated/bom.js:932 templates/js/translated/build.js:1853 msgid "Includes variant and substitute stock" msgstr "" -#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822 +#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1855 #: templates/js/translated/part.js:763 msgid "Includes variant stock" msgstr "" -#: templates/js/translated/bom.js:938 templates/js/translated/build.js:1824 +#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1857 msgid "Includes substitute stock" msgstr "" -#: templates/js/translated/bom.js:956 +#: templates/js/translated/bom.js:954 msgid "Substitutes" msgstr "" -#: templates/js/translated/bom.js:971 +#: templates/js/translated/bom.js:969 msgid "Purchase Price Range" msgstr "" -#: templates/js/translated/bom.js:978 +#: templates/js/translated/bom.js:976 msgid "Purchase Price Average" msgstr "" -#: templates/js/translated/bom.js:1027 templates/js/translated/bom.js:1147 +#: templates/js/translated/bom.js:1025 templates/js/translated/bom.js:1145 msgid "View BOM" msgstr "" -#: templates/js/translated/bom.js:1054 +#: templates/js/translated/bom.js:1052 msgid "Including On Order" msgstr "" -#: templates/js/translated/bom.js:1118 +#: templates/js/translated/bom.js:1116 msgid "Validate BOM Item" msgstr "" -#: templates/js/translated/bom.js:1120 +#: templates/js/translated/bom.js:1118 msgid "This line has been validated" msgstr "" -#: templates/js/translated/bom.js:1122 +#: templates/js/translated/bom.js:1120 msgid "Edit substitute parts" msgstr "" -#: templates/js/translated/bom.js:1124 templates/js/translated/bom.js:1286 +#: templates/js/translated/bom.js:1122 templates/js/translated/bom.js:1284 msgid "Edit BOM Item" msgstr "" -#: templates/js/translated/bom.js:1126 +#: templates/js/translated/bom.js:1124 msgid "Delete BOM Item" msgstr "" -#: templates/js/translated/bom.js:1222 templates/js/translated/build.js:1617 +#: templates/js/translated/bom.js:1220 templates/js/translated/build.js:1649 msgid "No BOM items found" msgstr "" -#: templates/js/translated/bom.js:1466 templates/js/translated/build.js:1755 +#: templates/js/translated/bom.js:1464 templates/js/translated/build.js:1787 msgid "Required Part" msgstr "" -#: templates/js/translated/bom.js:1488 +#: templates/js/translated/bom.js:1486 msgid "Inherited from parent BOM" msgstr "" -#: templates/js/translated/build.js:86 +#: templates/js/translated/build.js:89 msgid "Edit Build Order" msgstr "" -#: templates/js/translated/build.js:120 +#: templates/js/translated/build.js:132 msgid "Create Build Order" msgstr "" -#: templates/js/translated/build.js:133 +#: templates/js/translated/build.js:165 msgid "Cancel Build Order" msgstr "" -#: templates/js/translated/build.js:142 +#: templates/js/translated/build.js:174 msgid "Are you sure you wish to cancel this build?" msgstr "" -#: templates/js/translated/build.js:148 +#: templates/js/translated/build.js:180 msgid "Stock items have been allocated to this build order" msgstr "" -#: templates/js/translated/build.js:155 +#: templates/js/translated/build.js:187 msgid "There are incomplete outputs remaining for this build order" msgstr "" -#: templates/js/translated/build.js:185 +#: templates/js/translated/build.js:217 msgid "Build order is ready to be completed" msgstr "" -#: templates/js/translated/build.js:190 +#: templates/js/translated/build.js:222 msgid "Build Order is incomplete" msgstr "" -#: templates/js/translated/build.js:222 +#: templates/js/translated/build.js:254 msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:263 templates/js/translated/stock.js:92 +#: templates/js/translated/build.js:295 templates/js/translated/stock.js:92 #: templates/js/translated/stock.js:214 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:265 templates/js/translated/stock.js:94 +#: templates/js/translated/build.js:297 templates/js/translated/stock.js:94 #: templates/js/translated/stock.js:216 msgid "Latest serial number" msgstr "" -#: templates/js/translated/build.js:274 +#: templates/js/translated/build.js:306 msgid "The Bill of Materials contains trackable parts" msgstr "La distinta base contiene articoli tracciabili" -#: templates/js/translated/build.js:275 +#: templates/js/translated/build.js:307 msgid "Build outputs must be generated individually" msgstr "" -#: templates/js/translated/build.js:283 +#: templates/js/translated/build.js:315 msgid "Trackable parts can have serial numbers specified" msgstr "" -#: templates/js/translated/build.js:284 +#: templates/js/translated/build.js:316 msgid "Enter serial numbers to generate multiple single build outputs" msgstr "" -#: templates/js/translated/build.js:291 +#: templates/js/translated/build.js:323 msgid "Create Build Output" msgstr "" -#: templates/js/translated/build.js:322 +#: templates/js/translated/build.js:354 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:333 +#: templates/js/translated/build.js:365 msgid "Unallocate stock from build output" msgstr "" -#: templates/js/translated/build.js:342 +#: templates/js/translated/build.js:374 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:350 +#: templates/js/translated/build.js:382 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:373 +#: templates/js/translated/build.js:405 msgid "Are you sure you wish to unallocate stock items from this build?" msgstr "" -#: templates/js/translated/build.js:391 +#: templates/js/translated/build.js:423 msgid "Unallocate Stock Items" msgstr "" -#: templates/js/translated/build.js:411 templates/js/translated/build.js:563 +#: templates/js/translated/build.js:443 templates/js/translated/build.js:595 msgid "Select Build Outputs" msgstr "" -#: templates/js/translated/build.js:412 templates/js/translated/build.js:564 +#: templates/js/translated/build.js:444 templates/js/translated/build.js:596 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:466 templates/js/translated/build.js:618 +#: templates/js/translated/build.js:498 templates/js/translated/build.js:650 msgid "Output" msgstr "" -#: templates/js/translated/build.js:484 +#: templates/js/translated/build.js:516 msgid "Complete Build Outputs" msgstr "" -#: templates/js/translated/build.js:631 +#: templates/js/translated/build.js:663 msgid "Delete Build Outputs" msgstr "" -#: templates/js/translated/build.js:720 +#: templates/js/translated/build.js:752 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:757 +#: templates/js/translated/build.js:789 msgid "Location not specified" msgstr "Posizione non specificata" -#: templates/js/translated/build.js:1136 +#: templates/js/translated/build.js:1168 msgid "No active build outputs found" msgstr "" -#: templates/js/translated/build.js:1205 +#: templates/js/translated/build.js:1237 msgid "Allocated Stock" msgstr "" -#: templates/js/translated/build.js:1212 +#: templates/js/translated/build.js:1244 msgid "No tracked BOM items for this build" msgstr "" -#: templates/js/translated/build.js:1234 +#: templates/js/translated/build.js:1266 msgid "Completed Tests" msgstr "" -#: templates/js/translated/build.js:1239 +#: templates/js/translated/build.js:1271 msgid "No required tests for this build" msgstr "" -#: templates/js/translated/build.js:1712 templates/js/translated/build.js:2656 -#: templates/js/translated/order.js:3332 +#: templates/js/translated/build.js:1744 templates/js/translated/build.js:2689 +#: templates/js/translated/order.js:3371 msgid "Edit stock allocation" msgstr "Modifica allocazione magazzino" -#: templates/js/translated/build.js:1714 templates/js/translated/build.js:2657 -#: templates/js/translated/order.js:3333 +#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2690 +#: templates/js/translated/order.js:3372 msgid "Delete stock allocation" msgstr "Elimina posizione giacenza" -#: templates/js/translated/build.js:1732 +#: templates/js/translated/build.js:1764 msgid "Edit Allocation" msgstr "Modifica Posizione" -#: templates/js/translated/build.js:1742 +#: templates/js/translated/build.js:1774 msgid "Remove Allocation" msgstr "Rimuovi Posizione" -#: templates/js/translated/build.js:1767 +#: templates/js/translated/build.js:1799 msgid "Substitute parts available" msgstr "" -#: templates/js/translated/build.js:1784 +#: templates/js/translated/build.js:1816 msgid "Quantity Per" msgstr "" -#: templates/js/translated/build.js:1810 templates/js/translated/order.js:3639 +#: templates/js/translated/build.js:1843 templates/js/translated/order.js:3678 msgid "Insufficient stock available" msgstr "" -#: templates/js/translated/build.js:1812 templates/js/translated/order.js:3637 +#: templates/js/translated/build.js:1845 templates/js/translated/order.js:3676 msgid "Sufficient stock available" msgstr "" -#: templates/js/translated/build.js:1841 templates/js/translated/build.js:2086 -#: templates/js/translated/build.js:2652 templates/js/translated/order.js:3651 +#: templates/js/translated/build.js:1874 templates/js/translated/build.js:2119 +#: templates/js/translated/build.js:2685 templates/js/translated/order.js:3690 msgid "Allocated" msgstr "" -#: templates/js/translated/build.js:1889 templates/js/translated/order.js:3731 +#: templates/js/translated/build.js:1922 templates/js/translated/order.js:3770 msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:1893 templates/stock_table.html:50 +#: templates/js/translated/build.js:1926 templates/stock_table.html:50 msgid "Order stock" msgstr "" -#: templates/js/translated/build.js:1896 templates/js/translated/order.js:3724 +#: templates/js/translated/build.js:1929 templates/js/translated/order.js:3763 msgid "Allocate stock" msgstr "" -#: templates/js/translated/build.js:1935 templates/js/translated/label.js:172 -#: templates/js/translated/order.js:807 templates/js/translated/order.js:2859 +#: templates/js/translated/build.js:1968 templates/js/translated/label.js:172 +#: templates/js/translated/order.js:846 templates/js/translated/order.js:2898 #: templates/js/translated/report.js:225 msgid "Select Parts" msgstr "Seleziona Articoli" -#: templates/js/translated/build.js:1936 templates/js/translated/order.js:2860 +#: templates/js/translated/build.js:1969 templates/js/translated/order.js:2899 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1985 templates/js/translated/order.js:2808 +#: templates/js/translated/build.js:2018 templates/js/translated/order.js:2847 msgid "Specify stock allocation quantity" msgstr "Specificare il quantitativo assegnato allo stock" -#: templates/js/translated/build.js:2059 +#: templates/js/translated/build.js:2092 msgid "All Parts Allocated" msgstr "" -#: templates/js/translated/build.js:2060 +#: templates/js/translated/build.js:2093 msgid "All selected parts have been fully allocated" msgstr "" -#: templates/js/translated/build.js:2074 templates/js/translated/order.js:2874 +#: templates/js/translated/build.js:2107 templates/js/translated/order.js:2913 msgid "Select source location (leave blank to take from all locations)" msgstr "Seleziona la posizione di origine (lascia vuoto per prendere da tutte le posizioni)" -#: templates/js/translated/build.js:2102 +#: templates/js/translated/build.js:2135 msgid "Allocate Stock Items to Build Order" msgstr "" -#: templates/js/translated/build.js:2113 templates/js/translated/order.js:2971 +#: templates/js/translated/build.js:2146 templates/js/translated/order.js:3010 msgid "No matching stock locations" msgstr "Nessuna posizione di magazzino corrispondente" -#: templates/js/translated/build.js:2185 templates/js/translated/order.js:3048 +#: templates/js/translated/build.js:2218 templates/js/translated/order.js:3087 msgid "No matching stock items" msgstr "" -#: templates/js/translated/build.js:2282 +#: templates/js/translated/build.js:2315 msgid "Automatic Stock Allocation" msgstr "" -#: templates/js/translated/build.js:2283 +#: templates/js/translated/build.js:2316 msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines" msgstr "" -#: templates/js/translated/build.js:2285 +#: templates/js/translated/build.js:2318 msgid "If a location is specifed, stock will only be allocated from that location" msgstr "" -#: templates/js/translated/build.js:2286 +#: templates/js/translated/build.js:2319 msgid "If stock is considered interchangeable, it will be allocated from the first location it is found" msgstr "" -#: templates/js/translated/build.js:2287 +#: templates/js/translated/build.js:2320 msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found" msgstr "" -#: templates/js/translated/build.js:2308 +#: templates/js/translated/build.js:2341 msgid "Allocate Stock Items" msgstr "" -#: templates/js/translated/build.js:2414 +#: templates/js/translated/build.js:2447 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387 -#: templates/js/translated/part.js:1899 templates/js/translated/stock.js:1686 +#: templates/js/translated/build.js:2482 templates/js/translated/part.js:1387 +#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1686 #: templates/js/translated/stock.js:2386 msgid "Select" msgstr "" -#: templates/js/translated/build.js:2463 +#: templates/js/translated/build.js:2496 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:2491 +#: templates/js/translated/build.js:2524 msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647 +#: templates/js/translated/build.js:2560 templates/js/translated/stock.js:2647 msgid "No user information" msgstr "" -#: templates/js/translated/build.js:2633 +#: templates/js/translated/build.js:2666 msgid "No parts allocated for" msgstr "" @@ -8390,11 +8404,11 @@ msgstr "" msgid "Edit Manufacturer Part" msgstr "" -#: templates/js/translated/company.js:167 templates/js/translated/order.js:509 +#: templates/js/translated/company.js:167 templates/js/translated/order.js:510 msgid "Add Supplier" msgstr "Aggiungi fornitore" -#: templates/js/translated/company.js:195 templates/js/translated/order.js:628 +#: templates/js/translated/company.js:195 templates/js/translated/order.js:667 msgid "Add Supplier Part" msgstr "Aggiungi fornitore articolo" @@ -8765,381 +8779,385 @@ msgstr "" msgid "Notifications will load here" msgstr "" -#: templates/js/translated/order.js:94 +#: templates/js/translated/order.js:95 msgid "No stock items have been allocated to this shipment" msgstr "" -#: templates/js/translated/order.js:99 +#: templates/js/translated/order.js:100 msgid "The following stock items will be shipped" msgstr "" -#: templates/js/translated/order.js:139 +#: templates/js/translated/order.js:140 msgid "Complete Shipment" msgstr "" -#: templates/js/translated/order.js:159 +#: templates/js/translated/order.js:160 msgid "Confirm Shipment" msgstr "" -#: templates/js/translated/order.js:215 +#: templates/js/translated/order.js:216 msgid "No pending shipments found" msgstr "" -#: templates/js/translated/order.js:219 +#: templates/js/translated/order.js:220 msgid "No stock items have been allocated to pending shipments" msgstr "" -#: templates/js/translated/order.js:251 +#: templates/js/translated/order.js:252 msgid "Skip" msgstr "" -#: templates/js/translated/order.js:281 +#: templates/js/translated/order.js:282 msgid "Complete Purchase Order" msgstr "" -#: templates/js/translated/order.js:287 +#: templates/js/translated/order.js:288 msgid "Mark this order as complete?" msgstr "" -#: templates/js/translated/order.js:293 +#: templates/js/translated/order.js:294 msgid "All line items have been received" msgstr "" -#: templates/js/translated/order.js:298 +#: templates/js/translated/order.js:299 msgid "This order has line items which have not been marked as received." msgstr "" -#: templates/js/translated/order.js:299 +#: templates/js/translated/order.js:300 msgid "Completing this order means that the order and line items will no longer be editable." msgstr "" -#: templates/js/translated/order.js:322 +#: templates/js/translated/order.js:323 msgid "Cancel Purchase Order" msgstr "" -#: templates/js/translated/order.js:327 +#: templates/js/translated/order.js:328 msgid "Are you sure you wish to cancel this purchase order?" msgstr "" -#: templates/js/translated/order.js:333 +#: templates/js/translated/order.js:334 msgid "This purchase order can not be cancelled" msgstr "" -#: templates/js/translated/order.js:356 +#: templates/js/translated/order.js:357 msgid "Issue Purchase Order" msgstr "" -#: templates/js/translated/order.js:361 +#: templates/js/translated/order.js:362 msgid "After placing this purchase order, line items will no longer be editable." msgstr "" -#: templates/js/translated/order.js:383 +#: templates/js/translated/order.js:384 msgid "Cancel Sales Order" msgstr "" -#: templates/js/translated/order.js:388 +#: templates/js/translated/order.js:389 msgid "Cancelling this order means that the order will no longer be editable." msgstr "" -#: templates/js/translated/order.js:442 +#: templates/js/translated/order.js:443 msgid "Create New Shipment" msgstr "" -#: templates/js/translated/order.js:467 +#: templates/js/translated/order.js:468 msgid "Add Customer" msgstr "Aggiungi cliente" -#: templates/js/translated/order.js:492 +#: templates/js/translated/order.js:493 msgid "Create Sales Order" msgstr "" -#: templates/js/translated/order.js:757 +#: templates/js/translated/order.js:554 +msgid "Edit Purchase Order" +msgstr "Modifica ordine d'acquisto" + +#: templates/js/translated/order.js:796 msgid "Export Order" msgstr "" -#: templates/js/translated/order.js:808 +#: templates/js/translated/order.js:847 msgid "At least one purchaseable part must be selected" msgstr "" -#: templates/js/translated/order.js:833 +#: templates/js/translated/order.js:872 msgid "Quantity to order" msgstr "" -#: templates/js/translated/order.js:842 +#: templates/js/translated/order.js:881 msgid "New supplier part" msgstr "" -#: templates/js/translated/order.js:860 +#: templates/js/translated/order.js:899 msgid "New purchase order" msgstr "" -#: templates/js/translated/order.js:893 +#: templates/js/translated/order.js:932 msgid "Add to purchase order" msgstr "" -#: templates/js/translated/order.js:1002 +#: templates/js/translated/order.js:1041 msgid "No matching supplier parts" msgstr "" -#: templates/js/translated/order.js:1017 +#: templates/js/translated/order.js:1056 msgid "No matching purchase orders" msgstr "" -#: templates/js/translated/order.js:1194 +#: templates/js/translated/order.js:1233 msgid "Select Line Items" msgstr "" -#: templates/js/translated/order.js:1195 +#: templates/js/translated/order.js:1234 msgid "At least one line item must be selected" msgstr "" -#: templates/js/translated/order.js:1215 templates/js/translated/order.js:1314 +#: templates/js/translated/order.js:1254 templates/js/translated/order.js:1353 msgid "Add batch code" msgstr "" -#: templates/js/translated/order.js:1221 templates/js/translated/order.js:1325 +#: templates/js/translated/order.js:1260 templates/js/translated/order.js:1364 msgid "Add serial numbers" msgstr "" -#: templates/js/translated/order.js:1233 +#: templates/js/translated/order.js:1272 msgid "Quantity to receive" msgstr "Quantità da ricevere" -#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144 +#: templates/js/translated/order.js:1336 templates/js/translated/stock.js:2144 msgid "Stock Status" msgstr "Stato giacenza" -#: templates/js/translated/order.js:1388 +#: templates/js/translated/order.js:1427 msgid "Order Code" msgstr "Codice ordine" -#: templates/js/translated/order.js:1389 +#: templates/js/translated/order.js:1428 msgid "Ordered" msgstr "Ordinato" -#: templates/js/translated/order.js:1391 +#: templates/js/translated/order.js:1430 msgid "Quantity to Receive" msgstr "" -#: templates/js/translated/order.js:1410 +#: templates/js/translated/order.js:1449 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/order.js:1411 +#: templates/js/translated/order.js:1450 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943 +#: templates/js/translated/order.js:1711 templates/js/translated/part.js:943 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/order.js:1699 templates/js/translated/order.js:2503 +#: templates/js/translated/order.js:1738 templates/js/translated/order.js:2542 msgid "Order is overdue" msgstr "" -#: templates/js/translated/order.js:1749 templates/js/translated/order.js:2568 -#: templates/js/translated/order.js:2709 +#: templates/js/translated/order.js:1788 templates/js/translated/order.js:2607 +#: templates/js/translated/order.js:2748 msgid "Items" msgstr "" -#: templates/js/translated/order.js:1847 templates/js/translated/order.js:3783 +#: templates/js/translated/order.js:1886 templates/js/translated/order.js:3822 msgid "Duplicate Line Item" msgstr "" -#: templates/js/translated/order.js:1864 templates/js/translated/order.js:3805 +#: templates/js/translated/order.js:1903 templates/js/translated/order.js:3844 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/order.js:1877 templates/js/translated/order.js:3816 +#: templates/js/translated/order.js:1916 templates/js/translated/order.js:3855 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/order.js:1920 +#: templates/js/translated/order.js:1959 msgid "No line items found" msgstr "" -#: templates/js/translated/order.js:1947 templates/js/translated/order.js:3517 +#: templates/js/translated/order.js:1986 templates/js/translated/order.js:3556 msgid "Total" msgstr "Totale" -#: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203 -#: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050 -#: templates/js/translated/part.js:2135 templates/js/translated/part.js:2488 +#: templates/js/translated/order.js:2040 templates/js/translated/order.js:2242 +#: templates/js/translated/order.js:3581 templates/js/translated/order.js:4089 +#: templates/js/translated/part.js:2131 templates/js/translated/part.js:2703 msgid "Unit Price" msgstr "Prezzo Unitario" -#: templates/js/translated/order.js:2016 templates/js/translated/order.js:2219 -#: templates/js/translated/order.js:3558 templates/js/translated/order.js:4066 +#: templates/js/translated/order.js:2055 templates/js/translated/order.js:2258 +#: templates/js/translated/order.js:3597 templates/js/translated/order.js:4105 msgid "Total Price" msgstr "Prezzo Totale" -#: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600 +#: templates/js/translated/order.js:2096 templates/js/translated/order.js:3639 #: templates/js/translated/part.js:1050 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096 +#: templates/js/translated/order.js:2155 templates/js/translated/part.js:1096 msgid "Receive line item" msgstr "" -#: templates/js/translated/order.js:2120 templates/js/translated/order.js:3737 +#: templates/js/translated/order.js:2159 templates/js/translated/order.js:3776 msgid "Duplicate line item" msgstr "" -#: templates/js/translated/order.js:2121 templates/js/translated/order.js:3738 +#: templates/js/translated/order.js:2160 templates/js/translated/order.js:3777 msgid "Edit line item" msgstr "" -#: templates/js/translated/order.js:2122 templates/js/translated/order.js:3742 +#: templates/js/translated/order.js:2161 templates/js/translated/order.js:3781 msgid "Delete line item" msgstr "" -#: templates/js/translated/order.js:2268 templates/js/translated/order.js:4115 +#: templates/js/translated/order.js:2307 templates/js/translated/order.js:4154 msgid "Duplicate line" msgstr "" -#: templates/js/translated/order.js:2269 templates/js/translated/order.js:4116 +#: templates/js/translated/order.js:2308 templates/js/translated/order.js:4155 msgid "Edit line" msgstr "" -#: templates/js/translated/order.js:2270 templates/js/translated/order.js:4117 +#: templates/js/translated/order.js:2309 templates/js/translated/order.js:4156 msgid "Delete line" msgstr "" -#: templates/js/translated/order.js:2300 templates/js/translated/order.js:4147 +#: templates/js/translated/order.js:2339 templates/js/translated/order.js:4186 msgid "Duplicate Line" msgstr "" -#: templates/js/translated/order.js:2321 templates/js/translated/order.js:4168 +#: templates/js/translated/order.js:2360 templates/js/translated/order.js:4207 msgid "Edit Line" msgstr "" -#: templates/js/translated/order.js:2332 templates/js/translated/order.js:4179 +#: templates/js/translated/order.js:2371 templates/js/translated/order.js:4218 msgid "Delete Line" msgstr "" -#: templates/js/translated/order.js:2343 +#: templates/js/translated/order.js:2382 msgid "No matching line" msgstr "" -#: templates/js/translated/order.js:2454 +#: templates/js/translated/order.js:2493 msgid "No sales orders found" msgstr "" -#: templates/js/translated/order.js:2517 +#: templates/js/translated/order.js:2556 msgid "Invalid Customer" msgstr "Cliente non valido" -#: templates/js/translated/order.js:2615 +#: templates/js/translated/order.js:2654 msgid "Edit shipment" msgstr "" -#: templates/js/translated/order.js:2618 +#: templates/js/translated/order.js:2657 msgid "Complete shipment" msgstr "" -#: templates/js/translated/order.js:2623 +#: templates/js/translated/order.js:2662 msgid "Delete shipment" msgstr "" -#: templates/js/translated/order.js:2643 +#: templates/js/translated/order.js:2682 msgid "Edit Shipment" msgstr "" -#: templates/js/translated/order.js:2660 +#: templates/js/translated/order.js:2699 msgid "Delete Shipment" msgstr "" -#: templates/js/translated/order.js:2694 +#: templates/js/translated/order.js:2733 msgid "No matching shipments found" msgstr "" -#: templates/js/translated/order.js:2704 +#: templates/js/translated/order.js:2743 msgid "Shipment Reference" msgstr "" -#: templates/js/translated/order.js:2728 +#: templates/js/translated/order.js:2767 msgid "Not shipped" msgstr "" -#: templates/js/translated/order.js:2734 +#: templates/js/translated/order.js:2773 msgid "Tracking" msgstr "" -#: templates/js/translated/order.js:2738 +#: templates/js/translated/order.js:2777 msgid "Invoice" msgstr "" -#: templates/js/translated/order.js:2907 +#: templates/js/translated/order.js:2946 msgid "Add Shipment" msgstr "" -#: templates/js/translated/order.js:2958 +#: templates/js/translated/order.js:2997 msgid "Confirm stock allocation" msgstr "Conferma l'assegnazione della giacenza" -#: templates/js/translated/order.js:2959 +#: templates/js/translated/order.js:2998 msgid "Allocate Stock Items to Sales Order" msgstr "" -#: templates/js/translated/order.js:3167 +#: templates/js/translated/order.js:3206 msgid "No sales order allocations found" msgstr "Nessun ordine di vendita trovato" -#: templates/js/translated/order.js:3246 +#: templates/js/translated/order.js:3285 msgid "Edit Stock Allocation" msgstr "Modifica posizione giacenza" -#: templates/js/translated/order.js:3263 +#: templates/js/translated/order.js:3302 msgid "Confirm Delete Operation" msgstr "Conferma Operazione Eliminazione" -#: templates/js/translated/order.js:3264 +#: templates/js/translated/order.js:3303 msgid "Delete Stock Allocation" msgstr "Elimina posizione giacenza" -#: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398 +#: templates/js/translated/order.js:3348 templates/js/translated/order.js:3437 #: templates/js/translated/stock.js:1602 msgid "Shipped to customer" msgstr "Spedito al cliente" -#: templates/js/translated/order.js:3317 templates/js/translated/order.js:3407 +#: templates/js/translated/order.js:3356 templates/js/translated/order.js:3446 msgid "Stock location not specified" msgstr "Nessun posizione specificata" -#: templates/js/translated/order.js:3721 +#: templates/js/translated/order.js:3760 msgid "Allocate serial numbers" msgstr "" -#: templates/js/translated/order.js:3727 +#: templates/js/translated/order.js:3766 msgid "Purchase stock" msgstr "Prezzo d'acquisto" -#: templates/js/translated/order.js:3734 templates/js/translated/order.js:3932 +#: templates/js/translated/order.js:3773 templates/js/translated/order.js:3971 msgid "Calculate price" msgstr "Calcola il prezzo" -#: templates/js/translated/order.js:3746 +#: templates/js/translated/order.js:3785 msgid "Cannot be deleted as items have been shipped" msgstr "" -#: templates/js/translated/order.js:3749 +#: templates/js/translated/order.js:3788 msgid "Cannot be deleted as items have been allocated" msgstr "" -#: templates/js/translated/order.js:3831 +#: templates/js/translated/order.js:3870 msgid "Allocate Serial Numbers" msgstr "" -#: templates/js/translated/order.js:3940 +#: templates/js/translated/order.js:3979 msgid "Update Unit Price" msgstr "" -#: templates/js/translated/order.js:3954 +#: templates/js/translated/order.js:3993 msgid "No matching line items" msgstr "" -#: templates/js/translated/order.js:4190 +#: templates/js/translated/order.js:4229 msgid "No matching lines" msgstr "" @@ -9319,12 +9337,12 @@ msgstr "" msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:586 templates/js/translated/part.js:1470 +#: templates/js/translated/part.js:586 templates/js/translated/part.js:1478 #: templates/js/translated/table_filters.js:468 msgid "Low stock" msgstr "In esaurimento" -#: templates/js/translated/part.js:596 templates/js/translated/part.js:1482 +#: templates/js/translated/part.js:596 msgid "No stock available" msgstr "" @@ -9356,7 +9374,7 @@ msgstr "Elimina relazione tra i componenti" msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1553 +#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1549 msgid "No parts found" msgstr "Nessun articolo trovato" @@ -9368,100 +9386,124 @@ msgstr "" msgid "No category" msgstr "Nessuna categoria" -#: templates/js/translated/part.js:1577 templates/js/translated/part.js:1820 +#: templates/js/translated/part.js:1476 +msgid "No stock" +msgstr "" + +#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816 #: templates/js/translated/stock.js:2347 msgid "Display as list" msgstr "Visualizza come elenco" -#: templates/js/translated/part.js:1593 +#: templates/js/translated/part.js:1589 msgid "Display as grid" msgstr "Visualizza come griglia" -#: templates/js/translated/part.js:1659 +#: templates/js/translated/part.js:1655 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:1664 +#: templates/js/translated/part.js:1660 msgid "Set Part Category" msgstr "Imposta categoria articolo" -#: templates/js/translated/part.js:1669 +#: templates/js/translated/part.js:1665 msgid "Select Part Category" msgstr "" -#: templates/js/translated/part.js:1682 +#: templates/js/translated/part.js:1678 msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1839 templates/js/translated/stock.js:2366 +#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2366 msgid "Display as tree" msgstr "Visualizza come struttura ad albero" -#: templates/js/translated/part.js:1918 +#: templates/js/translated/part.js:1914 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:1934 +#: templates/js/translated/part.js:1930 msgid "Subscribed category" msgstr "Categoria sottoscritta" -#: templates/js/translated/part.js:1992 +#: templates/js/translated/part.js:1988 msgid "No test templates matching query" msgstr "Nessun modello di test corrispondente" -#: templates/js/translated/part.js:2043 templates/js/translated/stock.js:1299 +#: templates/js/translated/part.js:2039 templates/js/translated/stock.js:1299 msgid "Edit test result" msgstr "Modificare il risultato del test" -#: templates/js/translated/part.js:2044 templates/js/translated/stock.js:1300 +#: templates/js/translated/part.js:2040 templates/js/translated/stock.js:1300 #: templates/js/translated/stock.js:1560 msgid "Delete test result" msgstr "Cancellare il risultato del test" -#: templates/js/translated/part.js:2050 +#: templates/js/translated/part.js:2046 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2072 +#: templates/js/translated/part.js:2068 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2086 +#: templates/js/translated/part.js:2082 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2111 +#: templates/js/translated/part.js:2107 #, python-brace-format msgid "No ${human_name} information found" msgstr "" -#: templates/js/translated/part.js:2168 +#: templates/js/translated/part.js:2164 #, python-brace-format msgid "Edit ${human_name}" msgstr "Modifica ${human_name}" -#: templates/js/translated/part.js:2169 +#: templates/js/translated/part.js:2165 #, python-brace-format msgid "Delete ${human_name}" msgstr "Elimina ${human_name}" -#: templates/js/translated/part.js:2283 -msgid "Current Stock" +#: templates/js/translated/part.js:2330 templates/js/translated/part.js:2331 +msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:2316 +#: templates/js/translated/part.js:2333 +msgid "Specified date is in the past" +msgstr "" + +#: templates/js/translated/part.js:2339 +msgid "Speculative" +msgstr "" + +#: templates/js/translated/part.js:2389 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2342 +#: templates/js/translated/part.js:2395 +msgid "Error fetching scheduling information for this part" +msgstr "" + +#: templates/js/translated/part.js:2491 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2412 +#: templates/js/translated/part.js:2507 +msgid "Maximum Quantity" +msgstr "" + +#: templates/js/translated/part.js:2533 +msgid "Minimum Stock Level" +msgstr "" + +#: templates/js/translated/part.js:2627 msgid "Single Price" msgstr "Prezzo Singolo" -#: templates/js/translated/part.js:2431 +#: templates/js/translated/part.js:2646 msgid "Single Price Difference" msgstr "" @@ -10222,10 +10264,6 @@ msgstr "Nessun risultato corrispondente" msgid "Hide/Show pagination" msgstr "Mostra/nascondi la paginazione" -#: templates/js/translated/tables.js:558 -msgid "Refresh" -msgstr "Aggiorna" - #: templates/js/translated/tables.js:561 msgid "Toggle" msgstr "Attiva/disattiva" diff --git a/InvenTree/locale/ja/LC_MESSAGES/django.po b/InvenTree/locale/ja/LC_MESSAGES/django.po index 4c318fa92f..5fe9bc6344 100644 --- a/InvenTree/locale/ja/LC_MESSAGES/django.po +++ b/InvenTree/locale/ja/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-16 11:53+0000\n" -"PO-Revision-Date: 2022-08-16 21:36\n" +"POT-Creation-Date: 2022-08-18 05:14+0000\n" +"PO-Revision-Date: 2022-08-18 21:39\n" "Last-Translator: \n" "Language-Team: Japanese\n" "Language: ja_JP\n" @@ -40,10 +40,10 @@ msgstr "日付を入力する" #: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825 #: stock/serializers.py:924 stock/serializers.py:1056 #: stock/templates/stock/stock_sidebar.html:25 -#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101 -#: templates/js/translated/company.js:964 templates/js/translated/order.js:2104 -#: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753 -#: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102 +#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1099 +#: templates/js/translated/company.js:964 templates/js/translated/order.js:2143 +#: templates/js/translated/order.js:2294 templates/js/translated/order.js:2792 +#: templates/js/translated/order.js:3743 templates/js/translated/order.js:4141 #: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980 msgid "Notes" msgstr "メモ" @@ -211,11 +211,11 @@ msgstr "添付ファイルを選択" #: InvenTree/models.py:402 company/models.py:124 company/models.py:276 #: company/models.py:510 order/models.py:84 order/models.py:1245 -#: part/models.py:802 +#: part/models.py:802 part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_base.html:164 #: templates/js/translated/company.js:656 -#: templates/js/translated/company.js:948 templates/js/translated/order.js:2742 -#: templates/js/translated/part.js:1514 +#: templates/js/translated/company.js:948 templates/js/translated/order.js:2781 +#: templates/js/translated/part.js:1510 msgid "Link" msgstr "リンク" @@ -235,8 +235,8 @@ msgstr "ファイルコメント" #: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665 #: common/models.py:1666 common/models.py:1889 common/models.py:1890 -#: common/models.py:2152 common/models.py:2153 part/models.py:2200 -#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257 +#: common/models.py:2152 common/models.py:2153 part/models.py:2247 +#: part/models.py:2267 plugin/models.py:256 plugin/models.py:257 #: report/templates/report/inventree_test_report_base.html:96 #: templates/js/translated/stock.js:2641 msgid "User" @@ -277,7 +277,7 @@ msgstr "無効な選択です" #: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875 #: company/models.py:358 label/models.py:101 part/models.py:746 -#: part/models.py:2378 plugin/models.py:94 report/models.py:152 +#: part/models.py:2425 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 #: templates/InvenTree/settings/plugin.html:51 #: templates/InvenTree/settings/plugin.html:134 @@ -287,7 +287,7 @@ msgstr "無効な選択です" #: templates/js/translated/company.js:758 #: templates/js/translated/notification.js:71 #: templates/js/translated/part.js:688 templates/js/translated/part.js:840 -#: templates/js/translated/part.js:1906 templates/js/translated/stock.js:2392 +#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2392 msgid "Name" msgstr "お名前" @@ -297,19 +297,20 @@ msgstr "お名前" #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:87 label/models.py:108 #: order/models.py:82 part/models.py:769 part/templates/part/category.html:80 -#: part/templates/part/part_base.html:167 report/models.py:165 +#: part/templates/part/part_base.html:167 +#: part/templates/part/part_scheduling.html:12 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 #: stock/templates/stock/location.html:108 #: templates/InvenTree/settings/plugin_settings.html:33 -#: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848 -#: templates/js/translated/build.js:2471 templates/js/translated/company.js:409 +#: templates/js/translated/bom.js:553 templates/js/translated/bom.js:846 +#: templates/js/translated/build.js:2504 templates/js/translated/company.js:409 #: templates/js/translated/company.js:667 -#: templates/js/translated/company.js:959 templates/js/translated/order.js:1720 -#: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531 +#: templates/js/translated/company.js:959 templates/js/translated/order.js:1759 +#: templates/js/translated/order.js:1991 templates/js/translated/order.js:2570 #: templates/js/translated/part.js:747 templates/js/translated/part.js:1153 -#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1942 -#: templates/js/translated/part.js:2011 templates/js/translated/stock.js:1743 +#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1938 +#: templates/js/translated/part.js:2007 templates/js/translated/stock.js:1743 #: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478 msgid "Description" msgstr "説明" @@ -323,7 +324,7 @@ msgid "parent" msgstr "親" #: InvenTree/models.py:560 InvenTree/models.py:561 -#: templates/js/translated/part.js:1948 templates/js/translated/stock.js:2430 +#: templates/js/translated/part.js:1944 templates/js/translated/stock.js:2430 msgid "Path" msgstr "" @@ -335,7 +336,7 @@ msgstr "" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:55 part/models.py:2699 +#: InvenTree/serializers.py:55 part/models.py:2746 msgid "Must be a valid number" msgstr "有効な数字でなければなりません" @@ -541,7 +542,7 @@ msgid "Returned" msgstr "返品済" #: InvenTree/status_codes.py:141 order/models.py:1128 -#: templates/js/translated/order.js:3330 templates/js/translated/order.js:3679 +#: templates/js/translated/order.js:3369 templates/js/translated/order.js:3718 msgid "Shipped" msgstr "発送済み" @@ -728,7 +729,7 @@ msgstr "" #: report/templates/report/inventree_build_order_base.html:105 #: templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 -#: templates/js/translated/build.js:731 +#: templates/js/translated/build.js:763 msgid "Build Order" msgstr "" @@ -747,14 +748,14 @@ msgid "Build Order Reference" msgstr "" #: build/models.py:166 order/models.py:240 order/models.py:623 -#: order/models.py:904 part/models.py:2617 +#: order/models.py:904 part/models.py:2664 #: part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 -#: templates/js/translated/bom.js:692 templates/js/translated/bom.js:855 -#: templates/js/translated/build.js:1779 templates/js/translated/order.js:1983 -#: templates/js/translated/order.js:2184 templates/js/translated/order.js:3523 -#: templates/js/translated/order.js:4031 +#: templates/js/translated/bom.js:690 templates/js/translated/bom.js:853 +#: templates/js/translated/build.js:1811 templates/js/translated/order.js:2022 +#: templates/js/translated/order.js:2223 templates/js/translated/order.js:3562 +#: templates/js/translated/order.js:4070 msgid "Reference" msgstr "" @@ -762,7 +763,7 @@ msgstr "" msgid "Brief description of the build" msgstr "" -#: build/models.py:185 build/templates/build/build_base.html:169 +#: build/models.py:185 build/templates/build/build_base.html:172 #: build/templates/build/detail.html:87 msgid "Parent Build" msgstr "" @@ -771,13 +772,13 @@ msgstr "" msgid "BuildOrder to which this build is allocated" msgstr "" -#: build/models.py:191 build/templates/build/build_base.html:77 +#: build/models.py:191 build/templates/build/build_base.html:80 #: build/templates/build/detail.html:29 company/models.py:670 #: order/models.py:1001 order/models.py:1112 order/models.py:1113 -#: part/models.py:343 part/models.py:2146 part/models.py:2161 -#: part/models.py:2180 part/models.py:2198 part/models.py:2297 -#: part/models.py:2417 part/models.py:2507 part/models.py:2592 -#: part/models.py:2868 part/serializers.py:813 +#: part/models.py:343 part/models.py:2193 part/models.py:2208 +#: part/models.py:2227 part/models.py:2245 part/models.py:2344 +#: part/models.py:2464 part/models.py:2554 part/models.py:2639 +#: part/models.py:2915 part/serializers.py:813 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -789,17 +790,17 @@ msgstr "" #: templates/email/build_order_required_stock.html:17 #: templates/email/low_stock_notification.html:16 #: templates/email/overdue_build_order.html:16 -#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:553 -#: templates/js/translated/bom.js:691 templates/js/translated/bom.js:802 -#: templates/js/translated/build.js:1156 templates/js/translated/build.js:1649 -#: templates/js/translated/build.js:2085 templates/js/translated/build.js:2476 +#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:552 +#: templates/js/translated/bom.js:689 templates/js/translated/bom.js:800 +#: templates/js/translated/build.js:1188 templates/js/translated/build.js:1681 +#: templates/js/translated/build.js:2118 templates/js/translated/build.js:2509 #: templates/js/translated/company.js:266 #: templates/js/translated/company.js:496 #: templates/js/translated/company.js:608 -#: templates/js/translated/company.js:868 templates/js/translated/order.js:103 -#: templates/js/translated/order.js:934 templates/js/translated/order.js:1387 -#: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885 -#: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507 +#: templates/js/translated/company.js:868 templates/js/translated/order.js:104 +#: templates/js/translated/order.js:973 templates/js/translated/order.js:1426 +#: templates/js/translated/order.js:1976 templates/js/translated/order.js:2924 +#: templates/js/translated/order.js:3320 templates/js/translated/order.js:3546 #: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210 #: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586 #: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958 @@ -821,7 +822,7 @@ msgid "SalesOrder to which this build is allocated" msgstr "" #: build/models.py:213 build/serializers.py:800 -#: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873 +#: templates/js/translated/build.js:2106 templates/js/translated/order.js:2912 msgid "Source Location" msgstr "" @@ -862,7 +863,7 @@ msgid "Build status code" msgstr "" #: build/models.py:251 build/serializers.py:225 order/serializers.py:447 -#: stock/models.py:662 templates/js/translated/order.js:1247 +#: stock/models.py:662 templates/js/translated/order.js:1286 msgid "Batch Code" msgstr "" @@ -871,7 +872,7 @@ msgid "Batch code for this build output" msgstr "" #: build/models.py:258 order/models.py:86 part/models.py:938 -#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544 +#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2583 msgid "Creation Date" msgstr "作成日時" @@ -884,7 +885,7 @@ msgid "Target date for build completion. Build will be overdue after this date." msgstr "" #: build/models.py:266 order/models.py:286 -#: templates/js/translated/build.js:2553 +#: templates/js/translated/build.js:2586 msgid "Completion Date" msgstr "" @@ -892,7 +893,7 @@ msgstr "" msgid "completed by" msgstr "" -#: build/models.py:280 templates/js/translated/build.js:2521 +#: build/models.py:280 templates/js/translated/build.js:2554 msgid "Issued by" msgstr "" @@ -900,12 +901,12 @@ msgstr "" msgid "User who issued this build order" msgstr "" -#: build/models.py:289 build/templates/build/build_base.html:190 +#: build/models.py:289 build/templates/build/build_base.html:193 #: build/templates/build/detail.html:115 order/models.py:100 #: order/templates/order/order_base.html:176 #: order/templates/order/sales_order_base.html:183 part/models.py:942 #: report/templates/report/inventree_build_order_base.html:158 -#: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754 +#: templates/js/translated/build.js:2566 templates/js/translated/order.js:1793 msgid "Responsible" msgstr "" @@ -972,7 +973,7 @@ msgid "Selected stock item not found in BOM" msgstr "" #: build/models.py:1328 stock/templates/stock/item_base.html:177 -#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2455 +#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2488 #: templates/navbar.html:38 msgid "Build" msgstr "" @@ -986,11 +987,11 @@ msgstr "パーツを割り当てるためにビルドする" #: stock/serializers.py:882 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:199 -#: templates/js/translated/build.js:741 templates/js/translated/build.js:746 -#: templates/js/translated/build.js:2087 templates/js/translated/build.js:2638 -#: templates/js/translated/order.js:104 templates/js/translated/order.js:2886 -#: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193 -#: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380 +#: templates/js/translated/build.js:773 templates/js/translated/build.js:778 +#: templates/js/translated/build.js:2120 templates/js/translated/build.js:2671 +#: templates/js/translated/order.js:105 templates/js/translated/order.js:2925 +#: templates/js/translated/order.js:3227 templates/js/translated/order.js:3232 +#: templates/js/translated/order.js:3327 templates/js/translated/order.js:3419 #: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752 #: templates/js/translated/stock.js:2577 msgid "Stock Item" @@ -1001,13 +1002,13 @@ msgid "Source stock item" msgstr "" #: build/models.py:1358 build/serializers.py:193 -#: build/templates/build/build_base.html:82 +#: build/templates/build/build_base.html:85 #: build/templates/build/detail.html:34 common/models.py:1697 #: company/templates/company/supplier_part.html:279 order/models.py:897 #: order/models.py:1423 order/serializers.py:1155 #: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40 -#: part/models.py:2608 part/templates/part/detail.html:937 -#: part/templates/part/detail.html:1023 +#: part/models.py:2655 part/templates/part/detail.html:951 +#: part/templates/part/detail.html:1037 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 #: report/templates/report/inventree_build_order_base.html:113 @@ -1018,20 +1019,20 @@ msgstr "" #: stock/serializers.py:293 stock/templates/stock/item_base.html:292 #: stock/templates/stock/item_base.html:300 #: templates/email/build_order_completed.html:18 -#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:693 -#: templates/js/translated/bom.js:863 templates/js/translated/build.js:426 -#: templates/js/translated/build.js:578 templates/js/translated/build.js:768 -#: templates/js/translated/build.js:1178 templates/js/translated/build.js:1675 -#: templates/js/translated/build.js:2088 +#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:691 +#: templates/js/translated/bom.js:861 templates/js/translated/build.js:458 +#: templates/js/translated/build.js:610 templates/js/translated/build.js:800 +#: templates/js/translated/build.js:1210 templates/js/translated/build.js:1707 +#: templates/js/translated/build.js:2121 #: templates/js/translated/model_renderers.js:120 -#: templates/js/translated/order.js:120 templates/js/translated/order.js:937 -#: templates/js/translated/order.js:1989 templates/js/translated/order.js:2190 -#: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207 -#: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386 -#: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037 -#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2156 -#: templates/js/translated/part.js:2387 templates/js/translated/part.js:2421 -#: templates/js/translated/part.js:2499 templates/js/translated/stock.js:458 +#: templates/js/translated/order.js:121 templates/js/translated/order.js:976 +#: templates/js/translated/order.js:2028 templates/js/translated/order.js:2229 +#: templates/js/translated/order.js:2926 templates/js/translated/order.js:3246 +#: templates/js/translated/order.js:3333 templates/js/translated/order.js:3425 +#: templates/js/translated/order.js:3568 templates/js/translated/order.js:4076 +#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2152 +#: templates/js/translated/part.js:2602 templates/js/translated/part.js:2636 +#: templates/js/translated/part.js:2714 templates/js/translated/stock.js:458 #: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782 #: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711 msgid "Quantity" @@ -1050,7 +1051,7 @@ msgid "Destination stock item" msgstr "" #: build/serializers.py:138 build/serializers.py:674 -#: templates/js/translated/build.js:1166 +#: templates/js/translated/build.js:1198 msgid "Build Output" msgstr "" @@ -1090,7 +1091,7 @@ msgid "Integer quantity required, as the bill of materials contains trackable pa msgstr "" #: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159 -#: stock/serializers.py:311 templates/js/translated/order.js:1258 +#: stock/serializers.py:311 templates/js/translated/order.js:1297 #: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459 msgid "Serial Numbers" msgstr "" @@ -1120,10 +1121,10 @@ msgstr "" #: stock/serializers.py:917 stock/serializers.py:1150 #: stock/templates/stock/item_base.html:390 #: templates/js/translated/barcode.js:436 -#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753 -#: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285 -#: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305 -#: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394 +#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:785 +#: templates/js/translated/build.js:1719 templates/js/translated/order.js:1324 +#: templates/js/translated/order.js:3239 templates/js/translated/order.js:3344 +#: templates/js/translated/order.js:3352 templates/js/translated/order.js:3433 #: templates/js/translated/part.js:181 templates/js/translated/stock.js:588 #: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960 #: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518 @@ -1134,12 +1135,12 @@ msgstr "" msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:373 build/templates/build/build_base.html:142 +#: build/serializers.py:373 build/templates/build/build_base.html:145 #: build/templates/build/detail.html:62 order/models.py:642 #: order/serializers.py:465 stock/templates/stock/item_base.html:423 -#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505 -#: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724 -#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829 +#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2538 +#: templates/js/translated/order.js:1431 templates/js/translated/order.js:1763 +#: templates/js/translated/order.js:2575 templates/js/translated/stock.js:1829 #: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727 msgid "Status" msgstr "ステータス" @@ -1196,7 +1197,7 @@ msgstr "" msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:522 templates/js/translated/build.js:195 +#: build/serializers.py:522 templates/js/translated/build.js:227 msgid "Required stock has not been fully allocated" msgstr "" @@ -1208,7 +1209,7 @@ msgstr "" msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:538 templates/js/translated/build.js:199 +#: build/serializers.py:538 templates/js/translated/build.js:231 msgid "Required build quantity has not been completed" msgstr "" @@ -1216,8 +1217,8 @@ msgstr "" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726 -#: part/models.py:2860 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2773 +#: part/models.py:2907 msgid "BOM Item" msgstr "" @@ -1322,66 +1323,70 @@ msgid "Cancel Build" msgstr "" #: build/templates/build/build_base.html:59 +msgid "Duplicate Build" +msgstr "" + +#: build/templates/build/build_base.html:62 msgid "Delete Build" msgstr "" -#: build/templates/build/build_base.html:64 -#: build/templates/build/build_base.html:65 +#: build/templates/build/build_base.html:67 +#: build/templates/build/build_base.html:68 msgid "Complete Build" msgstr "" -#: build/templates/build/build_base.html:87 +#: build/templates/build/build_base.html:90 msgid "Build Description" msgstr "" -#: build/templates/build/build_base.html:95 +#: build/templates/build/build_base.html:98 msgid "No build outputs have been created for this build order" msgstr "" -#: build/templates/build/build_base.html:101 +#: build/templates/build/build_base.html:104 #, python-format msgid "This Build Order is allocated to Sales Order %(link)s" msgstr "" -#: build/templates/build/build_base.html:108 +#: build/templates/build/build_base.html:111 #, python-format msgid "This Build Order is a child of Build Order %(link)s" msgstr "" -#: build/templates/build/build_base.html:115 +#: build/templates/build/build_base.html:118 msgid "Build Order is ready to mark as completed" msgstr "" -#: build/templates/build/build_base.html:120 +#: build/templates/build/build_base.html:123 msgid "Build Order cannot be completed as outstanding outputs remain" msgstr "" -#: build/templates/build/build_base.html:125 +#: build/templates/build/build_base.html:128 msgid "Required build quantity has not yet been completed" msgstr "" -#: build/templates/build/build_base.html:130 +#: build/templates/build/build_base.html:133 msgid "Stock has not been fully allocated to this Build Order" msgstr "" -#: build/templates/build/build_base.html:151 +#: build/templates/build/build_base.html:154 #: build/templates/build/detail.html:131 order/models.py:910 #: order/templates/order/order_base.html:162 #: order/templates/order/sales_order_base.html:164 #: report/templates/report/inventree_build_order_base.html:125 -#: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741 -#: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552 -#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042 +#: templates/js/translated/build.js:2578 templates/js/translated/order.js:1780 +#: templates/js/translated/order.js:2090 templates/js/translated/order.js:2591 +#: templates/js/translated/order.js:3631 templates/js/translated/part.js:1042 msgid "Target Date" msgstr "" -#: build/templates/build/build_base.html:156 +#: build/templates/build/build_base.html:159 #, python-format msgid "This build was due on %(target)s" msgstr "" -#: build/templates/build/build_base.html:156 -#: build/templates/build/build_base.html:201 +#: build/templates/build/build_base.html:159 +#: build/templates/build/build_base.html:204 #: order/templates/order/order_base.html:98 #: order/templates/order/sales_order_base.html:94 #: templates/js/translated/table_filters.js:320 @@ -1390,14 +1395,14 @@ msgstr "" msgid "Overdue" msgstr "" -#: build/templates/build/build_base.html:163 +#: build/templates/build/build_base.html:166 #: build/templates/build/detail.html:67 build/templates/build/detail.html:142 #: order/templates/order/sales_order_base.html:171 #: templates/js/translated/table_filters.js:400 msgid "Completed" msgstr "" -#: build/templates/build/build_base.html:176 +#: build/templates/build/build_base.html:179 #: build/templates/build/detail.html:94 order/models.py:1105 #: order/models.py:1199 order/models.py:1330 #: order/templates/order/sales_order_base.html:9 @@ -1406,17 +1411,17 @@ msgstr "" #: report/templates/report/inventree_so_report.html:77 #: stock/templates/stock/item_base.html:370 #: templates/email/overdue_sales_order.html:15 -#: templates/js/translated/order.js:2498 +#: templates/js/translated/order.js:2537 msgid "Sales Order" msgstr "" -#: build/templates/build/build_base.html:183 +#: build/templates/build/build_base.html:186 #: build/templates/build/detail.html:108 #: report/templates/report/inventree_build_order_base.html:152 msgid "Issued By" msgstr "" -#: build/templates/build/build_base.html:245 +#: build/templates/build/build_base.html:256 msgid "Delete Build Order" msgstr "" @@ -1433,7 +1438,7 @@ msgid "Stock can be taken from any available location." msgstr "" #: build/templates/build/detail.html:49 order/models.py:1023 -#: templates/js/translated/order.js:1393 templates/js/translated/order.js:2093 +#: templates/js/translated/order.js:1432 templates/js/translated/order.js:2132 msgid "Destination" msgstr "" @@ -1447,7 +1452,7 @@ msgstr "" #: build/templates/build/detail.html:80 #: stock/templates/stock/item_base.html:170 -#: templates/js/translated/build.js:1182 +#: templates/js/translated/build.js:1214 #: templates/js/translated/model_renderers.js:124 #: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843 #: templates/js/translated/stock.js:2734 @@ -1459,7 +1464,7 @@ msgstr "" #: build/templates/build/detail.html:126 #: order/templates/order/order_base.html:149 #: order/templates/order/sales_order_base.html:158 -#: templates/js/translated/build.js:2513 +#: templates/js/translated/build.js:2546 msgid "Created" msgstr "" @@ -1479,7 +1484,7 @@ msgstr "" msgid "Allocate Stock to Build" msgstr "" -#: build/templates/build/detail.html:176 templates/js/translated/build.js:1901 +#: build/templates/build/detail.html:176 templates/js/translated/build.js:1934 msgid "Unallocate stock" msgstr "" @@ -1510,7 +1515,7 @@ msgstr "注文必須パーツ" #: build/templates/build/detail.html:187 #: company/templates/company/detail.html:37 #: company/templates/company/detail.html:85 -#: part/templates/part/category.html:183 templates/js/translated/order.js:977 +#: part/templates/part/category.html:183 templates/js/translated/order.js:1016 msgid "Order Parts" msgstr "パーツの注文" @@ -1582,7 +1587,7 @@ msgstr "" #: order/templates/order/po_sidebar.html:9 #: order/templates/order/purchase_order_detail.html:82 #: order/templates/order/sales_order_detail.html:135 -#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:207 +#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:212 #: part/templates/part/part_sidebar.html:57 stock/templates/stock/item.html:117 #: stock/templates/stock/stock_sidebar.html:23 msgid "Attachments" @@ -1600,7 +1605,7 @@ msgstr "" msgid "All untracked stock items have been allocated" msgstr "" -#: build/templates/build/index.html:18 part/templates/part/detail.html:313 +#: build/templates/build/index.html:18 part/templates/part/detail.html:318 msgid "New Build Order" msgstr "" @@ -1845,7 +1850,7 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:951 part/models.py:2419 report/models.py:158 +#: common/models.py:951 part/models.py:2466 report/models.py:158 #: templates/js/translated/table_filters.js:38 #: templates/js/translated/table_filters.js:484 msgid "Template" @@ -1855,7 +1860,7 @@ msgstr "テンプレート" msgid "Parts are templates by default" msgstr "パーツはデフォルトのテンプレートです" -#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448 +#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1446 #: templates/js/translated/table_filters.js:176 #: templates/js/translated/table_filters.js:447 msgid "Assembly" @@ -2591,7 +2596,7 @@ msgstr "" #: common/models.py:1705 company/serializers.py:366 #: company/templates/company/supplier_part.html:284 order/models.py:938 -#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2161 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2157 msgid "Price" msgstr "" @@ -2830,7 +2835,7 @@ msgstr "" #: company/models.py:248 company/models.py:481 stock/models.py:598 #: stock/serializers.py:87 stock/templates/stock/item_base.html:148 -#: templates/js/translated/bom.js:543 +#: templates/js/translated/bom.js:542 msgid "Base Part" msgstr "" @@ -2859,7 +2864,7 @@ msgstr "" #: templates/js/translated/company.js:269 #: templates/js/translated/company.js:497 #: templates/js/translated/company.js:649 -#: templates/js/translated/company.js:937 templates/js/translated/order.js:1971 +#: templates/js/translated/company.js:937 templates/js/translated/order.js:2010 #: templates/js/translated/part.js:247 templates/js/translated/part.js:1027 msgid "MPN" msgstr "" @@ -2899,7 +2904,7 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:372 part/models.py:888 part/models.py:2386 +#: company/models.py:372 part/models.py:888 part/models.py:2433 #: part/templates/part/part_base.html:280 #: templates/InvenTree/settings/settings.html:352 #: templates/js/translated/company.js:770 templates/js/translated/part.js:855 @@ -2921,7 +2926,7 @@ msgstr "" #: templates/email/overdue_purchase_order.html:16 #: templates/js/translated/company.js:268 #: templates/js/translated/company.js:401 -#: templates/js/translated/company.js:893 templates/js/translated/order.js:1707 +#: templates/js/translated/company.js:893 templates/js/translated/order.js:1746 #: templates/js/translated/part.js:217 templates/js/translated/part.js:995 #: templates/js/translated/table_filters.js:423 msgid "Supplier" @@ -2933,7 +2938,7 @@ msgstr "" #: company/models.py:497 company/templates/company/supplier_part.html:118 #: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267 -#: templates/js/translated/order.js:1958 templates/js/translated/part.js:228 +#: templates/js/translated/order.js:1997 templates/js/translated/part.js:228 #: templates/js/translated/part.js:1013 msgid "SKU" msgstr "" @@ -2955,17 +2960,17 @@ msgid "Supplier part description" msgstr "" #: company/models.py:522 company/templates/company/supplier_part.html:146 -#: part/models.py:2620 part/templates/part/upload_bom.html:59 +#: part/models.py:2667 part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401 msgid "Note" msgstr "" -#: company/models.py:526 part/models.py:1742 +#: company/models.py:526 part/models.py:1789 msgid "base cost" msgstr "" -#: company/models.py:526 part/models.py:1742 +#: company/models.py:526 part/models.py:1789 msgid "Minimum charge (e.g. stocking fee)" msgstr "" @@ -2979,7 +2984,7 @@ msgstr "" msgid "Part packaging" msgstr "" -#: company/models.py:530 part/models.py:1744 +#: company/models.py:530 part/models.py:1791 msgid "multiple" msgstr "" @@ -2990,8 +2995,8 @@ msgstr "" #: company/models.py:538 company/templates/company/supplier_part.html:94 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789 -#: templates/js/translated/build.js:2645 templates/js/translated/company.js:979 +#: templates/js/translated/bom.js:911 templates/js/translated/build.js:1821 +#: templates/js/translated/build.js:2678 templates/js/translated/company.js:979 #: templates/js/translated/part.js:600 templates/js/translated/part.js:603 #: templates/js/translated/table_filters.js:186 msgid "Available" @@ -3028,7 +3033,7 @@ msgid "Company" msgstr "" #: company/templates/company/company_base.html:22 -#: templates/js/translated/order.js:540 +#: templates/js/translated/order.js:579 msgid "Create Purchase Order" msgstr "" @@ -3069,7 +3074,7 @@ msgstr "" #: stock/models.py:644 stock/serializers.py:811 #: stock/templates/stock/item_base.html:401 #: templates/email/overdue_sales_order.html:16 -#: templates/js/translated/company.js:393 templates/js/translated/order.js:2513 +#: templates/js/translated/company.js:393 templates/js/translated/order.js:2552 #: templates/js/translated/stock.js:2559 #: templates/js/translated/table_filters.js:427 msgid "Customer" @@ -3105,7 +3110,7 @@ msgstr "新しいサプライヤー・パーツを作成" #: company/templates/company/detail.html:19 #: company/templates/company/manufacturer_part.html:123 -#: part/templates/part/detail.html:354 +#: part/templates/part/detail.html:359 msgid "New Supplier Part" msgstr "新しいサプライヤー・パーツ" @@ -3134,7 +3139,7 @@ msgstr "メーカー・パーツ" msgid "Create new manufacturer part" msgstr "新しいメーカー・パーツを作成" -#: company/templates/company/detail.html:66 part/templates/part/detail.html:384 +#: company/templates/company/detail.html:66 part/templates/part/detail.html:389 msgid "New Manufacturer Part" msgstr "新しいメーカ―・パーツ" @@ -3148,7 +3153,7 @@ msgstr "" #: order/templates/order/order_base.html:13 #: order/templates/order/purchase_orders.html:8 #: order/templates/order/purchase_orders.html:12 -#: part/templates/part/detail.html:79 part/templates/part/part_sidebar.html:37 +#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:37 #: templates/InvenTree/index.html:252 templates/InvenTree/search.html:198 #: templates/InvenTree/settings/sidebar.html:49 #: templates/js/translated/search.js:275 templates/navbar.html:50 @@ -3171,7 +3176,7 @@ msgstr "" #: order/templates/order/sales_order_base.html:13 #: order/templates/order/sales_orders.html:8 #: order/templates/order/sales_orders.html:15 -#: part/templates/part/detail.html:102 part/templates/part/part_sidebar.html:41 +#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:41 #: templates/InvenTree/index.html:283 templates/InvenTree/search.html:218 #: templates/InvenTree/settings/sidebar.html:51 #: templates/js/translated/search.js:299 templates/navbar.html:61 @@ -3190,7 +3195,7 @@ msgid "New Sales Order" msgstr "" #: company/templates/company/detail.html:168 -#: templates/js/translated/build.js:1660 +#: templates/js/translated/build.js:1692 msgid "Assigned Stock" msgstr "" @@ -3206,7 +3211,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:35 #: company/templates/company/supplier_part.html:186 -#: part/templates/part/detail.html:82 part/templates/part/part_base.html:80 +#: part/templates/part/detail.html:87 part/templates/part/part_base.html:80 msgid "Order part" msgstr "パーツの注文" @@ -3237,13 +3242,13 @@ msgid "Suppliers" msgstr "" #: company/templates/company/manufacturer_part.html:136 -#: part/templates/part/detail.html:365 +#: part/templates/part/detail.html:370 msgid "Delete supplier parts" msgstr "" #: company/templates/company/manufacturer_part.html:136 #: company/templates/company/manufacturer_part.html:183 -#: part/templates/part/detail.html:366 part/templates/part/detail.html:396 +#: part/templates/part/detail.html:371 part/templates/part/detail.html:401 #: templates/js/translated/forms.js:453 templates/js/translated/helpers.js:33 #: users/models.py:220 msgid "Delete" @@ -3252,12 +3257,12 @@ msgstr "" #: company/templates/company/manufacturer_part.html:166 #: company/templates/company/manufacturer_part_sidebar.html:5 #: part/templates/part/category_sidebar.html:19 -#: part/templates/part/detail.html:181 part/templates/part/part_sidebar.html:8 +#: part/templates/part/detail.html:186 part/templates/part/part_sidebar.html:8 msgid "Parameters" msgstr "" #: company/templates/company/manufacturer_part.html:170 -#: part/templates/part/detail.html:186 +#: part/templates/part/detail.html:191 #: templates/InvenTree/settings/category.html:12 #: templates/InvenTree/settings/part.html:68 msgid "New Parameter" @@ -3268,7 +3273,7 @@ msgid "Delete parameters" msgstr "" #: company/templates/company/manufacturer_part.html:245 -#: part/templates/part/detail.html:826 +#: part/templates/part/detail.html:840 msgid "Add Parameter" msgstr "" @@ -3291,7 +3296,7 @@ msgstr "" #: company/templates/company/supplier_part.html:7 #: company/templates/company/supplier_part.html:24 stock/models.py:607 #: stock/templates/stock/item_base.html:238 -#: templates/js/translated/company.js:909 templates/js/translated/order.js:935 +#: templates/js/translated/company.js:909 templates/js/translated/order.js:974 #: templates/js/translated/stock.js:1933 msgid "Supplier Part" msgstr "" @@ -3303,7 +3308,7 @@ msgstr "" #: company/templates/company/supplier_part.html:40 #: company/templates/company/supplier_part.html:41 #: company/templates/company/supplier_part.html:187 -#: part/templates/part/detail.html:83 +#: part/templates/part/detail.html:88 msgid "Order Part" msgstr "" @@ -3358,7 +3363,7 @@ msgstr "" #: company/templates/company/supplier_part.html:212 #: company/templates/company/supplier_part.html:326 -#: part/templates/part/prices.html:276 templates/js/translated/part.js:2233 +#: part/templates/part/prices.html:276 templates/js/translated/part.js:2229 msgid "Add Price Break" msgstr "" @@ -3367,12 +3372,12 @@ msgid "No price break information found" msgstr "" #: company/templates/company/supplier_part.html:252 -#: templates/js/translated/part.js:2243 +#: templates/js/translated/part.js:2239 msgid "Delete Price Break" msgstr "" #: company/templates/company/supplier_part.html:266 -#: templates/js/translated/part.js:2257 +#: templates/js/translated/part.js:2253 msgid "Edit Price Break" msgstr "" @@ -3398,10 +3403,9 @@ msgstr "" #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:151 #: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751 -#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460 -#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754 -#: templates/navbar.html:31 +#: templates/js/translated/part.js:751 templates/js/translated/part.js:1299 +#: templates/js/translated/part.js:1460 templates/js/translated/stock.js:959 +#: templates/js/translated/stock.js:1754 templates/navbar.html:31 msgid "Stock" msgstr "" @@ -3554,7 +3558,7 @@ msgid "Company from which the items are being ordered" msgstr "" #: order/models.py:262 order/templates/order/order_base.html:124 -#: templates/js/translated/order.js:1716 +#: templates/js/translated/order.js:1755 msgid "Supplier Reference" msgstr "" @@ -3611,7 +3615,7 @@ msgid "Target date for order completion. Order will be overdue after this date." msgstr "" #: order/models.py:652 order/models.py:1204 -#: templates/js/translated/order.js:2560 templates/js/translated/order.js:2722 +#: templates/js/translated/order.js:2599 templates/js/translated/order.js:2761 msgid "Shipment Date" msgstr "" @@ -3673,7 +3677,7 @@ msgstr "" #: order/models.py:983 order/models.py:1063 order/models.py:1104 #: order/models.py:1198 order/models.py:1330 -#: templates/js/translated/order.js:3178 +#: templates/js/translated/order.js:3217 msgid "Order" msgstr "" @@ -3683,7 +3687,7 @@ msgstr "" #: report/templates/report/inventree_po_report.html:76 #: stock/templates/stock/item_base.html:184 #: templates/email/overdue_purchase_order.html:15 -#: templates/js/translated/order.js:936 templates/js/translated/order.js:1691 +#: templates/js/translated/order.js:975 templates/js/translated/order.js:1730 #: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913 #: templates/js/translated/stock.js:2540 msgid "Purchase Order" @@ -3694,7 +3698,7 @@ msgid "Supplier part" msgstr "" #: order/models.py:1009 order/templates/order/order_base.html:169 -#: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073 +#: templates/js/translated/order.js:1429 templates/js/translated/order.js:2112 #: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091 #: templates/js/translated/table_filters.js:338 msgid "Received" @@ -3880,11 +3884,11 @@ msgstr "" msgid "Select destination location for received items" msgstr "" -#: order/serializers.py:448 templates/js/translated/order.js:1248 +#: order/serializers.py:448 templates/js/translated/order.js:1287 msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:456 templates/js/translated/order.js:1259 +#: order/serializers.py:456 templates/js/translated/order.js:1298 msgid "Enter serial numbers for incoming stock items" msgstr "" @@ -4061,10 +4065,6 @@ msgstr "" msgid "Total cost could not be calculated" msgstr "" -#: order/templates/order/order_base.html:243 -msgid "Edit Purchase Order" -msgstr "" - #: order/templates/order/order_wizard/match_parts.html:12 #: part/templates/part/import_wizard/ajax_match_references.html:12 #: part/templates/part/import_wizard/match_references.html:12 @@ -4091,10 +4091,10 @@ msgstr "" #: part/templates/part/import_wizard/ajax_match_fields.html:64 #: part/templates/part/import_wizard/ajax_match_references.html:42 #: part/templates/part/import_wizard/match_references.html:49 -#: templates/js/translated/bom.js:77 templates/js/translated/build.js:431 -#: templates/js/translated/build.js:583 templates/js/translated/build.js:1974 -#: templates/js/translated/order.js:884 templates/js/translated/order.js:1337 -#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625 +#: templates/js/translated/bom.js:77 templates/js/translated/build.js:463 +#: templates/js/translated/build.js:615 templates/js/translated/build.js:2007 +#: templates/js/translated/order.js:923 templates/js/translated/order.js:1376 +#: templates/js/translated/order.js:2836 templates/js/translated/stock.js:625 #: templates/js/translated/stock.js:793 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" @@ -4130,7 +4130,7 @@ msgstr "" #: order/templates/order/purchase_order_detail.html:26 #: order/templates/order/sales_order_detail.html:22 #: order/templates/order/sales_order_detail.html:255 -#: templates/js/translated/order.js:557 +#: templates/js/translated/order.js:596 msgid "Add Line Item" msgstr "" @@ -4176,7 +4176,7 @@ msgid "Print packing list" msgstr "" #: order/templates/order/sales_order_base.html:60 -#: templates/js/translated/order.js:229 +#: templates/js/translated/order.js:230 msgid "Complete Shipments" msgstr "" @@ -4190,7 +4190,7 @@ msgid "This Sales Order has not been fully allocated" msgstr "" #: order/templates/order/sales_order_base.html:123 -#: templates/js/translated/order.js:2526 +#: templates/js/translated/order.js:2565 msgid "Customer Reference" msgstr "" @@ -4214,8 +4214,8 @@ msgid "Pending Shipments" msgstr "" #: order/templates/order/sales_order_detail.html:72 -#: templates/attachment_table.html:6 templates/js/translated/bom.js:1110 -#: templates/js/translated/build.js:1882 +#: templates/attachment_table.html:6 templates/js/translated/bom.js:1108 +#: templates/js/translated/build.js:1915 msgid "Actions" msgstr "" @@ -4257,35 +4257,35 @@ msgstr "" msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:584 +#: part/api.py:621 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:704 +#: part/api.py:758 msgid "Valid" msgstr "" -#: part/api.py:705 +#: part/api.py:759 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:711 +#: part/api.py:765 msgid "This option must be selected" msgstr "" -#: part/api.py:1134 +#: part/api.py:1188 msgid "Must be greater than zero" msgstr "" -#: part/api.py:1138 +#: part/api.py:1192 msgid "Must be a valid quantity" msgstr "" -#: part/api.py:1153 +#: part/api.py:1207 msgid "Specify location for initial part stock" msgstr "" -#: part/api.py:1184 part/api.py:1188 part/api.py:1203 part/api.py:1207 +#: part/api.py:1238 part/api.py:1242 part/api.py:1257 part/api.py:1261 msgid "This field is required" msgstr "" @@ -4299,14 +4299,14 @@ msgid "Total Stock" msgstr "" #: part/bom.py:129 part/templates/part/part_base.html:189 -#: templates/js/translated/order.js:3618 +#: templates/js/translated/order.js:3657 msgid "Available Stock" msgstr "" #: part/bom.py:130 part/templates/part/part_base.html:207 -#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590 +#: templates/js/translated/bom.js:945 templates/js/translated/part.js:590 #: templates/js/translated/part.js:610 templates/js/translated/part.js:1302 -#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490 +#: templates/js/translated/part.js:1483 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "" @@ -4335,7 +4335,7 @@ msgstr "" msgid "Icon (optional)" msgstr "" -#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16 +#: part/models.py:122 part/models.py:2509 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" @@ -4352,7 +4352,7 @@ msgstr "" #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82 #: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:1955 templates/js/translated/search.js:144 +#: templates/js/translated/part.js:1951 templates/js/translated/search.js:144 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "パーツ" @@ -4382,7 +4382,7 @@ msgstr "" msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:745 part/models.py:2516 +#: part/models.py:745 part/models.py:2563 msgid "Part name" msgstr "" @@ -4415,11 +4415,11 @@ msgstr "" msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:783 part/models.py:2218 part/models.py:2461 +#: part/models.py:783 part/models.py:2265 part/models.py:2508 #: part/templates/part/part_base.html:257 #: templates/InvenTree/settings/settings.html:232 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1668 +#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1664 msgid "Category" msgstr "カテゴリ" @@ -4530,245 +4530,245 @@ msgstr "" msgid "Creation User" msgstr "" -#: part/models.py:1744 +#: part/models.py:1791 msgid "Sell multiple" msgstr "" -#: part/models.py:2265 +#: part/models.py:2312 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:2282 +#: part/models.py:2329 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:2302 templates/js/translated/part.js:2006 +#: part/models.py:2349 templates/js/translated/part.js:2002 #: templates/js/translated/stock.js:1340 msgid "Test Name" msgstr "" -#: part/models.py:2303 +#: part/models.py:2350 msgid "Enter a name for the test" msgstr "" -#: part/models.py:2308 +#: part/models.py:2355 msgid "Test Description" msgstr "" -#: part/models.py:2309 +#: part/models.py:2356 msgid "Enter description for this test" msgstr "" -#: part/models.py:2314 templates/js/translated/part.js:2015 +#: part/models.py:2361 templates/js/translated/part.js:2011 #: templates/js/translated/table_filters.js:302 msgid "Required" msgstr "" -#: part/models.py:2315 +#: part/models.py:2362 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:2320 templates/js/translated/part.js:2023 +#: part/models.py:2367 templates/js/translated/part.js:2019 msgid "Requires Value" msgstr "" -#: part/models.py:2321 +#: part/models.py:2368 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:2326 templates/js/translated/part.js:2030 +#: part/models.py:2373 templates/js/translated/part.js:2026 msgid "Requires Attachment" msgstr "" -#: part/models.py:2327 +#: part/models.py:2374 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:2335 +#: part/models.py:2382 #, python-brace-format msgid "Illegal character in template name ({c})" msgstr "" -#: part/models.py:2371 +#: part/models.py:2418 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:2379 +#: part/models.py:2426 msgid "Parameter Name" msgstr "" -#: part/models.py:2386 +#: part/models.py:2433 msgid "Parameter Units" msgstr "" -#: part/models.py:2417 +#: part/models.py:2464 msgid "Parent Part" msgstr "" -#: part/models.py:2419 part/models.py:2467 part/models.py:2468 +#: part/models.py:2466 part/models.py:2514 part/models.py:2515 #: templates/InvenTree/settings/settings.html:227 msgid "Parameter Template" msgstr "" -#: part/models.py:2421 +#: part/models.py:2468 msgid "Data" msgstr "" -#: part/models.py:2421 +#: part/models.py:2468 msgid "Parameter Value" msgstr "" -#: part/models.py:2472 templates/InvenTree/settings/settings.html:236 +#: part/models.py:2519 templates/InvenTree/settings/settings.html:236 msgid "Default Value" msgstr "" -#: part/models.py:2473 +#: part/models.py:2520 msgid "Default Parameter Value" msgstr "" -#: part/models.py:2508 +#: part/models.py:2555 msgid "Part ID or part name" msgstr "" -#: part/models.py:2511 templates/js/translated/model_renderers.js:212 +#: part/models.py:2558 templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "" -#: part/models.py:2512 +#: part/models.py:2559 msgid "Unique part ID value" msgstr "" -#: part/models.py:2515 +#: part/models.py:2562 msgid "Part Name" msgstr "" -#: part/models.py:2519 +#: part/models.py:2566 msgid "Part IPN" msgstr "" -#: part/models.py:2520 +#: part/models.py:2567 msgid "Part IPN value" msgstr "" -#: part/models.py:2523 +#: part/models.py:2570 msgid "Level" msgstr "" -#: part/models.py:2524 +#: part/models.py:2571 msgid "BOM level" msgstr "" -#: part/models.py:2593 +#: part/models.py:2640 msgid "Select parent part" msgstr "" -#: part/models.py:2601 +#: part/models.py:2648 msgid "Sub part" msgstr "" -#: part/models.py:2602 +#: part/models.py:2649 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:2608 +#: part/models.py:2655 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:2610 part/templates/part/upload_bom.html:58 -#: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999 +#: part/models.py:2657 part/templates/part/upload_bom.html:58 +#: templates/js/translated/bom.js:872 templates/js/translated/bom.js:997 #: templates/js/translated/table_filters.js:100 msgid "Optional" msgstr "" -#: part/models.py:2610 +#: part/models.py:2657 msgid "This BOM item is optional" msgstr "" -#: part/models.py:2613 part/templates/part/upload_bom.html:55 +#: part/models.py:2660 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:2614 +#: part/models.py:2661 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:2617 +#: part/models.py:2664 msgid "BOM item reference" msgstr "" -#: part/models.py:2620 +#: part/models.py:2667 msgid "BOM item notes" msgstr "" -#: part/models.py:2622 +#: part/models.py:2669 msgid "Checksum" msgstr "" -#: part/models.py:2622 +#: part/models.py:2669 msgid "BOM line checksum" msgstr "" -#: part/models.py:2626 part/templates/part/upload_bom.html:57 -#: templates/js/translated/bom.js:1016 +#: part/models.py:2673 part/templates/part/upload_bom.html:57 +#: templates/js/translated/bom.js:1014 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:96 msgid "Inherited" msgstr "" -#: part/models.py:2627 +#: part/models.py:2674 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:2632 part/templates/part/upload_bom.html:56 -#: templates/js/translated/bom.js:1008 +#: part/models.py:2679 part/templates/part/upload_bom.html:56 +#: templates/js/translated/bom.js:1006 msgid "Allow Variants" msgstr "" -#: part/models.py:2633 +#: part/models.py:2680 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:2711 stock/models.py:468 +#: part/models.py:2758 stock/models.py:468 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:2720 part/models.py:2722 +#: part/models.py:2767 part/models.py:2769 msgid "Sub part must be specified" msgstr "" -#: part/models.py:2827 +#: part/models.py:2874 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:2848 +#: part/models.py:2895 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:2861 +#: part/models.py:2908 msgid "Parent BOM item" msgstr "" -#: part/models.py:2869 +#: part/models.py:2916 msgid "Substitute part" msgstr "" -#: part/models.py:2884 +#: part/models.py:2931 msgid "Part 1" msgstr "" -#: part/models.py:2888 +#: part/models.py:2935 msgid "Part 2" msgstr "" -#: part/models.py:2888 +#: part/models.py:2935 msgid "Select Related Part" msgstr "" -#: part/models.py:2906 +#: part/models.py:2953 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:2910 +#: part/models.py:2957 msgid "Duplicate relationship already exists" msgstr "" @@ -4876,7 +4876,7 @@ msgstr "" msgid "The BOM for %(part)s has not been validated." msgstr "" -#: part/templates/part/bom.html:30 part/templates/part/detail.html:264 +#: part/templates/part/bom.html:30 part/templates/part/detail.html:269 msgid "BOM actions" msgstr "" @@ -4945,8 +4945,8 @@ msgstr "" msgid "New Part" msgstr "新規パーツ" -#: part/templates/part/category.html:174 part/templates/part/detail.html:363 -#: part/templates/part/detail.html:394 +#: part/templates/part/category.html:174 part/templates/part/detail.html:368 +#: part/templates/part/detail.html:399 msgid "Options" msgstr "" @@ -5014,138 +5014,146 @@ msgstr "" msgid "Part Stock" msgstr "" -#: part/templates/part/detail.html:54 -msgid "Part Test Templates" +#: part/templates/part/detail.html:44 +msgid "Refresh scheduling data" +msgstr "" + +#: part/templates/part/detail.html:45 templates/js/translated/tables.js:558 +msgid "Refresh" msgstr "" #: part/templates/part/detail.html:59 +msgid "Part Test Templates" +msgstr "" + +#: part/templates/part/detail.html:64 msgid "Add Test Template" msgstr "" -#: part/templates/part/detail.html:116 stock/templates/stock/item.html:53 +#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53 msgid "Sales Order Allocations" msgstr "" -#: part/templates/part/detail.html:138 +#: part/templates/part/detail.html:143 msgid "Part Notes" msgstr "" -#: part/templates/part/detail.html:153 +#: part/templates/part/detail.html:158 msgid "Part Variants" msgstr "" -#: part/templates/part/detail.html:157 +#: part/templates/part/detail.html:162 msgid "Create new variant" msgstr "" -#: part/templates/part/detail.html:158 +#: part/templates/part/detail.html:163 msgid "New Variant" msgstr "" -#: part/templates/part/detail.html:185 +#: part/templates/part/detail.html:190 msgid "Add new parameter" msgstr "" -#: part/templates/part/detail.html:222 part/templates/part/part_sidebar.html:54 +#: part/templates/part/detail.html:227 part/templates/part/part_sidebar.html:54 msgid "Related Parts" msgstr "" -#: part/templates/part/detail.html:226 part/templates/part/detail.html:227 +#: part/templates/part/detail.html:231 part/templates/part/detail.html:232 msgid "Add Related" msgstr "" -#: part/templates/part/detail.html:247 part/templates/part/part_sidebar.html:17 +#: part/templates/part/detail.html:252 part/templates/part/part_sidebar.html:17 msgid "Bill of Materials" msgstr "" -#: part/templates/part/detail.html:252 +#: part/templates/part/detail.html:257 msgid "Export actions" msgstr "" -#: part/templates/part/detail.html:256 templates/js/translated/bom.js:284 +#: part/templates/part/detail.html:261 templates/js/translated/bom.js:284 msgid "Export BOM" msgstr "" -#: part/templates/part/detail.html:258 +#: part/templates/part/detail.html:263 msgid "Print BOM Report" msgstr "" -#: part/templates/part/detail.html:268 +#: part/templates/part/detail.html:273 msgid "Upload BOM" msgstr "" -#: part/templates/part/detail.html:269 templates/js/translated/part.js:274 +#: part/templates/part/detail.html:274 templates/js/translated/part.js:274 msgid "Copy BOM" msgstr "" -#: part/templates/part/detail.html:270 +#: part/templates/part/detail.html:275 msgid "Validate BOM" msgstr "" -#: part/templates/part/detail.html:275 +#: part/templates/part/detail.html:280 msgid "New BOM Item" msgstr "" -#: part/templates/part/detail.html:276 +#: part/templates/part/detail.html:281 msgid "Add BOM Item" msgstr "" -#: part/templates/part/detail.html:289 +#: part/templates/part/detail.html:294 msgid "Assemblies" msgstr "" -#: part/templates/part/detail.html:307 +#: part/templates/part/detail.html:312 msgid "Part Builds" msgstr "" -#: part/templates/part/detail.html:334 stock/templates/stock/item.html:38 +#: part/templates/part/detail.html:339 stock/templates/stock/item.html:38 msgid "Build Order Allocations" msgstr "" -#: part/templates/part/detail.html:350 +#: part/templates/part/detail.html:355 msgid "Part Suppliers" msgstr "" -#: part/templates/part/detail.html:380 +#: part/templates/part/detail.html:385 msgid "Part Manufacturers" msgstr "" -#: part/templates/part/detail.html:396 +#: part/templates/part/detail.html:401 msgid "Delete manufacturer parts" msgstr "" -#: part/templates/part/detail.html:612 +#: part/templates/part/detail.html:626 msgid "Create BOM Item" msgstr "" -#: part/templates/part/detail.html:656 +#: part/templates/part/detail.html:670 msgid "Related Part" msgstr "" -#: part/templates/part/detail.html:664 +#: part/templates/part/detail.html:678 msgid "Add Related Part" msgstr "" -#: part/templates/part/detail.html:756 +#: part/templates/part/detail.html:770 msgid "Add Test Result Template" msgstr "" -#: part/templates/part/detail.html:900 +#: part/templates/part/detail.html:914 #, python-format msgid "Purchase Unit Price - %(currency)s" msgstr "" -#: part/templates/part/detail.html:912 +#: part/templates/part/detail.html:926 #, python-format msgid "Unit Price-Cost Difference - %(currency)s" msgstr "" -#: part/templates/part/detail.html:924 +#: part/templates/part/detail.html:938 #, python-format msgid "Supplier Unit Cost - %(currency)s" msgstr "" -#: part/templates/part/detail.html:1013 +#: part/templates/part/detail.html:1027 #, python-format msgid "Unit Price - %(currency)s" msgstr "" @@ -5321,13 +5329,13 @@ msgstr "" msgid "Allocated to Sales Orders" msgstr "" -#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1037 +#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1035 msgid "Can Build" msgstr "" #: part/templates/part/part_base.html:238 templates/js/translated/part.js:593 #: templates/js/translated/part.js:613 templates/js/translated/part.js:1306 -#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1494 +#: templates/js/translated/part.js:1490 msgid "Building" msgstr "" @@ -5379,7 +5387,7 @@ msgid "Total Cost" msgstr "" #: part/templates/part/part_pricing.html:40 part/templates/part/prices.html:43 -#: templates/js/translated/bom.js:991 +#: templates/js/translated/bom.js:989 msgid "No supplier pricing available" msgstr "" @@ -5414,6 +5422,18 @@ msgstr "" msgid "No pricing information is available for this part." msgstr "" +#: part/templates/part/part_scheduling.html:13 +#: report/templates/report/inventree_test_report_base.html:97 +#: templates/InvenTree/settings/plugin.html:53 +#: templates/InvenTree/settings/plugin_settings.html:38 +#: templates/js/translated/order.js:1772 templates/js/translated/stock.js:2468 +msgid "Date" +msgstr "" + +#: part/templates/part/part_scheduling.html:14 +msgid "Scheduled Quantity" +msgstr "" + #: part/templates/part/part_sidebar.html:11 msgid "Variants" msgstr "" @@ -5462,7 +5482,7 @@ msgstr "" msgid "Calculation parameters" msgstr "" -#: part/templates/part/prices.html:160 templates/js/translated/bom.js:985 +#: part/templates/part/prices.html:160 templates/js/translated/bom.js:983 msgid "Supplier Cost" msgstr "" @@ -5501,7 +5521,7 @@ msgid "No sale pice history available for this part." msgstr "" #: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616 -#: templates/js/translated/part.js:1294 templates/js/translated/part.js:1498 +#: templates/js/translated/part.js:1294 msgid "No Stock" msgstr "在庫切れ" @@ -5893,11 +5913,11 @@ msgstr "" #: report/templates/report/inventree_test_report_base.html:79 #: stock/models.py:648 stock/templates/stock/item_base.html:322 -#: templates/js/translated/build.js:424 templates/js/translated/build.js:576 -#: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673 +#: templates/js/translated/build.js:456 templates/js/translated/build.js:608 +#: templates/js/translated/build.js:1208 templates/js/translated/build.js:1705 #: templates/js/translated/model_renderers.js:118 -#: templates/js/translated/order.js:118 templates/js/translated/order.js:3297 -#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490 +#: templates/js/translated/order.js:119 templates/js/translated/order.js:3336 +#: templates/js/translated/order.js:3423 templates/js/translated/stock.js:490 msgid "Serial Number" msgstr "" @@ -5915,13 +5935,6 @@ msgstr "" msgid "Result" msgstr "" -#: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:53 -#: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468 -msgid "Date" -msgstr "" - #: report/templates/report/inventree_test_report_base.html:108 msgid "Pass" msgstr "" @@ -6519,7 +6532,7 @@ msgid "Available Quantity" msgstr "" #: stock/templates/stock/item_base.html:394 -#: templates/js/translated/build.js:1695 +#: templates/js/translated/build.js:1727 msgid "No location set" msgstr "" @@ -7702,7 +7715,7 @@ msgid "The following parts are low on required stock" msgstr "" #: templates/email/build_order_required_stock.html:18 -#: templates/js/translated/bom.js:1483 +#: templates/js/translated/bom.js:1481 msgid "Required Quantity" msgstr "" @@ -7716,6 +7729,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:19 +#: templates/js/translated/part.js:2498 msgid "Minimum Quantity" msgstr "" @@ -7917,10 +7931,10 @@ msgstr "" msgid "Row Data" msgstr "" -#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:622 +#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:620 #: templates/js/translated/modals.js:56 templates/js/translated/modals.js:601 #: templates/js/translated/modals.js:695 templates/js/translated/modals.js:1003 -#: templates/js/translated/order.js:979 templates/modals.html:15 +#: templates/js/translated/order.js:1018 templates/modals.html:15 #: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50 msgid "Close" msgstr "" @@ -7930,12 +7944,12 @@ msgid "Download BOM Template" msgstr "" #: templates/js/translated/bom.js:253 templates/js/translated/bom.js:287 -#: templates/js/translated/order.js:760 templates/js/translated/tables.js:145 +#: templates/js/translated/order.js:799 templates/js/translated/tables.js:145 msgid "Format" msgstr "" #: templates/js/translated/bom.js:254 templates/js/translated/bom.js:288 -#: templates/js/translated/order.js:761 +#: templates/js/translated/order.js:800 msgid "Select file format" msgstr "" @@ -7991,390 +8005,390 @@ msgstr "" msgid "Remove substitute part" msgstr "" -#: templates/js/translated/bom.js:567 +#: templates/js/translated/bom.js:565 msgid "Select and add a new substitute part using the input below" msgstr "" -#: templates/js/translated/bom.js:578 +#: templates/js/translated/bom.js:576 msgid "Are you sure you wish to remove this substitute part link?" msgstr "" -#: templates/js/translated/bom.js:584 +#: templates/js/translated/bom.js:582 msgid "Remove Substitute Part" msgstr "" -#: templates/js/translated/bom.js:623 +#: templates/js/translated/bom.js:621 msgid "Add Substitute" msgstr "" -#: templates/js/translated/bom.js:624 +#: templates/js/translated/bom.js:622 msgid "Edit BOM Item Substitutes" msgstr "" -#: templates/js/translated/bom.js:686 +#: templates/js/translated/bom.js:684 msgid "All selected BOM items will be deleted" msgstr "" -#: templates/js/translated/bom.js:702 +#: templates/js/translated/bom.js:700 msgid "Delete selected BOM items?" msgstr "" -#: templates/js/translated/bom.js:821 +#: templates/js/translated/bom.js:819 msgid "Load BOM for subassembly" msgstr "" -#: templates/js/translated/bom.js:831 +#: templates/js/translated/bom.js:829 msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:835 templates/js/translated/build.js:1771 +#: templates/js/translated/bom.js:833 templates/js/translated/build.js:1803 msgid "Variant stock allowed" msgstr "" -#: templates/js/translated/bom.js:929 templates/js/translated/build.js:1816 -#: templates/js/translated/order.js:3632 +#: templates/js/translated/bom.js:927 templates/js/translated/build.js:1849 +#: templates/js/translated/order.js:3671 msgid "No Stock Available" msgstr "" -#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1820 +#: templates/js/translated/bom.js:932 templates/js/translated/build.js:1853 msgid "Includes variant and substitute stock" msgstr "" -#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822 +#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1855 #: templates/js/translated/part.js:763 msgid "Includes variant stock" msgstr "" -#: templates/js/translated/bom.js:938 templates/js/translated/build.js:1824 +#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1857 msgid "Includes substitute stock" msgstr "" -#: templates/js/translated/bom.js:956 +#: templates/js/translated/bom.js:954 msgid "Substitutes" msgstr "" -#: templates/js/translated/bom.js:971 +#: templates/js/translated/bom.js:969 msgid "Purchase Price Range" msgstr "" -#: templates/js/translated/bom.js:978 +#: templates/js/translated/bom.js:976 msgid "Purchase Price Average" msgstr "" -#: templates/js/translated/bom.js:1027 templates/js/translated/bom.js:1147 +#: templates/js/translated/bom.js:1025 templates/js/translated/bom.js:1145 msgid "View BOM" msgstr "" -#: templates/js/translated/bom.js:1054 +#: templates/js/translated/bom.js:1052 msgid "Including On Order" msgstr "" -#: templates/js/translated/bom.js:1118 +#: templates/js/translated/bom.js:1116 msgid "Validate BOM Item" msgstr "" -#: templates/js/translated/bom.js:1120 +#: templates/js/translated/bom.js:1118 msgid "This line has been validated" msgstr "" -#: templates/js/translated/bom.js:1122 +#: templates/js/translated/bom.js:1120 msgid "Edit substitute parts" msgstr "" -#: templates/js/translated/bom.js:1124 templates/js/translated/bom.js:1286 +#: templates/js/translated/bom.js:1122 templates/js/translated/bom.js:1284 msgid "Edit BOM Item" msgstr "" -#: templates/js/translated/bom.js:1126 +#: templates/js/translated/bom.js:1124 msgid "Delete BOM Item" msgstr "" -#: templates/js/translated/bom.js:1222 templates/js/translated/build.js:1617 +#: templates/js/translated/bom.js:1220 templates/js/translated/build.js:1649 msgid "No BOM items found" msgstr "" -#: templates/js/translated/bom.js:1466 templates/js/translated/build.js:1755 +#: templates/js/translated/bom.js:1464 templates/js/translated/build.js:1787 msgid "Required Part" msgstr "" -#: templates/js/translated/bom.js:1488 +#: templates/js/translated/bom.js:1486 msgid "Inherited from parent BOM" msgstr "" -#: templates/js/translated/build.js:86 +#: templates/js/translated/build.js:89 msgid "Edit Build Order" msgstr "" -#: templates/js/translated/build.js:120 +#: templates/js/translated/build.js:132 msgid "Create Build Order" msgstr "" -#: templates/js/translated/build.js:133 +#: templates/js/translated/build.js:165 msgid "Cancel Build Order" msgstr "" -#: templates/js/translated/build.js:142 +#: templates/js/translated/build.js:174 msgid "Are you sure you wish to cancel this build?" msgstr "" -#: templates/js/translated/build.js:148 +#: templates/js/translated/build.js:180 msgid "Stock items have been allocated to this build order" msgstr "" -#: templates/js/translated/build.js:155 +#: templates/js/translated/build.js:187 msgid "There are incomplete outputs remaining for this build order" msgstr "" -#: templates/js/translated/build.js:185 +#: templates/js/translated/build.js:217 msgid "Build order is ready to be completed" msgstr "" -#: templates/js/translated/build.js:190 +#: templates/js/translated/build.js:222 msgid "Build Order is incomplete" msgstr "" -#: templates/js/translated/build.js:222 +#: templates/js/translated/build.js:254 msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:263 templates/js/translated/stock.js:92 +#: templates/js/translated/build.js:295 templates/js/translated/stock.js:92 #: templates/js/translated/stock.js:214 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:265 templates/js/translated/stock.js:94 +#: templates/js/translated/build.js:297 templates/js/translated/stock.js:94 #: templates/js/translated/stock.js:216 msgid "Latest serial number" msgstr "" -#: templates/js/translated/build.js:274 +#: templates/js/translated/build.js:306 msgid "The Bill of Materials contains trackable parts" msgstr "" -#: templates/js/translated/build.js:275 +#: templates/js/translated/build.js:307 msgid "Build outputs must be generated individually" msgstr "" -#: templates/js/translated/build.js:283 +#: templates/js/translated/build.js:315 msgid "Trackable parts can have serial numbers specified" msgstr "" -#: templates/js/translated/build.js:284 +#: templates/js/translated/build.js:316 msgid "Enter serial numbers to generate multiple single build outputs" msgstr "" -#: templates/js/translated/build.js:291 +#: templates/js/translated/build.js:323 msgid "Create Build Output" msgstr "" -#: templates/js/translated/build.js:322 +#: templates/js/translated/build.js:354 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:333 +#: templates/js/translated/build.js:365 msgid "Unallocate stock from build output" msgstr "" -#: templates/js/translated/build.js:342 +#: templates/js/translated/build.js:374 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:350 +#: templates/js/translated/build.js:382 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:373 +#: templates/js/translated/build.js:405 msgid "Are you sure you wish to unallocate stock items from this build?" msgstr "" -#: templates/js/translated/build.js:391 +#: templates/js/translated/build.js:423 msgid "Unallocate Stock Items" msgstr "" -#: templates/js/translated/build.js:411 templates/js/translated/build.js:563 +#: templates/js/translated/build.js:443 templates/js/translated/build.js:595 msgid "Select Build Outputs" msgstr "" -#: templates/js/translated/build.js:412 templates/js/translated/build.js:564 +#: templates/js/translated/build.js:444 templates/js/translated/build.js:596 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:466 templates/js/translated/build.js:618 +#: templates/js/translated/build.js:498 templates/js/translated/build.js:650 msgid "Output" msgstr "" -#: templates/js/translated/build.js:484 +#: templates/js/translated/build.js:516 msgid "Complete Build Outputs" msgstr "" -#: templates/js/translated/build.js:631 +#: templates/js/translated/build.js:663 msgid "Delete Build Outputs" msgstr "" -#: templates/js/translated/build.js:720 +#: templates/js/translated/build.js:752 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:757 +#: templates/js/translated/build.js:789 msgid "Location not specified" msgstr "" -#: templates/js/translated/build.js:1136 +#: templates/js/translated/build.js:1168 msgid "No active build outputs found" msgstr "" -#: templates/js/translated/build.js:1205 +#: templates/js/translated/build.js:1237 msgid "Allocated Stock" msgstr "" -#: templates/js/translated/build.js:1212 +#: templates/js/translated/build.js:1244 msgid "No tracked BOM items for this build" msgstr "" -#: templates/js/translated/build.js:1234 +#: templates/js/translated/build.js:1266 msgid "Completed Tests" msgstr "" -#: templates/js/translated/build.js:1239 +#: templates/js/translated/build.js:1271 msgid "No required tests for this build" msgstr "" -#: templates/js/translated/build.js:1712 templates/js/translated/build.js:2656 -#: templates/js/translated/order.js:3332 +#: templates/js/translated/build.js:1744 templates/js/translated/build.js:2689 +#: templates/js/translated/order.js:3371 msgid "Edit stock allocation" msgstr "" -#: templates/js/translated/build.js:1714 templates/js/translated/build.js:2657 -#: templates/js/translated/order.js:3333 +#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2690 +#: templates/js/translated/order.js:3372 msgid "Delete stock allocation" msgstr "" -#: templates/js/translated/build.js:1732 +#: templates/js/translated/build.js:1764 msgid "Edit Allocation" msgstr "" -#: templates/js/translated/build.js:1742 +#: templates/js/translated/build.js:1774 msgid "Remove Allocation" msgstr "" -#: templates/js/translated/build.js:1767 +#: templates/js/translated/build.js:1799 msgid "Substitute parts available" msgstr "" -#: templates/js/translated/build.js:1784 +#: templates/js/translated/build.js:1816 msgid "Quantity Per" msgstr "" -#: templates/js/translated/build.js:1810 templates/js/translated/order.js:3639 +#: templates/js/translated/build.js:1843 templates/js/translated/order.js:3678 msgid "Insufficient stock available" msgstr "" -#: templates/js/translated/build.js:1812 templates/js/translated/order.js:3637 +#: templates/js/translated/build.js:1845 templates/js/translated/order.js:3676 msgid "Sufficient stock available" msgstr "" -#: templates/js/translated/build.js:1841 templates/js/translated/build.js:2086 -#: templates/js/translated/build.js:2652 templates/js/translated/order.js:3651 +#: templates/js/translated/build.js:1874 templates/js/translated/build.js:2119 +#: templates/js/translated/build.js:2685 templates/js/translated/order.js:3690 msgid "Allocated" msgstr "" -#: templates/js/translated/build.js:1889 templates/js/translated/order.js:3731 +#: templates/js/translated/build.js:1922 templates/js/translated/order.js:3770 msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:1893 templates/stock_table.html:50 +#: templates/js/translated/build.js:1926 templates/stock_table.html:50 msgid "Order stock" msgstr "" -#: templates/js/translated/build.js:1896 templates/js/translated/order.js:3724 +#: templates/js/translated/build.js:1929 templates/js/translated/order.js:3763 msgid "Allocate stock" msgstr "" -#: templates/js/translated/build.js:1935 templates/js/translated/label.js:172 -#: templates/js/translated/order.js:807 templates/js/translated/order.js:2859 +#: templates/js/translated/build.js:1968 templates/js/translated/label.js:172 +#: templates/js/translated/order.js:846 templates/js/translated/order.js:2898 #: templates/js/translated/report.js:225 msgid "Select Parts" msgstr "" -#: templates/js/translated/build.js:1936 templates/js/translated/order.js:2860 +#: templates/js/translated/build.js:1969 templates/js/translated/order.js:2899 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1985 templates/js/translated/order.js:2808 +#: templates/js/translated/build.js:2018 templates/js/translated/order.js:2847 msgid "Specify stock allocation quantity" msgstr "" -#: templates/js/translated/build.js:2059 +#: templates/js/translated/build.js:2092 msgid "All Parts Allocated" msgstr "" -#: templates/js/translated/build.js:2060 +#: templates/js/translated/build.js:2093 msgid "All selected parts have been fully allocated" msgstr "" -#: templates/js/translated/build.js:2074 templates/js/translated/order.js:2874 +#: templates/js/translated/build.js:2107 templates/js/translated/order.js:2913 msgid "Select source location (leave blank to take from all locations)" msgstr "" -#: templates/js/translated/build.js:2102 +#: templates/js/translated/build.js:2135 msgid "Allocate Stock Items to Build Order" msgstr "" -#: templates/js/translated/build.js:2113 templates/js/translated/order.js:2971 +#: templates/js/translated/build.js:2146 templates/js/translated/order.js:3010 msgid "No matching stock locations" msgstr "" -#: templates/js/translated/build.js:2185 templates/js/translated/order.js:3048 +#: templates/js/translated/build.js:2218 templates/js/translated/order.js:3087 msgid "No matching stock items" msgstr "" -#: templates/js/translated/build.js:2282 +#: templates/js/translated/build.js:2315 msgid "Automatic Stock Allocation" msgstr "" -#: templates/js/translated/build.js:2283 +#: templates/js/translated/build.js:2316 msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines" msgstr "" -#: templates/js/translated/build.js:2285 +#: templates/js/translated/build.js:2318 msgid "If a location is specifed, stock will only be allocated from that location" msgstr "" -#: templates/js/translated/build.js:2286 +#: templates/js/translated/build.js:2319 msgid "If stock is considered interchangeable, it will be allocated from the first location it is found" msgstr "" -#: templates/js/translated/build.js:2287 +#: templates/js/translated/build.js:2320 msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found" msgstr "" -#: templates/js/translated/build.js:2308 +#: templates/js/translated/build.js:2341 msgid "Allocate Stock Items" msgstr "" -#: templates/js/translated/build.js:2414 +#: templates/js/translated/build.js:2447 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387 -#: templates/js/translated/part.js:1899 templates/js/translated/stock.js:1686 +#: templates/js/translated/build.js:2482 templates/js/translated/part.js:1387 +#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1686 #: templates/js/translated/stock.js:2386 msgid "Select" msgstr "" -#: templates/js/translated/build.js:2463 +#: templates/js/translated/build.js:2496 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:2491 +#: templates/js/translated/build.js:2524 msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647 +#: templates/js/translated/build.js:2560 templates/js/translated/stock.js:2647 msgid "No user information" msgstr "" -#: templates/js/translated/build.js:2633 +#: templates/js/translated/build.js:2666 msgid "No parts allocated for" msgstr "" @@ -8390,11 +8404,11 @@ msgstr "" msgid "Edit Manufacturer Part" msgstr "メーカー・パーツの編集" -#: templates/js/translated/company.js:167 templates/js/translated/order.js:509 +#: templates/js/translated/company.js:167 templates/js/translated/order.js:510 msgid "Add Supplier" msgstr "" -#: templates/js/translated/company.js:195 templates/js/translated/order.js:628 +#: templates/js/translated/company.js:195 templates/js/translated/order.js:667 msgid "Add Supplier Part" msgstr "" @@ -8765,381 +8779,385 @@ msgstr "" msgid "Notifications will load here" msgstr "" -#: templates/js/translated/order.js:94 +#: templates/js/translated/order.js:95 msgid "No stock items have been allocated to this shipment" msgstr "" -#: templates/js/translated/order.js:99 +#: templates/js/translated/order.js:100 msgid "The following stock items will be shipped" msgstr "" -#: templates/js/translated/order.js:139 +#: templates/js/translated/order.js:140 msgid "Complete Shipment" msgstr "" -#: templates/js/translated/order.js:159 +#: templates/js/translated/order.js:160 msgid "Confirm Shipment" msgstr "" -#: templates/js/translated/order.js:215 +#: templates/js/translated/order.js:216 msgid "No pending shipments found" msgstr "" -#: templates/js/translated/order.js:219 +#: templates/js/translated/order.js:220 msgid "No stock items have been allocated to pending shipments" msgstr "" -#: templates/js/translated/order.js:251 +#: templates/js/translated/order.js:252 msgid "Skip" msgstr "" -#: templates/js/translated/order.js:281 +#: templates/js/translated/order.js:282 msgid "Complete Purchase Order" msgstr "" -#: templates/js/translated/order.js:287 +#: templates/js/translated/order.js:288 msgid "Mark this order as complete?" msgstr "" -#: templates/js/translated/order.js:293 +#: templates/js/translated/order.js:294 msgid "All line items have been received" msgstr "" -#: templates/js/translated/order.js:298 +#: templates/js/translated/order.js:299 msgid "This order has line items which have not been marked as received." msgstr "" -#: templates/js/translated/order.js:299 +#: templates/js/translated/order.js:300 msgid "Completing this order means that the order and line items will no longer be editable." msgstr "" -#: templates/js/translated/order.js:322 +#: templates/js/translated/order.js:323 msgid "Cancel Purchase Order" msgstr "" -#: templates/js/translated/order.js:327 +#: templates/js/translated/order.js:328 msgid "Are you sure you wish to cancel this purchase order?" msgstr "" -#: templates/js/translated/order.js:333 +#: templates/js/translated/order.js:334 msgid "This purchase order can not be cancelled" msgstr "" -#: templates/js/translated/order.js:356 +#: templates/js/translated/order.js:357 msgid "Issue Purchase Order" msgstr "" -#: templates/js/translated/order.js:361 +#: templates/js/translated/order.js:362 msgid "After placing this purchase order, line items will no longer be editable." msgstr "" -#: templates/js/translated/order.js:383 +#: templates/js/translated/order.js:384 msgid "Cancel Sales Order" msgstr "" -#: templates/js/translated/order.js:388 +#: templates/js/translated/order.js:389 msgid "Cancelling this order means that the order will no longer be editable." msgstr "" -#: templates/js/translated/order.js:442 +#: templates/js/translated/order.js:443 msgid "Create New Shipment" msgstr "" -#: templates/js/translated/order.js:467 +#: templates/js/translated/order.js:468 msgid "Add Customer" msgstr "" -#: templates/js/translated/order.js:492 +#: templates/js/translated/order.js:493 msgid "Create Sales Order" msgstr "" -#: templates/js/translated/order.js:757 +#: templates/js/translated/order.js:554 +msgid "Edit Purchase Order" +msgstr "" + +#: templates/js/translated/order.js:796 msgid "Export Order" msgstr "" -#: templates/js/translated/order.js:808 +#: templates/js/translated/order.js:847 msgid "At least one purchaseable part must be selected" msgstr "" -#: templates/js/translated/order.js:833 +#: templates/js/translated/order.js:872 msgid "Quantity to order" msgstr "" -#: templates/js/translated/order.js:842 +#: templates/js/translated/order.js:881 msgid "New supplier part" msgstr "" -#: templates/js/translated/order.js:860 +#: templates/js/translated/order.js:899 msgid "New purchase order" msgstr "" -#: templates/js/translated/order.js:893 +#: templates/js/translated/order.js:932 msgid "Add to purchase order" msgstr "" -#: templates/js/translated/order.js:1002 +#: templates/js/translated/order.js:1041 msgid "No matching supplier parts" msgstr "" -#: templates/js/translated/order.js:1017 +#: templates/js/translated/order.js:1056 msgid "No matching purchase orders" msgstr "" -#: templates/js/translated/order.js:1194 +#: templates/js/translated/order.js:1233 msgid "Select Line Items" msgstr "" -#: templates/js/translated/order.js:1195 +#: templates/js/translated/order.js:1234 msgid "At least one line item must be selected" msgstr "" -#: templates/js/translated/order.js:1215 templates/js/translated/order.js:1314 +#: templates/js/translated/order.js:1254 templates/js/translated/order.js:1353 msgid "Add batch code" msgstr "" -#: templates/js/translated/order.js:1221 templates/js/translated/order.js:1325 +#: templates/js/translated/order.js:1260 templates/js/translated/order.js:1364 msgid "Add serial numbers" msgstr "" -#: templates/js/translated/order.js:1233 +#: templates/js/translated/order.js:1272 msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144 +#: templates/js/translated/order.js:1336 templates/js/translated/stock.js:2144 msgid "Stock Status" msgstr "" -#: templates/js/translated/order.js:1388 +#: templates/js/translated/order.js:1427 msgid "Order Code" msgstr "" -#: templates/js/translated/order.js:1389 +#: templates/js/translated/order.js:1428 msgid "Ordered" msgstr "" -#: templates/js/translated/order.js:1391 +#: templates/js/translated/order.js:1430 msgid "Quantity to Receive" msgstr "" -#: templates/js/translated/order.js:1410 +#: templates/js/translated/order.js:1449 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/order.js:1411 +#: templates/js/translated/order.js:1450 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943 +#: templates/js/translated/order.js:1711 templates/js/translated/part.js:943 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/order.js:1699 templates/js/translated/order.js:2503 +#: templates/js/translated/order.js:1738 templates/js/translated/order.js:2542 msgid "Order is overdue" msgstr "" -#: templates/js/translated/order.js:1749 templates/js/translated/order.js:2568 -#: templates/js/translated/order.js:2709 +#: templates/js/translated/order.js:1788 templates/js/translated/order.js:2607 +#: templates/js/translated/order.js:2748 msgid "Items" msgstr "" -#: templates/js/translated/order.js:1847 templates/js/translated/order.js:3783 +#: templates/js/translated/order.js:1886 templates/js/translated/order.js:3822 msgid "Duplicate Line Item" msgstr "" -#: templates/js/translated/order.js:1864 templates/js/translated/order.js:3805 +#: templates/js/translated/order.js:1903 templates/js/translated/order.js:3844 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/order.js:1877 templates/js/translated/order.js:3816 +#: templates/js/translated/order.js:1916 templates/js/translated/order.js:3855 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/order.js:1920 +#: templates/js/translated/order.js:1959 msgid "No line items found" msgstr "" -#: templates/js/translated/order.js:1947 templates/js/translated/order.js:3517 +#: templates/js/translated/order.js:1986 templates/js/translated/order.js:3556 msgid "Total" msgstr "" -#: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203 -#: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050 -#: templates/js/translated/part.js:2135 templates/js/translated/part.js:2488 +#: templates/js/translated/order.js:2040 templates/js/translated/order.js:2242 +#: templates/js/translated/order.js:3581 templates/js/translated/order.js:4089 +#: templates/js/translated/part.js:2131 templates/js/translated/part.js:2703 msgid "Unit Price" msgstr "" -#: templates/js/translated/order.js:2016 templates/js/translated/order.js:2219 -#: templates/js/translated/order.js:3558 templates/js/translated/order.js:4066 +#: templates/js/translated/order.js:2055 templates/js/translated/order.js:2258 +#: templates/js/translated/order.js:3597 templates/js/translated/order.js:4105 msgid "Total Price" msgstr "" -#: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600 +#: templates/js/translated/order.js:2096 templates/js/translated/order.js:3639 #: templates/js/translated/part.js:1050 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096 +#: templates/js/translated/order.js:2155 templates/js/translated/part.js:1096 msgid "Receive line item" msgstr "" -#: templates/js/translated/order.js:2120 templates/js/translated/order.js:3737 +#: templates/js/translated/order.js:2159 templates/js/translated/order.js:3776 msgid "Duplicate line item" msgstr "" -#: templates/js/translated/order.js:2121 templates/js/translated/order.js:3738 +#: templates/js/translated/order.js:2160 templates/js/translated/order.js:3777 msgid "Edit line item" msgstr "" -#: templates/js/translated/order.js:2122 templates/js/translated/order.js:3742 +#: templates/js/translated/order.js:2161 templates/js/translated/order.js:3781 msgid "Delete line item" msgstr "" -#: templates/js/translated/order.js:2268 templates/js/translated/order.js:4115 +#: templates/js/translated/order.js:2307 templates/js/translated/order.js:4154 msgid "Duplicate line" msgstr "" -#: templates/js/translated/order.js:2269 templates/js/translated/order.js:4116 +#: templates/js/translated/order.js:2308 templates/js/translated/order.js:4155 msgid "Edit line" msgstr "" -#: templates/js/translated/order.js:2270 templates/js/translated/order.js:4117 +#: templates/js/translated/order.js:2309 templates/js/translated/order.js:4156 msgid "Delete line" msgstr "" -#: templates/js/translated/order.js:2300 templates/js/translated/order.js:4147 +#: templates/js/translated/order.js:2339 templates/js/translated/order.js:4186 msgid "Duplicate Line" msgstr "" -#: templates/js/translated/order.js:2321 templates/js/translated/order.js:4168 +#: templates/js/translated/order.js:2360 templates/js/translated/order.js:4207 msgid "Edit Line" msgstr "" -#: templates/js/translated/order.js:2332 templates/js/translated/order.js:4179 +#: templates/js/translated/order.js:2371 templates/js/translated/order.js:4218 msgid "Delete Line" msgstr "" -#: templates/js/translated/order.js:2343 +#: templates/js/translated/order.js:2382 msgid "No matching line" msgstr "" -#: templates/js/translated/order.js:2454 +#: templates/js/translated/order.js:2493 msgid "No sales orders found" msgstr "" -#: templates/js/translated/order.js:2517 +#: templates/js/translated/order.js:2556 msgid "Invalid Customer" msgstr "" -#: templates/js/translated/order.js:2615 +#: templates/js/translated/order.js:2654 msgid "Edit shipment" msgstr "" -#: templates/js/translated/order.js:2618 +#: templates/js/translated/order.js:2657 msgid "Complete shipment" msgstr "" -#: templates/js/translated/order.js:2623 +#: templates/js/translated/order.js:2662 msgid "Delete shipment" msgstr "" -#: templates/js/translated/order.js:2643 +#: templates/js/translated/order.js:2682 msgid "Edit Shipment" msgstr "" -#: templates/js/translated/order.js:2660 +#: templates/js/translated/order.js:2699 msgid "Delete Shipment" msgstr "" -#: templates/js/translated/order.js:2694 +#: templates/js/translated/order.js:2733 msgid "No matching shipments found" msgstr "" -#: templates/js/translated/order.js:2704 +#: templates/js/translated/order.js:2743 msgid "Shipment Reference" msgstr "" -#: templates/js/translated/order.js:2728 +#: templates/js/translated/order.js:2767 msgid "Not shipped" msgstr "" -#: templates/js/translated/order.js:2734 +#: templates/js/translated/order.js:2773 msgid "Tracking" msgstr "" -#: templates/js/translated/order.js:2738 +#: templates/js/translated/order.js:2777 msgid "Invoice" msgstr "" -#: templates/js/translated/order.js:2907 +#: templates/js/translated/order.js:2946 msgid "Add Shipment" msgstr "" -#: templates/js/translated/order.js:2958 +#: templates/js/translated/order.js:2997 msgid "Confirm stock allocation" msgstr "" -#: templates/js/translated/order.js:2959 +#: templates/js/translated/order.js:2998 msgid "Allocate Stock Items to Sales Order" msgstr "" -#: templates/js/translated/order.js:3167 +#: templates/js/translated/order.js:3206 msgid "No sales order allocations found" msgstr "" -#: templates/js/translated/order.js:3246 +#: templates/js/translated/order.js:3285 msgid "Edit Stock Allocation" msgstr "" -#: templates/js/translated/order.js:3263 +#: templates/js/translated/order.js:3302 msgid "Confirm Delete Operation" msgstr "" -#: templates/js/translated/order.js:3264 +#: templates/js/translated/order.js:3303 msgid "Delete Stock Allocation" msgstr "" -#: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398 +#: templates/js/translated/order.js:3348 templates/js/translated/order.js:3437 #: templates/js/translated/stock.js:1602 msgid "Shipped to customer" msgstr "" -#: templates/js/translated/order.js:3317 templates/js/translated/order.js:3407 +#: templates/js/translated/order.js:3356 templates/js/translated/order.js:3446 msgid "Stock location not specified" msgstr "" -#: templates/js/translated/order.js:3721 +#: templates/js/translated/order.js:3760 msgid "Allocate serial numbers" msgstr "" -#: templates/js/translated/order.js:3727 +#: templates/js/translated/order.js:3766 msgid "Purchase stock" msgstr "" -#: templates/js/translated/order.js:3734 templates/js/translated/order.js:3932 +#: templates/js/translated/order.js:3773 templates/js/translated/order.js:3971 msgid "Calculate price" msgstr "" -#: templates/js/translated/order.js:3746 +#: templates/js/translated/order.js:3785 msgid "Cannot be deleted as items have been shipped" msgstr "" -#: templates/js/translated/order.js:3749 +#: templates/js/translated/order.js:3788 msgid "Cannot be deleted as items have been allocated" msgstr "" -#: templates/js/translated/order.js:3831 +#: templates/js/translated/order.js:3870 msgid "Allocate Serial Numbers" msgstr "" -#: templates/js/translated/order.js:3940 +#: templates/js/translated/order.js:3979 msgid "Update Unit Price" msgstr "" -#: templates/js/translated/order.js:3954 +#: templates/js/translated/order.js:3993 msgid "No matching line items" msgstr "" -#: templates/js/translated/order.js:4190 +#: templates/js/translated/order.js:4229 msgid "No matching lines" msgstr "" @@ -9319,12 +9337,12 @@ msgstr "" msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:586 templates/js/translated/part.js:1470 +#: templates/js/translated/part.js:586 templates/js/translated/part.js:1478 #: templates/js/translated/table_filters.js:468 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:596 templates/js/translated/part.js:1482 +#: templates/js/translated/part.js:596 msgid "No stock available" msgstr "" @@ -9356,7 +9374,7 @@ msgstr "" msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1553 +#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1549 msgid "No parts found" msgstr "" @@ -9368,100 +9386,124 @@ msgstr "" msgid "No category" msgstr "" -#: templates/js/translated/part.js:1577 templates/js/translated/part.js:1820 +#: templates/js/translated/part.js:1476 +msgid "No stock" +msgstr "" + +#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816 #: templates/js/translated/stock.js:2347 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:1593 +#: templates/js/translated/part.js:1589 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:1659 +#: templates/js/translated/part.js:1655 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:1664 +#: templates/js/translated/part.js:1660 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:1669 +#: templates/js/translated/part.js:1665 msgid "Select Part Category" msgstr "" -#: templates/js/translated/part.js:1682 +#: templates/js/translated/part.js:1678 msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1839 templates/js/translated/stock.js:2366 +#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2366 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:1918 +#: templates/js/translated/part.js:1914 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:1934 +#: templates/js/translated/part.js:1930 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:1992 +#: templates/js/translated/part.js:1988 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2043 templates/js/translated/stock.js:1299 +#: templates/js/translated/part.js:2039 templates/js/translated/stock.js:1299 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:2044 templates/js/translated/stock.js:1300 +#: templates/js/translated/part.js:2040 templates/js/translated/stock.js:1300 #: templates/js/translated/stock.js:1560 msgid "Delete test result" msgstr "" -#: templates/js/translated/part.js:2050 +#: templates/js/translated/part.js:2046 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2072 +#: templates/js/translated/part.js:2068 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2086 +#: templates/js/translated/part.js:2082 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2111 +#: templates/js/translated/part.js:2107 #, python-brace-format msgid "No ${human_name} information found" msgstr "" -#: templates/js/translated/part.js:2168 +#: templates/js/translated/part.js:2164 #, python-brace-format msgid "Edit ${human_name}" msgstr "" -#: templates/js/translated/part.js:2169 +#: templates/js/translated/part.js:2165 #, python-brace-format msgid "Delete ${human_name}" msgstr "" -#: templates/js/translated/part.js:2283 -msgid "Current Stock" +#: templates/js/translated/part.js:2330 templates/js/translated/part.js:2331 +msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:2316 +#: templates/js/translated/part.js:2333 +msgid "Specified date is in the past" +msgstr "" + +#: templates/js/translated/part.js:2339 +msgid "Speculative" +msgstr "" + +#: templates/js/translated/part.js:2389 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2342 +#: templates/js/translated/part.js:2395 +msgid "Error fetching scheduling information for this part" +msgstr "" + +#: templates/js/translated/part.js:2491 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2412 +#: templates/js/translated/part.js:2507 +msgid "Maximum Quantity" +msgstr "" + +#: templates/js/translated/part.js:2533 +msgid "Minimum Stock Level" +msgstr "" + +#: templates/js/translated/part.js:2627 msgid "Single Price" msgstr "" -#: templates/js/translated/part.js:2431 +#: templates/js/translated/part.js:2646 msgid "Single Price Difference" msgstr "" @@ -10222,10 +10264,6 @@ msgstr "" msgid "Hide/Show pagination" msgstr "" -#: templates/js/translated/tables.js:558 -msgid "Refresh" -msgstr "" - #: templates/js/translated/tables.js:561 msgid "Toggle" msgstr "" diff --git a/InvenTree/locale/ko/LC_MESSAGES/django.po b/InvenTree/locale/ko/LC_MESSAGES/django.po index b9b1ae40f7..0bab29e48c 100644 --- a/InvenTree/locale/ko/LC_MESSAGES/django.po +++ b/InvenTree/locale/ko/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-16 11:53+0000\n" -"PO-Revision-Date: 2022-08-16 21:36\n" +"POT-Creation-Date: 2022-08-18 05:14+0000\n" +"PO-Revision-Date: 2022-08-18 21:39\n" "Last-Translator: \n" "Language-Team: Korean\n" "Language: ko_KR\n" @@ -40,10 +40,10 @@ msgstr "" #: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825 #: stock/serializers.py:924 stock/serializers.py:1056 #: stock/templates/stock/stock_sidebar.html:25 -#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101 -#: templates/js/translated/company.js:964 templates/js/translated/order.js:2104 -#: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753 -#: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102 +#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1099 +#: templates/js/translated/company.js:964 templates/js/translated/order.js:2143 +#: templates/js/translated/order.js:2294 templates/js/translated/order.js:2792 +#: templates/js/translated/order.js:3743 templates/js/translated/order.js:4141 #: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980 msgid "Notes" msgstr "" @@ -211,11 +211,11 @@ msgstr "첨부할 파일을 선택하세요" #: InvenTree/models.py:402 company/models.py:124 company/models.py:276 #: company/models.py:510 order/models.py:84 order/models.py:1245 -#: part/models.py:802 +#: part/models.py:802 part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_base.html:164 #: templates/js/translated/company.js:656 -#: templates/js/translated/company.js:948 templates/js/translated/order.js:2742 -#: templates/js/translated/part.js:1514 +#: templates/js/translated/company.js:948 templates/js/translated/order.js:2781 +#: templates/js/translated/part.js:1510 msgid "Link" msgstr "링크" @@ -235,8 +235,8 @@ msgstr "" #: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665 #: common/models.py:1666 common/models.py:1889 common/models.py:1890 -#: common/models.py:2152 common/models.py:2153 part/models.py:2200 -#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257 +#: common/models.py:2152 common/models.py:2153 part/models.py:2247 +#: part/models.py:2267 plugin/models.py:256 plugin/models.py:257 #: report/templates/report/inventree_test_report_base.html:96 #: templates/js/translated/stock.js:2641 msgid "User" @@ -277,7 +277,7 @@ msgstr "" #: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875 #: company/models.py:358 label/models.py:101 part/models.py:746 -#: part/models.py:2378 plugin/models.py:94 report/models.py:152 +#: part/models.py:2425 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 #: templates/InvenTree/settings/plugin.html:51 #: templates/InvenTree/settings/plugin.html:134 @@ -287,7 +287,7 @@ msgstr "" #: templates/js/translated/company.js:758 #: templates/js/translated/notification.js:71 #: templates/js/translated/part.js:688 templates/js/translated/part.js:840 -#: templates/js/translated/part.js:1906 templates/js/translated/stock.js:2392 +#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2392 msgid "Name" msgstr "이름" @@ -297,19 +297,20 @@ msgstr "이름" #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:87 label/models.py:108 #: order/models.py:82 part/models.py:769 part/templates/part/category.html:80 -#: part/templates/part/part_base.html:167 report/models.py:165 +#: part/templates/part/part_base.html:167 +#: part/templates/part/part_scheduling.html:12 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 #: stock/templates/stock/location.html:108 #: templates/InvenTree/settings/plugin_settings.html:33 -#: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848 -#: templates/js/translated/build.js:2471 templates/js/translated/company.js:409 +#: templates/js/translated/bom.js:553 templates/js/translated/bom.js:846 +#: templates/js/translated/build.js:2504 templates/js/translated/company.js:409 #: templates/js/translated/company.js:667 -#: templates/js/translated/company.js:959 templates/js/translated/order.js:1720 -#: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531 +#: templates/js/translated/company.js:959 templates/js/translated/order.js:1759 +#: templates/js/translated/order.js:1991 templates/js/translated/order.js:2570 #: templates/js/translated/part.js:747 templates/js/translated/part.js:1153 -#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1942 -#: templates/js/translated/part.js:2011 templates/js/translated/stock.js:1743 +#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1938 +#: templates/js/translated/part.js:2007 templates/js/translated/stock.js:1743 #: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478 msgid "Description" msgstr "설명" @@ -323,7 +324,7 @@ msgid "parent" msgstr "" #: InvenTree/models.py:560 InvenTree/models.py:561 -#: templates/js/translated/part.js:1948 templates/js/translated/stock.js:2430 +#: templates/js/translated/part.js:1944 templates/js/translated/stock.js:2430 msgid "Path" msgstr "" @@ -335,7 +336,7 @@ msgstr "" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:55 part/models.py:2699 +#: InvenTree/serializers.py:55 part/models.py:2746 msgid "Must be a valid number" msgstr "유효한 숫자여야 합니다" @@ -541,7 +542,7 @@ msgid "Returned" msgstr "" #: InvenTree/status_codes.py:141 order/models.py:1128 -#: templates/js/translated/order.js:3330 templates/js/translated/order.js:3679 +#: templates/js/translated/order.js:3369 templates/js/translated/order.js:3718 msgid "Shipped" msgstr "" @@ -728,7 +729,7 @@ msgstr "" #: report/templates/report/inventree_build_order_base.html:105 #: templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 -#: templates/js/translated/build.js:731 +#: templates/js/translated/build.js:763 msgid "Build Order" msgstr "" @@ -747,14 +748,14 @@ msgid "Build Order Reference" msgstr "" #: build/models.py:166 order/models.py:240 order/models.py:623 -#: order/models.py:904 part/models.py:2617 +#: order/models.py:904 part/models.py:2664 #: part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 -#: templates/js/translated/bom.js:692 templates/js/translated/bom.js:855 -#: templates/js/translated/build.js:1779 templates/js/translated/order.js:1983 -#: templates/js/translated/order.js:2184 templates/js/translated/order.js:3523 -#: templates/js/translated/order.js:4031 +#: templates/js/translated/bom.js:690 templates/js/translated/bom.js:853 +#: templates/js/translated/build.js:1811 templates/js/translated/order.js:2022 +#: templates/js/translated/order.js:2223 templates/js/translated/order.js:3562 +#: templates/js/translated/order.js:4070 msgid "Reference" msgstr "" @@ -762,7 +763,7 @@ msgstr "" msgid "Brief description of the build" msgstr "" -#: build/models.py:185 build/templates/build/build_base.html:169 +#: build/models.py:185 build/templates/build/build_base.html:172 #: build/templates/build/detail.html:87 msgid "Parent Build" msgstr "" @@ -771,13 +772,13 @@ msgstr "" msgid "BuildOrder to which this build is allocated" msgstr "" -#: build/models.py:191 build/templates/build/build_base.html:77 +#: build/models.py:191 build/templates/build/build_base.html:80 #: build/templates/build/detail.html:29 company/models.py:670 #: order/models.py:1001 order/models.py:1112 order/models.py:1113 -#: part/models.py:343 part/models.py:2146 part/models.py:2161 -#: part/models.py:2180 part/models.py:2198 part/models.py:2297 -#: part/models.py:2417 part/models.py:2507 part/models.py:2592 -#: part/models.py:2868 part/serializers.py:813 +#: part/models.py:343 part/models.py:2193 part/models.py:2208 +#: part/models.py:2227 part/models.py:2245 part/models.py:2344 +#: part/models.py:2464 part/models.py:2554 part/models.py:2639 +#: part/models.py:2915 part/serializers.py:813 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -789,17 +790,17 @@ msgstr "" #: templates/email/build_order_required_stock.html:17 #: templates/email/low_stock_notification.html:16 #: templates/email/overdue_build_order.html:16 -#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:553 -#: templates/js/translated/bom.js:691 templates/js/translated/bom.js:802 -#: templates/js/translated/build.js:1156 templates/js/translated/build.js:1649 -#: templates/js/translated/build.js:2085 templates/js/translated/build.js:2476 +#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:552 +#: templates/js/translated/bom.js:689 templates/js/translated/bom.js:800 +#: templates/js/translated/build.js:1188 templates/js/translated/build.js:1681 +#: templates/js/translated/build.js:2118 templates/js/translated/build.js:2509 #: templates/js/translated/company.js:266 #: templates/js/translated/company.js:496 #: templates/js/translated/company.js:608 -#: templates/js/translated/company.js:868 templates/js/translated/order.js:103 -#: templates/js/translated/order.js:934 templates/js/translated/order.js:1387 -#: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885 -#: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507 +#: templates/js/translated/company.js:868 templates/js/translated/order.js:104 +#: templates/js/translated/order.js:973 templates/js/translated/order.js:1426 +#: templates/js/translated/order.js:1976 templates/js/translated/order.js:2924 +#: templates/js/translated/order.js:3320 templates/js/translated/order.js:3546 #: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210 #: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586 #: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958 @@ -821,7 +822,7 @@ msgid "SalesOrder to which this build is allocated" msgstr "" #: build/models.py:213 build/serializers.py:800 -#: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873 +#: templates/js/translated/build.js:2106 templates/js/translated/order.js:2912 msgid "Source Location" msgstr "" @@ -862,7 +863,7 @@ msgid "Build status code" msgstr "" #: build/models.py:251 build/serializers.py:225 order/serializers.py:447 -#: stock/models.py:662 templates/js/translated/order.js:1247 +#: stock/models.py:662 templates/js/translated/order.js:1286 msgid "Batch Code" msgstr "" @@ -871,7 +872,7 @@ msgid "Batch code for this build output" msgstr "" #: build/models.py:258 order/models.py:86 part/models.py:938 -#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544 +#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2583 msgid "Creation Date" msgstr "" @@ -884,7 +885,7 @@ msgid "Target date for build completion. Build will be overdue after this date." msgstr "" #: build/models.py:266 order/models.py:286 -#: templates/js/translated/build.js:2553 +#: templates/js/translated/build.js:2586 msgid "Completion Date" msgstr "" @@ -892,7 +893,7 @@ msgstr "" msgid "completed by" msgstr "" -#: build/models.py:280 templates/js/translated/build.js:2521 +#: build/models.py:280 templates/js/translated/build.js:2554 msgid "Issued by" msgstr "" @@ -900,12 +901,12 @@ msgstr "" msgid "User who issued this build order" msgstr "" -#: build/models.py:289 build/templates/build/build_base.html:190 +#: build/models.py:289 build/templates/build/build_base.html:193 #: build/templates/build/detail.html:115 order/models.py:100 #: order/templates/order/order_base.html:176 #: order/templates/order/sales_order_base.html:183 part/models.py:942 #: report/templates/report/inventree_build_order_base.html:158 -#: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754 +#: templates/js/translated/build.js:2566 templates/js/translated/order.js:1793 msgid "Responsible" msgstr "" @@ -972,7 +973,7 @@ msgid "Selected stock item not found in BOM" msgstr "" #: build/models.py:1328 stock/templates/stock/item_base.html:177 -#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2455 +#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2488 #: templates/navbar.html:38 msgid "Build" msgstr "" @@ -986,11 +987,11 @@ msgstr "" #: stock/serializers.py:882 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:199 -#: templates/js/translated/build.js:741 templates/js/translated/build.js:746 -#: templates/js/translated/build.js:2087 templates/js/translated/build.js:2638 -#: templates/js/translated/order.js:104 templates/js/translated/order.js:2886 -#: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193 -#: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380 +#: templates/js/translated/build.js:773 templates/js/translated/build.js:778 +#: templates/js/translated/build.js:2120 templates/js/translated/build.js:2671 +#: templates/js/translated/order.js:105 templates/js/translated/order.js:2925 +#: templates/js/translated/order.js:3227 templates/js/translated/order.js:3232 +#: templates/js/translated/order.js:3327 templates/js/translated/order.js:3419 #: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752 #: templates/js/translated/stock.js:2577 msgid "Stock Item" @@ -1001,13 +1002,13 @@ msgid "Source stock item" msgstr "" #: build/models.py:1358 build/serializers.py:193 -#: build/templates/build/build_base.html:82 +#: build/templates/build/build_base.html:85 #: build/templates/build/detail.html:34 common/models.py:1697 #: company/templates/company/supplier_part.html:279 order/models.py:897 #: order/models.py:1423 order/serializers.py:1155 #: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40 -#: part/models.py:2608 part/templates/part/detail.html:937 -#: part/templates/part/detail.html:1023 +#: part/models.py:2655 part/templates/part/detail.html:951 +#: part/templates/part/detail.html:1037 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 #: report/templates/report/inventree_build_order_base.html:113 @@ -1018,20 +1019,20 @@ msgstr "" #: stock/serializers.py:293 stock/templates/stock/item_base.html:292 #: stock/templates/stock/item_base.html:300 #: templates/email/build_order_completed.html:18 -#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:693 -#: templates/js/translated/bom.js:863 templates/js/translated/build.js:426 -#: templates/js/translated/build.js:578 templates/js/translated/build.js:768 -#: templates/js/translated/build.js:1178 templates/js/translated/build.js:1675 -#: templates/js/translated/build.js:2088 +#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:691 +#: templates/js/translated/bom.js:861 templates/js/translated/build.js:458 +#: templates/js/translated/build.js:610 templates/js/translated/build.js:800 +#: templates/js/translated/build.js:1210 templates/js/translated/build.js:1707 +#: templates/js/translated/build.js:2121 #: templates/js/translated/model_renderers.js:120 -#: templates/js/translated/order.js:120 templates/js/translated/order.js:937 -#: templates/js/translated/order.js:1989 templates/js/translated/order.js:2190 -#: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207 -#: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386 -#: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037 -#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2156 -#: templates/js/translated/part.js:2387 templates/js/translated/part.js:2421 -#: templates/js/translated/part.js:2499 templates/js/translated/stock.js:458 +#: templates/js/translated/order.js:121 templates/js/translated/order.js:976 +#: templates/js/translated/order.js:2028 templates/js/translated/order.js:2229 +#: templates/js/translated/order.js:2926 templates/js/translated/order.js:3246 +#: templates/js/translated/order.js:3333 templates/js/translated/order.js:3425 +#: templates/js/translated/order.js:3568 templates/js/translated/order.js:4076 +#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2152 +#: templates/js/translated/part.js:2602 templates/js/translated/part.js:2636 +#: templates/js/translated/part.js:2714 templates/js/translated/stock.js:458 #: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782 #: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711 msgid "Quantity" @@ -1050,7 +1051,7 @@ msgid "Destination stock item" msgstr "" #: build/serializers.py:138 build/serializers.py:674 -#: templates/js/translated/build.js:1166 +#: templates/js/translated/build.js:1198 msgid "Build Output" msgstr "" @@ -1090,7 +1091,7 @@ msgid "Integer quantity required, as the bill of materials contains trackable pa msgstr "" #: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159 -#: stock/serializers.py:311 templates/js/translated/order.js:1258 +#: stock/serializers.py:311 templates/js/translated/order.js:1297 #: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459 msgid "Serial Numbers" msgstr "일련번호" @@ -1120,10 +1121,10 @@ msgstr "" #: stock/serializers.py:917 stock/serializers.py:1150 #: stock/templates/stock/item_base.html:390 #: templates/js/translated/barcode.js:436 -#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753 -#: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285 -#: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305 -#: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394 +#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:785 +#: templates/js/translated/build.js:1719 templates/js/translated/order.js:1324 +#: templates/js/translated/order.js:3239 templates/js/translated/order.js:3344 +#: templates/js/translated/order.js:3352 templates/js/translated/order.js:3433 #: templates/js/translated/part.js:181 templates/js/translated/stock.js:588 #: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960 #: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518 @@ -1134,12 +1135,12 @@ msgstr "위치" msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:373 build/templates/build/build_base.html:142 +#: build/serializers.py:373 build/templates/build/build_base.html:145 #: build/templates/build/detail.html:62 order/models.py:642 #: order/serializers.py:465 stock/templates/stock/item_base.html:423 -#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505 -#: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724 -#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829 +#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2538 +#: templates/js/translated/order.js:1431 templates/js/translated/order.js:1763 +#: templates/js/translated/order.js:2575 templates/js/translated/stock.js:1829 #: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727 msgid "Status" msgstr "상태" @@ -1196,7 +1197,7 @@ msgstr "" msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:522 templates/js/translated/build.js:195 +#: build/serializers.py:522 templates/js/translated/build.js:227 msgid "Required stock has not been fully allocated" msgstr "" @@ -1208,7 +1209,7 @@ msgstr "" msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:538 templates/js/translated/build.js:199 +#: build/serializers.py:538 templates/js/translated/build.js:231 msgid "Required build quantity has not been completed" msgstr "" @@ -1216,8 +1217,8 @@ msgstr "" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726 -#: part/models.py:2860 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2773 +#: part/models.py:2907 msgid "BOM Item" msgstr "" @@ -1322,66 +1323,70 @@ msgid "Cancel Build" msgstr "" #: build/templates/build/build_base.html:59 +msgid "Duplicate Build" +msgstr "" + +#: build/templates/build/build_base.html:62 msgid "Delete Build" msgstr "" -#: build/templates/build/build_base.html:64 -#: build/templates/build/build_base.html:65 +#: build/templates/build/build_base.html:67 +#: build/templates/build/build_base.html:68 msgid "Complete Build" msgstr "" -#: build/templates/build/build_base.html:87 +#: build/templates/build/build_base.html:90 msgid "Build Description" msgstr "" -#: build/templates/build/build_base.html:95 +#: build/templates/build/build_base.html:98 msgid "No build outputs have been created for this build order" msgstr "" -#: build/templates/build/build_base.html:101 +#: build/templates/build/build_base.html:104 #, python-format msgid "This Build Order is allocated to Sales Order %(link)s" msgstr "" -#: build/templates/build/build_base.html:108 +#: build/templates/build/build_base.html:111 #, python-format msgid "This Build Order is a child of Build Order %(link)s" msgstr "" -#: build/templates/build/build_base.html:115 +#: build/templates/build/build_base.html:118 msgid "Build Order is ready to mark as completed" msgstr "" -#: build/templates/build/build_base.html:120 +#: build/templates/build/build_base.html:123 msgid "Build Order cannot be completed as outstanding outputs remain" msgstr "" -#: build/templates/build/build_base.html:125 +#: build/templates/build/build_base.html:128 msgid "Required build quantity has not yet been completed" msgstr "" -#: build/templates/build/build_base.html:130 +#: build/templates/build/build_base.html:133 msgid "Stock has not been fully allocated to this Build Order" msgstr "" -#: build/templates/build/build_base.html:151 +#: build/templates/build/build_base.html:154 #: build/templates/build/detail.html:131 order/models.py:910 #: order/templates/order/order_base.html:162 #: order/templates/order/sales_order_base.html:164 #: report/templates/report/inventree_build_order_base.html:125 -#: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741 -#: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552 -#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042 +#: templates/js/translated/build.js:2578 templates/js/translated/order.js:1780 +#: templates/js/translated/order.js:2090 templates/js/translated/order.js:2591 +#: templates/js/translated/order.js:3631 templates/js/translated/part.js:1042 msgid "Target Date" msgstr "" -#: build/templates/build/build_base.html:156 +#: build/templates/build/build_base.html:159 #, python-format msgid "This build was due on %(target)s" msgstr "" -#: build/templates/build/build_base.html:156 -#: build/templates/build/build_base.html:201 +#: build/templates/build/build_base.html:159 +#: build/templates/build/build_base.html:204 #: order/templates/order/order_base.html:98 #: order/templates/order/sales_order_base.html:94 #: templates/js/translated/table_filters.js:320 @@ -1390,14 +1395,14 @@ msgstr "" msgid "Overdue" msgstr "" -#: build/templates/build/build_base.html:163 +#: build/templates/build/build_base.html:166 #: build/templates/build/detail.html:67 build/templates/build/detail.html:142 #: order/templates/order/sales_order_base.html:171 #: templates/js/translated/table_filters.js:400 msgid "Completed" msgstr "" -#: build/templates/build/build_base.html:176 +#: build/templates/build/build_base.html:179 #: build/templates/build/detail.html:94 order/models.py:1105 #: order/models.py:1199 order/models.py:1330 #: order/templates/order/sales_order_base.html:9 @@ -1406,17 +1411,17 @@ msgstr "" #: report/templates/report/inventree_so_report.html:77 #: stock/templates/stock/item_base.html:370 #: templates/email/overdue_sales_order.html:15 -#: templates/js/translated/order.js:2498 +#: templates/js/translated/order.js:2537 msgid "Sales Order" msgstr "" -#: build/templates/build/build_base.html:183 +#: build/templates/build/build_base.html:186 #: build/templates/build/detail.html:108 #: report/templates/report/inventree_build_order_base.html:152 msgid "Issued By" msgstr "" -#: build/templates/build/build_base.html:245 +#: build/templates/build/build_base.html:256 msgid "Delete Build Order" msgstr "" @@ -1433,7 +1438,7 @@ msgid "Stock can be taken from any available location." msgstr "" #: build/templates/build/detail.html:49 order/models.py:1023 -#: templates/js/translated/order.js:1393 templates/js/translated/order.js:2093 +#: templates/js/translated/order.js:1432 templates/js/translated/order.js:2132 msgid "Destination" msgstr "" @@ -1447,7 +1452,7 @@ msgstr "" #: build/templates/build/detail.html:80 #: stock/templates/stock/item_base.html:170 -#: templates/js/translated/build.js:1182 +#: templates/js/translated/build.js:1214 #: templates/js/translated/model_renderers.js:124 #: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843 #: templates/js/translated/stock.js:2734 @@ -1459,7 +1464,7 @@ msgstr "" #: build/templates/build/detail.html:126 #: order/templates/order/order_base.html:149 #: order/templates/order/sales_order_base.html:158 -#: templates/js/translated/build.js:2513 +#: templates/js/translated/build.js:2546 msgid "Created" msgstr "" @@ -1479,7 +1484,7 @@ msgstr "" msgid "Allocate Stock to Build" msgstr "" -#: build/templates/build/detail.html:176 templates/js/translated/build.js:1901 +#: build/templates/build/detail.html:176 templates/js/translated/build.js:1934 msgid "Unallocate stock" msgstr "" @@ -1510,7 +1515,7 @@ msgstr "" #: build/templates/build/detail.html:187 #: company/templates/company/detail.html:37 #: company/templates/company/detail.html:85 -#: part/templates/part/category.html:183 templates/js/translated/order.js:977 +#: part/templates/part/category.html:183 templates/js/translated/order.js:1016 msgid "Order Parts" msgstr "" @@ -1582,7 +1587,7 @@ msgstr "" #: order/templates/order/po_sidebar.html:9 #: order/templates/order/purchase_order_detail.html:82 #: order/templates/order/sales_order_detail.html:135 -#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:207 +#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:212 #: part/templates/part/part_sidebar.html:57 stock/templates/stock/item.html:117 #: stock/templates/stock/stock_sidebar.html:23 msgid "Attachments" @@ -1600,7 +1605,7 @@ msgstr "" msgid "All untracked stock items have been allocated" msgstr "" -#: build/templates/build/index.html:18 part/templates/part/detail.html:313 +#: build/templates/build/index.html:18 part/templates/part/detail.html:318 msgid "New Build Order" msgstr "" @@ -1845,7 +1850,7 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:951 part/models.py:2419 report/models.py:158 +#: common/models.py:951 part/models.py:2466 report/models.py:158 #: templates/js/translated/table_filters.js:38 #: templates/js/translated/table_filters.js:484 msgid "Template" @@ -1855,7 +1860,7 @@ msgstr "" msgid "Parts are templates by default" msgstr "" -#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448 +#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1446 #: templates/js/translated/table_filters.js:176 #: templates/js/translated/table_filters.js:447 msgid "Assembly" @@ -2591,7 +2596,7 @@ msgstr "" #: common/models.py:1705 company/serializers.py:366 #: company/templates/company/supplier_part.html:284 order/models.py:938 -#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2161 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2157 msgid "Price" msgstr "" @@ -2830,7 +2835,7 @@ msgstr "" #: company/models.py:248 company/models.py:481 stock/models.py:598 #: stock/serializers.py:87 stock/templates/stock/item_base.html:148 -#: templates/js/translated/bom.js:543 +#: templates/js/translated/bom.js:542 msgid "Base Part" msgstr "" @@ -2859,7 +2864,7 @@ msgstr "" #: templates/js/translated/company.js:269 #: templates/js/translated/company.js:497 #: templates/js/translated/company.js:649 -#: templates/js/translated/company.js:937 templates/js/translated/order.js:1971 +#: templates/js/translated/company.js:937 templates/js/translated/order.js:2010 #: templates/js/translated/part.js:247 templates/js/translated/part.js:1027 msgid "MPN" msgstr "" @@ -2899,7 +2904,7 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:372 part/models.py:888 part/models.py:2386 +#: company/models.py:372 part/models.py:888 part/models.py:2433 #: part/templates/part/part_base.html:280 #: templates/InvenTree/settings/settings.html:352 #: templates/js/translated/company.js:770 templates/js/translated/part.js:855 @@ -2921,7 +2926,7 @@ msgstr "" #: templates/email/overdue_purchase_order.html:16 #: templates/js/translated/company.js:268 #: templates/js/translated/company.js:401 -#: templates/js/translated/company.js:893 templates/js/translated/order.js:1707 +#: templates/js/translated/company.js:893 templates/js/translated/order.js:1746 #: templates/js/translated/part.js:217 templates/js/translated/part.js:995 #: templates/js/translated/table_filters.js:423 msgid "Supplier" @@ -2933,7 +2938,7 @@ msgstr "" #: company/models.py:497 company/templates/company/supplier_part.html:118 #: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267 -#: templates/js/translated/order.js:1958 templates/js/translated/part.js:228 +#: templates/js/translated/order.js:1997 templates/js/translated/part.js:228 #: templates/js/translated/part.js:1013 msgid "SKU" msgstr "" @@ -2955,17 +2960,17 @@ msgid "Supplier part description" msgstr "" #: company/models.py:522 company/templates/company/supplier_part.html:146 -#: part/models.py:2620 part/templates/part/upload_bom.html:59 +#: part/models.py:2667 part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401 msgid "Note" msgstr "" -#: company/models.py:526 part/models.py:1742 +#: company/models.py:526 part/models.py:1789 msgid "base cost" msgstr "" -#: company/models.py:526 part/models.py:1742 +#: company/models.py:526 part/models.py:1789 msgid "Minimum charge (e.g. stocking fee)" msgstr "" @@ -2979,7 +2984,7 @@ msgstr "" msgid "Part packaging" msgstr "" -#: company/models.py:530 part/models.py:1744 +#: company/models.py:530 part/models.py:1791 msgid "multiple" msgstr "" @@ -2990,8 +2995,8 @@ msgstr "" #: company/models.py:538 company/templates/company/supplier_part.html:94 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789 -#: templates/js/translated/build.js:2645 templates/js/translated/company.js:979 +#: templates/js/translated/bom.js:911 templates/js/translated/build.js:1821 +#: templates/js/translated/build.js:2678 templates/js/translated/company.js:979 #: templates/js/translated/part.js:600 templates/js/translated/part.js:603 #: templates/js/translated/table_filters.js:186 msgid "Available" @@ -3028,7 +3033,7 @@ msgid "Company" msgstr "회사" #: company/templates/company/company_base.html:22 -#: templates/js/translated/order.js:540 +#: templates/js/translated/order.js:579 msgid "Create Purchase Order" msgstr "" @@ -3069,7 +3074,7 @@ msgstr "URL에서 이미지 다운로드" #: stock/models.py:644 stock/serializers.py:811 #: stock/templates/stock/item_base.html:401 #: templates/email/overdue_sales_order.html:16 -#: templates/js/translated/company.js:393 templates/js/translated/order.js:2513 +#: templates/js/translated/company.js:393 templates/js/translated/order.js:2552 #: templates/js/translated/stock.js:2559 #: templates/js/translated/table_filters.js:427 msgid "Customer" @@ -3105,7 +3110,7 @@ msgstr "" #: company/templates/company/detail.html:19 #: company/templates/company/manufacturer_part.html:123 -#: part/templates/part/detail.html:354 +#: part/templates/part/detail.html:359 msgid "New Supplier Part" msgstr "" @@ -3134,7 +3139,7 @@ msgstr "" msgid "Create new manufacturer part" msgstr "" -#: company/templates/company/detail.html:66 part/templates/part/detail.html:384 +#: company/templates/company/detail.html:66 part/templates/part/detail.html:389 msgid "New Manufacturer Part" msgstr "" @@ -3148,7 +3153,7 @@ msgstr "" #: order/templates/order/order_base.html:13 #: order/templates/order/purchase_orders.html:8 #: order/templates/order/purchase_orders.html:12 -#: part/templates/part/detail.html:79 part/templates/part/part_sidebar.html:37 +#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:37 #: templates/InvenTree/index.html:252 templates/InvenTree/search.html:198 #: templates/InvenTree/settings/sidebar.html:49 #: templates/js/translated/search.js:275 templates/navbar.html:50 @@ -3171,7 +3176,7 @@ msgstr "" #: order/templates/order/sales_order_base.html:13 #: order/templates/order/sales_orders.html:8 #: order/templates/order/sales_orders.html:15 -#: part/templates/part/detail.html:102 part/templates/part/part_sidebar.html:41 +#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:41 #: templates/InvenTree/index.html:283 templates/InvenTree/search.html:218 #: templates/InvenTree/settings/sidebar.html:51 #: templates/js/translated/search.js:299 templates/navbar.html:61 @@ -3190,7 +3195,7 @@ msgid "New Sales Order" msgstr "" #: company/templates/company/detail.html:168 -#: templates/js/translated/build.js:1660 +#: templates/js/translated/build.js:1692 msgid "Assigned Stock" msgstr "" @@ -3206,7 +3211,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:35 #: company/templates/company/supplier_part.html:186 -#: part/templates/part/detail.html:82 part/templates/part/part_base.html:80 +#: part/templates/part/detail.html:87 part/templates/part/part_base.html:80 msgid "Order part" msgstr "" @@ -3237,13 +3242,13 @@ msgid "Suppliers" msgstr "" #: company/templates/company/manufacturer_part.html:136 -#: part/templates/part/detail.html:365 +#: part/templates/part/detail.html:370 msgid "Delete supplier parts" msgstr "" #: company/templates/company/manufacturer_part.html:136 #: company/templates/company/manufacturer_part.html:183 -#: part/templates/part/detail.html:366 part/templates/part/detail.html:396 +#: part/templates/part/detail.html:371 part/templates/part/detail.html:401 #: templates/js/translated/forms.js:453 templates/js/translated/helpers.js:33 #: users/models.py:220 msgid "Delete" @@ -3252,12 +3257,12 @@ msgstr "삭제" #: company/templates/company/manufacturer_part.html:166 #: company/templates/company/manufacturer_part_sidebar.html:5 #: part/templates/part/category_sidebar.html:19 -#: part/templates/part/detail.html:181 part/templates/part/part_sidebar.html:8 +#: part/templates/part/detail.html:186 part/templates/part/part_sidebar.html:8 msgid "Parameters" msgstr "" #: company/templates/company/manufacturer_part.html:170 -#: part/templates/part/detail.html:186 +#: part/templates/part/detail.html:191 #: templates/InvenTree/settings/category.html:12 #: templates/InvenTree/settings/part.html:68 msgid "New Parameter" @@ -3268,7 +3273,7 @@ msgid "Delete parameters" msgstr "" #: company/templates/company/manufacturer_part.html:245 -#: part/templates/part/detail.html:826 +#: part/templates/part/detail.html:840 msgid "Add Parameter" msgstr "" @@ -3291,7 +3296,7 @@ msgstr "" #: company/templates/company/supplier_part.html:7 #: company/templates/company/supplier_part.html:24 stock/models.py:607 #: stock/templates/stock/item_base.html:238 -#: templates/js/translated/company.js:909 templates/js/translated/order.js:935 +#: templates/js/translated/company.js:909 templates/js/translated/order.js:974 #: templates/js/translated/stock.js:1933 msgid "Supplier Part" msgstr "" @@ -3303,7 +3308,7 @@ msgstr "" #: company/templates/company/supplier_part.html:40 #: company/templates/company/supplier_part.html:41 #: company/templates/company/supplier_part.html:187 -#: part/templates/part/detail.html:83 +#: part/templates/part/detail.html:88 msgid "Order Part" msgstr "" @@ -3358,7 +3363,7 @@ msgstr "" #: company/templates/company/supplier_part.html:212 #: company/templates/company/supplier_part.html:326 -#: part/templates/part/prices.html:276 templates/js/translated/part.js:2233 +#: part/templates/part/prices.html:276 templates/js/translated/part.js:2229 msgid "Add Price Break" msgstr "" @@ -3367,12 +3372,12 @@ msgid "No price break information found" msgstr "" #: company/templates/company/supplier_part.html:252 -#: templates/js/translated/part.js:2243 +#: templates/js/translated/part.js:2239 msgid "Delete Price Break" msgstr "" #: company/templates/company/supplier_part.html:266 -#: templates/js/translated/part.js:2257 +#: templates/js/translated/part.js:2253 msgid "Edit Price Break" msgstr "" @@ -3398,10 +3403,9 @@ msgstr "" #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:151 #: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751 -#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460 -#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754 -#: templates/navbar.html:31 +#: templates/js/translated/part.js:751 templates/js/translated/part.js:1299 +#: templates/js/translated/part.js:1460 templates/js/translated/stock.js:959 +#: templates/js/translated/stock.js:1754 templates/navbar.html:31 msgid "Stock" msgstr "" @@ -3554,7 +3558,7 @@ msgid "Company from which the items are being ordered" msgstr "" #: order/models.py:262 order/templates/order/order_base.html:124 -#: templates/js/translated/order.js:1716 +#: templates/js/translated/order.js:1755 msgid "Supplier Reference" msgstr "" @@ -3611,7 +3615,7 @@ msgid "Target date for order completion. Order will be overdue after this date." msgstr "" #: order/models.py:652 order/models.py:1204 -#: templates/js/translated/order.js:2560 templates/js/translated/order.js:2722 +#: templates/js/translated/order.js:2599 templates/js/translated/order.js:2761 msgid "Shipment Date" msgstr "" @@ -3673,7 +3677,7 @@ msgstr "" #: order/models.py:983 order/models.py:1063 order/models.py:1104 #: order/models.py:1198 order/models.py:1330 -#: templates/js/translated/order.js:3178 +#: templates/js/translated/order.js:3217 msgid "Order" msgstr "" @@ -3683,7 +3687,7 @@ msgstr "" #: report/templates/report/inventree_po_report.html:76 #: stock/templates/stock/item_base.html:184 #: templates/email/overdue_purchase_order.html:15 -#: templates/js/translated/order.js:936 templates/js/translated/order.js:1691 +#: templates/js/translated/order.js:975 templates/js/translated/order.js:1730 #: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913 #: templates/js/translated/stock.js:2540 msgid "Purchase Order" @@ -3694,7 +3698,7 @@ msgid "Supplier part" msgstr "" #: order/models.py:1009 order/templates/order/order_base.html:169 -#: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073 +#: templates/js/translated/order.js:1429 templates/js/translated/order.js:2112 #: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091 #: templates/js/translated/table_filters.js:338 msgid "Received" @@ -3880,11 +3884,11 @@ msgstr "" msgid "Select destination location for received items" msgstr "" -#: order/serializers.py:448 templates/js/translated/order.js:1248 +#: order/serializers.py:448 templates/js/translated/order.js:1287 msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:456 templates/js/translated/order.js:1259 +#: order/serializers.py:456 templates/js/translated/order.js:1298 msgid "Enter serial numbers for incoming stock items" msgstr "" @@ -4061,10 +4065,6 @@ msgstr "" msgid "Total cost could not be calculated" msgstr "" -#: order/templates/order/order_base.html:243 -msgid "Edit Purchase Order" -msgstr "" - #: order/templates/order/order_wizard/match_parts.html:12 #: part/templates/part/import_wizard/ajax_match_references.html:12 #: part/templates/part/import_wizard/match_references.html:12 @@ -4091,10 +4091,10 @@ msgstr "" #: part/templates/part/import_wizard/ajax_match_fields.html:64 #: part/templates/part/import_wizard/ajax_match_references.html:42 #: part/templates/part/import_wizard/match_references.html:49 -#: templates/js/translated/bom.js:77 templates/js/translated/build.js:431 -#: templates/js/translated/build.js:583 templates/js/translated/build.js:1974 -#: templates/js/translated/order.js:884 templates/js/translated/order.js:1337 -#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625 +#: templates/js/translated/bom.js:77 templates/js/translated/build.js:463 +#: templates/js/translated/build.js:615 templates/js/translated/build.js:2007 +#: templates/js/translated/order.js:923 templates/js/translated/order.js:1376 +#: templates/js/translated/order.js:2836 templates/js/translated/stock.js:625 #: templates/js/translated/stock.js:793 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" @@ -4130,7 +4130,7 @@ msgstr "" #: order/templates/order/purchase_order_detail.html:26 #: order/templates/order/sales_order_detail.html:22 #: order/templates/order/sales_order_detail.html:255 -#: templates/js/translated/order.js:557 +#: templates/js/translated/order.js:596 msgid "Add Line Item" msgstr "" @@ -4176,7 +4176,7 @@ msgid "Print packing list" msgstr "" #: order/templates/order/sales_order_base.html:60 -#: templates/js/translated/order.js:229 +#: templates/js/translated/order.js:230 msgid "Complete Shipments" msgstr "" @@ -4190,7 +4190,7 @@ msgid "This Sales Order has not been fully allocated" msgstr "" #: order/templates/order/sales_order_base.html:123 -#: templates/js/translated/order.js:2526 +#: templates/js/translated/order.js:2565 msgid "Customer Reference" msgstr "" @@ -4214,8 +4214,8 @@ msgid "Pending Shipments" msgstr "" #: order/templates/order/sales_order_detail.html:72 -#: templates/attachment_table.html:6 templates/js/translated/bom.js:1110 -#: templates/js/translated/build.js:1882 +#: templates/attachment_table.html:6 templates/js/translated/bom.js:1108 +#: templates/js/translated/build.js:1915 msgid "Actions" msgstr "" @@ -4257,35 +4257,35 @@ msgstr "" msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:584 +#: part/api.py:621 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:704 +#: part/api.py:758 msgid "Valid" msgstr "" -#: part/api.py:705 +#: part/api.py:759 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:711 +#: part/api.py:765 msgid "This option must be selected" msgstr "" -#: part/api.py:1134 +#: part/api.py:1188 msgid "Must be greater than zero" msgstr "" -#: part/api.py:1138 +#: part/api.py:1192 msgid "Must be a valid quantity" msgstr "" -#: part/api.py:1153 +#: part/api.py:1207 msgid "Specify location for initial part stock" msgstr "" -#: part/api.py:1184 part/api.py:1188 part/api.py:1203 part/api.py:1207 +#: part/api.py:1238 part/api.py:1242 part/api.py:1257 part/api.py:1261 msgid "This field is required" msgstr "" @@ -4299,14 +4299,14 @@ msgid "Total Stock" msgstr "" #: part/bom.py:129 part/templates/part/part_base.html:189 -#: templates/js/translated/order.js:3618 +#: templates/js/translated/order.js:3657 msgid "Available Stock" msgstr "" #: part/bom.py:130 part/templates/part/part_base.html:207 -#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590 +#: templates/js/translated/bom.js:945 templates/js/translated/part.js:590 #: templates/js/translated/part.js:610 templates/js/translated/part.js:1302 -#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490 +#: templates/js/translated/part.js:1483 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "" @@ -4335,7 +4335,7 @@ msgstr "" msgid "Icon (optional)" msgstr "" -#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16 +#: part/models.py:122 part/models.py:2509 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" @@ -4352,7 +4352,7 @@ msgstr "" #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82 #: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:1955 templates/js/translated/search.js:144 +#: templates/js/translated/part.js:1951 templates/js/translated/search.js:144 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "" @@ -4382,7 +4382,7 @@ msgstr "" msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:745 part/models.py:2516 +#: part/models.py:745 part/models.py:2563 msgid "Part name" msgstr "" @@ -4415,11 +4415,11 @@ msgstr "" msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:783 part/models.py:2218 part/models.py:2461 +#: part/models.py:783 part/models.py:2265 part/models.py:2508 #: part/templates/part/part_base.html:257 #: templates/InvenTree/settings/settings.html:232 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1668 +#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1664 msgid "Category" msgstr "" @@ -4530,245 +4530,245 @@ msgstr "" msgid "Creation User" msgstr "" -#: part/models.py:1744 +#: part/models.py:1791 msgid "Sell multiple" msgstr "" -#: part/models.py:2265 +#: part/models.py:2312 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:2282 +#: part/models.py:2329 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:2302 templates/js/translated/part.js:2006 +#: part/models.py:2349 templates/js/translated/part.js:2002 #: templates/js/translated/stock.js:1340 msgid "Test Name" msgstr "" -#: part/models.py:2303 +#: part/models.py:2350 msgid "Enter a name for the test" msgstr "" -#: part/models.py:2308 +#: part/models.py:2355 msgid "Test Description" msgstr "" -#: part/models.py:2309 +#: part/models.py:2356 msgid "Enter description for this test" msgstr "" -#: part/models.py:2314 templates/js/translated/part.js:2015 +#: part/models.py:2361 templates/js/translated/part.js:2011 #: templates/js/translated/table_filters.js:302 msgid "Required" msgstr "" -#: part/models.py:2315 +#: part/models.py:2362 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:2320 templates/js/translated/part.js:2023 +#: part/models.py:2367 templates/js/translated/part.js:2019 msgid "Requires Value" msgstr "" -#: part/models.py:2321 +#: part/models.py:2368 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:2326 templates/js/translated/part.js:2030 +#: part/models.py:2373 templates/js/translated/part.js:2026 msgid "Requires Attachment" msgstr "" -#: part/models.py:2327 +#: part/models.py:2374 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:2335 +#: part/models.py:2382 #, python-brace-format msgid "Illegal character in template name ({c})" msgstr "" -#: part/models.py:2371 +#: part/models.py:2418 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:2379 +#: part/models.py:2426 msgid "Parameter Name" msgstr "" -#: part/models.py:2386 +#: part/models.py:2433 msgid "Parameter Units" msgstr "" -#: part/models.py:2417 +#: part/models.py:2464 msgid "Parent Part" msgstr "" -#: part/models.py:2419 part/models.py:2467 part/models.py:2468 +#: part/models.py:2466 part/models.py:2514 part/models.py:2515 #: templates/InvenTree/settings/settings.html:227 msgid "Parameter Template" msgstr "" -#: part/models.py:2421 +#: part/models.py:2468 msgid "Data" msgstr "데이터" -#: part/models.py:2421 +#: part/models.py:2468 msgid "Parameter Value" msgstr "" -#: part/models.py:2472 templates/InvenTree/settings/settings.html:236 +#: part/models.py:2519 templates/InvenTree/settings/settings.html:236 msgid "Default Value" msgstr "" -#: part/models.py:2473 +#: part/models.py:2520 msgid "Default Parameter Value" msgstr "" -#: part/models.py:2508 +#: part/models.py:2555 msgid "Part ID or part name" msgstr "" -#: part/models.py:2511 templates/js/translated/model_renderers.js:212 +#: part/models.py:2558 templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "" -#: part/models.py:2512 +#: part/models.py:2559 msgid "Unique part ID value" msgstr "" -#: part/models.py:2515 +#: part/models.py:2562 msgid "Part Name" msgstr "" -#: part/models.py:2519 +#: part/models.py:2566 msgid "Part IPN" msgstr "" -#: part/models.py:2520 +#: part/models.py:2567 msgid "Part IPN value" msgstr "" -#: part/models.py:2523 +#: part/models.py:2570 msgid "Level" msgstr "" -#: part/models.py:2524 +#: part/models.py:2571 msgid "BOM level" msgstr "" -#: part/models.py:2593 +#: part/models.py:2640 msgid "Select parent part" msgstr "" -#: part/models.py:2601 +#: part/models.py:2648 msgid "Sub part" msgstr "" -#: part/models.py:2602 +#: part/models.py:2649 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:2608 +#: part/models.py:2655 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:2610 part/templates/part/upload_bom.html:58 -#: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999 +#: part/models.py:2657 part/templates/part/upload_bom.html:58 +#: templates/js/translated/bom.js:872 templates/js/translated/bom.js:997 #: templates/js/translated/table_filters.js:100 msgid "Optional" msgstr "" -#: part/models.py:2610 +#: part/models.py:2657 msgid "This BOM item is optional" msgstr "" -#: part/models.py:2613 part/templates/part/upload_bom.html:55 +#: part/models.py:2660 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:2614 +#: part/models.py:2661 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:2617 +#: part/models.py:2664 msgid "BOM item reference" msgstr "" -#: part/models.py:2620 +#: part/models.py:2667 msgid "BOM item notes" msgstr "" -#: part/models.py:2622 +#: part/models.py:2669 msgid "Checksum" msgstr "" -#: part/models.py:2622 +#: part/models.py:2669 msgid "BOM line checksum" msgstr "" -#: part/models.py:2626 part/templates/part/upload_bom.html:57 -#: templates/js/translated/bom.js:1016 +#: part/models.py:2673 part/templates/part/upload_bom.html:57 +#: templates/js/translated/bom.js:1014 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:96 msgid "Inherited" msgstr "" -#: part/models.py:2627 +#: part/models.py:2674 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:2632 part/templates/part/upload_bom.html:56 -#: templates/js/translated/bom.js:1008 +#: part/models.py:2679 part/templates/part/upload_bom.html:56 +#: templates/js/translated/bom.js:1006 msgid "Allow Variants" msgstr "" -#: part/models.py:2633 +#: part/models.py:2680 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:2711 stock/models.py:468 +#: part/models.py:2758 stock/models.py:468 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:2720 part/models.py:2722 +#: part/models.py:2767 part/models.py:2769 msgid "Sub part must be specified" msgstr "" -#: part/models.py:2827 +#: part/models.py:2874 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:2848 +#: part/models.py:2895 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:2861 +#: part/models.py:2908 msgid "Parent BOM item" msgstr "" -#: part/models.py:2869 +#: part/models.py:2916 msgid "Substitute part" msgstr "" -#: part/models.py:2884 +#: part/models.py:2931 msgid "Part 1" msgstr "" -#: part/models.py:2888 +#: part/models.py:2935 msgid "Part 2" msgstr "" -#: part/models.py:2888 +#: part/models.py:2935 msgid "Select Related Part" msgstr "" -#: part/models.py:2906 +#: part/models.py:2953 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:2910 +#: part/models.py:2957 msgid "Duplicate relationship already exists" msgstr "" @@ -4876,7 +4876,7 @@ msgstr "" msgid "The BOM for %(part)s has not been validated." msgstr "" -#: part/templates/part/bom.html:30 part/templates/part/detail.html:264 +#: part/templates/part/bom.html:30 part/templates/part/detail.html:269 msgid "BOM actions" msgstr "" @@ -4945,8 +4945,8 @@ msgstr "" msgid "New Part" msgstr "" -#: part/templates/part/category.html:174 part/templates/part/detail.html:363 -#: part/templates/part/detail.html:394 +#: part/templates/part/category.html:174 part/templates/part/detail.html:368 +#: part/templates/part/detail.html:399 msgid "Options" msgstr "" @@ -5014,138 +5014,146 @@ msgstr "" msgid "Part Stock" msgstr "" -#: part/templates/part/detail.html:54 -msgid "Part Test Templates" +#: part/templates/part/detail.html:44 +msgid "Refresh scheduling data" +msgstr "" + +#: part/templates/part/detail.html:45 templates/js/translated/tables.js:558 +msgid "Refresh" msgstr "" #: part/templates/part/detail.html:59 +msgid "Part Test Templates" +msgstr "" + +#: part/templates/part/detail.html:64 msgid "Add Test Template" msgstr "" -#: part/templates/part/detail.html:116 stock/templates/stock/item.html:53 +#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53 msgid "Sales Order Allocations" msgstr "" -#: part/templates/part/detail.html:138 +#: part/templates/part/detail.html:143 msgid "Part Notes" msgstr "" -#: part/templates/part/detail.html:153 +#: part/templates/part/detail.html:158 msgid "Part Variants" msgstr "" -#: part/templates/part/detail.html:157 +#: part/templates/part/detail.html:162 msgid "Create new variant" msgstr "" -#: part/templates/part/detail.html:158 +#: part/templates/part/detail.html:163 msgid "New Variant" msgstr "" -#: part/templates/part/detail.html:185 +#: part/templates/part/detail.html:190 msgid "Add new parameter" msgstr "" -#: part/templates/part/detail.html:222 part/templates/part/part_sidebar.html:54 +#: part/templates/part/detail.html:227 part/templates/part/part_sidebar.html:54 msgid "Related Parts" msgstr "" -#: part/templates/part/detail.html:226 part/templates/part/detail.html:227 +#: part/templates/part/detail.html:231 part/templates/part/detail.html:232 msgid "Add Related" msgstr "" -#: part/templates/part/detail.html:247 part/templates/part/part_sidebar.html:17 +#: part/templates/part/detail.html:252 part/templates/part/part_sidebar.html:17 msgid "Bill of Materials" msgstr "부품 명세서" -#: part/templates/part/detail.html:252 +#: part/templates/part/detail.html:257 msgid "Export actions" msgstr "" -#: part/templates/part/detail.html:256 templates/js/translated/bom.js:284 +#: part/templates/part/detail.html:261 templates/js/translated/bom.js:284 msgid "Export BOM" msgstr "" -#: part/templates/part/detail.html:258 +#: part/templates/part/detail.html:263 msgid "Print BOM Report" msgstr "" -#: part/templates/part/detail.html:268 +#: part/templates/part/detail.html:273 msgid "Upload BOM" msgstr "" -#: part/templates/part/detail.html:269 templates/js/translated/part.js:274 +#: part/templates/part/detail.html:274 templates/js/translated/part.js:274 msgid "Copy BOM" msgstr "" -#: part/templates/part/detail.html:270 +#: part/templates/part/detail.html:275 msgid "Validate BOM" msgstr "" -#: part/templates/part/detail.html:275 +#: part/templates/part/detail.html:280 msgid "New BOM Item" msgstr "" -#: part/templates/part/detail.html:276 +#: part/templates/part/detail.html:281 msgid "Add BOM Item" msgstr "" -#: part/templates/part/detail.html:289 +#: part/templates/part/detail.html:294 msgid "Assemblies" msgstr "" -#: part/templates/part/detail.html:307 +#: part/templates/part/detail.html:312 msgid "Part Builds" msgstr "" -#: part/templates/part/detail.html:334 stock/templates/stock/item.html:38 +#: part/templates/part/detail.html:339 stock/templates/stock/item.html:38 msgid "Build Order Allocations" msgstr "" -#: part/templates/part/detail.html:350 +#: part/templates/part/detail.html:355 msgid "Part Suppliers" msgstr "" -#: part/templates/part/detail.html:380 +#: part/templates/part/detail.html:385 msgid "Part Manufacturers" msgstr "" -#: part/templates/part/detail.html:396 +#: part/templates/part/detail.html:401 msgid "Delete manufacturer parts" msgstr "" -#: part/templates/part/detail.html:612 +#: part/templates/part/detail.html:626 msgid "Create BOM Item" msgstr "" -#: part/templates/part/detail.html:656 +#: part/templates/part/detail.html:670 msgid "Related Part" msgstr "" -#: part/templates/part/detail.html:664 +#: part/templates/part/detail.html:678 msgid "Add Related Part" msgstr "" -#: part/templates/part/detail.html:756 +#: part/templates/part/detail.html:770 msgid "Add Test Result Template" msgstr "" -#: part/templates/part/detail.html:900 +#: part/templates/part/detail.html:914 #, python-format msgid "Purchase Unit Price - %(currency)s" msgstr "" -#: part/templates/part/detail.html:912 +#: part/templates/part/detail.html:926 #, python-format msgid "Unit Price-Cost Difference - %(currency)s" msgstr "" -#: part/templates/part/detail.html:924 +#: part/templates/part/detail.html:938 #, python-format msgid "Supplier Unit Cost - %(currency)s" msgstr "" -#: part/templates/part/detail.html:1013 +#: part/templates/part/detail.html:1027 #, python-format msgid "Unit Price - %(currency)s" msgstr "" @@ -5321,13 +5329,13 @@ msgstr "" msgid "Allocated to Sales Orders" msgstr "" -#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1037 +#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1035 msgid "Can Build" msgstr "" #: part/templates/part/part_base.html:238 templates/js/translated/part.js:593 #: templates/js/translated/part.js:613 templates/js/translated/part.js:1306 -#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1494 +#: templates/js/translated/part.js:1490 msgid "Building" msgstr "" @@ -5379,7 +5387,7 @@ msgid "Total Cost" msgstr "" #: part/templates/part/part_pricing.html:40 part/templates/part/prices.html:43 -#: templates/js/translated/bom.js:991 +#: templates/js/translated/bom.js:989 msgid "No supplier pricing available" msgstr "" @@ -5414,6 +5422,18 @@ msgstr "" msgid "No pricing information is available for this part." msgstr "" +#: part/templates/part/part_scheduling.html:13 +#: report/templates/report/inventree_test_report_base.html:97 +#: templates/InvenTree/settings/plugin.html:53 +#: templates/InvenTree/settings/plugin_settings.html:38 +#: templates/js/translated/order.js:1772 templates/js/translated/stock.js:2468 +msgid "Date" +msgstr "" + +#: part/templates/part/part_scheduling.html:14 +msgid "Scheduled Quantity" +msgstr "" + #: part/templates/part/part_sidebar.html:11 msgid "Variants" msgstr "" @@ -5462,7 +5482,7 @@ msgstr "" msgid "Calculation parameters" msgstr "" -#: part/templates/part/prices.html:160 templates/js/translated/bom.js:985 +#: part/templates/part/prices.html:160 templates/js/translated/bom.js:983 msgid "Supplier Cost" msgstr "" @@ -5501,7 +5521,7 @@ msgid "No sale pice history available for this part." msgstr "" #: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616 -#: templates/js/translated/part.js:1294 templates/js/translated/part.js:1498 +#: templates/js/translated/part.js:1294 msgid "No Stock" msgstr "" @@ -5893,11 +5913,11 @@ msgstr "" #: report/templates/report/inventree_test_report_base.html:79 #: stock/models.py:648 stock/templates/stock/item_base.html:322 -#: templates/js/translated/build.js:424 templates/js/translated/build.js:576 -#: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673 +#: templates/js/translated/build.js:456 templates/js/translated/build.js:608 +#: templates/js/translated/build.js:1208 templates/js/translated/build.js:1705 #: templates/js/translated/model_renderers.js:118 -#: templates/js/translated/order.js:118 templates/js/translated/order.js:3297 -#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490 +#: templates/js/translated/order.js:119 templates/js/translated/order.js:3336 +#: templates/js/translated/order.js:3423 templates/js/translated/stock.js:490 msgid "Serial Number" msgstr "일련번호" @@ -5915,13 +5935,6 @@ msgstr "" msgid "Result" msgstr "" -#: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:53 -#: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468 -msgid "Date" -msgstr "" - #: report/templates/report/inventree_test_report_base.html:108 msgid "Pass" msgstr "" @@ -6519,7 +6532,7 @@ msgid "Available Quantity" msgstr "" #: stock/templates/stock/item_base.html:394 -#: templates/js/translated/build.js:1695 +#: templates/js/translated/build.js:1727 msgid "No location set" msgstr "" @@ -7702,7 +7715,7 @@ msgid "The following parts are low on required stock" msgstr "" #: templates/email/build_order_required_stock.html:18 -#: templates/js/translated/bom.js:1483 +#: templates/js/translated/bom.js:1481 msgid "Required Quantity" msgstr "" @@ -7716,6 +7729,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:19 +#: templates/js/translated/part.js:2498 msgid "Minimum Quantity" msgstr "" @@ -7917,10 +7931,10 @@ msgstr "" msgid "Row Data" msgstr "" -#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:622 +#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:620 #: templates/js/translated/modals.js:56 templates/js/translated/modals.js:601 #: templates/js/translated/modals.js:695 templates/js/translated/modals.js:1003 -#: templates/js/translated/order.js:979 templates/modals.html:15 +#: templates/js/translated/order.js:1018 templates/modals.html:15 #: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50 msgid "Close" msgstr "" @@ -7930,12 +7944,12 @@ msgid "Download BOM Template" msgstr "" #: templates/js/translated/bom.js:253 templates/js/translated/bom.js:287 -#: templates/js/translated/order.js:760 templates/js/translated/tables.js:145 +#: templates/js/translated/order.js:799 templates/js/translated/tables.js:145 msgid "Format" msgstr "" #: templates/js/translated/bom.js:254 templates/js/translated/bom.js:288 -#: templates/js/translated/order.js:761 +#: templates/js/translated/order.js:800 msgid "Select file format" msgstr "" @@ -7991,390 +8005,390 @@ msgstr "" msgid "Remove substitute part" msgstr "" -#: templates/js/translated/bom.js:567 +#: templates/js/translated/bom.js:565 msgid "Select and add a new substitute part using the input below" msgstr "" -#: templates/js/translated/bom.js:578 +#: templates/js/translated/bom.js:576 msgid "Are you sure you wish to remove this substitute part link?" msgstr "" -#: templates/js/translated/bom.js:584 +#: templates/js/translated/bom.js:582 msgid "Remove Substitute Part" msgstr "" -#: templates/js/translated/bom.js:623 +#: templates/js/translated/bom.js:621 msgid "Add Substitute" msgstr "" -#: templates/js/translated/bom.js:624 +#: templates/js/translated/bom.js:622 msgid "Edit BOM Item Substitutes" msgstr "" -#: templates/js/translated/bom.js:686 +#: templates/js/translated/bom.js:684 msgid "All selected BOM items will be deleted" msgstr "" -#: templates/js/translated/bom.js:702 +#: templates/js/translated/bom.js:700 msgid "Delete selected BOM items?" msgstr "" -#: templates/js/translated/bom.js:821 +#: templates/js/translated/bom.js:819 msgid "Load BOM for subassembly" msgstr "" -#: templates/js/translated/bom.js:831 +#: templates/js/translated/bom.js:829 msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:835 templates/js/translated/build.js:1771 +#: templates/js/translated/bom.js:833 templates/js/translated/build.js:1803 msgid "Variant stock allowed" msgstr "" -#: templates/js/translated/bom.js:929 templates/js/translated/build.js:1816 -#: templates/js/translated/order.js:3632 +#: templates/js/translated/bom.js:927 templates/js/translated/build.js:1849 +#: templates/js/translated/order.js:3671 msgid "No Stock Available" msgstr "" -#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1820 +#: templates/js/translated/bom.js:932 templates/js/translated/build.js:1853 msgid "Includes variant and substitute stock" msgstr "" -#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822 +#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1855 #: templates/js/translated/part.js:763 msgid "Includes variant stock" msgstr "" -#: templates/js/translated/bom.js:938 templates/js/translated/build.js:1824 +#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1857 msgid "Includes substitute stock" msgstr "" -#: templates/js/translated/bom.js:956 +#: templates/js/translated/bom.js:954 msgid "Substitutes" msgstr "" -#: templates/js/translated/bom.js:971 +#: templates/js/translated/bom.js:969 msgid "Purchase Price Range" msgstr "" -#: templates/js/translated/bom.js:978 +#: templates/js/translated/bom.js:976 msgid "Purchase Price Average" msgstr "" -#: templates/js/translated/bom.js:1027 templates/js/translated/bom.js:1147 +#: templates/js/translated/bom.js:1025 templates/js/translated/bom.js:1145 msgid "View BOM" msgstr "" -#: templates/js/translated/bom.js:1054 +#: templates/js/translated/bom.js:1052 msgid "Including On Order" msgstr "" -#: templates/js/translated/bom.js:1118 +#: templates/js/translated/bom.js:1116 msgid "Validate BOM Item" msgstr "" -#: templates/js/translated/bom.js:1120 +#: templates/js/translated/bom.js:1118 msgid "This line has been validated" msgstr "" -#: templates/js/translated/bom.js:1122 +#: templates/js/translated/bom.js:1120 msgid "Edit substitute parts" msgstr "" -#: templates/js/translated/bom.js:1124 templates/js/translated/bom.js:1286 +#: templates/js/translated/bom.js:1122 templates/js/translated/bom.js:1284 msgid "Edit BOM Item" msgstr "" -#: templates/js/translated/bom.js:1126 +#: templates/js/translated/bom.js:1124 msgid "Delete BOM Item" msgstr "" -#: templates/js/translated/bom.js:1222 templates/js/translated/build.js:1617 +#: templates/js/translated/bom.js:1220 templates/js/translated/build.js:1649 msgid "No BOM items found" msgstr "" -#: templates/js/translated/bom.js:1466 templates/js/translated/build.js:1755 +#: templates/js/translated/bom.js:1464 templates/js/translated/build.js:1787 msgid "Required Part" msgstr "" -#: templates/js/translated/bom.js:1488 +#: templates/js/translated/bom.js:1486 msgid "Inherited from parent BOM" msgstr "" -#: templates/js/translated/build.js:86 +#: templates/js/translated/build.js:89 msgid "Edit Build Order" msgstr "" -#: templates/js/translated/build.js:120 +#: templates/js/translated/build.js:132 msgid "Create Build Order" msgstr "" -#: templates/js/translated/build.js:133 +#: templates/js/translated/build.js:165 msgid "Cancel Build Order" msgstr "" -#: templates/js/translated/build.js:142 +#: templates/js/translated/build.js:174 msgid "Are you sure you wish to cancel this build?" msgstr "" -#: templates/js/translated/build.js:148 +#: templates/js/translated/build.js:180 msgid "Stock items have been allocated to this build order" msgstr "" -#: templates/js/translated/build.js:155 +#: templates/js/translated/build.js:187 msgid "There are incomplete outputs remaining for this build order" msgstr "" -#: templates/js/translated/build.js:185 +#: templates/js/translated/build.js:217 msgid "Build order is ready to be completed" msgstr "" -#: templates/js/translated/build.js:190 +#: templates/js/translated/build.js:222 msgid "Build Order is incomplete" msgstr "" -#: templates/js/translated/build.js:222 +#: templates/js/translated/build.js:254 msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:263 templates/js/translated/stock.js:92 +#: templates/js/translated/build.js:295 templates/js/translated/stock.js:92 #: templates/js/translated/stock.js:214 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:265 templates/js/translated/stock.js:94 +#: templates/js/translated/build.js:297 templates/js/translated/stock.js:94 #: templates/js/translated/stock.js:216 msgid "Latest serial number" msgstr "" -#: templates/js/translated/build.js:274 +#: templates/js/translated/build.js:306 msgid "The Bill of Materials contains trackable parts" msgstr "" -#: templates/js/translated/build.js:275 +#: templates/js/translated/build.js:307 msgid "Build outputs must be generated individually" msgstr "" -#: templates/js/translated/build.js:283 +#: templates/js/translated/build.js:315 msgid "Trackable parts can have serial numbers specified" msgstr "" -#: templates/js/translated/build.js:284 +#: templates/js/translated/build.js:316 msgid "Enter serial numbers to generate multiple single build outputs" msgstr "" -#: templates/js/translated/build.js:291 +#: templates/js/translated/build.js:323 msgid "Create Build Output" msgstr "" -#: templates/js/translated/build.js:322 +#: templates/js/translated/build.js:354 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:333 +#: templates/js/translated/build.js:365 msgid "Unallocate stock from build output" msgstr "" -#: templates/js/translated/build.js:342 +#: templates/js/translated/build.js:374 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:350 +#: templates/js/translated/build.js:382 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:373 +#: templates/js/translated/build.js:405 msgid "Are you sure you wish to unallocate stock items from this build?" msgstr "" -#: templates/js/translated/build.js:391 +#: templates/js/translated/build.js:423 msgid "Unallocate Stock Items" msgstr "" -#: templates/js/translated/build.js:411 templates/js/translated/build.js:563 +#: templates/js/translated/build.js:443 templates/js/translated/build.js:595 msgid "Select Build Outputs" msgstr "" -#: templates/js/translated/build.js:412 templates/js/translated/build.js:564 +#: templates/js/translated/build.js:444 templates/js/translated/build.js:596 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:466 templates/js/translated/build.js:618 +#: templates/js/translated/build.js:498 templates/js/translated/build.js:650 msgid "Output" msgstr "" -#: templates/js/translated/build.js:484 +#: templates/js/translated/build.js:516 msgid "Complete Build Outputs" msgstr "" -#: templates/js/translated/build.js:631 +#: templates/js/translated/build.js:663 msgid "Delete Build Outputs" msgstr "" -#: templates/js/translated/build.js:720 +#: templates/js/translated/build.js:752 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:757 +#: templates/js/translated/build.js:789 msgid "Location not specified" msgstr "" -#: templates/js/translated/build.js:1136 +#: templates/js/translated/build.js:1168 msgid "No active build outputs found" msgstr "" -#: templates/js/translated/build.js:1205 +#: templates/js/translated/build.js:1237 msgid "Allocated Stock" msgstr "" -#: templates/js/translated/build.js:1212 +#: templates/js/translated/build.js:1244 msgid "No tracked BOM items for this build" msgstr "" -#: templates/js/translated/build.js:1234 +#: templates/js/translated/build.js:1266 msgid "Completed Tests" msgstr "" -#: templates/js/translated/build.js:1239 +#: templates/js/translated/build.js:1271 msgid "No required tests for this build" msgstr "" -#: templates/js/translated/build.js:1712 templates/js/translated/build.js:2656 -#: templates/js/translated/order.js:3332 +#: templates/js/translated/build.js:1744 templates/js/translated/build.js:2689 +#: templates/js/translated/order.js:3371 msgid "Edit stock allocation" msgstr "" -#: templates/js/translated/build.js:1714 templates/js/translated/build.js:2657 -#: templates/js/translated/order.js:3333 +#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2690 +#: templates/js/translated/order.js:3372 msgid "Delete stock allocation" msgstr "" -#: templates/js/translated/build.js:1732 +#: templates/js/translated/build.js:1764 msgid "Edit Allocation" msgstr "" -#: templates/js/translated/build.js:1742 +#: templates/js/translated/build.js:1774 msgid "Remove Allocation" msgstr "" -#: templates/js/translated/build.js:1767 +#: templates/js/translated/build.js:1799 msgid "Substitute parts available" msgstr "" -#: templates/js/translated/build.js:1784 +#: templates/js/translated/build.js:1816 msgid "Quantity Per" msgstr "" -#: templates/js/translated/build.js:1810 templates/js/translated/order.js:3639 +#: templates/js/translated/build.js:1843 templates/js/translated/order.js:3678 msgid "Insufficient stock available" msgstr "" -#: templates/js/translated/build.js:1812 templates/js/translated/order.js:3637 +#: templates/js/translated/build.js:1845 templates/js/translated/order.js:3676 msgid "Sufficient stock available" msgstr "" -#: templates/js/translated/build.js:1841 templates/js/translated/build.js:2086 -#: templates/js/translated/build.js:2652 templates/js/translated/order.js:3651 +#: templates/js/translated/build.js:1874 templates/js/translated/build.js:2119 +#: templates/js/translated/build.js:2685 templates/js/translated/order.js:3690 msgid "Allocated" msgstr "" -#: templates/js/translated/build.js:1889 templates/js/translated/order.js:3731 +#: templates/js/translated/build.js:1922 templates/js/translated/order.js:3770 msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:1893 templates/stock_table.html:50 +#: templates/js/translated/build.js:1926 templates/stock_table.html:50 msgid "Order stock" msgstr "" -#: templates/js/translated/build.js:1896 templates/js/translated/order.js:3724 +#: templates/js/translated/build.js:1929 templates/js/translated/order.js:3763 msgid "Allocate stock" msgstr "" -#: templates/js/translated/build.js:1935 templates/js/translated/label.js:172 -#: templates/js/translated/order.js:807 templates/js/translated/order.js:2859 +#: templates/js/translated/build.js:1968 templates/js/translated/label.js:172 +#: templates/js/translated/order.js:846 templates/js/translated/order.js:2898 #: templates/js/translated/report.js:225 msgid "Select Parts" msgstr "" -#: templates/js/translated/build.js:1936 templates/js/translated/order.js:2860 +#: templates/js/translated/build.js:1969 templates/js/translated/order.js:2899 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1985 templates/js/translated/order.js:2808 +#: templates/js/translated/build.js:2018 templates/js/translated/order.js:2847 msgid "Specify stock allocation quantity" msgstr "" -#: templates/js/translated/build.js:2059 +#: templates/js/translated/build.js:2092 msgid "All Parts Allocated" msgstr "" -#: templates/js/translated/build.js:2060 +#: templates/js/translated/build.js:2093 msgid "All selected parts have been fully allocated" msgstr "" -#: templates/js/translated/build.js:2074 templates/js/translated/order.js:2874 +#: templates/js/translated/build.js:2107 templates/js/translated/order.js:2913 msgid "Select source location (leave blank to take from all locations)" msgstr "" -#: templates/js/translated/build.js:2102 +#: templates/js/translated/build.js:2135 msgid "Allocate Stock Items to Build Order" msgstr "" -#: templates/js/translated/build.js:2113 templates/js/translated/order.js:2971 +#: templates/js/translated/build.js:2146 templates/js/translated/order.js:3010 msgid "No matching stock locations" msgstr "" -#: templates/js/translated/build.js:2185 templates/js/translated/order.js:3048 +#: templates/js/translated/build.js:2218 templates/js/translated/order.js:3087 msgid "No matching stock items" msgstr "" -#: templates/js/translated/build.js:2282 +#: templates/js/translated/build.js:2315 msgid "Automatic Stock Allocation" msgstr "" -#: templates/js/translated/build.js:2283 +#: templates/js/translated/build.js:2316 msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines" msgstr "" -#: templates/js/translated/build.js:2285 +#: templates/js/translated/build.js:2318 msgid "If a location is specifed, stock will only be allocated from that location" msgstr "" -#: templates/js/translated/build.js:2286 +#: templates/js/translated/build.js:2319 msgid "If stock is considered interchangeable, it will be allocated from the first location it is found" msgstr "" -#: templates/js/translated/build.js:2287 +#: templates/js/translated/build.js:2320 msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found" msgstr "" -#: templates/js/translated/build.js:2308 +#: templates/js/translated/build.js:2341 msgid "Allocate Stock Items" msgstr "" -#: templates/js/translated/build.js:2414 +#: templates/js/translated/build.js:2447 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387 -#: templates/js/translated/part.js:1899 templates/js/translated/stock.js:1686 +#: templates/js/translated/build.js:2482 templates/js/translated/part.js:1387 +#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1686 #: templates/js/translated/stock.js:2386 msgid "Select" msgstr "선택" -#: templates/js/translated/build.js:2463 +#: templates/js/translated/build.js:2496 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:2491 +#: templates/js/translated/build.js:2524 msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647 +#: templates/js/translated/build.js:2560 templates/js/translated/stock.js:2647 msgid "No user information" msgstr "" -#: templates/js/translated/build.js:2633 +#: templates/js/translated/build.js:2666 msgid "No parts allocated for" msgstr "" @@ -8390,11 +8404,11 @@ msgstr "" msgid "Edit Manufacturer Part" msgstr "" -#: templates/js/translated/company.js:167 templates/js/translated/order.js:509 +#: templates/js/translated/company.js:167 templates/js/translated/order.js:510 msgid "Add Supplier" msgstr "" -#: templates/js/translated/company.js:195 templates/js/translated/order.js:628 +#: templates/js/translated/company.js:195 templates/js/translated/order.js:667 msgid "Add Supplier Part" msgstr "" @@ -8765,381 +8779,385 @@ msgstr "" msgid "Notifications will load here" msgstr "" -#: templates/js/translated/order.js:94 +#: templates/js/translated/order.js:95 msgid "No stock items have been allocated to this shipment" msgstr "" -#: templates/js/translated/order.js:99 +#: templates/js/translated/order.js:100 msgid "The following stock items will be shipped" msgstr "" -#: templates/js/translated/order.js:139 +#: templates/js/translated/order.js:140 msgid "Complete Shipment" msgstr "" -#: templates/js/translated/order.js:159 +#: templates/js/translated/order.js:160 msgid "Confirm Shipment" msgstr "" -#: templates/js/translated/order.js:215 +#: templates/js/translated/order.js:216 msgid "No pending shipments found" msgstr "" -#: templates/js/translated/order.js:219 +#: templates/js/translated/order.js:220 msgid "No stock items have been allocated to pending shipments" msgstr "" -#: templates/js/translated/order.js:251 +#: templates/js/translated/order.js:252 msgid "Skip" msgstr "" -#: templates/js/translated/order.js:281 +#: templates/js/translated/order.js:282 msgid "Complete Purchase Order" msgstr "" -#: templates/js/translated/order.js:287 +#: templates/js/translated/order.js:288 msgid "Mark this order as complete?" msgstr "" -#: templates/js/translated/order.js:293 +#: templates/js/translated/order.js:294 msgid "All line items have been received" msgstr "" -#: templates/js/translated/order.js:298 +#: templates/js/translated/order.js:299 msgid "This order has line items which have not been marked as received." msgstr "" -#: templates/js/translated/order.js:299 +#: templates/js/translated/order.js:300 msgid "Completing this order means that the order and line items will no longer be editable." msgstr "" -#: templates/js/translated/order.js:322 +#: templates/js/translated/order.js:323 msgid "Cancel Purchase Order" msgstr "" -#: templates/js/translated/order.js:327 +#: templates/js/translated/order.js:328 msgid "Are you sure you wish to cancel this purchase order?" msgstr "" -#: templates/js/translated/order.js:333 +#: templates/js/translated/order.js:334 msgid "This purchase order can not be cancelled" msgstr "" -#: templates/js/translated/order.js:356 +#: templates/js/translated/order.js:357 msgid "Issue Purchase Order" msgstr "" -#: templates/js/translated/order.js:361 +#: templates/js/translated/order.js:362 msgid "After placing this purchase order, line items will no longer be editable." msgstr "" -#: templates/js/translated/order.js:383 +#: templates/js/translated/order.js:384 msgid "Cancel Sales Order" msgstr "" -#: templates/js/translated/order.js:388 +#: templates/js/translated/order.js:389 msgid "Cancelling this order means that the order will no longer be editable." msgstr "" -#: templates/js/translated/order.js:442 +#: templates/js/translated/order.js:443 msgid "Create New Shipment" msgstr "" -#: templates/js/translated/order.js:467 +#: templates/js/translated/order.js:468 msgid "Add Customer" msgstr "" -#: templates/js/translated/order.js:492 +#: templates/js/translated/order.js:493 msgid "Create Sales Order" msgstr "" -#: templates/js/translated/order.js:757 +#: templates/js/translated/order.js:554 +msgid "Edit Purchase Order" +msgstr "" + +#: templates/js/translated/order.js:796 msgid "Export Order" msgstr "" -#: templates/js/translated/order.js:808 +#: templates/js/translated/order.js:847 msgid "At least one purchaseable part must be selected" msgstr "" -#: templates/js/translated/order.js:833 +#: templates/js/translated/order.js:872 msgid "Quantity to order" msgstr "" -#: templates/js/translated/order.js:842 +#: templates/js/translated/order.js:881 msgid "New supplier part" msgstr "" -#: templates/js/translated/order.js:860 +#: templates/js/translated/order.js:899 msgid "New purchase order" msgstr "" -#: templates/js/translated/order.js:893 +#: templates/js/translated/order.js:932 msgid "Add to purchase order" msgstr "" -#: templates/js/translated/order.js:1002 +#: templates/js/translated/order.js:1041 msgid "No matching supplier parts" msgstr "" -#: templates/js/translated/order.js:1017 +#: templates/js/translated/order.js:1056 msgid "No matching purchase orders" msgstr "" -#: templates/js/translated/order.js:1194 +#: templates/js/translated/order.js:1233 msgid "Select Line Items" msgstr "" -#: templates/js/translated/order.js:1195 +#: templates/js/translated/order.js:1234 msgid "At least one line item must be selected" msgstr "" -#: templates/js/translated/order.js:1215 templates/js/translated/order.js:1314 +#: templates/js/translated/order.js:1254 templates/js/translated/order.js:1353 msgid "Add batch code" msgstr "" -#: templates/js/translated/order.js:1221 templates/js/translated/order.js:1325 +#: templates/js/translated/order.js:1260 templates/js/translated/order.js:1364 msgid "Add serial numbers" msgstr "" -#: templates/js/translated/order.js:1233 +#: templates/js/translated/order.js:1272 msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144 +#: templates/js/translated/order.js:1336 templates/js/translated/stock.js:2144 msgid "Stock Status" msgstr "" -#: templates/js/translated/order.js:1388 +#: templates/js/translated/order.js:1427 msgid "Order Code" msgstr "" -#: templates/js/translated/order.js:1389 +#: templates/js/translated/order.js:1428 msgid "Ordered" msgstr "" -#: templates/js/translated/order.js:1391 +#: templates/js/translated/order.js:1430 msgid "Quantity to Receive" msgstr "" -#: templates/js/translated/order.js:1410 +#: templates/js/translated/order.js:1449 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/order.js:1411 +#: templates/js/translated/order.js:1450 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943 +#: templates/js/translated/order.js:1711 templates/js/translated/part.js:943 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/order.js:1699 templates/js/translated/order.js:2503 +#: templates/js/translated/order.js:1738 templates/js/translated/order.js:2542 msgid "Order is overdue" msgstr "" -#: templates/js/translated/order.js:1749 templates/js/translated/order.js:2568 -#: templates/js/translated/order.js:2709 +#: templates/js/translated/order.js:1788 templates/js/translated/order.js:2607 +#: templates/js/translated/order.js:2748 msgid "Items" msgstr "" -#: templates/js/translated/order.js:1847 templates/js/translated/order.js:3783 +#: templates/js/translated/order.js:1886 templates/js/translated/order.js:3822 msgid "Duplicate Line Item" msgstr "" -#: templates/js/translated/order.js:1864 templates/js/translated/order.js:3805 +#: templates/js/translated/order.js:1903 templates/js/translated/order.js:3844 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/order.js:1877 templates/js/translated/order.js:3816 +#: templates/js/translated/order.js:1916 templates/js/translated/order.js:3855 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/order.js:1920 +#: templates/js/translated/order.js:1959 msgid "No line items found" msgstr "" -#: templates/js/translated/order.js:1947 templates/js/translated/order.js:3517 +#: templates/js/translated/order.js:1986 templates/js/translated/order.js:3556 msgid "Total" msgstr "" -#: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203 -#: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050 -#: templates/js/translated/part.js:2135 templates/js/translated/part.js:2488 +#: templates/js/translated/order.js:2040 templates/js/translated/order.js:2242 +#: templates/js/translated/order.js:3581 templates/js/translated/order.js:4089 +#: templates/js/translated/part.js:2131 templates/js/translated/part.js:2703 msgid "Unit Price" msgstr "단가" -#: templates/js/translated/order.js:2016 templates/js/translated/order.js:2219 -#: templates/js/translated/order.js:3558 templates/js/translated/order.js:4066 +#: templates/js/translated/order.js:2055 templates/js/translated/order.js:2258 +#: templates/js/translated/order.js:3597 templates/js/translated/order.js:4105 msgid "Total Price" msgstr "" -#: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600 +#: templates/js/translated/order.js:2096 templates/js/translated/order.js:3639 #: templates/js/translated/part.js:1050 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096 +#: templates/js/translated/order.js:2155 templates/js/translated/part.js:1096 msgid "Receive line item" msgstr "" -#: templates/js/translated/order.js:2120 templates/js/translated/order.js:3737 +#: templates/js/translated/order.js:2159 templates/js/translated/order.js:3776 msgid "Duplicate line item" msgstr "" -#: templates/js/translated/order.js:2121 templates/js/translated/order.js:3738 +#: templates/js/translated/order.js:2160 templates/js/translated/order.js:3777 msgid "Edit line item" msgstr "" -#: templates/js/translated/order.js:2122 templates/js/translated/order.js:3742 +#: templates/js/translated/order.js:2161 templates/js/translated/order.js:3781 msgid "Delete line item" msgstr "" -#: templates/js/translated/order.js:2268 templates/js/translated/order.js:4115 +#: templates/js/translated/order.js:2307 templates/js/translated/order.js:4154 msgid "Duplicate line" msgstr "" -#: templates/js/translated/order.js:2269 templates/js/translated/order.js:4116 +#: templates/js/translated/order.js:2308 templates/js/translated/order.js:4155 msgid "Edit line" msgstr "" -#: templates/js/translated/order.js:2270 templates/js/translated/order.js:4117 +#: templates/js/translated/order.js:2309 templates/js/translated/order.js:4156 msgid "Delete line" msgstr "" -#: templates/js/translated/order.js:2300 templates/js/translated/order.js:4147 +#: templates/js/translated/order.js:2339 templates/js/translated/order.js:4186 msgid "Duplicate Line" msgstr "" -#: templates/js/translated/order.js:2321 templates/js/translated/order.js:4168 +#: templates/js/translated/order.js:2360 templates/js/translated/order.js:4207 msgid "Edit Line" msgstr "" -#: templates/js/translated/order.js:2332 templates/js/translated/order.js:4179 +#: templates/js/translated/order.js:2371 templates/js/translated/order.js:4218 msgid "Delete Line" msgstr "" -#: templates/js/translated/order.js:2343 +#: templates/js/translated/order.js:2382 msgid "No matching line" msgstr "" -#: templates/js/translated/order.js:2454 +#: templates/js/translated/order.js:2493 msgid "No sales orders found" msgstr "" -#: templates/js/translated/order.js:2517 +#: templates/js/translated/order.js:2556 msgid "Invalid Customer" msgstr "" -#: templates/js/translated/order.js:2615 +#: templates/js/translated/order.js:2654 msgid "Edit shipment" msgstr "" -#: templates/js/translated/order.js:2618 +#: templates/js/translated/order.js:2657 msgid "Complete shipment" msgstr "" -#: templates/js/translated/order.js:2623 +#: templates/js/translated/order.js:2662 msgid "Delete shipment" msgstr "" -#: templates/js/translated/order.js:2643 +#: templates/js/translated/order.js:2682 msgid "Edit Shipment" msgstr "" -#: templates/js/translated/order.js:2660 +#: templates/js/translated/order.js:2699 msgid "Delete Shipment" msgstr "" -#: templates/js/translated/order.js:2694 +#: templates/js/translated/order.js:2733 msgid "No matching shipments found" msgstr "" -#: templates/js/translated/order.js:2704 +#: templates/js/translated/order.js:2743 msgid "Shipment Reference" msgstr "" -#: templates/js/translated/order.js:2728 +#: templates/js/translated/order.js:2767 msgid "Not shipped" msgstr "" -#: templates/js/translated/order.js:2734 +#: templates/js/translated/order.js:2773 msgid "Tracking" msgstr "" -#: templates/js/translated/order.js:2738 +#: templates/js/translated/order.js:2777 msgid "Invoice" msgstr "" -#: templates/js/translated/order.js:2907 +#: templates/js/translated/order.js:2946 msgid "Add Shipment" msgstr "" -#: templates/js/translated/order.js:2958 +#: templates/js/translated/order.js:2997 msgid "Confirm stock allocation" msgstr "" -#: templates/js/translated/order.js:2959 +#: templates/js/translated/order.js:2998 msgid "Allocate Stock Items to Sales Order" msgstr "" -#: templates/js/translated/order.js:3167 +#: templates/js/translated/order.js:3206 msgid "No sales order allocations found" msgstr "" -#: templates/js/translated/order.js:3246 +#: templates/js/translated/order.js:3285 msgid "Edit Stock Allocation" msgstr "" -#: templates/js/translated/order.js:3263 +#: templates/js/translated/order.js:3302 msgid "Confirm Delete Operation" msgstr "" -#: templates/js/translated/order.js:3264 +#: templates/js/translated/order.js:3303 msgid "Delete Stock Allocation" msgstr "" -#: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398 +#: templates/js/translated/order.js:3348 templates/js/translated/order.js:3437 #: templates/js/translated/stock.js:1602 msgid "Shipped to customer" msgstr "" -#: templates/js/translated/order.js:3317 templates/js/translated/order.js:3407 +#: templates/js/translated/order.js:3356 templates/js/translated/order.js:3446 msgid "Stock location not specified" msgstr "" -#: templates/js/translated/order.js:3721 +#: templates/js/translated/order.js:3760 msgid "Allocate serial numbers" msgstr "" -#: templates/js/translated/order.js:3727 +#: templates/js/translated/order.js:3766 msgid "Purchase stock" msgstr "" -#: templates/js/translated/order.js:3734 templates/js/translated/order.js:3932 +#: templates/js/translated/order.js:3773 templates/js/translated/order.js:3971 msgid "Calculate price" msgstr "" -#: templates/js/translated/order.js:3746 +#: templates/js/translated/order.js:3785 msgid "Cannot be deleted as items have been shipped" msgstr "" -#: templates/js/translated/order.js:3749 +#: templates/js/translated/order.js:3788 msgid "Cannot be deleted as items have been allocated" msgstr "" -#: templates/js/translated/order.js:3831 +#: templates/js/translated/order.js:3870 msgid "Allocate Serial Numbers" msgstr "" -#: templates/js/translated/order.js:3940 +#: templates/js/translated/order.js:3979 msgid "Update Unit Price" msgstr "" -#: templates/js/translated/order.js:3954 +#: templates/js/translated/order.js:3993 msgid "No matching line items" msgstr "" -#: templates/js/translated/order.js:4190 +#: templates/js/translated/order.js:4229 msgid "No matching lines" msgstr "" @@ -9319,12 +9337,12 @@ msgstr "" msgid "Copy Bill of Materials" msgstr "부품 명세서 복사" -#: templates/js/translated/part.js:586 templates/js/translated/part.js:1470 +#: templates/js/translated/part.js:586 templates/js/translated/part.js:1478 #: templates/js/translated/table_filters.js:468 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:596 templates/js/translated/part.js:1482 +#: templates/js/translated/part.js:596 msgid "No stock available" msgstr "" @@ -9356,7 +9374,7 @@ msgstr "" msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1553 +#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1549 msgid "No parts found" msgstr "" @@ -9368,100 +9386,124 @@ msgstr "" msgid "No category" msgstr "" -#: templates/js/translated/part.js:1577 templates/js/translated/part.js:1820 +#: templates/js/translated/part.js:1476 +msgid "No stock" +msgstr "" + +#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816 #: templates/js/translated/stock.js:2347 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:1593 +#: templates/js/translated/part.js:1589 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:1659 +#: templates/js/translated/part.js:1655 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:1664 +#: templates/js/translated/part.js:1660 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:1669 +#: templates/js/translated/part.js:1665 msgid "Select Part Category" msgstr "" -#: templates/js/translated/part.js:1682 +#: templates/js/translated/part.js:1678 msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1839 templates/js/translated/stock.js:2366 +#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2366 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:1918 +#: templates/js/translated/part.js:1914 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:1934 +#: templates/js/translated/part.js:1930 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:1992 +#: templates/js/translated/part.js:1988 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2043 templates/js/translated/stock.js:1299 +#: templates/js/translated/part.js:2039 templates/js/translated/stock.js:1299 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:2044 templates/js/translated/stock.js:1300 +#: templates/js/translated/part.js:2040 templates/js/translated/stock.js:1300 #: templates/js/translated/stock.js:1560 msgid "Delete test result" msgstr "" -#: templates/js/translated/part.js:2050 +#: templates/js/translated/part.js:2046 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2072 +#: templates/js/translated/part.js:2068 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2086 +#: templates/js/translated/part.js:2082 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2111 +#: templates/js/translated/part.js:2107 #, python-brace-format msgid "No ${human_name} information found" msgstr "" -#: templates/js/translated/part.js:2168 +#: templates/js/translated/part.js:2164 #, python-brace-format msgid "Edit ${human_name}" msgstr "" -#: templates/js/translated/part.js:2169 +#: templates/js/translated/part.js:2165 #, python-brace-format msgid "Delete ${human_name}" msgstr "" -#: templates/js/translated/part.js:2283 -msgid "Current Stock" +#: templates/js/translated/part.js:2330 templates/js/translated/part.js:2331 +msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:2316 +#: templates/js/translated/part.js:2333 +msgid "Specified date is in the past" +msgstr "" + +#: templates/js/translated/part.js:2339 +msgid "Speculative" +msgstr "" + +#: templates/js/translated/part.js:2389 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2342 +#: templates/js/translated/part.js:2395 +msgid "Error fetching scheduling information for this part" +msgstr "" + +#: templates/js/translated/part.js:2491 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2412 +#: templates/js/translated/part.js:2507 +msgid "Maximum Quantity" +msgstr "" + +#: templates/js/translated/part.js:2533 +msgid "Minimum Stock Level" +msgstr "" + +#: templates/js/translated/part.js:2627 msgid "Single Price" msgstr "" -#: templates/js/translated/part.js:2431 +#: templates/js/translated/part.js:2646 msgid "Single Price Difference" msgstr "" @@ -10222,10 +10264,6 @@ msgstr "" msgid "Hide/Show pagination" msgstr "" -#: templates/js/translated/tables.js:558 -msgid "Refresh" -msgstr "" - #: templates/js/translated/tables.js:561 msgid "Toggle" msgstr "" diff --git a/InvenTree/locale/nl/LC_MESSAGES/django.po b/InvenTree/locale/nl/LC_MESSAGES/django.po index 7bfcedb248..2c6b5341fe 100644 --- a/InvenTree/locale/nl/LC_MESSAGES/django.po +++ b/InvenTree/locale/nl/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-16 11:53+0000\n" -"PO-Revision-Date: 2022-08-16 21:36\n" +"POT-Creation-Date: 2022-08-18 05:14+0000\n" +"PO-Revision-Date: 2022-08-18 21:39\n" "Last-Translator: \n" "Language-Team: Dutch\n" "Language: nl_NL\n" @@ -40,10 +40,10 @@ msgstr "Voer datum in" #: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825 #: stock/serializers.py:924 stock/serializers.py:1056 #: stock/templates/stock/stock_sidebar.html:25 -#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101 -#: templates/js/translated/company.js:964 templates/js/translated/order.js:2104 -#: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753 -#: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102 +#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1099 +#: templates/js/translated/company.js:964 templates/js/translated/order.js:2143 +#: templates/js/translated/order.js:2294 templates/js/translated/order.js:2792 +#: templates/js/translated/order.js:3743 templates/js/translated/order.js:4141 #: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980 msgid "Notes" msgstr "Opmerkingen" @@ -211,11 +211,11 @@ msgstr "Bestand als bijlage selecteren" #: InvenTree/models.py:402 company/models.py:124 company/models.py:276 #: company/models.py:510 order/models.py:84 order/models.py:1245 -#: part/models.py:802 +#: part/models.py:802 part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_base.html:164 #: templates/js/translated/company.js:656 -#: templates/js/translated/company.js:948 templates/js/translated/order.js:2742 -#: templates/js/translated/part.js:1514 +#: templates/js/translated/company.js:948 templates/js/translated/order.js:2781 +#: templates/js/translated/part.js:1510 msgid "Link" msgstr "Link" @@ -235,8 +235,8 @@ msgstr "Bestand opmerking" #: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665 #: common/models.py:1666 common/models.py:1889 common/models.py:1890 -#: common/models.py:2152 common/models.py:2153 part/models.py:2200 -#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257 +#: common/models.py:2152 common/models.py:2153 part/models.py:2247 +#: part/models.py:2267 plugin/models.py:256 plugin/models.py:257 #: report/templates/report/inventree_test_report_base.html:96 #: templates/js/translated/stock.js:2641 msgid "User" @@ -277,7 +277,7 @@ msgstr "Ongeldige keuze" #: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875 #: company/models.py:358 label/models.py:101 part/models.py:746 -#: part/models.py:2378 plugin/models.py:94 report/models.py:152 +#: part/models.py:2425 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 #: templates/InvenTree/settings/plugin.html:51 #: templates/InvenTree/settings/plugin.html:134 @@ -287,7 +287,7 @@ msgstr "Ongeldige keuze" #: templates/js/translated/company.js:758 #: templates/js/translated/notification.js:71 #: templates/js/translated/part.js:688 templates/js/translated/part.js:840 -#: templates/js/translated/part.js:1906 templates/js/translated/stock.js:2392 +#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2392 msgid "Name" msgstr "Naam" @@ -297,19 +297,20 @@ msgstr "Naam" #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:87 label/models.py:108 #: order/models.py:82 part/models.py:769 part/templates/part/category.html:80 -#: part/templates/part/part_base.html:167 report/models.py:165 +#: part/templates/part/part_base.html:167 +#: part/templates/part/part_scheduling.html:12 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 #: stock/templates/stock/location.html:108 #: templates/InvenTree/settings/plugin_settings.html:33 -#: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848 -#: templates/js/translated/build.js:2471 templates/js/translated/company.js:409 +#: templates/js/translated/bom.js:553 templates/js/translated/bom.js:846 +#: templates/js/translated/build.js:2504 templates/js/translated/company.js:409 #: templates/js/translated/company.js:667 -#: templates/js/translated/company.js:959 templates/js/translated/order.js:1720 -#: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531 +#: templates/js/translated/company.js:959 templates/js/translated/order.js:1759 +#: templates/js/translated/order.js:1991 templates/js/translated/order.js:2570 #: templates/js/translated/part.js:747 templates/js/translated/part.js:1153 -#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1942 -#: templates/js/translated/part.js:2011 templates/js/translated/stock.js:1743 +#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1938 +#: templates/js/translated/part.js:2007 templates/js/translated/stock.js:1743 #: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478 msgid "Description" msgstr "Omschrijving" @@ -323,7 +324,7 @@ msgid "parent" msgstr "bovenliggende" #: InvenTree/models.py:560 InvenTree/models.py:561 -#: templates/js/translated/part.js:1948 templates/js/translated/stock.js:2430 +#: templates/js/translated/part.js:1944 templates/js/translated/stock.js:2430 msgid "Path" msgstr "Pad" @@ -335,7 +336,7 @@ msgstr "Serverfout" msgid "An error has been logged by the server." msgstr "Er is een fout gelogd door de server." -#: InvenTree/serializers.py:55 part/models.py:2699 +#: InvenTree/serializers.py:55 part/models.py:2746 msgid "Must be a valid number" msgstr "Moet een geldig nummer zijn" @@ -541,7 +542,7 @@ msgid "Returned" msgstr "Retour" #: InvenTree/status_codes.py:141 order/models.py:1128 -#: templates/js/translated/order.js:3330 templates/js/translated/order.js:3679 +#: templates/js/translated/order.js:3369 templates/js/translated/order.js:3718 msgid "Shipped" msgstr "Verzonden" @@ -728,7 +729,7 @@ msgstr "Ongeldige keuze voor bovenliggende productie" #: report/templates/report/inventree_build_order_base.html:105 #: templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 -#: templates/js/translated/build.js:731 +#: templates/js/translated/build.js:763 msgid "Build Order" msgstr "Productieorder" @@ -747,14 +748,14 @@ msgid "Build Order Reference" msgstr "Productieorderreferentie" #: build/models.py:166 order/models.py:240 order/models.py:623 -#: order/models.py:904 part/models.py:2617 +#: order/models.py:904 part/models.py:2664 #: part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 -#: templates/js/translated/bom.js:692 templates/js/translated/bom.js:855 -#: templates/js/translated/build.js:1779 templates/js/translated/order.js:1983 -#: templates/js/translated/order.js:2184 templates/js/translated/order.js:3523 -#: templates/js/translated/order.js:4031 +#: templates/js/translated/bom.js:690 templates/js/translated/bom.js:853 +#: templates/js/translated/build.js:1811 templates/js/translated/order.js:2022 +#: templates/js/translated/order.js:2223 templates/js/translated/order.js:3562 +#: templates/js/translated/order.js:4070 msgid "Reference" msgstr "Referentie" @@ -762,7 +763,7 @@ msgstr "Referentie" msgid "Brief description of the build" msgstr "Korte beschrijving van de productie" -#: build/models.py:185 build/templates/build/build_base.html:169 +#: build/models.py:185 build/templates/build/build_base.html:172 #: build/templates/build/detail.html:87 msgid "Parent Build" msgstr "Bovenliggende Productie" @@ -771,13 +772,13 @@ msgstr "Bovenliggende Productie" msgid "BuildOrder to which this build is allocated" msgstr "Productieorder waar deze productie aan is toegewezen" -#: build/models.py:191 build/templates/build/build_base.html:77 +#: build/models.py:191 build/templates/build/build_base.html:80 #: build/templates/build/detail.html:29 company/models.py:670 #: order/models.py:1001 order/models.py:1112 order/models.py:1113 -#: part/models.py:343 part/models.py:2146 part/models.py:2161 -#: part/models.py:2180 part/models.py:2198 part/models.py:2297 -#: part/models.py:2417 part/models.py:2507 part/models.py:2592 -#: part/models.py:2868 part/serializers.py:813 +#: part/models.py:343 part/models.py:2193 part/models.py:2208 +#: part/models.py:2227 part/models.py:2245 part/models.py:2344 +#: part/models.py:2464 part/models.py:2554 part/models.py:2639 +#: part/models.py:2915 part/serializers.py:813 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -789,17 +790,17 @@ msgstr "Productieorder waar deze productie aan is toegewezen" #: templates/email/build_order_required_stock.html:17 #: templates/email/low_stock_notification.html:16 #: templates/email/overdue_build_order.html:16 -#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:553 -#: templates/js/translated/bom.js:691 templates/js/translated/bom.js:802 -#: templates/js/translated/build.js:1156 templates/js/translated/build.js:1649 -#: templates/js/translated/build.js:2085 templates/js/translated/build.js:2476 +#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:552 +#: templates/js/translated/bom.js:689 templates/js/translated/bom.js:800 +#: templates/js/translated/build.js:1188 templates/js/translated/build.js:1681 +#: templates/js/translated/build.js:2118 templates/js/translated/build.js:2509 #: templates/js/translated/company.js:266 #: templates/js/translated/company.js:496 #: templates/js/translated/company.js:608 -#: templates/js/translated/company.js:868 templates/js/translated/order.js:103 -#: templates/js/translated/order.js:934 templates/js/translated/order.js:1387 -#: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885 -#: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507 +#: templates/js/translated/company.js:868 templates/js/translated/order.js:104 +#: templates/js/translated/order.js:973 templates/js/translated/order.js:1426 +#: templates/js/translated/order.js:1976 templates/js/translated/order.js:2924 +#: templates/js/translated/order.js:3320 templates/js/translated/order.js:3546 #: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210 #: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586 #: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958 @@ -821,7 +822,7 @@ msgid "SalesOrder to which this build is allocated" msgstr "Verkooporder waar deze productie aan is toegewezen" #: build/models.py:213 build/serializers.py:800 -#: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873 +#: templates/js/translated/build.js:2106 templates/js/translated/order.js:2912 msgid "Source Location" msgstr "Bronlocatie" @@ -862,7 +863,7 @@ msgid "Build status code" msgstr "Productiestatuscode" #: build/models.py:251 build/serializers.py:225 order/serializers.py:447 -#: stock/models.py:662 templates/js/translated/order.js:1247 +#: stock/models.py:662 templates/js/translated/order.js:1286 msgid "Batch Code" msgstr "Batchcode" @@ -871,7 +872,7 @@ msgid "Batch code for this build output" msgstr "Batchcode voor deze productieuitvoer" #: build/models.py:258 order/models.py:86 part/models.py:938 -#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544 +#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2583 msgid "Creation Date" msgstr "Aanmaakdatum" @@ -884,7 +885,7 @@ msgid "Target date for build completion. Build will be overdue after this date." msgstr "Doeldatum voor productie voltooiing. Productie zal achterstallig zijn na deze datum." #: build/models.py:266 order/models.py:286 -#: templates/js/translated/build.js:2553 +#: templates/js/translated/build.js:2586 msgid "Completion Date" msgstr "Opleveringsdatum" @@ -892,7 +893,7 @@ msgstr "Opleveringsdatum" msgid "completed by" msgstr "voltooid door" -#: build/models.py:280 templates/js/translated/build.js:2521 +#: build/models.py:280 templates/js/translated/build.js:2554 msgid "Issued by" msgstr "Uitgegeven door" @@ -900,12 +901,12 @@ msgstr "Uitgegeven door" msgid "User who issued this build order" msgstr "Gebruiker die de productieorder heeft gegeven" -#: build/models.py:289 build/templates/build/build_base.html:190 +#: build/models.py:289 build/templates/build/build_base.html:193 #: build/templates/build/detail.html:115 order/models.py:100 #: order/templates/order/order_base.html:176 #: order/templates/order/sales_order_base.html:183 part/models.py:942 #: report/templates/report/inventree_build_order_base.html:158 -#: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754 +#: templates/js/translated/build.js:2566 templates/js/translated/order.js:1793 msgid "Responsible" msgstr "Verantwoordelijke" @@ -972,7 +973,7 @@ msgid "Selected stock item not found in BOM" msgstr "Geselecteerd voorraadartikel niet gevonden in stuklijst" #: build/models.py:1328 stock/templates/stock/item_base.html:177 -#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2455 +#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2488 #: templates/navbar.html:38 msgid "Build" msgstr "Product" @@ -986,11 +987,11 @@ msgstr "Product om onderdelen toe te wijzen" #: stock/serializers.py:882 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:199 -#: templates/js/translated/build.js:741 templates/js/translated/build.js:746 -#: templates/js/translated/build.js:2087 templates/js/translated/build.js:2638 -#: templates/js/translated/order.js:104 templates/js/translated/order.js:2886 -#: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193 -#: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380 +#: templates/js/translated/build.js:773 templates/js/translated/build.js:778 +#: templates/js/translated/build.js:2120 templates/js/translated/build.js:2671 +#: templates/js/translated/order.js:105 templates/js/translated/order.js:2925 +#: templates/js/translated/order.js:3227 templates/js/translated/order.js:3232 +#: templates/js/translated/order.js:3327 templates/js/translated/order.js:3419 #: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752 #: templates/js/translated/stock.js:2577 msgid "Stock Item" @@ -1001,13 +1002,13 @@ msgid "Source stock item" msgstr "Bron voorraadartikel" #: build/models.py:1358 build/serializers.py:193 -#: build/templates/build/build_base.html:82 +#: build/templates/build/build_base.html:85 #: build/templates/build/detail.html:34 common/models.py:1697 #: company/templates/company/supplier_part.html:279 order/models.py:897 #: order/models.py:1423 order/serializers.py:1155 #: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40 -#: part/models.py:2608 part/templates/part/detail.html:937 -#: part/templates/part/detail.html:1023 +#: part/models.py:2655 part/templates/part/detail.html:951 +#: part/templates/part/detail.html:1037 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 #: report/templates/report/inventree_build_order_base.html:113 @@ -1018,20 +1019,20 @@ msgstr "Bron voorraadartikel" #: stock/serializers.py:293 stock/templates/stock/item_base.html:292 #: stock/templates/stock/item_base.html:300 #: templates/email/build_order_completed.html:18 -#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:693 -#: templates/js/translated/bom.js:863 templates/js/translated/build.js:426 -#: templates/js/translated/build.js:578 templates/js/translated/build.js:768 -#: templates/js/translated/build.js:1178 templates/js/translated/build.js:1675 -#: templates/js/translated/build.js:2088 +#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:691 +#: templates/js/translated/bom.js:861 templates/js/translated/build.js:458 +#: templates/js/translated/build.js:610 templates/js/translated/build.js:800 +#: templates/js/translated/build.js:1210 templates/js/translated/build.js:1707 +#: templates/js/translated/build.js:2121 #: templates/js/translated/model_renderers.js:120 -#: templates/js/translated/order.js:120 templates/js/translated/order.js:937 -#: templates/js/translated/order.js:1989 templates/js/translated/order.js:2190 -#: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207 -#: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386 -#: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037 -#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2156 -#: templates/js/translated/part.js:2387 templates/js/translated/part.js:2421 -#: templates/js/translated/part.js:2499 templates/js/translated/stock.js:458 +#: templates/js/translated/order.js:121 templates/js/translated/order.js:976 +#: templates/js/translated/order.js:2028 templates/js/translated/order.js:2229 +#: templates/js/translated/order.js:2926 templates/js/translated/order.js:3246 +#: templates/js/translated/order.js:3333 templates/js/translated/order.js:3425 +#: templates/js/translated/order.js:3568 templates/js/translated/order.js:4076 +#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2152 +#: templates/js/translated/part.js:2602 templates/js/translated/part.js:2636 +#: templates/js/translated/part.js:2714 templates/js/translated/stock.js:458 #: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782 #: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711 msgid "Quantity" @@ -1050,7 +1051,7 @@ msgid "Destination stock item" msgstr "Bestemming voorraadartikel" #: build/serializers.py:138 build/serializers.py:674 -#: templates/js/translated/build.js:1166 +#: templates/js/translated/build.js:1198 msgid "Build Output" msgstr "Productieuitvoer" @@ -1090,7 +1091,7 @@ msgid "Integer quantity required, as the bill of materials contains trackable pa msgstr "Geheel getal vereist omdat de stuklijst traceerbare onderdelen bevat" #: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159 -#: stock/serializers.py:311 templates/js/translated/order.js:1258 +#: stock/serializers.py:311 templates/js/translated/order.js:1297 #: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459 msgid "Serial Numbers" msgstr "Serienummers" @@ -1120,10 +1121,10 @@ msgstr "Een lijst van productieuitvoeren moet worden verstrekt" #: stock/serializers.py:917 stock/serializers.py:1150 #: stock/templates/stock/item_base.html:390 #: templates/js/translated/barcode.js:436 -#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753 -#: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285 -#: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305 -#: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394 +#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:785 +#: templates/js/translated/build.js:1719 templates/js/translated/order.js:1324 +#: templates/js/translated/order.js:3239 templates/js/translated/order.js:3344 +#: templates/js/translated/order.js:3352 templates/js/translated/order.js:3433 #: templates/js/translated/part.js:181 templates/js/translated/stock.js:588 #: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960 #: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518 @@ -1134,12 +1135,12 @@ msgstr "Locatie" msgid "Location for completed build outputs" msgstr "Locatie van voltooide productieuitvoeren" -#: build/serializers.py:373 build/templates/build/build_base.html:142 +#: build/serializers.py:373 build/templates/build/build_base.html:145 #: build/templates/build/detail.html:62 order/models.py:642 #: order/serializers.py:465 stock/templates/stock/item_base.html:423 -#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505 -#: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724 -#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829 +#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2538 +#: templates/js/translated/order.js:1431 templates/js/translated/order.js:1763 +#: templates/js/translated/order.js:2575 templates/js/translated/stock.js:1829 #: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727 msgid "Status" msgstr "Status" @@ -1196,7 +1197,7 @@ msgstr "Accepteer Niet-toegewezen" msgid "Accept that stock items have not been fully allocated to this build order" msgstr "Accepteer dat voorraadartikelen niet volledig zijn toegewezen aan deze productieorder" -#: build/serializers.py:522 templates/js/translated/build.js:195 +#: build/serializers.py:522 templates/js/translated/build.js:227 msgid "Required stock has not been fully allocated" msgstr "Vereiste voorraad is niet volledig toegewezen" @@ -1208,7 +1209,7 @@ msgstr "Accepteer Onvolledig" msgid "Accept that the required number of build outputs have not been completed" msgstr "Accepteer dat het vereist aantal productieuitvoeren niet is voltooid" -#: build/serializers.py:538 templates/js/translated/build.js:199 +#: build/serializers.py:538 templates/js/translated/build.js:231 msgid "Required build quantity has not been completed" msgstr "Vereiste productiehoeveelheid is voltooid" @@ -1216,8 +1217,8 @@ msgstr "Vereiste productiehoeveelheid is voltooid" msgid "Build order has incomplete outputs" msgstr "Productieorder heeft onvolledige uitvoeren" -#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726 -#: part/models.py:2860 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2773 +#: part/models.py:2907 msgid "BOM Item" msgstr "Stuklijstartikel" @@ -1322,66 +1323,70 @@ msgid "Cancel Build" msgstr "Annuleer Productie" #: build/templates/build/build_base.html:59 +msgid "Duplicate Build" +msgstr "" + +#: build/templates/build/build_base.html:62 msgid "Delete Build" msgstr "Verwijder Productie" -#: build/templates/build/build_base.html:64 -#: build/templates/build/build_base.html:65 +#: build/templates/build/build_base.html:67 +#: build/templates/build/build_base.html:68 msgid "Complete Build" msgstr "Voltooi Productie" -#: build/templates/build/build_base.html:87 +#: build/templates/build/build_base.html:90 msgid "Build Description" msgstr "Productiebeschrijving" -#: build/templates/build/build_base.html:95 +#: build/templates/build/build_base.html:98 msgid "No build outputs have been created for this build order" msgstr "Er zijn geen productuitvoeren aangemaakt voor deze productieorder" -#: build/templates/build/build_base.html:101 +#: build/templates/build/build_base.html:104 #, python-format msgid "This Build Order is allocated to Sales Order %(link)s" msgstr "Deze Productieorder is toegewezen aan verkooporder %(link)s" -#: build/templates/build/build_base.html:108 +#: build/templates/build/build_base.html:111 #, python-format msgid "This Build Order is a child of Build Order %(link)s" msgstr "Deze Productieorder is een onderdeel van Productieorder %(link)s" -#: build/templates/build/build_base.html:115 +#: build/templates/build/build_base.html:118 msgid "Build Order is ready to mark as completed" msgstr "Productieorder is gereed om te markeren als voltooid" -#: build/templates/build/build_base.html:120 +#: build/templates/build/build_base.html:123 msgid "Build Order cannot be completed as outstanding outputs remain" msgstr "Productieorder kan niet worden voltooid omdat er nog producties openstaan" -#: build/templates/build/build_base.html:125 +#: build/templates/build/build_base.html:128 msgid "Required build quantity has not yet been completed" msgstr "Vereiste Producthoeveelheid is nog niet bereikt" -#: build/templates/build/build_base.html:130 +#: build/templates/build/build_base.html:133 msgid "Stock has not been fully allocated to this Build Order" msgstr "Voorraad is niet volledig toegewezen aan deze productieorder" -#: build/templates/build/build_base.html:151 +#: build/templates/build/build_base.html:154 #: build/templates/build/detail.html:131 order/models.py:910 #: order/templates/order/order_base.html:162 #: order/templates/order/sales_order_base.html:164 #: report/templates/report/inventree_build_order_base.html:125 -#: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741 -#: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552 -#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042 +#: templates/js/translated/build.js:2578 templates/js/translated/order.js:1780 +#: templates/js/translated/order.js:2090 templates/js/translated/order.js:2591 +#: templates/js/translated/order.js:3631 templates/js/translated/part.js:1042 msgid "Target Date" msgstr "Streefdatum" -#: build/templates/build/build_base.html:156 +#: build/templates/build/build_base.html:159 #, python-format msgid "This build was due on %(target)s" msgstr "Deze productie was verwacht op %(target)s" -#: build/templates/build/build_base.html:156 -#: build/templates/build/build_base.html:201 +#: build/templates/build/build_base.html:159 +#: build/templates/build/build_base.html:204 #: order/templates/order/order_base.html:98 #: order/templates/order/sales_order_base.html:94 #: templates/js/translated/table_filters.js:320 @@ -1390,14 +1395,14 @@ msgstr "Deze productie was verwacht op %(target)s" msgid "Overdue" msgstr "Achterstallig" -#: build/templates/build/build_base.html:163 +#: build/templates/build/build_base.html:166 #: build/templates/build/detail.html:67 build/templates/build/detail.html:142 #: order/templates/order/sales_order_base.html:171 #: templates/js/translated/table_filters.js:400 msgid "Completed" msgstr "Voltooid" -#: build/templates/build/build_base.html:176 +#: build/templates/build/build_base.html:179 #: build/templates/build/detail.html:94 order/models.py:1105 #: order/models.py:1199 order/models.py:1330 #: order/templates/order/sales_order_base.html:9 @@ -1406,17 +1411,17 @@ msgstr "Voltooid" #: report/templates/report/inventree_so_report.html:77 #: stock/templates/stock/item_base.html:370 #: templates/email/overdue_sales_order.html:15 -#: templates/js/translated/order.js:2498 +#: templates/js/translated/order.js:2537 msgid "Sales Order" msgstr "Verkooporder" -#: build/templates/build/build_base.html:183 +#: build/templates/build/build_base.html:186 #: build/templates/build/detail.html:108 #: report/templates/report/inventree_build_order_base.html:152 msgid "Issued By" msgstr "Uitgegeven door" -#: build/templates/build/build_base.html:245 +#: build/templates/build/build_base.html:256 msgid "Delete Build Order" msgstr "Verwijder Productieorder" @@ -1433,7 +1438,7 @@ msgid "Stock can be taken from any available location." msgstr "Voorraad kan worden genomen van elke beschikbare locatie." #: build/templates/build/detail.html:49 order/models.py:1023 -#: templates/js/translated/order.js:1393 templates/js/translated/order.js:2093 +#: templates/js/translated/order.js:1432 templates/js/translated/order.js:2132 msgid "Destination" msgstr "Bestemming" @@ -1447,7 +1452,7 @@ msgstr "Toegewezen Onderdelen" #: build/templates/build/detail.html:80 #: stock/templates/stock/item_base.html:170 -#: templates/js/translated/build.js:1182 +#: templates/js/translated/build.js:1214 #: templates/js/translated/model_renderers.js:124 #: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843 #: templates/js/translated/stock.js:2734 @@ -1459,7 +1464,7 @@ msgstr "Batch" #: build/templates/build/detail.html:126 #: order/templates/order/order_base.html:149 #: order/templates/order/sales_order_base.html:158 -#: templates/js/translated/build.js:2513 +#: templates/js/translated/build.js:2546 msgid "Created" msgstr "Gecreëerd" @@ -1479,7 +1484,7 @@ msgstr "Onderliggende Productieorders" msgid "Allocate Stock to Build" msgstr "Voorraad toewijzen aan Product" -#: build/templates/build/detail.html:176 templates/js/translated/build.js:1901 +#: build/templates/build/detail.html:176 templates/js/translated/build.js:1934 msgid "Unallocate stock" msgstr "Voorraadtoewijzing ongedaan maken" @@ -1510,7 +1515,7 @@ msgstr "Vereiste onderdelen bestellen" #: build/templates/build/detail.html:187 #: company/templates/company/detail.html:37 #: company/templates/company/detail.html:85 -#: part/templates/part/category.html:183 templates/js/translated/order.js:977 +#: part/templates/part/category.html:183 templates/js/translated/order.js:1016 msgid "Order Parts" msgstr "Onderdelen bestellen" @@ -1582,7 +1587,7 @@ msgstr "Voltooide Productieuitvoeren" #: order/templates/order/po_sidebar.html:9 #: order/templates/order/purchase_order_detail.html:82 #: order/templates/order/sales_order_detail.html:135 -#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:207 +#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:212 #: part/templates/part/part_sidebar.html:57 stock/templates/stock/item.html:117 #: stock/templates/stock/stock_sidebar.html:23 msgid "Attachments" @@ -1600,7 +1605,7 @@ msgstr "Toewijzing Voltooid" msgid "All untracked stock items have been allocated" msgstr "Alle niet gevolgde voorraadartikelen zijn toegewezen" -#: build/templates/build/index.html:18 part/templates/part/detail.html:313 +#: build/templates/build/index.html:18 part/templates/part/detail.html:318 msgid "New Build Order" msgstr "Nieuwe Productieorder" @@ -1845,7 +1850,7 @@ msgstr "Kopiëer Categorieparameter Sjablonen" msgid "Copy category parameter templates when creating a part" msgstr "Kopieer categorieparameter sjablonen bij het aanmaken van een onderdeel" -#: common/models.py:951 part/models.py:2419 report/models.py:158 +#: common/models.py:951 part/models.py:2466 report/models.py:158 #: templates/js/translated/table_filters.js:38 #: templates/js/translated/table_filters.js:484 msgid "Template" @@ -1855,7 +1860,7 @@ msgstr "Sjabloon" msgid "Parts are templates by default" msgstr "Onderdelen zijn standaard sjablonen" -#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448 +#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1446 #: templates/js/translated/table_filters.js:176 #: templates/js/translated/table_filters.js:447 msgid "Assembly" @@ -2591,7 +2596,7 @@ msgstr "" #: common/models.py:1705 company/serializers.py:366 #: company/templates/company/supplier_part.html:284 order/models.py:938 -#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2161 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2157 msgid "Price" msgstr "Prijs" @@ -2830,7 +2835,7 @@ msgstr "Standaardvaluta die gebruikt wordt voor dit bedrijf" #: company/models.py:248 company/models.py:481 stock/models.py:598 #: stock/serializers.py:87 stock/templates/stock/item_base.html:148 -#: templates/js/translated/bom.js:543 +#: templates/js/translated/bom.js:542 msgid "Base Part" msgstr "Basis onderdeel" @@ -2859,7 +2864,7 @@ msgstr "Fabrikant selecteren" #: templates/js/translated/company.js:269 #: templates/js/translated/company.js:497 #: templates/js/translated/company.js:649 -#: templates/js/translated/company.js:937 templates/js/translated/order.js:1971 +#: templates/js/translated/company.js:937 templates/js/translated/order.js:2010 #: templates/js/translated/part.js:247 templates/js/translated/part.js:1027 msgid "MPN" msgstr "MPN" @@ -2899,7 +2904,7 @@ msgstr "Waarde" msgid "Parameter value" msgstr "Parameterwaarde" -#: company/models.py:372 part/models.py:888 part/models.py:2386 +#: company/models.py:372 part/models.py:888 part/models.py:2433 #: part/templates/part/part_base.html:280 #: templates/InvenTree/settings/settings.html:352 #: templates/js/translated/company.js:770 templates/js/translated/part.js:855 @@ -2921,7 +2926,7 @@ msgstr "Gekoppeld fabrikant onderdeel moet verwijzen naar hetzelfde basis onderd #: templates/email/overdue_purchase_order.html:16 #: templates/js/translated/company.js:268 #: templates/js/translated/company.js:401 -#: templates/js/translated/company.js:893 templates/js/translated/order.js:1707 +#: templates/js/translated/company.js:893 templates/js/translated/order.js:1746 #: templates/js/translated/part.js:217 templates/js/translated/part.js:995 #: templates/js/translated/table_filters.js:423 msgid "Supplier" @@ -2933,7 +2938,7 @@ msgstr "Leverancier selecteren" #: company/models.py:497 company/templates/company/supplier_part.html:118 #: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267 -#: templates/js/translated/order.js:1958 templates/js/translated/part.js:228 +#: templates/js/translated/order.js:1997 templates/js/translated/part.js:228 #: templates/js/translated/part.js:1013 msgid "SKU" msgstr "SKU" @@ -2955,17 +2960,17 @@ msgid "Supplier part description" msgstr "" #: company/models.py:522 company/templates/company/supplier_part.html:146 -#: part/models.py:2620 part/templates/part/upload_bom.html:59 +#: part/models.py:2667 part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401 msgid "Note" msgstr "Opmerking" -#: company/models.py:526 part/models.py:1742 +#: company/models.py:526 part/models.py:1789 msgid "base cost" msgstr "basisprijs" -#: company/models.py:526 part/models.py:1742 +#: company/models.py:526 part/models.py:1789 msgid "Minimum charge (e.g. stocking fee)" msgstr "Minimale kosten (bijv. voorraadkosten)" @@ -2979,7 +2984,7 @@ msgstr "" msgid "Part packaging" msgstr "" -#: company/models.py:530 part/models.py:1744 +#: company/models.py:530 part/models.py:1791 msgid "multiple" msgstr "meerdere" @@ -2990,8 +2995,8 @@ msgstr "Order meerdere" #: company/models.py:538 company/templates/company/supplier_part.html:94 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789 -#: templates/js/translated/build.js:2645 templates/js/translated/company.js:979 +#: templates/js/translated/bom.js:911 templates/js/translated/build.js:1821 +#: templates/js/translated/build.js:2678 templates/js/translated/company.js:979 #: templates/js/translated/part.js:600 templates/js/translated/part.js:603 #: templates/js/translated/table_filters.js:186 msgid "Available" @@ -3028,7 +3033,7 @@ msgid "Company" msgstr "Bedrijf" #: company/templates/company/company_base.html:22 -#: templates/js/translated/order.js:540 +#: templates/js/translated/order.js:579 msgid "Create Purchase Order" msgstr "Inkooporder aanmaken" @@ -3069,7 +3074,7 @@ msgstr "Afbeelding downloaden van URL" #: stock/models.py:644 stock/serializers.py:811 #: stock/templates/stock/item_base.html:401 #: templates/email/overdue_sales_order.html:16 -#: templates/js/translated/company.js:393 templates/js/translated/order.js:2513 +#: templates/js/translated/company.js:393 templates/js/translated/order.js:2552 #: templates/js/translated/stock.js:2559 #: templates/js/translated/table_filters.js:427 msgid "Customer" @@ -3105,7 +3110,7 @@ msgstr "" #: company/templates/company/detail.html:19 #: company/templates/company/manufacturer_part.html:123 -#: part/templates/part/detail.html:354 +#: part/templates/part/detail.html:359 msgid "New Supplier Part" msgstr "" @@ -3134,7 +3139,7 @@ msgstr "Fabrikant onderdelen" msgid "Create new manufacturer part" msgstr "Maak nieuw fabrikant onderdeel" -#: company/templates/company/detail.html:66 part/templates/part/detail.html:384 +#: company/templates/company/detail.html:66 part/templates/part/detail.html:389 msgid "New Manufacturer Part" msgstr "Nieuw fabrikant onderdeel" @@ -3148,7 +3153,7 @@ msgstr "" #: order/templates/order/order_base.html:13 #: order/templates/order/purchase_orders.html:8 #: order/templates/order/purchase_orders.html:12 -#: part/templates/part/detail.html:79 part/templates/part/part_sidebar.html:37 +#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:37 #: templates/InvenTree/index.html:252 templates/InvenTree/search.html:198 #: templates/InvenTree/settings/sidebar.html:49 #: templates/js/translated/search.js:275 templates/navbar.html:50 @@ -3171,7 +3176,7 @@ msgstr "Nieuwe Inkooporder" #: order/templates/order/sales_order_base.html:13 #: order/templates/order/sales_orders.html:8 #: order/templates/order/sales_orders.html:15 -#: part/templates/part/detail.html:102 part/templates/part/part_sidebar.html:41 +#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:41 #: templates/InvenTree/index.html:283 templates/InvenTree/search.html:218 #: templates/InvenTree/settings/sidebar.html:51 #: templates/js/translated/search.js:299 templates/navbar.html:61 @@ -3190,7 +3195,7 @@ msgid "New Sales Order" msgstr "Nieuwe Verkooporder" #: company/templates/company/detail.html:168 -#: templates/js/translated/build.js:1660 +#: templates/js/translated/build.js:1692 msgid "Assigned Stock" msgstr "" @@ -3206,7 +3211,7 @@ msgstr "Fabrikanten" #: company/templates/company/manufacturer_part.html:35 #: company/templates/company/supplier_part.html:186 -#: part/templates/part/detail.html:82 part/templates/part/part_base.html:80 +#: part/templates/part/detail.html:87 part/templates/part/part_base.html:80 msgid "Order part" msgstr "Order onderdeel" @@ -3237,13 +3242,13 @@ msgid "Suppliers" msgstr "Leveranciers" #: company/templates/company/manufacturer_part.html:136 -#: part/templates/part/detail.html:365 +#: part/templates/part/detail.html:370 msgid "Delete supplier parts" msgstr "Verwijder leveranciersonderdelen" #: company/templates/company/manufacturer_part.html:136 #: company/templates/company/manufacturer_part.html:183 -#: part/templates/part/detail.html:366 part/templates/part/detail.html:396 +#: part/templates/part/detail.html:371 part/templates/part/detail.html:401 #: templates/js/translated/forms.js:453 templates/js/translated/helpers.js:33 #: users/models.py:220 msgid "Delete" @@ -3252,12 +3257,12 @@ msgstr "Verwijderen" #: company/templates/company/manufacturer_part.html:166 #: company/templates/company/manufacturer_part_sidebar.html:5 #: part/templates/part/category_sidebar.html:19 -#: part/templates/part/detail.html:181 part/templates/part/part_sidebar.html:8 +#: part/templates/part/detail.html:186 part/templates/part/part_sidebar.html:8 msgid "Parameters" msgstr "Parameters" #: company/templates/company/manufacturer_part.html:170 -#: part/templates/part/detail.html:186 +#: part/templates/part/detail.html:191 #: templates/InvenTree/settings/category.html:12 #: templates/InvenTree/settings/part.html:68 msgid "New Parameter" @@ -3268,7 +3273,7 @@ msgid "Delete parameters" msgstr "Parameter verwijderen" #: company/templates/company/manufacturer_part.html:245 -#: part/templates/part/detail.html:826 +#: part/templates/part/detail.html:840 msgid "Add Parameter" msgstr "Parameter toevoegen" @@ -3291,7 +3296,7 @@ msgstr "Toegewezen Voorraadartikelen" #: company/templates/company/supplier_part.html:7 #: company/templates/company/supplier_part.html:24 stock/models.py:607 #: stock/templates/stock/item_base.html:238 -#: templates/js/translated/company.js:909 templates/js/translated/order.js:935 +#: templates/js/translated/company.js:909 templates/js/translated/order.js:974 #: templates/js/translated/stock.js:1933 msgid "Supplier Part" msgstr "Leveranciersonderdeel" @@ -3303,7 +3308,7 @@ msgstr "" #: company/templates/company/supplier_part.html:40 #: company/templates/company/supplier_part.html:41 #: company/templates/company/supplier_part.html:187 -#: part/templates/part/detail.html:83 +#: part/templates/part/detail.html:88 msgid "Order Part" msgstr "Order Onderdeel" @@ -3358,7 +3363,7 @@ msgstr "Prijsinformatie" #: company/templates/company/supplier_part.html:212 #: company/templates/company/supplier_part.html:326 -#: part/templates/part/prices.html:276 templates/js/translated/part.js:2233 +#: part/templates/part/prices.html:276 templates/js/translated/part.js:2229 msgid "Add Price Break" msgstr "" @@ -3367,12 +3372,12 @@ msgid "No price break information found" msgstr "" #: company/templates/company/supplier_part.html:252 -#: templates/js/translated/part.js:2243 +#: templates/js/translated/part.js:2239 msgid "Delete Price Break" msgstr "" #: company/templates/company/supplier_part.html:266 -#: templates/js/translated/part.js:2257 +#: templates/js/translated/part.js:2253 msgid "Edit Price Break" msgstr "" @@ -3398,10 +3403,9 @@ msgstr "" #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:151 #: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751 -#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460 -#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754 -#: templates/navbar.html:31 +#: templates/js/translated/part.js:751 templates/js/translated/part.js:1299 +#: templates/js/translated/part.js:1460 templates/js/translated/stock.js:959 +#: templates/js/translated/stock.js:1754 templates/navbar.html:31 msgid "Stock" msgstr "Voorraad" @@ -3554,7 +3558,7 @@ msgid "Company from which the items are being ordered" msgstr "Bedrijf waar de artikelen van worden besteld" #: order/models.py:262 order/templates/order/order_base.html:124 -#: templates/js/translated/order.js:1716 +#: templates/js/translated/order.js:1755 msgid "Supplier Reference" msgstr "Leveranciersreferentie" @@ -3611,7 +3615,7 @@ msgid "Target date for order completion. Order will be overdue after this date." msgstr "Streefdatum voor voltooien order. De order is na deze datum achterstallig." #: order/models.py:652 order/models.py:1204 -#: templates/js/translated/order.js:2560 templates/js/translated/order.js:2722 +#: templates/js/translated/order.js:2599 templates/js/translated/order.js:2761 msgid "Shipment Date" msgstr "Verzenddatum" @@ -3673,7 +3677,7 @@ msgstr "verwijderd" #: order/models.py:983 order/models.py:1063 order/models.py:1104 #: order/models.py:1198 order/models.py:1330 -#: templates/js/translated/order.js:3178 +#: templates/js/translated/order.js:3217 msgid "Order" msgstr "Order" @@ -3683,7 +3687,7 @@ msgstr "Order" #: report/templates/report/inventree_po_report.html:76 #: stock/templates/stock/item_base.html:184 #: templates/email/overdue_purchase_order.html:15 -#: templates/js/translated/order.js:936 templates/js/translated/order.js:1691 +#: templates/js/translated/order.js:975 templates/js/translated/order.js:1730 #: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913 #: templates/js/translated/stock.js:2540 msgid "Purchase Order" @@ -3694,7 +3698,7 @@ msgid "Supplier part" msgstr "Leveranciersonderdeel" #: order/models.py:1009 order/templates/order/order_base.html:169 -#: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073 +#: templates/js/translated/order.js:1429 templates/js/translated/order.js:2112 #: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091 #: templates/js/translated/table_filters.js:338 msgid "Received" @@ -3880,11 +3884,11 @@ msgstr "Artikelregel komt niet overeen met inkooporder" msgid "Select destination location for received items" msgstr "Selecteer bestemmingslocatie voor ontvangen artikelen" -#: order/serializers.py:448 templates/js/translated/order.js:1248 +#: order/serializers.py:448 templates/js/translated/order.js:1287 msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:456 templates/js/translated/order.js:1259 +#: order/serializers.py:456 templates/js/translated/order.js:1298 msgid "Enter serial numbers for incoming stock items" msgstr "Voer serienummers in voor inkomende voorraadartikelen" @@ -4061,10 +4065,6 @@ msgstr "Totale kosten" msgid "Total cost could not be calculated" msgstr "Totale kosten konden niet worden berekend" -#: order/templates/order/order_base.html:243 -msgid "Edit Purchase Order" -msgstr "Bewerk Inkooporder" - #: order/templates/order/order_wizard/match_parts.html:12 #: part/templates/part/import_wizard/ajax_match_references.html:12 #: part/templates/part/import_wizard/match_references.html:12 @@ -4091,10 +4091,10 @@ msgstr "Selecteer Leveranciersonderdeel" #: part/templates/part/import_wizard/ajax_match_fields.html:64 #: part/templates/part/import_wizard/ajax_match_references.html:42 #: part/templates/part/import_wizard/match_references.html:49 -#: templates/js/translated/bom.js:77 templates/js/translated/build.js:431 -#: templates/js/translated/build.js:583 templates/js/translated/build.js:1974 -#: templates/js/translated/order.js:884 templates/js/translated/order.js:1337 -#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625 +#: templates/js/translated/bom.js:77 templates/js/translated/build.js:463 +#: templates/js/translated/build.js:615 templates/js/translated/build.js:2007 +#: templates/js/translated/order.js:923 templates/js/translated/order.js:1376 +#: templates/js/translated/order.js:2836 templates/js/translated/stock.js:625 #: templates/js/translated/stock.js:793 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" @@ -4130,7 +4130,7 @@ msgstr "Inkooporder Artikelen" #: order/templates/order/purchase_order_detail.html:26 #: order/templates/order/sales_order_detail.html:22 #: order/templates/order/sales_order_detail.html:255 -#: templates/js/translated/order.js:557 +#: templates/js/translated/order.js:596 msgid "Add Line Item" msgstr "Artikel toevoegen" @@ -4176,7 +4176,7 @@ msgid "Print packing list" msgstr "Pakbon afdrukken" #: order/templates/order/sales_order_base.html:60 -#: templates/js/translated/order.js:229 +#: templates/js/translated/order.js:230 msgid "Complete Shipments" msgstr "Verzendingen Voltooien" @@ -4190,7 +4190,7 @@ msgid "This Sales Order has not been fully allocated" msgstr "Deze Verkooporder is niet volledig toegewezen" #: order/templates/order/sales_order_base.html:123 -#: templates/js/translated/order.js:2526 +#: templates/js/translated/order.js:2565 msgid "Customer Reference" msgstr "Klantreferentie" @@ -4214,8 +4214,8 @@ msgid "Pending Shipments" msgstr "Verzendingen in behandeling" #: order/templates/order/sales_order_detail.html:72 -#: templates/attachment_table.html:6 templates/js/translated/bom.js:1110 -#: templates/js/translated/build.js:1882 +#: templates/attachment_table.html:6 templates/js/translated/bom.js:1108 +#: templates/js/translated/build.js:1915 msgid "Actions" msgstr "Acties" @@ -4257,35 +4257,35 @@ msgstr "Uitgaande Verkooporder" msgid "Stock produced by Build Order" msgstr "Geproduceerde voorraad door Productieorder" -#: part/api.py:584 +#: part/api.py:621 msgid "Stock required for Build Order" msgstr "Voorraad vereist voor Productieorder" -#: part/api.py:704 +#: part/api.py:758 msgid "Valid" msgstr "" -#: part/api.py:705 +#: part/api.py:759 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:711 +#: part/api.py:765 msgid "This option must be selected" msgstr "" -#: part/api.py:1134 +#: part/api.py:1188 msgid "Must be greater than zero" msgstr "" -#: part/api.py:1138 +#: part/api.py:1192 msgid "Must be a valid quantity" msgstr "" -#: part/api.py:1153 +#: part/api.py:1207 msgid "Specify location for initial part stock" msgstr "" -#: part/api.py:1184 part/api.py:1188 part/api.py:1203 part/api.py:1207 +#: part/api.py:1238 part/api.py:1242 part/api.py:1257 part/api.py:1261 msgid "This field is required" msgstr "" @@ -4299,14 +4299,14 @@ msgid "Total Stock" msgstr "Totale Voorraad" #: part/bom.py:129 part/templates/part/part_base.html:189 -#: templates/js/translated/order.js:3618 +#: templates/js/translated/order.js:3657 msgid "Available Stock" msgstr "Beschikbare Voorraad" #: part/bom.py:130 part/templates/part/part_base.html:207 -#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590 +#: templates/js/translated/bom.js:945 templates/js/translated/part.js:590 #: templates/js/translated/part.js:610 templates/js/translated/part.js:1302 -#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490 +#: templates/js/translated/part.js:1483 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "In bestelling" @@ -4335,7 +4335,7 @@ msgstr "" msgid "Icon (optional)" msgstr "" -#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16 +#: part/models.py:122 part/models.py:2509 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" @@ -4352,7 +4352,7 @@ msgstr "" #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82 #: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:1955 templates/js/translated/search.js:144 +#: templates/js/translated/part.js:1951 templates/js/translated/search.js:144 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "" @@ -4382,7 +4382,7 @@ msgstr "" msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:745 part/models.py:2516 +#: part/models.py:745 part/models.py:2563 msgid "Part name" msgstr "" @@ -4415,11 +4415,11 @@ msgstr "" msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:783 part/models.py:2218 part/models.py:2461 +#: part/models.py:783 part/models.py:2265 part/models.py:2508 #: part/templates/part/part_base.html:257 #: templates/InvenTree/settings/settings.html:232 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1668 +#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1664 msgid "Category" msgstr "" @@ -4530,245 +4530,245 @@ msgstr "" msgid "Creation User" msgstr "" -#: part/models.py:1744 +#: part/models.py:1791 msgid "Sell multiple" msgstr "" -#: part/models.py:2265 +#: part/models.py:2312 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:2282 +#: part/models.py:2329 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:2302 templates/js/translated/part.js:2006 +#: part/models.py:2349 templates/js/translated/part.js:2002 #: templates/js/translated/stock.js:1340 msgid "Test Name" msgstr "" -#: part/models.py:2303 +#: part/models.py:2350 msgid "Enter a name for the test" msgstr "" -#: part/models.py:2308 +#: part/models.py:2355 msgid "Test Description" msgstr "" -#: part/models.py:2309 +#: part/models.py:2356 msgid "Enter description for this test" msgstr "" -#: part/models.py:2314 templates/js/translated/part.js:2015 +#: part/models.py:2361 templates/js/translated/part.js:2011 #: templates/js/translated/table_filters.js:302 msgid "Required" msgstr "" -#: part/models.py:2315 +#: part/models.py:2362 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:2320 templates/js/translated/part.js:2023 +#: part/models.py:2367 templates/js/translated/part.js:2019 msgid "Requires Value" msgstr "" -#: part/models.py:2321 +#: part/models.py:2368 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:2326 templates/js/translated/part.js:2030 +#: part/models.py:2373 templates/js/translated/part.js:2026 msgid "Requires Attachment" msgstr "" -#: part/models.py:2327 +#: part/models.py:2374 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:2335 +#: part/models.py:2382 #, python-brace-format msgid "Illegal character in template name ({c})" msgstr "" -#: part/models.py:2371 +#: part/models.py:2418 msgid "Parameter template name must be unique" msgstr "De template van de parameter moet uniek zijn" -#: part/models.py:2379 +#: part/models.py:2426 msgid "Parameter Name" msgstr "Parameternaam" -#: part/models.py:2386 +#: part/models.py:2433 msgid "Parameter Units" msgstr "Parameter Eenheden" -#: part/models.py:2417 +#: part/models.py:2464 msgid "Parent Part" msgstr "" -#: part/models.py:2419 part/models.py:2467 part/models.py:2468 +#: part/models.py:2466 part/models.py:2514 part/models.py:2515 #: templates/InvenTree/settings/settings.html:227 msgid "Parameter Template" msgstr "Parameter Template" -#: part/models.py:2421 +#: part/models.py:2468 msgid "Data" msgstr "" -#: part/models.py:2421 +#: part/models.py:2468 msgid "Parameter Value" msgstr "Parameterwaarde" -#: part/models.py:2472 templates/InvenTree/settings/settings.html:236 +#: part/models.py:2519 templates/InvenTree/settings/settings.html:236 msgid "Default Value" msgstr "" -#: part/models.py:2473 +#: part/models.py:2520 msgid "Default Parameter Value" msgstr "Standaard Parameter Waarde" -#: part/models.py:2508 +#: part/models.py:2555 msgid "Part ID or part name" msgstr "" -#: part/models.py:2511 templates/js/translated/model_renderers.js:212 +#: part/models.py:2558 templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "" -#: part/models.py:2512 +#: part/models.py:2559 msgid "Unique part ID value" msgstr "" -#: part/models.py:2515 +#: part/models.py:2562 msgid "Part Name" msgstr "" -#: part/models.py:2519 +#: part/models.py:2566 msgid "Part IPN" msgstr "" -#: part/models.py:2520 +#: part/models.py:2567 msgid "Part IPN value" msgstr "" -#: part/models.py:2523 +#: part/models.py:2570 msgid "Level" msgstr "" -#: part/models.py:2524 +#: part/models.py:2571 msgid "BOM level" msgstr "" -#: part/models.py:2593 +#: part/models.py:2640 msgid "Select parent part" msgstr "" -#: part/models.py:2601 +#: part/models.py:2648 msgid "Sub part" msgstr "" -#: part/models.py:2602 +#: part/models.py:2649 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:2608 +#: part/models.py:2655 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:2610 part/templates/part/upload_bom.html:58 -#: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999 +#: part/models.py:2657 part/templates/part/upload_bom.html:58 +#: templates/js/translated/bom.js:872 templates/js/translated/bom.js:997 #: templates/js/translated/table_filters.js:100 msgid "Optional" msgstr "" -#: part/models.py:2610 +#: part/models.py:2657 msgid "This BOM item is optional" msgstr "" -#: part/models.py:2613 part/templates/part/upload_bom.html:55 +#: part/models.py:2660 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:2614 +#: part/models.py:2661 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:2617 +#: part/models.py:2664 msgid "BOM item reference" msgstr "" -#: part/models.py:2620 +#: part/models.py:2667 msgid "BOM item notes" msgstr "" -#: part/models.py:2622 +#: part/models.py:2669 msgid "Checksum" msgstr "" -#: part/models.py:2622 +#: part/models.py:2669 msgid "BOM line checksum" msgstr "" -#: part/models.py:2626 part/templates/part/upload_bom.html:57 -#: templates/js/translated/bom.js:1016 +#: part/models.py:2673 part/templates/part/upload_bom.html:57 +#: templates/js/translated/bom.js:1014 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:96 msgid "Inherited" msgstr "" -#: part/models.py:2627 +#: part/models.py:2674 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:2632 part/templates/part/upload_bom.html:56 -#: templates/js/translated/bom.js:1008 +#: part/models.py:2679 part/templates/part/upload_bom.html:56 +#: templates/js/translated/bom.js:1006 msgid "Allow Variants" msgstr "" -#: part/models.py:2633 +#: part/models.py:2680 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:2711 stock/models.py:468 +#: part/models.py:2758 stock/models.py:468 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:2720 part/models.py:2722 +#: part/models.py:2767 part/models.py:2769 msgid "Sub part must be specified" msgstr "" -#: part/models.py:2827 +#: part/models.py:2874 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:2848 +#: part/models.py:2895 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:2861 +#: part/models.py:2908 msgid "Parent BOM item" msgstr "" -#: part/models.py:2869 +#: part/models.py:2916 msgid "Substitute part" msgstr "" -#: part/models.py:2884 +#: part/models.py:2931 msgid "Part 1" msgstr "" -#: part/models.py:2888 +#: part/models.py:2935 msgid "Part 2" msgstr "" -#: part/models.py:2888 +#: part/models.py:2935 msgid "Select Related Part" msgstr "" -#: part/models.py:2906 +#: part/models.py:2953 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:2910 +#: part/models.py:2957 msgid "Duplicate relationship already exists" msgstr "" @@ -4876,7 +4876,7 @@ msgstr "" msgid "The BOM for %(part)s has not been validated." msgstr "" -#: part/templates/part/bom.html:30 part/templates/part/detail.html:264 +#: part/templates/part/bom.html:30 part/templates/part/detail.html:269 msgid "BOM actions" msgstr "" @@ -4945,8 +4945,8 @@ msgstr "" msgid "New Part" msgstr "" -#: part/templates/part/category.html:174 part/templates/part/detail.html:363 -#: part/templates/part/detail.html:394 +#: part/templates/part/category.html:174 part/templates/part/detail.html:368 +#: part/templates/part/detail.html:399 msgid "Options" msgstr "" @@ -5014,138 +5014,146 @@ msgstr "" msgid "Part Stock" msgstr "" -#: part/templates/part/detail.html:54 -msgid "Part Test Templates" +#: part/templates/part/detail.html:44 +msgid "Refresh scheduling data" +msgstr "" + +#: part/templates/part/detail.html:45 templates/js/translated/tables.js:558 +msgid "Refresh" msgstr "" #: part/templates/part/detail.html:59 +msgid "Part Test Templates" +msgstr "" + +#: part/templates/part/detail.html:64 msgid "Add Test Template" msgstr "" -#: part/templates/part/detail.html:116 stock/templates/stock/item.html:53 +#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53 msgid "Sales Order Allocations" msgstr "Verkoopordertoewijzingen" -#: part/templates/part/detail.html:138 +#: part/templates/part/detail.html:143 msgid "Part Notes" msgstr "" -#: part/templates/part/detail.html:153 +#: part/templates/part/detail.html:158 msgid "Part Variants" msgstr "" -#: part/templates/part/detail.html:157 +#: part/templates/part/detail.html:162 msgid "Create new variant" msgstr "" -#: part/templates/part/detail.html:158 +#: part/templates/part/detail.html:163 msgid "New Variant" msgstr "" -#: part/templates/part/detail.html:185 +#: part/templates/part/detail.html:190 msgid "Add new parameter" msgstr "Een parameter toevoegen" -#: part/templates/part/detail.html:222 part/templates/part/part_sidebar.html:54 +#: part/templates/part/detail.html:227 part/templates/part/part_sidebar.html:54 msgid "Related Parts" msgstr "" -#: part/templates/part/detail.html:226 part/templates/part/detail.html:227 +#: part/templates/part/detail.html:231 part/templates/part/detail.html:232 msgid "Add Related" msgstr "" -#: part/templates/part/detail.html:247 part/templates/part/part_sidebar.html:17 +#: part/templates/part/detail.html:252 part/templates/part/part_sidebar.html:17 msgid "Bill of Materials" msgstr "" -#: part/templates/part/detail.html:252 +#: part/templates/part/detail.html:257 msgid "Export actions" msgstr "" -#: part/templates/part/detail.html:256 templates/js/translated/bom.js:284 +#: part/templates/part/detail.html:261 templates/js/translated/bom.js:284 msgid "Export BOM" msgstr "" -#: part/templates/part/detail.html:258 +#: part/templates/part/detail.html:263 msgid "Print BOM Report" msgstr "" -#: part/templates/part/detail.html:268 +#: part/templates/part/detail.html:273 msgid "Upload BOM" msgstr "" -#: part/templates/part/detail.html:269 templates/js/translated/part.js:274 +#: part/templates/part/detail.html:274 templates/js/translated/part.js:274 msgid "Copy BOM" msgstr "" -#: part/templates/part/detail.html:270 +#: part/templates/part/detail.html:275 msgid "Validate BOM" msgstr "" -#: part/templates/part/detail.html:275 +#: part/templates/part/detail.html:280 msgid "New BOM Item" msgstr "Nieuw Stuklijstartikel" -#: part/templates/part/detail.html:276 +#: part/templates/part/detail.html:281 msgid "Add BOM Item" msgstr "" -#: part/templates/part/detail.html:289 +#: part/templates/part/detail.html:294 msgid "Assemblies" msgstr "Assemblages" -#: part/templates/part/detail.html:307 +#: part/templates/part/detail.html:312 msgid "Part Builds" msgstr "" -#: part/templates/part/detail.html:334 stock/templates/stock/item.html:38 +#: part/templates/part/detail.html:339 stock/templates/stock/item.html:38 msgid "Build Order Allocations" msgstr "Productieordertoewijzingen" -#: part/templates/part/detail.html:350 +#: part/templates/part/detail.html:355 msgid "Part Suppliers" msgstr "" -#: part/templates/part/detail.html:380 +#: part/templates/part/detail.html:385 msgid "Part Manufacturers" msgstr "Onderdeelfabrikanten" -#: part/templates/part/detail.html:396 +#: part/templates/part/detail.html:401 msgid "Delete manufacturer parts" msgstr "Fabrikantonderdeel verwijderen" -#: part/templates/part/detail.html:612 +#: part/templates/part/detail.html:626 msgid "Create BOM Item" msgstr "" -#: part/templates/part/detail.html:656 +#: part/templates/part/detail.html:670 msgid "Related Part" msgstr "" -#: part/templates/part/detail.html:664 +#: part/templates/part/detail.html:678 msgid "Add Related Part" msgstr "" -#: part/templates/part/detail.html:756 +#: part/templates/part/detail.html:770 msgid "Add Test Result Template" msgstr "" -#: part/templates/part/detail.html:900 +#: part/templates/part/detail.html:914 #, python-format msgid "Purchase Unit Price - %(currency)s" msgstr "" -#: part/templates/part/detail.html:912 +#: part/templates/part/detail.html:926 #, python-format msgid "Unit Price-Cost Difference - %(currency)s" msgstr "" -#: part/templates/part/detail.html:924 +#: part/templates/part/detail.html:938 #, python-format msgid "Supplier Unit Cost - %(currency)s" msgstr "" -#: part/templates/part/detail.html:1013 +#: part/templates/part/detail.html:1027 #, python-format msgid "Unit Price - %(currency)s" msgstr "" @@ -5321,13 +5329,13 @@ msgstr "Toegewezen aan Productieorder" msgid "Allocated to Sales Orders" msgstr "Toegewezen aan verkooporders" -#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1037 +#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1035 msgid "Can Build" msgstr "" #: part/templates/part/part_base.html:238 templates/js/translated/part.js:593 #: templates/js/translated/part.js:613 templates/js/translated/part.js:1306 -#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1494 +#: templates/js/translated/part.js:1490 msgid "Building" msgstr "" @@ -5379,7 +5387,7 @@ msgid "Total Cost" msgstr "" #: part/templates/part/part_pricing.html:40 part/templates/part/prices.html:43 -#: templates/js/translated/bom.js:991 +#: templates/js/translated/bom.js:989 msgid "No supplier pricing available" msgstr "" @@ -5414,6 +5422,18 @@ msgstr "" msgid "No pricing information is available for this part." msgstr "" +#: part/templates/part/part_scheduling.html:13 +#: report/templates/report/inventree_test_report_base.html:97 +#: templates/InvenTree/settings/plugin.html:53 +#: templates/InvenTree/settings/plugin_settings.html:38 +#: templates/js/translated/order.js:1772 templates/js/translated/stock.js:2468 +msgid "Date" +msgstr "Datum" + +#: part/templates/part/part_scheduling.html:14 +msgid "Scheduled Quantity" +msgstr "" + #: part/templates/part/part_sidebar.html:11 msgid "Variants" msgstr "" @@ -5462,7 +5482,7 @@ msgstr "" msgid "Calculation parameters" msgstr "" -#: part/templates/part/prices.html:160 templates/js/translated/bom.js:985 +#: part/templates/part/prices.html:160 templates/js/translated/bom.js:983 msgid "Supplier Cost" msgstr "" @@ -5501,7 +5521,7 @@ msgid "No sale pice history available for this part." msgstr "" #: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616 -#: templates/js/translated/part.js:1294 templates/js/translated/part.js:1498 +#: templates/js/translated/part.js:1294 msgid "No Stock" msgstr "" @@ -5893,11 +5913,11 @@ msgstr "" #: report/templates/report/inventree_test_report_base.html:79 #: stock/models.py:648 stock/templates/stock/item_base.html:322 -#: templates/js/translated/build.js:424 templates/js/translated/build.js:576 -#: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673 +#: templates/js/translated/build.js:456 templates/js/translated/build.js:608 +#: templates/js/translated/build.js:1208 templates/js/translated/build.js:1705 #: templates/js/translated/model_renderers.js:118 -#: templates/js/translated/order.js:118 templates/js/translated/order.js:3297 -#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490 +#: templates/js/translated/order.js:119 templates/js/translated/order.js:3336 +#: templates/js/translated/order.js:3423 templates/js/translated/stock.js:490 msgid "Serial Number" msgstr "Serienummer" @@ -5915,13 +5935,6 @@ msgstr "" msgid "Result" msgstr "" -#: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:53 -#: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468 -msgid "Date" -msgstr "Datum" - #: report/templates/report/inventree_test_report_base.html:108 msgid "Pass" msgstr "" @@ -6519,7 +6532,7 @@ msgid "Available Quantity" msgstr "" #: stock/templates/stock/item_base.html:394 -#: templates/js/translated/build.js:1695 +#: templates/js/translated/build.js:1727 msgid "No location set" msgstr "Geen locatie ingesteld" @@ -7702,7 +7715,7 @@ msgid "The following parts are low on required stock" msgstr "De volgende onderdelen hebben een lage vereiste voorraad" #: templates/email/build_order_required_stock.html:18 -#: templates/js/translated/bom.js:1483 +#: templates/js/translated/bom.js:1481 msgid "Required Quantity" msgstr "Vereiste Hoeveelheid" @@ -7716,6 +7729,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:19 +#: templates/js/translated/part.js:2498 msgid "Minimum Quantity" msgstr "" @@ -7917,10 +7931,10 @@ msgstr "" msgid "Row Data" msgstr "" -#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:622 +#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:620 #: templates/js/translated/modals.js:56 templates/js/translated/modals.js:601 #: templates/js/translated/modals.js:695 templates/js/translated/modals.js:1003 -#: templates/js/translated/order.js:979 templates/modals.html:15 +#: templates/js/translated/order.js:1018 templates/modals.html:15 #: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50 msgid "Close" msgstr "Sluit" @@ -7930,12 +7944,12 @@ msgid "Download BOM Template" msgstr "" #: templates/js/translated/bom.js:253 templates/js/translated/bom.js:287 -#: templates/js/translated/order.js:760 templates/js/translated/tables.js:145 +#: templates/js/translated/order.js:799 templates/js/translated/tables.js:145 msgid "Format" msgstr "Formaat" #: templates/js/translated/bom.js:254 templates/js/translated/bom.js:288 -#: templates/js/translated/order.js:761 +#: templates/js/translated/order.js:800 msgid "Select file format" msgstr "Selecteer bestandsindeling" @@ -7991,390 +8005,390 @@ msgstr "" msgid "Remove substitute part" msgstr "" -#: templates/js/translated/bom.js:567 +#: templates/js/translated/bom.js:565 msgid "Select and add a new substitute part using the input below" msgstr "" -#: templates/js/translated/bom.js:578 +#: templates/js/translated/bom.js:576 msgid "Are you sure you wish to remove this substitute part link?" msgstr "" -#: templates/js/translated/bom.js:584 +#: templates/js/translated/bom.js:582 msgid "Remove Substitute Part" msgstr "" -#: templates/js/translated/bom.js:623 +#: templates/js/translated/bom.js:621 msgid "Add Substitute" msgstr "" -#: templates/js/translated/bom.js:624 +#: templates/js/translated/bom.js:622 msgid "Edit BOM Item Substitutes" msgstr "" -#: templates/js/translated/bom.js:686 +#: templates/js/translated/bom.js:684 msgid "All selected BOM items will be deleted" msgstr "" -#: templates/js/translated/bom.js:702 +#: templates/js/translated/bom.js:700 msgid "Delete selected BOM items?" msgstr "" -#: templates/js/translated/bom.js:821 +#: templates/js/translated/bom.js:819 msgid "Load BOM for subassembly" msgstr "" -#: templates/js/translated/bom.js:831 +#: templates/js/translated/bom.js:829 msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:835 templates/js/translated/build.js:1771 +#: templates/js/translated/bom.js:833 templates/js/translated/build.js:1803 msgid "Variant stock allowed" msgstr "" -#: templates/js/translated/bom.js:929 templates/js/translated/build.js:1816 -#: templates/js/translated/order.js:3632 +#: templates/js/translated/bom.js:927 templates/js/translated/build.js:1849 +#: templates/js/translated/order.js:3671 msgid "No Stock Available" msgstr "Geen Voorraad Aanwezig" -#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1820 +#: templates/js/translated/bom.js:932 templates/js/translated/build.js:1853 msgid "Includes variant and substitute stock" msgstr "" -#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822 +#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1855 #: templates/js/translated/part.js:763 msgid "Includes variant stock" msgstr "" -#: templates/js/translated/bom.js:938 templates/js/translated/build.js:1824 +#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1857 msgid "Includes substitute stock" msgstr "" -#: templates/js/translated/bom.js:956 +#: templates/js/translated/bom.js:954 msgid "Substitutes" msgstr "" -#: templates/js/translated/bom.js:971 +#: templates/js/translated/bom.js:969 msgid "Purchase Price Range" msgstr "" -#: templates/js/translated/bom.js:978 +#: templates/js/translated/bom.js:976 msgid "Purchase Price Average" msgstr "Gemiddelde inkoopprijs" -#: templates/js/translated/bom.js:1027 templates/js/translated/bom.js:1147 +#: templates/js/translated/bom.js:1025 templates/js/translated/bom.js:1145 msgid "View BOM" msgstr "" -#: templates/js/translated/bom.js:1054 +#: templates/js/translated/bom.js:1052 msgid "Including On Order" msgstr "Inclusief Op Bestelling" -#: templates/js/translated/bom.js:1118 +#: templates/js/translated/bom.js:1116 msgid "Validate BOM Item" msgstr "" -#: templates/js/translated/bom.js:1120 +#: templates/js/translated/bom.js:1118 msgid "This line has been validated" msgstr "" -#: templates/js/translated/bom.js:1122 +#: templates/js/translated/bom.js:1120 msgid "Edit substitute parts" msgstr "" -#: templates/js/translated/bom.js:1124 templates/js/translated/bom.js:1286 +#: templates/js/translated/bom.js:1122 templates/js/translated/bom.js:1284 msgid "Edit BOM Item" msgstr "" -#: templates/js/translated/bom.js:1126 +#: templates/js/translated/bom.js:1124 msgid "Delete BOM Item" msgstr "" -#: templates/js/translated/bom.js:1222 templates/js/translated/build.js:1617 +#: templates/js/translated/bom.js:1220 templates/js/translated/build.js:1649 msgid "No BOM items found" msgstr "" -#: templates/js/translated/bom.js:1466 templates/js/translated/build.js:1755 +#: templates/js/translated/bom.js:1464 templates/js/translated/build.js:1787 msgid "Required Part" msgstr "" -#: templates/js/translated/bom.js:1488 +#: templates/js/translated/bom.js:1486 msgid "Inherited from parent BOM" msgstr "" -#: templates/js/translated/build.js:86 +#: templates/js/translated/build.js:89 msgid "Edit Build Order" msgstr "Bewerk Productieorder" -#: templates/js/translated/build.js:120 +#: templates/js/translated/build.js:132 msgid "Create Build Order" msgstr "Maak Productieorder" -#: templates/js/translated/build.js:133 +#: templates/js/translated/build.js:165 msgid "Cancel Build Order" msgstr "Annuleer Productieorder" -#: templates/js/translated/build.js:142 +#: templates/js/translated/build.js:174 msgid "Are you sure you wish to cancel this build?" msgstr "Weet je zeker dat je de productie wilt annuleren?" -#: templates/js/translated/build.js:148 +#: templates/js/translated/build.js:180 msgid "Stock items have been allocated to this build order" msgstr "Voorraadartikelen zijn toegewezen aan deze productieorder" -#: templates/js/translated/build.js:155 +#: templates/js/translated/build.js:187 msgid "There are incomplete outputs remaining for this build order" msgstr "Er staat incomplete productie open voor deze productieorder" -#: templates/js/translated/build.js:185 +#: templates/js/translated/build.js:217 msgid "Build order is ready to be completed" msgstr "Productieorder is gereed om als voltooid te markeren" -#: templates/js/translated/build.js:190 +#: templates/js/translated/build.js:222 msgid "Build Order is incomplete" msgstr "Productieorder is onvolledig" -#: templates/js/translated/build.js:222 +#: templates/js/translated/build.js:254 msgid "Complete Build Order" msgstr "Voltooi Productieoorder" -#: templates/js/translated/build.js:263 templates/js/translated/stock.js:92 +#: templates/js/translated/build.js:295 templates/js/translated/stock.js:92 #: templates/js/translated/stock.js:214 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:265 templates/js/translated/stock.js:94 +#: templates/js/translated/build.js:297 templates/js/translated/stock.js:94 #: templates/js/translated/stock.js:216 msgid "Latest serial number" msgstr "" -#: templates/js/translated/build.js:274 +#: templates/js/translated/build.js:306 msgid "The Bill of Materials contains trackable parts" msgstr "De stuklijst bevat traceerbare onderdelen" -#: templates/js/translated/build.js:275 +#: templates/js/translated/build.js:307 msgid "Build outputs must be generated individually" msgstr "Productieuitvoeren moeten individueel worden gegenereerd" -#: templates/js/translated/build.js:283 +#: templates/js/translated/build.js:315 msgid "Trackable parts can have serial numbers specified" msgstr "Traceerbare onderdelen kunnen een serienummer hebben" -#: templates/js/translated/build.js:284 +#: templates/js/translated/build.js:316 msgid "Enter serial numbers to generate multiple single build outputs" msgstr "Voer serienummers in om meerdere enkelvoudige productuitvoeren te genereren" -#: templates/js/translated/build.js:291 +#: templates/js/translated/build.js:323 msgid "Create Build Output" msgstr "" -#: templates/js/translated/build.js:322 +#: templates/js/translated/build.js:354 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:333 +#: templates/js/translated/build.js:365 msgid "Unallocate stock from build output" msgstr "" -#: templates/js/translated/build.js:342 +#: templates/js/translated/build.js:374 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:350 +#: templates/js/translated/build.js:382 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:373 +#: templates/js/translated/build.js:405 msgid "Are you sure you wish to unallocate stock items from this build?" msgstr "" -#: templates/js/translated/build.js:391 +#: templates/js/translated/build.js:423 msgid "Unallocate Stock Items" msgstr "" -#: templates/js/translated/build.js:411 templates/js/translated/build.js:563 +#: templates/js/translated/build.js:443 templates/js/translated/build.js:595 msgid "Select Build Outputs" msgstr "Selecteer Productieuitvoeren" -#: templates/js/translated/build.js:412 templates/js/translated/build.js:564 +#: templates/js/translated/build.js:444 templates/js/translated/build.js:596 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:466 templates/js/translated/build.js:618 +#: templates/js/translated/build.js:498 templates/js/translated/build.js:650 msgid "Output" msgstr "" -#: templates/js/translated/build.js:484 +#: templates/js/translated/build.js:516 msgid "Complete Build Outputs" msgstr "Voltooi Productieuitvoeren" -#: templates/js/translated/build.js:631 +#: templates/js/translated/build.js:663 msgid "Delete Build Outputs" msgstr "Verwijder Productieuitvoeren" -#: templates/js/translated/build.js:720 +#: templates/js/translated/build.js:752 msgid "No build order allocations found" msgstr "Geen productieordertoewijzingen gevonden" -#: templates/js/translated/build.js:757 +#: templates/js/translated/build.js:789 msgid "Location not specified" msgstr "Locatie is niet opgegeven" -#: templates/js/translated/build.js:1136 +#: templates/js/translated/build.js:1168 msgid "No active build outputs found" msgstr "Geen actieve productieuitvoeren gevonden" -#: templates/js/translated/build.js:1205 +#: templates/js/translated/build.js:1237 msgid "Allocated Stock" msgstr "" -#: templates/js/translated/build.js:1212 +#: templates/js/translated/build.js:1244 msgid "No tracked BOM items for this build" msgstr "" -#: templates/js/translated/build.js:1234 +#: templates/js/translated/build.js:1266 msgid "Completed Tests" msgstr "" -#: templates/js/translated/build.js:1239 +#: templates/js/translated/build.js:1271 msgid "No required tests for this build" msgstr "" -#: templates/js/translated/build.js:1712 templates/js/translated/build.js:2656 -#: templates/js/translated/order.js:3332 +#: templates/js/translated/build.js:1744 templates/js/translated/build.js:2689 +#: templates/js/translated/order.js:3371 msgid "Edit stock allocation" msgstr "Voorraadtoewijzing bewerken" -#: templates/js/translated/build.js:1714 templates/js/translated/build.js:2657 -#: templates/js/translated/order.js:3333 +#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2690 +#: templates/js/translated/order.js:3372 msgid "Delete stock allocation" msgstr "Voorraadtoewijzing verwijderen" -#: templates/js/translated/build.js:1732 +#: templates/js/translated/build.js:1764 msgid "Edit Allocation" msgstr "" -#: templates/js/translated/build.js:1742 +#: templates/js/translated/build.js:1774 msgid "Remove Allocation" msgstr "" -#: templates/js/translated/build.js:1767 +#: templates/js/translated/build.js:1799 msgid "Substitute parts available" msgstr "" -#: templates/js/translated/build.js:1784 +#: templates/js/translated/build.js:1816 msgid "Quantity Per" msgstr "" -#: templates/js/translated/build.js:1810 templates/js/translated/order.js:3639 +#: templates/js/translated/build.js:1843 templates/js/translated/order.js:3678 msgid "Insufficient stock available" msgstr "Onvoldoende voorraad beschikbaar" -#: templates/js/translated/build.js:1812 templates/js/translated/order.js:3637 +#: templates/js/translated/build.js:1845 templates/js/translated/order.js:3676 msgid "Sufficient stock available" msgstr "Genoeg voorraad beschikbaar" -#: templates/js/translated/build.js:1841 templates/js/translated/build.js:2086 -#: templates/js/translated/build.js:2652 templates/js/translated/order.js:3651 +#: templates/js/translated/build.js:1874 templates/js/translated/build.js:2119 +#: templates/js/translated/build.js:2685 templates/js/translated/order.js:3690 msgid "Allocated" msgstr "Toegewezen" -#: templates/js/translated/build.js:1889 templates/js/translated/order.js:3731 +#: templates/js/translated/build.js:1922 templates/js/translated/order.js:3770 msgid "Build stock" msgstr "Productie voorraad" -#: templates/js/translated/build.js:1893 templates/stock_table.html:50 +#: templates/js/translated/build.js:1926 templates/stock_table.html:50 msgid "Order stock" msgstr "Voorraad order" -#: templates/js/translated/build.js:1896 templates/js/translated/order.js:3724 +#: templates/js/translated/build.js:1929 templates/js/translated/order.js:3763 msgid "Allocate stock" msgstr "Voorraad toewijzen" -#: templates/js/translated/build.js:1935 templates/js/translated/label.js:172 -#: templates/js/translated/order.js:807 templates/js/translated/order.js:2859 +#: templates/js/translated/build.js:1968 templates/js/translated/label.js:172 +#: templates/js/translated/order.js:846 templates/js/translated/order.js:2898 #: templates/js/translated/report.js:225 msgid "Select Parts" msgstr "Onderdelen selecteren" -#: templates/js/translated/build.js:1936 templates/js/translated/order.js:2860 +#: templates/js/translated/build.js:1969 templates/js/translated/order.js:2899 msgid "You must select at least one part to allocate" msgstr "Er moet op zijn minst één onderdeel toegewezen worden" -#: templates/js/translated/build.js:1985 templates/js/translated/order.js:2808 +#: templates/js/translated/build.js:2018 templates/js/translated/order.js:2847 msgid "Specify stock allocation quantity" msgstr "Specificeer voorraadtoewijzingshoeveelheid" -#: templates/js/translated/build.js:2059 +#: templates/js/translated/build.js:2092 msgid "All Parts Allocated" msgstr "" -#: templates/js/translated/build.js:2060 +#: templates/js/translated/build.js:2093 msgid "All selected parts have been fully allocated" msgstr "" -#: templates/js/translated/build.js:2074 templates/js/translated/order.js:2874 +#: templates/js/translated/build.js:2107 templates/js/translated/order.js:2913 msgid "Select source location (leave blank to take from all locations)" msgstr "Selecteer bron locatie (laat het veld leeg om iedere locatie te gebruiken)" -#: templates/js/translated/build.js:2102 +#: templates/js/translated/build.js:2135 msgid "Allocate Stock Items to Build Order" msgstr "Voorraadartikelen toewijzen aan Productieorder" -#: templates/js/translated/build.js:2113 templates/js/translated/order.js:2971 +#: templates/js/translated/build.js:2146 templates/js/translated/order.js:3010 msgid "No matching stock locations" msgstr "Geen overeenkomende voorraadlocaties" -#: templates/js/translated/build.js:2185 templates/js/translated/order.js:3048 +#: templates/js/translated/build.js:2218 templates/js/translated/order.js:3087 msgid "No matching stock items" msgstr "Geen overeenkomende voorraadartikelen" -#: templates/js/translated/build.js:2282 +#: templates/js/translated/build.js:2315 msgid "Automatic Stock Allocation" msgstr "" -#: templates/js/translated/build.js:2283 +#: templates/js/translated/build.js:2316 msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines" msgstr "Voorraadartikelen zullen automatisch worden toegewezen aan de productieorder volgens de aangegeven richtlijnen" -#: templates/js/translated/build.js:2285 +#: templates/js/translated/build.js:2318 msgid "If a location is specifed, stock will only be allocated from that location" msgstr "" -#: templates/js/translated/build.js:2286 +#: templates/js/translated/build.js:2319 msgid "If stock is considered interchangeable, it will be allocated from the first location it is found" msgstr "" -#: templates/js/translated/build.js:2287 +#: templates/js/translated/build.js:2320 msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found" msgstr "" -#: templates/js/translated/build.js:2308 +#: templates/js/translated/build.js:2341 msgid "Allocate Stock Items" msgstr "" -#: templates/js/translated/build.js:2414 +#: templates/js/translated/build.js:2447 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387 -#: templates/js/translated/part.js:1899 templates/js/translated/stock.js:1686 +#: templates/js/translated/build.js:2482 templates/js/translated/part.js:1387 +#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1686 #: templates/js/translated/stock.js:2386 msgid "Select" msgstr "" -#: templates/js/translated/build.js:2463 +#: templates/js/translated/build.js:2496 msgid "Build order is overdue" msgstr "Productieorder is achterstallig" -#: templates/js/translated/build.js:2491 +#: templates/js/translated/build.js:2524 msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647 +#: templates/js/translated/build.js:2560 templates/js/translated/stock.js:2647 msgid "No user information" msgstr "" -#: templates/js/translated/build.js:2633 +#: templates/js/translated/build.js:2666 msgid "No parts allocated for" msgstr "" @@ -8390,11 +8404,11 @@ msgstr "Fabrikantonderdeel toevoegen" msgid "Edit Manufacturer Part" msgstr "Fabrikantonderdeel bewerken" -#: templates/js/translated/company.js:167 templates/js/translated/order.js:509 +#: templates/js/translated/company.js:167 templates/js/translated/order.js:510 msgid "Add Supplier" msgstr "Leverancier Toevoegen" -#: templates/js/translated/company.js:195 templates/js/translated/order.js:628 +#: templates/js/translated/company.js:195 templates/js/translated/order.js:667 msgid "Add Supplier Part" msgstr "Leveranciersonderdeel Toevoegen" @@ -8765,381 +8779,385 @@ msgstr "" msgid "Notifications will load here" msgstr "" -#: templates/js/translated/order.js:94 +#: templates/js/translated/order.js:95 msgid "No stock items have been allocated to this shipment" msgstr "Geen voorraadartikelen toegewezen aan deze zending" -#: templates/js/translated/order.js:99 +#: templates/js/translated/order.js:100 msgid "The following stock items will be shipped" msgstr "De volgende voorraadartikelen worden verzonden" -#: templates/js/translated/order.js:139 +#: templates/js/translated/order.js:140 msgid "Complete Shipment" msgstr "Verzending Voltooien" -#: templates/js/translated/order.js:159 +#: templates/js/translated/order.js:160 msgid "Confirm Shipment" msgstr "Verzending Bevestigen" -#: templates/js/translated/order.js:215 +#: templates/js/translated/order.js:216 msgid "No pending shipments found" msgstr "Geen verzendingen in behandeling gevonden" -#: templates/js/translated/order.js:219 +#: templates/js/translated/order.js:220 msgid "No stock items have been allocated to pending shipments" msgstr "" -#: templates/js/translated/order.js:251 +#: templates/js/translated/order.js:252 msgid "Skip" msgstr "" -#: templates/js/translated/order.js:281 +#: templates/js/translated/order.js:282 msgid "Complete Purchase Order" msgstr "Voltooi Inkooporder" -#: templates/js/translated/order.js:287 +#: templates/js/translated/order.js:288 msgid "Mark this order as complete?" msgstr "Order markeren als voltooid?" -#: templates/js/translated/order.js:293 +#: templates/js/translated/order.js:294 msgid "All line items have been received" msgstr "Alle artikelen zijn ontvangen" -#: templates/js/translated/order.js:298 +#: templates/js/translated/order.js:299 msgid "This order has line items which have not been marked as received." msgstr "Deze order heeft artikelen die niet zijn gemarkeerd als ontvangen." -#: templates/js/translated/order.js:299 +#: templates/js/translated/order.js:300 msgid "Completing this order means that the order and line items will no longer be editable." msgstr "Na het voltooien van de order zijn de order en de artikelen langer bewerkbaar." -#: templates/js/translated/order.js:322 +#: templates/js/translated/order.js:323 msgid "Cancel Purchase Order" msgstr "Inkooporder annuleren" -#: templates/js/translated/order.js:327 +#: templates/js/translated/order.js:328 msgid "Are you sure you wish to cancel this purchase order?" msgstr "Weet u zeker dat u deze inkooporder wilt annuleren?" -#: templates/js/translated/order.js:333 +#: templates/js/translated/order.js:334 msgid "This purchase order can not be cancelled" msgstr "Deze inkooporder kan niet geannuleerd worden" -#: templates/js/translated/order.js:356 +#: templates/js/translated/order.js:357 msgid "Issue Purchase Order" msgstr "Geef inkooporder uit" -#: templates/js/translated/order.js:361 +#: templates/js/translated/order.js:362 msgid "After placing this purchase order, line items will no longer be editable." msgstr "Na het plaatsen van de inkooporder zijn de artikelen niet meer bewerkbaar." -#: templates/js/translated/order.js:383 +#: templates/js/translated/order.js:384 msgid "Cancel Sales Order" msgstr "Verkooporder annuleren" -#: templates/js/translated/order.js:388 +#: templates/js/translated/order.js:389 msgid "Cancelling this order means that the order will no longer be editable." msgstr "Na annulering van de order kan de order niet meer bewerkt worden." -#: templates/js/translated/order.js:442 +#: templates/js/translated/order.js:443 msgid "Create New Shipment" msgstr "" -#: templates/js/translated/order.js:467 +#: templates/js/translated/order.js:468 msgid "Add Customer" msgstr "" -#: templates/js/translated/order.js:492 +#: templates/js/translated/order.js:493 msgid "Create Sales Order" msgstr "Verkooporder aanmaken" -#: templates/js/translated/order.js:757 +#: templates/js/translated/order.js:554 +msgid "Edit Purchase Order" +msgstr "Bewerk Inkooporder" + +#: templates/js/translated/order.js:796 msgid "Export Order" msgstr "Export Order" -#: templates/js/translated/order.js:808 +#: templates/js/translated/order.js:847 msgid "At least one purchaseable part must be selected" msgstr "" -#: templates/js/translated/order.js:833 +#: templates/js/translated/order.js:872 msgid "Quantity to order" msgstr "Te bestellen aantal" -#: templates/js/translated/order.js:842 +#: templates/js/translated/order.js:881 msgid "New supplier part" msgstr "" -#: templates/js/translated/order.js:860 +#: templates/js/translated/order.js:899 msgid "New purchase order" msgstr "Nieuwe inkooporder" -#: templates/js/translated/order.js:893 +#: templates/js/translated/order.js:932 msgid "Add to purchase order" msgstr "Toevoegen aan inkooporder" -#: templates/js/translated/order.js:1002 +#: templates/js/translated/order.js:1041 msgid "No matching supplier parts" msgstr "" -#: templates/js/translated/order.js:1017 +#: templates/js/translated/order.js:1056 msgid "No matching purchase orders" msgstr "Geen overeenkomende inkooporders" -#: templates/js/translated/order.js:1194 +#: templates/js/translated/order.js:1233 msgid "Select Line Items" msgstr "Selecteer artikelen" -#: templates/js/translated/order.js:1195 +#: templates/js/translated/order.js:1234 msgid "At least one line item must be selected" msgstr "Ten minste één artikel moet worden geselecteerd" -#: templates/js/translated/order.js:1215 templates/js/translated/order.js:1314 +#: templates/js/translated/order.js:1254 templates/js/translated/order.js:1353 msgid "Add batch code" msgstr "" -#: templates/js/translated/order.js:1221 templates/js/translated/order.js:1325 +#: templates/js/translated/order.js:1260 templates/js/translated/order.js:1364 msgid "Add serial numbers" msgstr "" -#: templates/js/translated/order.js:1233 +#: templates/js/translated/order.js:1272 msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144 +#: templates/js/translated/order.js:1336 templates/js/translated/stock.js:2144 msgid "Stock Status" msgstr "" -#: templates/js/translated/order.js:1388 +#: templates/js/translated/order.js:1427 msgid "Order Code" msgstr "Order Code" -#: templates/js/translated/order.js:1389 +#: templates/js/translated/order.js:1428 msgid "Ordered" msgstr "Besteld" -#: templates/js/translated/order.js:1391 +#: templates/js/translated/order.js:1430 msgid "Quantity to Receive" msgstr "" -#: templates/js/translated/order.js:1410 +#: templates/js/translated/order.js:1449 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/order.js:1411 +#: templates/js/translated/order.js:1450 msgid "Receive Purchase Order Items" msgstr "Ontvang Artikelen Inkooporder" -#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943 +#: templates/js/translated/order.js:1711 templates/js/translated/part.js:943 msgid "No purchase orders found" msgstr "Geen inkooporder gevonden" -#: templates/js/translated/order.js:1699 templates/js/translated/order.js:2503 +#: templates/js/translated/order.js:1738 templates/js/translated/order.js:2542 msgid "Order is overdue" msgstr "Order is achterstallig" -#: templates/js/translated/order.js:1749 templates/js/translated/order.js:2568 -#: templates/js/translated/order.js:2709 +#: templates/js/translated/order.js:1788 templates/js/translated/order.js:2607 +#: templates/js/translated/order.js:2748 msgid "Items" msgstr "Artikelen" -#: templates/js/translated/order.js:1847 templates/js/translated/order.js:3783 +#: templates/js/translated/order.js:1886 templates/js/translated/order.js:3822 msgid "Duplicate Line Item" msgstr "Artikel dupliceren" -#: templates/js/translated/order.js:1864 templates/js/translated/order.js:3805 +#: templates/js/translated/order.js:1903 templates/js/translated/order.js:3844 msgid "Edit Line Item" msgstr "Artikel wijzigen" -#: templates/js/translated/order.js:1877 templates/js/translated/order.js:3816 +#: templates/js/translated/order.js:1916 templates/js/translated/order.js:3855 msgid "Delete Line Item" msgstr "Artikel verwijderen" -#: templates/js/translated/order.js:1920 +#: templates/js/translated/order.js:1959 msgid "No line items found" msgstr "Geen artikelen gevonden" -#: templates/js/translated/order.js:1947 templates/js/translated/order.js:3517 +#: templates/js/translated/order.js:1986 templates/js/translated/order.js:3556 msgid "Total" msgstr "Totaal" -#: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203 -#: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050 -#: templates/js/translated/part.js:2135 templates/js/translated/part.js:2488 +#: templates/js/translated/order.js:2040 templates/js/translated/order.js:2242 +#: templates/js/translated/order.js:3581 templates/js/translated/order.js:4089 +#: templates/js/translated/part.js:2131 templates/js/translated/part.js:2703 msgid "Unit Price" msgstr "Stukprijs" -#: templates/js/translated/order.js:2016 templates/js/translated/order.js:2219 -#: templates/js/translated/order.js:3558 templates/js/translated/order.js:4066 +#: templates/js/translated/order.js:2055 templates/js/translated/order.js:2258 +#: templates/js/translated/order.js:3597 templates/js/translated/order.js:4105 msgid "Total Price" msgstr "Totaalprijs" -#: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600 +#: templates/js/translated/order.js:2096 templates/js/translated/order.js:3639 #: templates/js/translated/part.js:1050 msgid "This line item is overdue" msgstr "Dit artikel is achterstallig" -#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096 +#: templates/js/translated/order.js:2155 templates/js/translated/part.js:1096 msgid "Receive line item" msgstr "Artikel ontvangen" -#: templates/js/translated/order.js:2120 templates/js/translated/order.js:3737 +#: templates/js/translated/order.js:2159 templates/js/translated/order.js:3776 msgid "Duplicate line item" msgstr "Artikel dupliceren" -#: templates/js/translated/order.js:2121 templates/js/translated/order.js:3738 +#: templates/js/translated/order.js:2160 templates/js/translated/order.js:3777 msgid "Edit line item" msgstr "Artikel bewerken" -#: templates/js/translated/order.js:2122 templates/js/translated/order.js:3742 +#: templates/js/translated/order.js:2161 templates/js/translated/order.js:3781 msgid "Delete line item" msgstr "Artikel verwijderen" -#: templates/js/translated/order.js:2268 templates/js/translated/order.js:4115 +#: templates/js/translated/order.js:2307 templates/js/translated/order.js:4154 msgid "Duplicate line" msgstr "Kopieer regel" -#: templates/js/translated/order.js:2269 templates/js/translated/order.js:4116 +#: templates/js/translated/order.js:2308 templates/js/translated/order.js:4155 msgid "Edit line" msgstr "Bewerk regel" -#: templates/js/translated/order.js:2270 templates/js/translated/order.js:4117 +#: templates/js/translated/order.js:2309 templates/js/translated/order.js:4156 msgid "Delete line" msgstr "Verwijder regel" -#: templates/js/translated/order.js:2300 templates/js/translated/order.js:4147 +#: templates/js/translated/order.js:2339 templates/js/translated/order.js:4186 msgid "Duplicate Line" msgstr "Kopieer Regel" -#: templates/js/translated/order.js:2321 templates/js/translated/order.js:4168 +#: templates/js/translated/order.js:2360 templates/js/translated/order.js:4207 msgid "Edit Line" msgstr "Bewerk Regel" -#: templates/js/translated/order.js:2332 templates/js/translated/order.js:4179 +#: templates/js/translated/order.js:2371 templates/js/translated/order.js:4218 msgid "Delete Line" msgstr "Verwijder Regel" -#: templates/js/translated/order.js:2343 +#: templates/js/translated/order.js:2382 msgid "No matching line" msgstr "Geen overeenkomende regel" -#: templates/js/translated/order.js:2454 +#: templates/js/translated/order.js:2493 msgid "No sales orders found" msgstr "Geen verkooporder gevonden" -#: templates/js/translated/order.js:2517 +#: templates/js/translated/order.js:2556 msgid "Invalid Customer" msgstr "Ongeldige Klant" -#: templates/js/translated/order.js:2615 +#: templates/js/translated/order.js:2654 msgid "Edit shipment" msgstr "Verzending bewerken" -#: templates/js/translated/order.js:2618 +#: templates/js/translated/order.js:2657 msgid "Complete shipment" msgstr "Verzending Voltooien" -#: templates/js/translated/order.js:2623 +#: templates/js/translated/order.js:2662 msgid "Delete shipment" msgstr "Verzending verwijderen" -#: templates/js/translated/order.js:2643 +#: templates/js/translated/order.js:2682 msgid "Edit Shipment" msgstr "Verzending bewerken" -#: templates/js/translated/order.js:2660 +#: templates/js/translated/order.js:2699 msgid "Delete Shipment" msgstr "Verzending verwijderen" -#: templates/js/translated/order.js:2694 +#: templates/js/translated/order.js:2733 msgid "No matching shipments found" msgstr "Geen overeenkomende verzending gevonden" -#: templates/js/translated/order.js:2704 +#: templates/js/translated/order.js:2743 msgid "Shipment Reference" msgstr "Verzendingsreferentie" -#: templates/js/translated/order.js:2728 +#: templates/js/translated/order.js:2767 msgid "Not shipped" msgstr "Niet verzonden" -#: templates/js/translated/order.js:2734 +#: templates/js/translated/order.js:2773 msgid "Tracking" msgstr "Volgen" -#: templates/js/translated/order.js:2738 +#: templates/js/translated/order.js:2777 msgid "Invoice" msgstr "Factuur" -#: templates/js/translated/order.js:2907 +#: templates/js/translated/order.js:2946 msgid "Add Shipment" msgstr "Voeg Verzending toe" -#: templates/js/translated/order.js:2958 +#: templates/js/translated/order.js:2997 msgid "Confirm stock allocation" msgstr "Bevestig de voorraadtoewijzing" -#: templates/js/translated/order.js:2959 +#: templates/js/translated/order.js:2998 msgid "Allocate Stock Items to Sales Order" msgstr "Voorraadartikel toewijzen aan Verkooporder" -#: templates/js/translated/order.js:3167 +#: templates/js/translated/order.js:3206 msgid "No sales order allocations found" msgstr "Geen verkooporder toewijzingen gevonden" -#: templates/js/translated/order.js:3246 +#: templates/js/translated/order.js:3285 msgid "Edit Stock Allocation" msgstr "Bewerk Voorraadtoewijzing" -#: templates/js/translated/order.js:3263 +#: templates/js/translated/order.js:3302 msgid "Confirm Delete Operation" msgstr "Bevestig Verwijderen" -#: templates/js/translated/order.js:3264 +#: templates/js/translated/order.js:3303 msgid "Delete Stock Allocation" msgstr "Verwijder Voorraadtoewijzing" -#: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398 +#: templates/js/translated/order.js:3348 templates/js/translated/order.js:3437 #: templates/js/translated/stock.js:1602 msgid "Shipped to customer" msgstr "Verzonden aan klant" -#: templates/js/translated/order.js:3317 templates/js/translated/order.js:3407 +#: templates/js/translated/order.js:3356 templates/js/translated/order.js:3446 msgid "Stock location not specified" msgstr "Voorraadlocatie niet gespecificeerd" -#: templates/js/translated/order.js:3721 +#: templates/js/translated/order.js:3760 msgid "Allocate serial numbers" msgstr "Wijs serienummers toe" -#: templates/js/translated/order.js:3727 +#: templates/js/translated/order.js:3766 msgid "Purchase stock" msgstr "Koop voorraad" -#: templates/js/translated/order.js:3734 templates/js/translated/order.js:3932 +#: templates/js/translated/order.js:3773 templates/js/translated/order.js:3971 msgid "Calculate price" msgstr "Bereken prijs" -#: templates/js/translated/order.js:3746 +#: templates/js/translated/order.js:3785 msgid "Cannot be deleted as items have been shipped" msgstr "Kan niet worden verwijderd omdat artikelen verzonden zijn" -#: templates/js/translated/order.js:3749 +#: templates/js/translated/order.js:3788 msgid "Cannot be deleted as items have been allocated" msgstr "Kan niet worden verwijderd omdat artikelen toegewezen zijn" -#: templates/js/translated/order.js:3831 +#: templates/js/translated/order.js:3870 msgid "Allocate Serial Numbers" msgstr "Wijs Serienummers Toe" -#: templates/js/translated/order.js:3940 +#: templates/js/translated/order.js:3979 msgid "Update Unit Price" msgstr "Werk Stukprijs Bij" -#: templates/js/translated/order.js:3954 +#: templates/js/translated/order.js:3993 msgid "No matching line items" msgstr "Geen overeenkomende artikelen" -#: templates/js/translated/order.js:4190 +#: templates/js/translated/order.js:4229 msgid "No matching lines" msgstr "Geen overeenkomende regels" @@ -9319,12 +9337,12 @@ msgstr "" msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:586 templates/js/translated/part.js:1470 +#: templates/js/translated/part.js:586 templates/js/translated/part.js:1478 #: templates/js/translated/table_filters.js:468 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:596 templates/js/translated/part.js:1482 +#: templates/js/translated/part.js:596 msgid "No stock available" msgstr "" @@ -9356,7 +9374,7 @@ msgstr "" msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1553 +#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1549 msgid "No parts found" msgstr "" @@ -9368,100 +9386,124 @@ msgstr "" msgid "No category" msgstr "" -#: templates/js/translated/part.js:1577 templates/js/translated/part.js:1820 +#: templates/js/translated/part.js:1476 +msgid "No stock" +msgstr "" + +#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816 #: templates/js/translated/stock.js:2347 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:1593 +#: templates/js/translated/part.js:1589 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:1659 +#: templates/js/translated/part.js:1655 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:1664 +#: templates/js/translated/part.js:1660 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:1669 +#: templates/js/translated/part.js:1665 msgid "Select Part Category" msgstr "" -#: templates/js/translated/part.js:1682 +#: templates/js/translated/part.js:1678 msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1839 templates/js/translated/stock.js:2366 +#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2366 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:1918 +#: templates/js/translated/part.js:1914 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:1934 +#: templates/js/translated/part.js:1930 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:1992 +#: templates/js/translated/part.js:1988 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2043 templates/js/translated/stock.js:1299 +#: templates/js/translated/part.js:2039 templates/js/translated/stock.js:1299 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:2044 templates/js/translated/stock.js:1300 +#: templates/js/translated/part.js:2040 templates/js/translated/stock.js:1300 #: templates/js/translated/stock.js:1560 msgid "Delete test result" msgstr "" -#: templates/js/translated/part.js:2050 +#: templates/js/translated/part.js:2046 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2072 +#: templates/js/translated/part.js:2068 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2086 +#: templates/js/translated/part.js:2082 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2111 +#: templates/js/translated/part.js:2107 #, python-brace-format msgid "No ${human_name} information found" msgstr "" -#: templates/js/translated/part.js:2168 +#: templates/js/translated/part.js:2164 #, python-brace-format msgid "Edit ${human_name}" msgstr "" -#: templates/js/translated/part.js:2169 +#: templates/js/translated/part.js:2165 #, python-brace-format msgid "Delete ${human_name}" msgstr "" -#: templates/js/translated/part.js:2283 -msgid "Current Stock" +#: templates/js/translated/part.js:2330 templates/js/translated/part.js:2331 +msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:2316 +#: templates/js/translated/part.js:2333 +msgid "Specified date is in the past" +msgstr "" + +#: templates/js/translated/part.js:2339 +msgid "Speculative" +msgstr "" + +#: templates/js/translated/part.js:2389 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2342 +#: templates/js/translated/part.js:2395 +msgid "Error fetching scheduling information for this part" +msgstr "" + +#: templates/js/translated/part.js:2491 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2412 +#: templates/js/translated/part.js:2507 +msgid "Maximum Quantity" +msgstr "" + +#: templates/js/translated/part.js:2533 +msgid "Minimum Stock Level" +msgstr "" + +#: templates/js/translated/part.js:2627 msgid "Single Price" msgstr "" -#: templates/js/translated/part.js:2431 +#: templates/js/translated/part.js:2646 msgid "Single Price Difference" msgstr "" @@ -10222,10 +10264,6 @@ msgstr "" msgid "Hide/Show pagination" msgstr "" -#: templates/js/translated/tables.js:558 -msgid "Refresh" -msgstr "" - #: templates/js/translated/tables.js:561 msgid "Toggle" msgstr "" diff --git a/InvenTree/locale/no/LC_MESSAGES/django.po b/InvenTree/locale/no/LC_MESSAGES/django.po index 6e0cf418be..56c88f833e 100644 --- a/InvenTree/locale/no/LC_MESSAGES/django.po +++ b/InvenTree/locale/no/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-16 11:53+0000\n" -"PO-Revision-Date: 2022-08-16 21:35\n" +"POT-Creation-Date: 2022-08-18 05:14+0000\n" +"PO-Revision-Date: 2022-08-18 21:39\n" "Last-Translator: \n" "Language-Team: Norwegian\n" "Language: no_NO\n" @@ -40,10 +40,10 @@ msgstr "Oppgi dato" #: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825 #: stock/serializers.py:924 stock/serializers.py:1056 #: stock/templates/stock/stock_sidebar.html:25 -#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101 -#: templates/js/translated/company.js:964 templates/js/translated/order.js:2104 -#: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753 -#: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102 +#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1099 +#: templates/js/translated/company.js:964 templates/js/translated/order.js:2143 +#: templates/js/translated/order.js:2294 templates/js/translated/order.js:2792 +#: templates/js/translated/order.js:3743 templates/js/translated/order.js:4141 #: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980 msgid "Notes" msgstr "Notater" @@ -211,11 +211,11 @@ msgstr "Velg fil å legge ved" #: InvenTree/models.py:402 company/models.py:124 company/models.py:276 #: company/models.py:510 order/models.py:84 order/models.py:1245 -#: part/models.py:802 +#: part/models.py:802 part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_base.html:164 #: templates/js/translated/company.js:656 -#: templates/js/translated/company.js:948 templates/js/translated/order.js:2742 -#: templates/js/translated/part.js:1514 +#: templates/js/translated/company.js:948 templates/js/translated/order.js:2781 +#: templates/js/translated/part.js:1510 msgid "Link" msgstr "Lenke" @@ -235,8 +235,8 @@ msgstr "Kommentar til fil" #: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665 #: common/models.py:1666 common/models.py:1889 common/models.py:1890 -#: common/models.py:2152 common/models.py:2153 part/models.py:2200 -#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257 +#: common/models.py:2152 common/models.py:2153 part/models.py:2247 +#: part/models.py:2267 plugin/models.py:256 plugin/models.py:257 #: report/templates/report/inventree_test_report_base.html:96 #: templates/js/translated/stock.js:2641 msgid "User" @@ -277,7 +277,7 @@ msgstr "Ugyldig valg" #: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875 #: company/models.py:358 label/models.py:101 part/models.py:746 -#: part/models.py:2378 plugin/models.py:94 report/models.py:152 +#: part/models.py:2425 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 #: templates/InvenTree/settings/plugin.html:51 #: templates/InvenTree/settings/plugin.html:134 @@ -287,7 +287,7 @@ msgstr "Ugyldig valg" #: templates/js/translated/company.js:758 #: templates/js/translated/notification.js:71 #: templates/js/translated/part.js:688 templates/js/translated/part.js:840 -#: templates/js/translated/part.js:1906 templates/js/translated/stock.js:2392 +#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2392 msgid "Name" msgstr "Navn" @@ -297,19 +297,20 @@ msgstr "Navn" #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:87 label/models.py:108 #: order/models.py:82 part/models.py:769 part/templates/part/category.html:80 -#: part/templates/part/part_base.html:167 report/models.py:165 +#: part/templates/part/part_base.html:167 +#: part/templates/part/part_scheduling.html:12 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 #: stock/templates/stock/location.html:108 #: templates/InvenTree/settings/plugin_settings.html:33 -#: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848 -#: templates/js/translated/build.js:2471 templates/js/translated/company.js:409 +#: templates/js/translated/bom.js:553 templates/js/translated/bom.js:846 +#: templates/js/translated/build.js:2504 templates/js/translated/company.js:409 #: templates/js/translated/company.js:667 -#: templates/js/translated/company.js:959 templates/js/translated/order.js:1720 -#: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531 +#: templates/js/translated/company.js:959 templates/js/translated/order.js:1759 +#: templates/js/translated/order.js:1991 templates/js/translated/order.js:2570 #: templates/js/translated/part.js:747 templates/js/translated/part.js:1153 -#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1942 -#: templates/js/translated/part.js:2011 templates/js/translated/stock.js:1743 +#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1938 +#: templates/js/translated/part.js:2007 templates/js/translated/stock.js:1743 #: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478 msgid "Description" msgstr "Beskrivelse" @@ -323,7 +324,7 @@ msgid "parent" msgstr "overkategori" #: InvenTree/models.py:560 InvenTree/models.py:561 -#: templates/js/translated/part.js:1948 templates/js/translated/stock.js:2430 +#: templates/js/translated/part.js:1944 templates/js/translated/stock.js:2430 msgid "Path" msgstr "" @@ -335,7 +336,7 @@ msgstr "" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:55 part/models.py:2699 +#: InvenTree/serializers.py:55 part/models.py:2746 msgid "Must be a valid number" msgstr "Nummer må være gyldig" @@ -541,7 +542,7 @@ msgid "Returned" msgstr "Returnert" #: InvenTree/status_codes.py:141 order/models.py:1128 -#: templates/js/translated/order.js:3330 templates/js/translated/order.js:3679 +#: templates/js/translated/order.js:3369 templates/js/translated/order.js:3718 msgid "Shipped" msgstr "Sendt" @@ -728,7 +729,7 @@ msgstr "Ugylding valg for overordnet build" #: report/templates/report/inventree_build_order_base.html:105 #: templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 -#: templates/js/translated/build.js:731 +#: templates/js/translated/build.js:763 msgid "Build Order" msgstr "Build ordre" @@ -747,14 +748,14 @@ msgid "Build Order Reference" msgstr "Bygg ordrereferanse" #: build/models.py:166 order/models.py:240 order/models.py:623 -#: order/models.py:904 part/models.py:2617 +#: order/models.py:904 part/models.py:2664 #: part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 -#: templates/js/translated/bom.js:692 templates/js/translated/bom.js:855 -#: templates/js/translated/build.js:1779 templates/js/translated/order.js:1983 -#: templates/js/translated/order.js:2184 templates/js/translated/order.js:3523 -#: templates/js/translated/order.js:4031 +#: templates/js/translated/bom.js:690 templates/js/translated/bom.js:853 +#: templates/js/translated/build.js:1811 templates/js/translated/order.js:2022 +#: templates/js/translated/order.js:2223 templates/js/translated/order.js:3562 +#: templates/js/translated/order.js:4070 msgid "Reference" msgstr "Referanse" @@ -762,7 +763,7 @@ msgstr "Referanse" msgid "Brief description of the build" msgstr "Kort beskrivelse av build" -#: build/models.py:185 build/templates/build/build_base.html:169 +#: build/models.py:185 build/templates/build/build_base.html:172 #: build/templates/build/detail.html:87 msgid "Parent Build" msgstr "Overordnet build" @@ -771,13 +772,13 @@ msgstr "Overordnet build" msgid "BuildOrder to which this build is allocated" msgstr "Build order som denne build er tildelt til" -#: build/models.py:191 build/templates/build/build_base.html:77 +#: build/models.py:191 build/templates/build/build_base.html:80 #: build/templates/build/detail.html:29 company/models.py:670 #: order/models.py:1001 order/models.py:1112 order/models.py:1113 -#: part/models.py:343 part/models.py:2146 part/models.py:2161 -#: part/models.py:2180 part/models.py:2198 part/models.py:2297 -#: part/models.py:2417 part/models.py:2507 part/models.py:2592 -#: part/models.py:2868 part/serializers.py:813 +#: part/models.py:343 part/models.py:2193 part/models.py:2208 +#: part/models.py:2227 part/models.py:2245 part/models.py:2344 +#: part/models.py:2464 part/models.py:2554 part/models.py:2639 +#: part/models.py:2915 part/serializers.py:813 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -789,17 +790,17 @@ msgstr "Build order som denne build er tildelt til" #: templates/email/build_order_required_stock.html:17 #: templates/email/low_stock_notification.html:16 #: templates/email/overdue_build_order.html:16 -#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:553 -#: templates/js/translated/bom.js:691 templates/js/translated/bom.js:802 -#: templates/js/translated/build.js:1156 templates/js/translated/build.js:1649 -#: templates/js/translated/build.js:2085 templates/js/translated/build.js:2476 +#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:552 +#: templates/js/translated/bom.js:689 templates/js/translated/bom.js:800 +#: templates/js/translated/build.js:1188 templates/js/translated/build.js:1681 +#: templates/js/translated/build.js:2118 templates/js/translated/build.js:2509 #: templates/js/translated/company.js:266 #: templates/js/translated/company.js:496 #: templates/js/translated/company.js:608 -#: templates/js/translated/company.js:868 templates/js/translated/order.js:103 -#: templates/js/translated/order.js:934 templates/js/translated/order.js:1387 -#: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885 -#: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507 +#: templates/js/translated/company.js:868 templates/js/translated/order.js:104 +#: templates/js/translated/order.js:973 templates/js/translated/order.js:1426 +#: templates/js/translated/order.js:1976 templates/js/translated/order.js:2924 +#: templates/js/translated/order.js:3320 templates/js/translated/order.js:3546 #: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210 #: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586 #: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958 @@ -821,7 +822,7 @@ msgid "SalesOrder to which this build is allocated" msgstr "Salgorder som denne build er tildelt til" #: build/models.py:213 build/serializers.py:800 -#: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873 +#: templates/js/translated/build.js:2106 templates/js/translated/order.js:2912 msgid "Source Location" msgstr "Kilde plassering" @@ -862,7 +863,7 @@ msgid "Build status code" msgstr "Byggstatuskode" #: build/models.py:251 build/serializers.py:225 order/serializers.py:447 -#: stock/models.py:662 templates/js/translated/order.js:1247 +#: stock/models.py:662 templates/js/translated/order.js:1286 msgid "Batch Code" msgstr "Batch kode" @@ -871,7 +872,7 @@ msgid "Batch code for this build output" msgstr "Batch kode for denne build output" #: build/models.py:258 order/models.py:86 part/models.py:938 -#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544 +#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2583 msgid "Creation Date" msgstr "Opprettelsesdato" @@ -884,7 +885,7 @@ msgid "Target date for build completion. Build will be overdue after this date." msgstr "Forventet dato for ferdigstillelse. Build er forvalt etter denne datoen." #: build/models.py:266 order/models.py:286 -#: templates/js/translated/build.js:2553 +#: templates/js/translated/build.js:2586 msgid "Completion Date" msgstr "Fullført dato" @@ -892,7 +893,7 @@ msgstr "Fullført dato" msgid "completed by" msgstr "fullført av" -#: build/models.py:280 templates/js/translated/build.js:2521 +#: build/models.py:280 templates/js/translated/build.js:2554 msgid "Issued by" msgstr "Utstedt av" @@ -900,12 +901,12 @@ msgstr "Utstedt av" msgid "User who issued this build order" msgstr "Brukeren som utstede denne prosjekt order" -#: build/models.py:289 build/templates/build/build_base.html:190 +#: build/models.py:289 build/templates/build/build_base.html:193 #: build/templates/build/detail.html:115 order/models.py:100 #: order/templates/order/order_base.html:176 #: order/templates/order/sales_order_base.html:183 part/models.py:942 #: report/templates/report/inventree_build_order_base.html:158 -#: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754 +#: templates/js/translated/build.js:2566 templates/js/translated/order.js:1793 msgid "Responsible" msgstr "Ansvarlig" @@ -972,7 +973,7 @@ msgid "Selected stock item not found in BOM" msgstr "Valgt lagevare ikke funnet i BOM" #: build/models.py:1328 stock/templates/stock/item_base.html:177 -#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2455 +#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2488 #: templates/navbar.html:38 msgid "Build" msgstr "Prosjekt" @@ -986,11 +987,11 @@ msgstr "Bygge for å tildele deler" #: stock/serializers.py:882 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:199 -#: templates/js/translated/build.js:741 templates/js/translated/build.js:746 -#: templates/js/translated/build.js:2087 templates/js/translated/build.js:2638 -#: templates/js/translated/order.js:104 templates/js/translated/order.js:2886 -#: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193 -#: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380 +#: templates/js/translated/build.js:773 templates/js/translated/build.js:778 +#: templates/js/translated/build.js:2120 templates/js/translated/build.js:2671 +#: templates/js/translated/order.js:105 templates/js/translated/order.js:2925 +#: templates/js/translated/order.js:3227 templates/js/translated/order.js:3232 +#: templates/js/translated/order.js:3327 templates/js/translated/order.js:3419 #: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752 #: templates/js/translated/stock.js:2577 msgid "Stock Item" @@ -1001,13 +1002,13 @@ msgid "Source stock item" msgstr "Kilde lagervare" #: build/models.py:1358 build/serializers.py:193 -#: build/templates/build/build_base.html:82 +#: build/templates/build/build_base.html:85 #: build/templates/build/detail.html:34 common/models.py:1697 #: company/templates/company/supplier_part.html:279 order/models.py:897 #: order/models.py:1423 order/serializers.py:1155 #: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40 -#: part/models.py:2608 part/templates/part/detail.html:937 -#: part/templates/part/detail.html:1023 +#: part/models.py:2655 part/templates/part/detail.html:951 +#: part/templates/part/detail.html:1037 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 #: report/templates/report/inventree_build_order_base.html:113 @@ -1018,20 +1019,20 @@ msgstr "Kilde lagervare" #: stock/serializers.py:293 stock/templates/stock/item_base.html:292 #: stock/templates/stock/item_base.html:300 #: templates/email/build_order_completed.html:18 -#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:693 -#: templates/js/translated/bom.js:863 templates/js/translated/build.js:426 -#: templates/js/translated/build.js:578 templates/js/translated/build.js:768 -#: templates/js/translated/build.js:1178 templates/js/translated/build.js:1675 -#: templates/js/translated/build.js:2088 +#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:691 +#: templates/js/translated/bom.js:861 templates/js/translated/build.js:458 +#: templates/js/translated/build.js:610 templates/js/translated/build.js:800 +#: templates/js/translated/build.js:1210 templates/js/translated/build.js:1707 +#: templates/js/translated/build.js:2121 #: templates/js/translated/model_renderers.js:120 -#: templates/js/translated/order.js:120 templates/js/translated/order.js:937 -#: templates/js/translated/order.js:1989 templates/js/translated/order.js:2190 -#: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207 -#: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386 -#: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037 -#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2156 -#: templates/js/translated/part.js:2387 templates/js/translated/part.js:2421 -#: templates/js/translated/part.js:2499 templates/js/translated/stock.js:458 +#: templates/js/translated/order.js:121 templates/js/translated/order.js:976 +#: templates/js/translated/order.js:2028 templates/js/translated/order.js:2229 +#: templates/js/translated/order.js:2926 templates/js/translated/order.js:3246 +#: templates/js/translated/order.js:3333 templates/js/translated/order.js:3425 +#: templates/js/translated/order.js:3568 templates/js/translated/order.js:4076 +#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2152 +#: templates/js/translated/part.js:2602 templates/js/translated/part.js:2636 +#: templates/js/translated/part.js:2714 templates/js/translated/stock.js:458 #: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782 #: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711 msgid "Quantity" @@ -1050,7 +1051,7 @@ msgid "Destination stock item" msgstr "Målets lagervare" #: build/serializers.py:138 build/serializers.py:674 -#: templates/js/translated/build.js:1166 +#: templates/js/translated/build.js:1198 msgid "Build Output" msgstr "" @@ -1090,7 +1091,7 @@ msgid "Integer quantity required, as the bill of materials contains trackable pa msgstr "" #: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159 -#: stock/serializers.py:311 templates/js/translated/order.js:1258 +#: stock/serializers.py:311 templates/js/translated/order.js:1297 #: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459 msgid "Serial Numbers" msgstr "Serienummer" @@ -1120,10 +1121,10 @@ msgstr "" #: stock/serializers.py:917 stock/serializers.py:1150 #: stock/templates/stock/item_base.html:390 #: templates/js/translated/barcode.js:436 -#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753 -#: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285 -#: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305 -#: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394 +#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:785 +#: templates/js/translated/build.js:1719 templates/js/translated/order.js:1324 +#: templates/js/translated/order.js:3239 templates/js/translated/order.js:3344 +#: templates/js/translated/order.js:3352 templates/js/translated/order.js:3433 #: templates/js/translated/part.js:181 templates/js/translated/stock.js:588 #: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960 #: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518 @@ -1134,12 +1135,12 @@ msgstr "Beliggenhet" msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:373 build/templates/build/build_base.html:142 +#: build/serializers.py:373 build/templates/build/build_base.html:145 #: build/templates/build/detail.html:62 order/models.py:642 #: order/serializers.py:465 stock/templates/stock/item_base.html:423 -#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505 -#: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724 -#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829 +#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2538 +#: templates/js/translated/order.js:1431 templates/js/translated/order.js:1763 +#: templates/js/translated/order.js:2575 templates/js/translated/stock.js:1829 #: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727 msgid "Status" msgstr "" @@ -1196,7 +1197,7 @@ msgstr "" msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:522 templates/js/translated/build.js:195 +#: build/serializers.py:522 templates/js/translated/build.js:227 msgid "Required stock has not been fully allocated" msgstr "Påkrevd varer er ikke fullt tildelt" @@ -1208,7 +1209,7 @@ msgstr "" msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:538 templates/js/translated/build.js:199 +#: build/serializers.py:538 templates/js/translated/build.js:231 msgid "Required build quantity has not been completed" msgstr "" @@ -1216,8 +1217,8 @@ msgstr "" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726 -#: part/models.py:2860 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2773 +#: part/models.py:2907 msgid "BOM Item" msgstr "BOM varer" @@ -1322,66 +1323,70 @@ msgid "Cancel Build" msgstr "" #: build/templates/build/build_base.html:59 +msgid "Duplicate Build" +msgstr "" + +#: build/templates/build/build_base.html:62 msgid "Delete Build" msgstr "" -#: build/templates/build/build_base.html:64 -#: build/templates/build/build_base.html:65 +#: build/templates/build/build_base.html:67 +#: build/templates/build/build_base.html:68 msgid "Complete Build" msgstr "" -#: build/templates/build/build_base.html:87 +#: build/templates/build/build_base.html:90 msgid "Build Description" msgstr "" -#: build/templates/build/build_base.html:95 +#: build/templates/build/build_base.html:98 msgid "No build outputs have been created for this build order" msgstr "" -#: build/templates/build/build_base.html:101 +#: build/templates/build/build_base.html:104 #, python-format msgid "This Build Order is allocated to Sales Order %(link)s" msgstr "" -#: build/templates/build/build_base.html:108 +#: build/templates/build/build_base.html:111 #, python-format msgid "This Build Order is a child of Build Order %(link)s" msgstr "" -#: build/templates/build/build_base.html:115 +#: build/templates/build/build_base.html:118 msgid "Build Order is ready to mark as completed" msgstr "" -#: build/templates/build/build_base.html:120 +#: build/templates/build/build_base.html:123 msgid "Build Order cannot be completed as outstanding outputs remain" msgstr "" -#: build/templates/build/build_base.html:125 +#: build/templates/build/build_base.html:128 msgid "Required build quantity has not yet been completed" msgstr "" -#: build/templates/build/build_base.html:130 +#: build/templates/build/build_base.html:133 msgid "Stock has not been fully allocated to this Build Order" msgstr "" -#: build/templates/build/build_base.html:151 +#: build/templates/build/build_base.html:154 #: build/templates/build/detail.html:131 order/models.py:910 #: order/templates/order/order_base.html:162 #: order/templates/order/sales_order_base.html:164 #: report/templates/report/inventree_build_order_base.html:125 -#: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741 -#: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552 -#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042 +#: templates/js/translated/build.js:2578 templates/js/translated/order.js:1780 +#: templates/js/translated/order.js:2090 templates/js/translated/order.js:2591 +#: templates/js/translated/order.js:3631 templates/js/translated/part.js:1042 msgid "Target Date" msgstr "Måldato" -#: build/templates/build/build_base.html:156 +#: build/templates/build/build_base.html:159 #, python-format msgid "This build was due on %(target)s" msgstr "" -#: build/templates/build/build_base.html:156 -#: build/templates/build/build_base.html:201 +#: build/templates/build/build_base.html:159 +#: build/templates/build/build_base.html:204 #: order/templates/order/order_base.html:98 #: order/templates/order/sales_order_base.html:94 #: templates/js/translated/table_filters.js:320 @@ -1390,14 +1395,14 @@ msgstr "" msgid "Overdue" msgstr "" -#: build/templates/build/build_base.html:163 +#: build/templates/build/build_base.html:166 #: build/templates/build/detail.html:67 build/templates/build/detail.html:142 #: order/templates/order/sales_order_base.html:171 #: templates/js/translated/table_filters.js:400 msgid "Completed" msgstr "Fullført" -#: build/templates/build/build_base.html:176 +#: build/templates/build/build_base.html:179 #: build/templates/build/detail.html:94 order/models.py:1105 #: order/models.py:1199 order/models.py:1330 #: order/templates/order/sales_order_base.html:9 @@ -1406,17 +1411,17 @@ msgstr "Fullført" #: report/templates/report/inventree_so_report.html:77 #: stock/templates/stock/item_base.html:370 #: templates/email/overdue_sales_order.html:15 -#: templates/js/translated/order.js:2498 +#: templates/js/translated/order.js:2537 msgid "Sales Order" msgstr "Salgsorder" -#: build/templates/build/build_base.html:183 +#: build/templates/build/build_base.html:186 #: build/templates/build/detail.html:108 #: report/templates/report/inventree_build_order_base.html:152 msgid "Issued By" msgstr "Utstedt av" -#: build/templates/build/build_base.html:245 +#: build/templates/build/build_base.html:256 msgid "Delete Build Order" msgstr "" @@ -1433,7 +1438,7 @@ msgid "Stock can be taken from any available location." msgstr "Lagervare kan hentes fra alle tilgengelige steder." #: build/templates/build/detail.html:49 order/models.py:1023 -#: templates/js/translated/order.js:1393 templates/js/translated/order.js:2093 +#: templates/js/translated/order.js:1432 templates/js/translated/order.js:2132 msgid "Destination" msgstr "Destinasjon" @@ -1447,7 +1452,7 @@ msgstr "Tildelte deler" #: build/templates/build/detail.html:80 #: stock/templates/stock/item_base.html:170 -#: templates/js/translated/build.js:1182 +#: templates/js/translated/build.js:1214 #: templates/js/translated/model_renderers.js:124 #: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843 #: templates/js/translated/stock.js:2734 @@ -1459,7 +1464,7 @@ msgstr "" #: build/templates/build/detail.html:126 #: order/templates/order/order_base.html:149 #: order/templates/order/sales_order_base.html:158 -#: templates/js/translated/build.js:2513 +#: templates/js/translated/build.js:2546 msgid "Created" msgstr "Opprettet" @@ -1479,7 +1484,7 @@ msgstr "" msgid "Allocate Stock to Build" msgstr "" -#: build/templates/build/detail.html:176 templates/js/translated/build.js:1901 +#: build/templates/build/detail.html:176 templates/js/translated/build.js:1934 msgid "Unallocate stock" msgstr "Fjern lager allokering" @@ -1510,7 +1515,7 @@ msgstr "Bestill nødvendige deler" #: build/templates/build/detail.html:187 #: company/templates/company/detail.html:37 #: company/templates/company/detail.html:85 -#: part/templates/part/category.html:183 templates/js/translated/order.js:977 +#: part/templates/part/category.html:183 templates/js/translated/order.js:1016 msgid "Order Parts" msgstr "Bestill deler" @@ -1582,7 +1587,7 @@ msgstr "" #: order/templates/order/po_sidebar.html:9 #: order/templates/order/purchase_order_detail.html:82 #: order/templates/order/sales_order_detail.html:135 -#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:207 +#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:212 #: part/templates/part/part_sidebar.html:57 stock/templates/stock/item.html:117 #: stock/templates/stock/stock_sidebar.html:23 msgid "Attachments" @@ -1600,7 +1605,7 @@ msgstr "Tildeling fullført" msgid "All untracked stock items have been allocated" msgstr "Alle usporbar lagervarer har tildelt" -#: build/templates/build/index.html:18 part/templates/part/detail.html:313 +#: build/templates/build/index.html:18 part/templates/part/detail.html:318 msgid "New Build Order" msgstr "" @@ -1845,7 +1850,7 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "Kopier kategori parametermaler ved oppretting av en del" -#: common/models.py:951 part/models.py:2419 report/models.py:158 +#: common/models.py:951 part/models.py:2466 report/models.py:158 #: templates/js/translated/table_filters.js:38 #: templates/js/translated/table_filters.js:484 msgid "Template" @@ -1855,7 +1860,7 @@ msgstr "Mal" msgid "Parts are templates by default" msgstr "Deler er maler som standard" -#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448 +#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1446 #: templates/js/translated/table_filters.js:176 #: templates/js/translated/table_filters.js:447 msgid "Assembly" @@ -2591,7 +2596,7 @@ msgstr "" #: common/models.py:1705 company/serializers.py:366 #: company/templates/company/supplier_part.html:284 order/models.py:938 -#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2161 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2157 msgid "Price" msgstr "" @@ -2830,7 +2835,7 @@ msgstr "Standardvaluta brukt for dette firmaet" #: company/models.py:248 company/models.py:481 stock/models.py:598 #: stock/serializers.py:87 stock/templates/stock/item_base.html:148 -#: templates/js/translated/bom.js:543 +#: templates/js/translated/bom.js:542 msgid "Base Part" msgstr "" @@ -2859,7 +2864,7 @@ msgstr "" #: templates/js/translated/company.js:269 #: templates/js/translated/company.js:497 #: templates/js/translated/company.js:649 -#: templates/js/translated/company.js:937 templates/js/translated/order.js:1971 +#: templates/js/translated/company.js:937 templates/js/translated/order.js:2010 #: templates/js/translated/part.js:247 templates/js/translated/part.js:1027 msgid "MPN" msgstr "" @@ -2899,7 +2904,7 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:372 part/models.py:888 part/models.py:2386 +#: company/models.py:372 part/models.py:888 part/models.py:2433 #: part/templates/part/part_base.html:280 #: templates/InvenTree/settings/settings.html:352 #: templates/js/translated/company.js:770 templates/js/translated/part.js:855 @@ -2921,7 +2926,7 @@ msgstr "" #: templates/email/overdue_purchase_order.html:16 #: templates/js/translated/company.js:268 #: templates/js/translated/company.js:401 -#: templates/js/translated/company.js:893 templates/js/translated/order.js:1707 +#: templates/js/translated/company.js:893 templates/js/translated/order.js:1746 #: templates/js/translated/part.js:217 templates/js/translated/part.js:995 #: templates/js/translated/table_filters.js:423 msgid "Supplier" @@ -2933,7 +2938,7 @@ msgstr "" #: company/models.py:497 company/templates/company/supplier_part.html:118 #: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267 -#: templates/js/translated/order.js:1958 templates/js/translated/part.js:228 +#: templates/js/translated/order.js:1997 templates/js/translated/part.js:228 #: templates/js/translated/part.js:1013 msgid "SKU" msgstr "" @@ -2955,17 +2960,17 @@ msgid "Supplier part description" msgstr "" #: company/models.py:522 company/templates/company/supplier_part.html:146 -#: part/models.py:2620 part/templates/part/upload_bom.html:59 +#: part/models.py:2667 part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401 msgid "Note" msgstr "" -#: company/models.py:526 part/models.py:1742 +#: company/models.py:526 part/models.py:1789 msgid "base cost" msgstr "" -#: company/models.py:526 part/models.py:1742 +#: company/models.py:526 part/models.py:1789 msgid "Minimum charge (e.g. stocking fee)" msgstr "" @@ -2979,7 +2984,7 @@ msgstr "" msgid "Part packaging" msgstr "" -#: company/models.py:530 part/models.py:1744 +#: company/models.py:530 part/models.py:1791 msgid "multiple" msgstr "" @@ -2990,8 +2995,8 @@ msgstr "" #: company/models.py:538 company/templates/company/supplier_part.html:94 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789 -#: templates/js/translated/build.js:2645 templates/js/translated/company.js:979 +#: templates/js/translated/bom.js:911 templates/js/translated/build.js:1821 +#: templates/js/translated/build.js:2678 templates/js/translated/company.js:979 #: templates/js/translated/part.js:600 templates/js/translated/part.js:603 #: templates/js/translated/table_filters.js:186 msgid "Available" @@ -3028,7 +3033,7 @@ msgid "Company" msgstr "" #: company/templates/company/company_base.html:22 -#: templates/js/translated/order.js:540 +#: templates/js/translated/order.js:579 msgid "Create Purchase Order" msgstr "" @@ -3069,7 +3074,7 @@ msgstr "Last ned bilde fra URL" #: stock/models.py:644 stock/serializers.py:811 #: stock/templates/stock/item_base.html:401 #: templates/email/overdue_sales_order.html:16 -#: templates/js/translated/company.js:393 templates/js/translated/order.js:2513 +#: templates/js/translated/company.js:393 templates/js/translated/order.js:2552 #: templates/js/translated/stock.js:2559 #: templates/js/translated/table_filters.js:427 msgid "Customer" @@ -3105,7 +3110,7 @@ msgstr "Oprett ny leverandørdel" #: company/templates/company/detail.html:19 #: company/templates/company/manufacturer_part.html:123 -#: part/templates/part/detail.html:354 +#: part/templates/part/detail.html:359 msgid "New Supplier Part" msgstr "Ny leverandørdel" @@ -3134,7 +3139,7 @@ msgstr "Produsentdeler" msgid "Create new manufacturer part" msgstr "Opprett ny produsentdeler" -#: company/templates/company/detail.html:66 part/templates/part/detail.html:384 +#: company/templates/company/detail.html:66 part/templates/part/detail.html:389 msgid "New Manufacturer Part" msgstr "Ny produsentdel" @@ -3148,7 +3153,7 @@ msgstr "Leverandør lager" #: order/templates/order/order_base.html:13 #: order/templates/order/purchase_orders.html:8 #: order/templates/order/purchase_orders.html:12 -#: part/templates/part/detail.html:79 part/templates/part/part_sidebar.html:37 +#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:37 #: templates/InvenTree/index.html:252 templates/InvenTree/search.html:198 #: templates/InvenTree/settings/sidebar.html:49 #: templates/js/translated/search.js:275 templates/navbar.html:50 @@ -3171,7 +3176,7 @@ msgstr "Ny bestillingsorder" #: order/templates/order/sales_order_base.html:13 #: order/templates/order/sales_orders.html:8 #: order/templates/order/sales_orders.html:15 -#: part/templates/part/detail.html:102 part/templates/part/part_sidebar.html:41 +#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:41 #: templates/InvenTree/index.html:283 templates/InvenTree/search.html:218 #: templates/InvenTree/settings/sidebar.html:51 #: templates/js/translated/search.js:299 templates/navbar.html:61 @@ -3190,7 +3195,7 @@ msgid "New Sales Order" msgstr "Ny salgsorder" #: company/templates/company/detail.html:168 -#: templates/js/translated/build.js:1660 +#: templates/js/translated/build.js:1692 msgid "Assigned Stock" msgstr "Tildelt lagervare" @@ -3206,7 +3211,7 @@ msgstr "Produsenter" #: company/templates/company/manufacturer_part.html:35 #: company/templates/company/supplier_part.html:186 -#: part/templates/part/detail.html:82 part/templates/part/part_base.html:80 +#: part/templates/part/detail.html:87 part/templates/part/part_base.html:80 msgid "Order part" msgstr "Bestill del" @@ -3237,13 +3242,13 @@ msgid "Suppliers" msgstr "Leverandører" #: company/templates/company/manufacturer_part.html:136 -#: part/templates/part/detail.html:365 +#: part/templates/part/detail.html:370 msgid "Delete supplier parts" msgstr "Slett leverandørdeler" #: company/templates/company/manufacturer_part.html:136 #: company/templates/company/manufacturer_part.html:183 -#: part/templates/part/detail.html:366 part/templates/part/detail.html:396 +#: part/templates/part/detail.html:371 part/templates/part/detail.html:401 #: templates/js/translated/forms.js:453 templates/js/translated/helpers.js:33 #: users/models.py:220 msgid "Delete" @@ -3252,12 +3257,12 @@ msgstr "Slett" #: company/templates/company/manufacturer_part.html:166 #: company/templates/company/manufacturer_part_sidebar.html:5 #: part/templates/part/category_sidebar.html:19 -#: part/templates/part/detail.html:181 part/templates/part/part_sidebar.html:8 +#: part/templates/part/detail.html:186 part/templates/part/part_sidebar.html:8 msgid "Parameters" msgstr "" #: company/templates/company/manufacturer_part.html:170 -#: part/templates/part/detail.html:186 +#: part/templates/part/detail.html:191 #: templates/InvenTree/settings/category.html:12 #: templates/InvenTree/settings/part.html:68 msgid "New Parameter" @@ -3268,7 +3273,7 @@ msgid "Delete parameters" msgstr "" #: company/templates/company/manufacturer_part.html:245 -#: part/templates/part/detail.html:826 +#: part/templates/part/detail.html:840 msgid "Add Parameter" msgstr "" @@ -3291,7 +3296,7 @@ msgstr "Tildelt lagervarer" #: company/templates/company/supplier_part.html:7 #: company/templates/company/supplier_part.html:24 stock/models.py:607 #: stock/templates/stock/item_base.html:238 -#: templates/js/translated/company.js:909 templates/js/translated/order.js:935 +#: templates/js/translated/company.js:909 templates/js/translated/order.js:974 #: templates/js/translated/stock.js:1933 msgid "Supplier Part" msgstr "" @@ -3303,7 +3308,7 @@ msgstr "" #: company/templates/company/supplier_part.html:40 #: company/templates/company/supplier_part.html:41 #: company/templates/company/supplier_part.html:187 -#: part/templates/part/detail.html:83 +#: part/templates/part/detail.html:88 msgid "Order Part" msgstr "" @@ -3358,7 +3363,7 @@ msgstr "" #: company/templates/company/supplier_part.html:212 #: company/templates/company/supplier_part.html:326 -#: part/templates/part/prices.html:276 templates/js/translated/part.js:2233 +#: part/templates/part/prices.html:276 templates/js/translated/part.js:2229 msgid "Add Price Break" msgstr "" @@ -3367,12 +3372,12 @@ msgid "No price break information found" msgstr "" #: company/templates/company/supplier_part.html:252 -#: templates/js/translated/part.js:2243 +#: templates/js/translated/part.js:2239 msgid "Delete Price Break" msgstr "" #: company/templates/company/supplier_part.html:266 -#: templates/js/translated/part.js:2257 +#: templates/js/translated/part.js:2253 msgid "Edit Price Break" msgstr "" @@ -3398,10 +3403,9 @@ msgstr "" #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:151 #: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751 -#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460 -#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754 -#: templates/navbar.html:31 +#: templates/js/translated/part.js:751 templates/js/translated/part.js:1299 +#: templates/js/translated/part.js:1460 templates/js/translated/stock.js:959 +#: templates/js/translated/stock.js:1754 templates/navbar.html:31 msgid "Stock" msgstr "" @@ -3554,7 +3558,7 @@ msgid "Company from which the items are being ordered" msgstr "" #: order/models.py:262 order/templates/order/order_base.html:124 -#: templates/js/translated/order.js:1716 +#: templates/js/translated/order.js:1755 msgid "Supplier Reference" msgstr "" @@ -3611,7 +3615,7 @@ msgid "Target date for order completion. Order will be overdue after this date." msgstr "" #: order/models.py:652 order/models.py:1204 -#: templates/js/translated/order.js:2560 templates/js/translated/order.js:2722 +#: templates/js/translated/order.js:2599 templates/js/translated/order.js:2761 msgid "Shipment Date" msgstr "" @@ -3673,7 +3677,7 @@ msgstr "" #: order/models.py:983 order/models.py:1063 order/models.py:1104 #: order/models.py:1198 order/models.py:1330 -#: templates/js/translated/order.js:3178 +#: templates/js/translated/order.js:3217 msgid "Order" msgstr "" @@ -3683,7 +3687,7 @@ msgstr "" #: report/templates/report/inventree_po_report.html:76 #: stock/templates/stock/item_base.html:184 #: templates/email/overdue_purchase_order.html:15 -#: templates/js/translated/order.js:936 templates/js/translated/order.js:1691 +#: templates/js/translated/order.js:975 templates/js/translated/order.js:1730 #: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913 #: templates/js/translated/stock.js:2540 msgid "Purchase Order" @@ -3694,7 +3698,7 @@ msgid "Supplier part" msgstr "" #: order/models.py:1009 order/templates/order/order_base.html:169 -#: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073 +#: templates/js/translated/order.js:1429 templates/js/translated/order.js:2112 #: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091 #: templates/js/translated/table_filters.js:338 msgid "Received" @@ -3880,11 +3884,11 @@ msgstr "" msgid "Select destination location for received items" msgstr "" -#: order/serializers.py:448 templates/js/translated/order.js:1248 +#: order/serializers.py:448 templates/js/translated/order.js:1287 msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:456 templates/js/translated/order.js:1259 +#: order/serializers.py:456 templates/js/translated/order.js:1298 msgid "Enter serial numbers for incoming stock items" msgstr "" @@ -4061,10 +4065,6 @@ msgstr "" msgid "Total cost could not be calculated" msgstr "" -#: order/templates/order/order_base.html:243 -msgid "Edit Purchase Order" -msgstr "" - #: order/templates/order/order_wizard/match_parts.html:12 #: part/templates/part/import_wizard/ajax_match_references.html:12 #: part/templates/part/import_wizard/match_references.html:12 @@ -4091,10 +4091,10 @@ msgstr "" #: part/templates/part/import_wizard/ajax_match_fields.html:64 #: part/templates/part/import_wizard/ajax_match_references.html:42 #: part/templates/part/import_wizard/match_references.html:49 -#: templates/js/translated/bom.js:77 templates/js/translated/build.js:431 -#: templates/js/translated/build.js:583 templates/js/translated/build.js:1974 -#: templates/js/translated/order.js:884 templates/js/translated/order.js:1337 -#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625 +#: templates/js/translated/bom.js:77 templates/js/translated/build.js:463 +#: templates/js/translated/build.js:615 templates/js/translated/build.js:2007 +#: templates/js/translated/order.js:923 templates/js/translated/order.js:1376 +#: templates/js/translated/order.js:2836 templates/js/translated/stock.js:625 #: templates/js/translated/stock.js:793 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" @@ -4130,7 +4130,7 @@ msgstr "" #: order/templates/order/purchase_order_detail.html:26 #: order/templates/order/sales_order_detail.html:22 #: order/templates/order/sales_order_detail.html:255 -#: templates/js/translated/order.js:557 +#: templates/js/translated/order.js:596 msgid "Add Line Item" msgstr "" @@ -4176,7 +4176,7 @@ msgid "Print packing list" msgstr "" #: order/templates/order/sales_order_base.html:60 -#: templates/js/translated/order.js:229 +#: templates/js/translated/order.js:230 msgid "Complete Shipments" msgstr "" @@ -4190,7 +4190,7 @@ msgid "This Sales Order has not been fully allocated" msgstr "" #: order/templates/order/sales_order_base.html:123 -#: templates/js/translated/order.js:2526 +#: templates/js/translated/order.js:2565 msgid "Customer Reference" msgstr "" @@ -4214,8 +4214,8 @@ msgid "Pending Shipments" msgstr "" #: order/templates/order/sales_order_detail.html:72 -#: templates/attachment_table.html:6 templates/js/translated/bom.js:1110 -#: templates/js/translated/build.js:1882 +#: templates/attachment_table.html:6 templates/js/translated/bom.js:1108 +#: templates/js/translated/build.js:1915 msgid "Actions" msgstr "" @@ -4257,35 +4257,35 @@ msgstr "" msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:584 +#: part/api.py:621 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:704 +#: part/api.py:758 msgid "Valid" msgstr "" -#: part/api.py:705 +#: part/api.py:759 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:711 +#: part/api.py:765 msgid "This option must be selected" msgstr "" -#: part/api.py:1134 +#: part/api.py:1188 msgid "Must be greater than zero" msgstr "" -#: part/api.py:1138 +#: part/api.py:1192 msgid "Must be a valid quantity" msgstr "" -#: part/api.py:1153 +#: part/api.py:1207 msgid "Specify location for initial part stock" msgstr "" -#: part/api.py:1184 part/api.py:1188 part/api.py:1203 part/api.py:1207 +#: part/api.py:1238 part/api.py:1242 part/api.py:1257 part/api.py:1261 msgid "This field is required" msgstr "" @@ -4299,14 +4299,14 @@ msgid "Total Stock" msgstr "" #: part/bom.py:129 part/templates/part/part_base.html:189 -#: templates/js/translated/order.js:3618 +#: templates/js/translated/order.js:3657 msgid "Available Stock" msgstr "" #: part/bom.py:130 part/templates/part/part_base.html:207 -#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590 +#: templates/js/translated/bom.js:945 templates/js/translated/part.js:590 #: templates/js/translated/part.js:610 templates/js/translated/part.js:1302 -#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490 +#: templates/js/translated/part.js:1483 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "" @@ -4335,7 +4335,7 @@ msgstr "" msgid "Icon (optional)" msgstr "" -#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16 +#: part/models.py:122 part/models.py:2509 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" @@ -4352,7 +4352,7 @@ msgstr "" #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82 #: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:1955 templates/js/translated/search.js:144 +#: templates/js/translated/part.js:1951 templates/js/translated/search.js:144 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "" @@ -4382,7 +4382,7 @@ msgstr "" msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:745 part/models.py:2516 +#: part/models.py:745 part/models.py:2563 msgid "Part name" msgstr "" @@ -4415,11 +4415,11 @@ msgstr "" msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:783 part/models.py:2218 part/models.py:2461 +#: part/models.py:783 part/models.py:2265 part/models.py:2508 #: part/templates/part/part_base.html:257 #: templates/InvenTree/settings/settings.html:232 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1668 +#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1664 msgid "Category" msgstr "" @@ -4530,245 +4530,245 @@ msgstr "" msgid "Creation User" msgstr "" -#: part/models.py:1744 +#: part/models.py:1791 msgid "Sell multiple" msgstr "" -#: part/models.py:2265 +#: part/models.py:2312 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:2282 +#: part/models.py:2329 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:2302 templates/js/translated/part.js:2006 +#: part/models.py:2349 templates/js/translated/part.js:2002 #: templates/js/translated/stock.js:1340 msgid "Test Name" msgstr "" -#: part/models.py:2303 +#: part/models.py:2350 msgid "Enter a name for the test" msgstr "" -#: part/models.py:2308 +#: part/models.py:2355 msgid "Test Description" msgstr "" -#: part/models.py:2309 +#: part/models.py:2356 msgid "Enter description for this test" msgstr "" -#: part/models.py:2314 templates/js/translated/part.js:2015 +#: part/models.py:2361 templates/js/translated/part.js:2011 #: templates/js/translated/table_filters.js:302 msgid "Required" msgstr "" -#: part/models.py:2315 +#: part/models.py:2362 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:2320 templates/js/translated/part.js:2023 +#: part/models.py:2367 templates/js/translated/part.js:2019 msgid "Requires Value" msgstr "" -#: part/models.py:2321 +#: part/models.py:2368 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:2326 templates/js/translated/part.js:2030 +#: part/models.py:2373 templates/js/translated/part.js:2026 msgid "Requires Attachment" msgstr "" -#: part/models.py:2327 +#: part/models.py:2374 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:2335 +#: part/models.py:2382 #, python-brace-format msgid "Illegal character in template name ({c})" msgstr "" -#: part/models.py:2371 +#: part/models.py:2418 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:2379 +#: part/models.py:2426 msgid "Parameter Name" msgstr "" -#: part/models.py:2386 +#: part/models.py:2433 msgid "Parameter Units" msgstr "" -#: part/models.py:2417 +#: part/models.py:2464 msgid "Parent Part" msgstr "" -#: part/models.py:2419 part/models.py:2467 part/models.py:2468 +#: part/models.py:2466 part/models.py:2514 part/models.py:2515 #: templates/InvenTree/settings/settings.html:227 msgid "Parameter Template" msgstr "" -#: part/models.py:2421 +#: part/models.py:2468 msgid "Data" msgstr "" -#: part/models.py:2421 +#: part/models.py:2468 msgid "Parameter Value" msgstr "" -#: part/models.py:2472 templates/InvenTree/settings/settings.html:236 +#: part/models.py:2519 templates/InvenTree/settings/settings.html:236 msgid "Default Value" msgstr "" -#: part/models.py:2473 +#: part/models.py:2520 msgid "Default Parameter Value" msgstr "" -#: part/models.py:2508 +#: part/models.py:2555 msgid "Part ID or part name" msgstr "" -#: part/models.py:2511 templates/js/translated/model_renderers.js:212 +#: part/models.py:2558 templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "" -#: part/models.py:2512 +#: part/models.py:2559 msgid "Unique part ID value" msgstr "" -#: part/models.py:2515 +#: part/models.py:2562 msgid "Part Name" msgstr "" -#: part/models.py:2519 +#: part/models.py:2566 msgid "Part IPN" msgstr "" -#: part/models.py:2520 +#: part/models.py:2567 msgid "Part IPN value" msgstr "" -#: part/models.py:2523 +#: part/models.py:2570 msgid "Level" msgstr "" -#: part/models.py:2524 +#: part/models.py:2571 msgid "BOM level" msgstr "" -#: part/models.py:2593 +#: part/models.py:2640 msgid "Select parent part" msgstr "" -#: part/models.py:2601 +#: part/models.py:2648 msgid "Sub part" msgstr "" -#: part/models.py:2602 +#: part/models.py:2649 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:2608 +#: part/models.py:2655 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:2610 part/templates/part/upload_bom.html:58 -#: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999 +#: part/models.py:2657 part/templates/part/upload_bom.html:58 +#: templates/js/translated/bom.js:872 templates/js/translated/bom.js:997 #: templates/js/translated/table_filters.js:100 msgid "Optional" msgstr "" -#: part/models.py:2610 +#: part/models.py:2657 msgid "This BOM item is optional" msgstr "" -#: part/models.py:2613 part/templates/part/upload_bom.html:55 +#: part/models.py:2660 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:2614 +#: part/models.py:2661 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:2617 +#: part/models.py:2664 msgid "BOM item reference" msgstr "" -#: part/models.py:2620 +#: part/models.py:2667 msgid "BOM item notes" msgstr "" -#: part/models.py:2622 +#: part/models.py:2669 msgid "Checksum" msgstr "" -#: part/models.py:2622 +#: part/models.py:2669 msgid "BOM line checksum" msgstr "" -#: part/models.py:2626 part/templates/part/upload_bom.html:57 -#: templates/js/translated/bom.js:1016 +#: part/models.py:2673 part/templates/part/upload_bom.html:57 +#: templates/js/translated/bom.js:1014 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:96 msgid "Inherited" msgstr "" -#: part/models.py:2627 +#: part/models.py:2674 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:2632 part/templates/part/upload_bom.html:56 -#: templates/js/translated/bom.js:1008 +#: part/models.py:2679 part/templates/part/upload_bom.html:56 +#: templates/js/translated/bom.js:1006 msgid "Allow Variants" msgstr "" -#: part/models.py:2633 +#: part/models.py:2680 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:2711 stock/models.py:468 +#: part/models.py:2758 stock/models.py:468 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:2720 part/models.py:2722 +#: part/models.py:2767 part/models.py:2769 msgid "Sub part must be specified" msgstr "" -#: part/models.py:2827 +#: part/models.py:2874 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:2848 +#: part/models.py:2895 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:2861 +#: part/models.py:2908 msgid "Parent BOM item" msgstr "" -#: part/models.py:2869 +#: part/models.py:2916 msgid "Substitute part" msgstr "" -#: part/models.py:2884 +#: part/models.py:2931 msgid "Part 1" msgstr "" -#: part/models.py:2888 +#: part/models.py:2935 msgid "Part 2" msgstr "" -#: part/models.py:2888 +#: part/models.py:2935 msgid "Select Related Part" msgstr "" -#: part/models.py:2906 +#: part/models.py:2953 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:2910 +#: part/models.py:2957 msgid "Duplicate relationship already exists" msgstr "" @@ -4876,7 +4876,7 @@ msgstr "" msgid "The BOM for %(part)s has not been validated." msgstr "" -#: part/templates/part/bom.html:30 part/templates/part/detail.html:264 +#: part/templates/part/bom.html:30 part/templates/part/detail.html:269 msgid "BOM actions" msgstr "" @@ -4945,8 +4945,8 @@ msgstr "" msgid "New Part" msgstr "" -#: part/templates/part/category.html:174 part/templates/part/detail.html:363 -#: part/templates/part/detail.html:394 +#: part/templates/part/category.html:174 part/templates/part/detail.html:368 +#: part/templates/part/detail.html:399 msgid "Options" msgstr "Valgmuligheter" @@ -5014,138 +5014,146 @@ msgstr "" msgid "Part Stock" msgstr "" -#: part/templates/part/detail.html:54 -msgid "Part Test Templates" +#: part/templates/part/detail.html:44 +msgid "Refresh scheduling data" +msgstr "" + +#: part/templates/part/detail.html:45 templates/js/translated/tables.js:558 +msgid "Refresh" msgstr "" #: part/templates/part/detail.html:59 +msgid "Part Test Templates" +msgstr "" + +#: part/templates/part/detail.html:64 msgid "Add Test Template" msgstr "" -#: part/templates/part/detail.html:116 stock/templates/stock/item.html:53 +#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53 msgid "Sales Order Allocations" msgstr "" -#: part/templates/part/detail.html:138 +#: part/templates/part/detail.html:143 msgid "Part Notes" msgstr "" -#: part/templates/part/detail.html:153 +#: part/templates/part/detail.html:158 msgid "Part Variants" msgstr "" -#: part/templates/part/detail.html:157 +#: part/templates/part/detail.html:162 msgid "Create new variant" msgstr "" -#: part/templates/part/detail.html:158 +#: part/templates/part/detail.html:163 msgid "New Variant" msgstr "" -#: part/templates/part/detail.html:185 +#: part/templates/part/detail.html:190 msgid "Add new parameter" msgstr "" -#: part/templates/part/detail.html:222 part/templates/part/part_sidebar.html:54 +#: part/templates/part/detail.html:227 part/templates/part/part_sidebar.html:54 msgid "Related Parts" msgstr "" -#: part/templates/part/detail.html:226 part/templates/part/detail.html:227 +#: part/templates/part/detail.html:231 part/templates/part/detail.html:232 msgid "Add Related" msgstr "" -#: part/templates/part/detail.html:247 part/templates/part/part_sidebar.html:17 +#: part/templates/part/detail.html:252 part/templates/part/part_sidebar.html:17 msgid "Bill of Materials" msgstr "" -#: part/templates/part/detail.html:252 +#: part/templates/part/detail.html:257 msgid "Export actions" msgstr "" -#: part/templates/part/detail.html:256 templates/js/translated/bom.js:284 +#: part/templates/part/detail.html:261 templates/js/translated/bom.js:284 msgid "Export BOM" msgstr "" -#: part/templates/part/detail.html:258 +#: part/templates/part/detail.html:263 msgid "Print BOM Report" msgstr "" -#: part/templates/part/detail.html:268 +#: part/templates/part/detail.html:273 msgid "Upload BOM" msgstr "" -#: part/templates/part/detail.html:269 templates/js/translated/part.js:274 +#: part/templates/part/detail.html:274 templates/js/translated/part.js:274 msgid "Copy BOM" msgstr "" -#: part/templates/part/detail.html:270 +#: part/templates/part/detail.html:275 msgid "Validate BOM" msgstr "" -#: part/templates/part/detail.html:275 +#: part/templates/part/detail.html:280 msgid "New BOM Item" msgstr "" -#: part/templates/part/detail.html:276 +#: part/templates/part/detail.html:281 msgid "Add BOM Item" msgstr "" -#: part/templates/part/detail.html:289 +#: part/templates/part/detail.html:294 msgid "Assemblies" msgstr "" -#: part/templates/part/detail.html:307 +#: part/templates/part/detail.html:312 msgid "Part Builds" msgstr "" -#: part/templates/part/detail.html:334 stock/templates/stock/item.html:38 +#: part/templates/part/detail.html:339 stock/templates/stock/item.html:38 msgid "Build Order Allocations" msgstr "" -#: part/templates/part/detail.html:350 +#: part/templates/part/detail.html:355 msgid "Part Suppliers" msgstr "" -#: part/templates/part/detail.html:380 +#: part/templates/part/detail.html:385 msgid "Part Manufacturers" msgstr "" -#: part/templates/part/detail.html:396 +#: part/templates/part/detail.html:401 msgid "Delete manufacturer parts" msgstr "" -#: part/templates/part/detail.html:612 +#: part/templates/part/detail.html:626 msgid "Create BOM Item" msgstr "" -#: part/templates/part/detail.html:656 +#: part/templates/part/detail.html:670 msgid "Related Part" msgstr "" -#: part/templates/part/detail.html:664 +#: part/templates/part/detail.html:678 msgid "Add Related Part" msgstr "" -#: part/templates/part/detail.html:756 +#: part/templates/part/detail.html:770 msgid "Add Test Result Template" msgstr "" -#: part/templates/part/detail.html:900 +#: part/templates/part/detail.html:914 #, python-format msgid "Purchase Unit Price - %(currency)s" msgstr "" -#: part/templates/part/detail.html:912 +#: part/templates/part/detail.html:926 #, python-format msgid "Unit Price-Cost Difference - %(currency)s" msgstr "" -#: part/templates/part/detail.html:924 +#: part/templates/part/detail.html:938 #, python-format msgid "Supplier Unit Cost - %(currency)s" msgstr "" -#: part/templates/part/detail.html:1013 +#: part/templates/part/detail.html:1027 #, python-format msgid "Unit Price - %(currency)s" msgstr "" @@ -5321,13 +5329,13 @@ msgstr "" msgid "Allocated to Sales Orders" msgstr "" -#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1037 +#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1035 msgid "Can Build" msgstr "" #: part/templates/part/part_base.html:238 templates/js/translated/part.js:593 #: templates/js/translated/part.js:613 templates/js/translated/part.js:1306 -#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1494 +#: templates/js/translated/part.js:1490 msgid "Building" msgstr "" @@ -5379,7 +5387,7 @@ msgid "Total Cost" msgstr "" #: part/templates/part/part_pricing.html:40 part/templates/part/prices.html:43 -#: templates/js/translated/bom.js:991 +#: templates/js/translated/bom.js:989 msgid "No supplier pricing available" msgstr "" @@ -5414,6 +5422,18 @@ msgstr "" msgid "No pricing information is available for this part." msgstr "" +#: part/templates/part/part_scheduling.html:13 +#: report/templates/report/inventree_test_report_base.html:97 +#: templates/InvenTree/settings/plugin.html:53 +#: templates/InvenTree/settings/plugin_settings.html:38 +#: templates/js/translated/order.js:1772 templates/js/translated/stock.js:2468 +msgid "Date" +msgstr "" + +#: part/templates/part/part_scheduling.html:14 +msgid "Scheduled Quantity" +msgstr "" + #: part/templates/part/part_sidebar.html:11 msgid "Variants" msgstr "" @@ -5462,7 +5482,7 @@ msgstr "" msgid "Calculation parameters" msgstr "" -#: part/templates/part/prices.html:160 templates/js/translated/bom.js:985 +#: part/templates/part/prices.html:160 templates/js/translated/bom.js:983 msgid "Supplier Cost" msgstr "" @@ -5501,7 +5521,7 @@ msgid "No sale pice history available for this part." msgstr "" #: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616 -#: templates/js/translated/part.js:1294 templates/js/translated/part.js:1498 +#: templates/js/translated/part.js:1294 msgid "No Stock" msgstr "" @@ -5893,11 +5913,11 @@ msgstr "" #: report/templates/report/inventree_test_report_base.html:79 #: stock/models.py:648 stock/templates/stock/item_base.html:322 -#: templates/js/translated/build.js:424 templates/js/translated/build.js:576 -#: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673 +#: templates/js/translated/build.js:456 templates/js/translated/build.js:608 +#: templates/js/translated/build.js:1208 templates/js/translated/build.js:1705 #: templates/js/translated/model_renderers.js:118 -#: templates/js/translated/order.js:118 templates/js/translated/order.js:3297 -#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490 +#: templates/js/translated/order.js:119 templates/js/translated/order.js:3336 +#: templates/js/translated/order.js:3423 templates/js/translated/stock.js:490 msgid "Serial Number" msgstr "" @@ -5915,13 +5935,6 @@ msgstr "" msgid "Result" msgstr "" -#: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:53 -#: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468 -msgid "Date" -msgstr "" - #: report/templates/report/inventree_test_report_base.html:108 msgid "Pass" msgstr "" @@ -6519,7 +6532,7 @@ msgid "Available Quantity" msgstr "" #: stock/templates/stock/item_base.html:394 -#: templates/js/translated/build.js:1695 +#: templates/js/translated/build.js:1727 msgid "No location set" msgstr "" @@ -7702,7 +7715,7 @@ msgid "The following parts are low on required stock" msgstr "" #: templates/email/build_order_required_stock.html:18 -#: templates/js/translated/bom.js:1483 +#: templates/js/translated/bom.js:1481 msgid "Required Quantity" msgstr "" @@ -7716,6 +7729,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:19 +#: templates/js/translated/part.js:2498 msgid "Minimum Quantity" msgstr "" @@ -7917,10 +7931,10 @@ msgstr "" msgid "Row Data" msgstr "" -#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:622 +#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:620 #: templates/js/translated/modals.js:56 templates/js/translated/modals.js:601 #: templates/js/translated/modals.js:695 templates/js/translated/modals.js:1003 -#: templates/js/translated/order.js:979 templates/modals.html:15 +#: templates/js/translated/order.js:1018 templates/modals.html:15 #: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50 msgid "Close" msgstr "" @@ -7930,12 +7944,12 @@ msgid "Download BOM Template" msgstr "" #: templates/js/translated/bom.js:253 templates/js/translated/bom.js:287 -#: templates/js/translated/order.js:760 templates/js/translated/tables.js:145 +#: templates/js/translated/order.js:799 templates/js/translated/tables.js:145 msgid "Format" msgstr "" #: templates/js/translated/bom.js:254 templates/js/translated/bom.js:288 -#: templates/js/translated/order.js:761 +#: templates/js/translated/order.js:800 msgid "Select file format" msgstr "" @@ -7991,390 +8005,390 @@ msgstr "" msgid "Remove substitute part" msgstr "" -#: templates/js/translated/bom.js:567 +#: templates/js/translated/bom.js:565 msgid "Select and add a new substitute part using the input below" msgstr "" -#: templates/js/translated/bom.js:578 +#: templates/js/translated/bom.js:576 msgid "Are you sure you wish to remove this substitute part link?" msgstr "" -#: templates/js/translated/bom.js:584 +#: templates/js/translated/bom.js:582 msgid "Remove Substitute Part" msgstr "" -#: templates/js/translated/bom.js:623 +#: templates/js/translated/bom.js:621 msgid "Add Substitute" msgstr "" -#: templates/js/translated/bom.js:624 +#: templates/js/translated/bom.js:622 msgid "Edit BOM Item Substitutes" msgstr "" -#: templates/js/translated/bom.js:686 +#: templates/js/translated/bom.js:684 msgid "All selected BOM items will be deleted" msgstr "" -#: templates/js/translated/bom.js:702 +#: templates/js/translated/bom.js:700 msgid "Delete selected BOM items?" msgstr "" -#: templates/js/translated/bom.js:821 +#: templates/js/translated/bom.js:819 msgid "Load BOM for subassembly" msgstr "" -#: templates/js/translated/bom.js:831 +#: templates/js/translated/bom.js:829 msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:835 templates/js/translated/build.js:1771 +#: templates/js/translated/bom.js:833 templates/js/translated/build.js:1803 msgid "Variant stock allowed" msgstr "" -#: templates/js/translated/bom.js:929 templates/js/translated/build.js:1816 -#: templates/js/translated/order.js:3632 +#: templates/js/translated/bom.js:927 templates/js/translated/build.js:1849 +#: templates/js/translated/order.js:3671 msgid "No Stock Available" msgstr "" -#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1820 +#: templates/js/translated/bom.js:932 templates/js/translated/build.js:1853 msgid "Includes variant and substitute stock" msgstr "" -#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822 +#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1855 #: templates/js/translated/part.js:763 msgid "Includes variant stock" msgstr "" -#: templates/js/translated/bom.js:938 templates/js/translated/build.js:1824 +#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1857 msgid "Includes substitute stock" msgstr "" -#: templates/js/translated/bom.js:956 +#: templates/js/translated/bom.js:954 msgid "Substitutes" msgstr "" -#: templates/js/translated/bom.js:971 +#: templates/js/translated/bom.js:969 msgid "Purchase Price Range" msgstr "" -#: templates/js/translated/bom.js:978 +#: templates/js/translated/bom.js:976 msgid "Purchase Price Average" msgstr "" -#: templates/js/translated/bom.js:1027 templates/js/translated/bom.js:1147 +#: templates/js/translated/bom.js:1025 templates/js/translated/bom.js:1145 msgid "View BOM" msgstr "" -#: templates/js/translated/bom.js:1054 +#: templates/js/translated/bom.js:1052 msgid "Including On Order" msgstr "" -#: templates/js/translated/bom.js:1118 +#: templates/js/translated/bom.js:1116 msgid "Validate BOM Item" msgstr "" -#: templates/js/translated/bom.js:1120 +#: templates/js/translated/bom.js:1118 msgid "This line has been validated" msgstr "" -#: templates/js/translated/bom.js:1122 +#: templates/js/translated/bom.js:1120 msgid "Edit substitute parts" msgstr "" -#: templates/js/translated/bom.js:1124 templates/js/translated/bom.js:1286 +#: templates/js/translated/bom.js:1122 templates/js/translated/bom.js:1284 msgid "Edit BOM Item" msgstr "" -#: templates/js/translated/bom.js:1126 +#: templates/js/translated/bom.js:1124 msgid "Delete BOM Item" msgstr "" -#: templates/js/translated/bom.js:1222 templates/js/translated/build.js:1617 +#: templates/js/translated/bom.js:1220 templates/js/translated/build.js:1649 msgid "No BOM items found" msgstr "" -#: templates/js/translated/bom.js:1466 templates/js/translated/build.js:1755 +#: templates/js/translated/bom.js:1464 templates/js/translated/build.js:1787 msgid "Required Part" msgstr "" -#: templates/js/translated/bom.js:1488 +#: templates/js/translated/bom.js:1486 msgid "Inherited from parent BOM" msgstr "" -#: templates/js/translated/build.js:86 +#: templates/js/translated/build.js:89 msgid "Edit Build Order" msgstr "" -#: templates/js/translated/build.js:120 +#: templates/js/translated/build.js:132 msgid "Create Build Order" msgstr "" -#: templates/js/translated/build.js:133 +#: templates/js/translated/build.js:165 msgid "Cancel Build Order" msgstr "" -#: templates/js/translated/build.js:142 +#: templates/js/translated/build.js:174 msgid "Are you sure you wish to cancel this build?" msgstr "Er du sikker du vil kansellere?" -#: templates/js/translated/build.js:148 +#: templates/js/translated/build.js:180 msgid "Stock items have been allocated to this build order" msgstr "" -#: templates/js/translated/build.js:155 +#: templates/js/translated/build.js:187 msgid "There are incomplete outputs remaining for this build order" msgstr "" -#: templates/js/translated/build.js:185 +#: templates/js/translated/build.js:217 msgid "Build order is ready to be completed" msgstr "" -#: templates/js/translated/build.js:190 +#: templates/js/translated/build.js:222 msgid "Build Order is incomplete" msgstr "" -#: templates/js/translated/build.js:222 +#: templates/js/translated/build.js:254 msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:263 templates/js/translated/stock.js:92 +#: templates/js/translated/build.js:295 templates/js/translated/stock.js:92 #: templates/js/translated/stock.js:214 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:265 templates/js/translated/stock.js:94 +#: templates/js/translated/build.js:297 templates/js/translated/stock.js:94 #: templates/js/translated/stock.js:216 msgid "Latest serial number" msgstr "" -#: templates/js/translated/build.js:274 +#: templates/js/translated/build.js:306 msgid "The Bill of Materials contains trackable parts" msgstr "" -#: templates/js/translated/build.js:275 +#: templates/js/translated/build.js:307 msgid "Build outputs must be generated individually" msgstr "" -#: templates/js/translated/build.js:283 +#: templates/js/translated/build.js:315 msgid "Trackable parts can have serial numbers specified" msgstr "Sporbare varer kan ha angitte serienummer" -#: templates/js/translated/build.js:284 +#: templates/js/translated/build.js:316 msgid "Enter serial numbers to generate multiple single build outputs" msgstr "" -#: templates/js/translated/build.js:291 +#: templates/js/translated/build.js:323 msgid "Create Build Output" msgstr "" -#: templates/js/translated/build.js:322 +#: templates/js/translated/build.js:354 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:333 +#: templates/js/translated/build.js:365 msgid "Unallocate stock from build output" msgstr "" -#: templates/js/translated/build.js:342 +#: templates/js/translated/build.js:374 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:350 +#: templates/js/translated/build.js:382 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:373 +#: templates/js/translated/build.js:405 msgid "Are you sure you wish to unallocate stock items from this build?" msgstr "" -#: templates/js/translated/build.js:391 +#: templates/js/translated/build.js:423 msgid "Unallocate Stock Items" msgstr "" -#: templates/js/translated/build.js:411 templates/js/translated/build.js:563 +#: templates/js/translated/build.js:443 templates/js/translated/build.js:595 msgid "Select Build Outputs" msgstr "" -#: templates/js/translated/build.js:412 templates/js/translated/build.js:564 +#: templates/js/translated/build.js:444 templates/js/translated/build.js:596 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:466 templates/js/translated/build.js:618 +#: templates/js/translated/build.js:498 templates/js/translated/build.js:650 msgid "Output" msgstr "" -#: templates/js/translated/build.js:484 +#: templates/js/translated/build.js:516 msgid "Complete Build Outputs" msgstr "" -#: templates/js/translated/build.js:631 +#: templates/js/translated/build.js:663 msgid "Delete Build Outputs" msgstr "" -#: templates/js/translated/build.js:720 +#: templates/js/translated/build.js:752 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:757 +#: templates/js/translated/build.js:789 msgid "Location not specified" msgstr "" -#: templates/js/translated/build.js:1136 +#: templates/js/translated/build.js:1168 msgid "No active build outputs found" msgstr "" -#: templates/js/translated/build.js:1205 +#: templates/js/translated/build.js:1237 msgid "Allocated Stock" msgstr "" -#: templates/js/translated/build.js:1212 +#: templates/js/translated/build.js:1244 msgid "No tracked BOM items for this build" msgstr "" -#: templates/js/translated/build.js:1234 +#: templates/js/translated/build.js:1266 msgid "Completed Tests" msgstr "" -#: templates/js/translated/build.js:1239 +#: templates/js/translated/build.js:1271 msgid "No required tests for this build" msgstr "" -#: templates/js/translated/build.js:1712 templates/js/translated/build.js:2656 -#: templates/js/translated/order.js:3332 +#: templates/js/translated/build.js:1744 templates/js/translated/build.js:2689 +#: templates/js/translated/order.js:3371 msgid "Edit stock allocation" msgstr "" -#: templates/js/translated/build.js:1714 templates/js/translated/build.js:2657 -#: templates/js/translated/order.js:3333 +#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2690 +#: templates/js/translated/order.js:3372 msgid "Delete stock allocation" msgstr "" -#: templates/js/translated/build.js:1732 +#: templates/js/translated/build.js:1764 msgid "Edit Allocation" msgstr "" -#: templates/js/translated/build.js:1742 +#: templates/js/translated/build.js:1774 msgid "Remove Allocation" msgstr "" -#: templates/js/translated/build.js:1767 +#: templates/js/translated/build.js:1799 msgid "Substitute parts available" msgstr "" -#: templates/js/translated/build.js:1784 +#: templates/js/translated/build.js:1816 msgid "Quantity Per" msgstr "" -#: templates/js/translated/build.js:1810 templates/js/translated/order.js:3639 +#: templates/js/translated/build.js:1843 templates/js/translated/order.js:3678 msgid "Insufficient stock available" msgstr "" -#: templates/js/translated/build.js:1812 templates/js/translated/order.js:3637 +#: templates/js/translated/build.js:1845 templates/js/translated/order.js:3676 msgid "Sufficient stock available" msgstr "" -#: templates/js/translated/build.js:1841 templates/js/translated/build.js:2086 -#: templates/js/translated/build.js:2652 templates/js/translated/order.js:3651 +#: templates/js/translated/build.js:1874 templates/js/translated/build.js:2119 +#: templates/js/translated/build.js:2685 templates/js/translated/order.js:3690 msgid "Allocated" msgstr "" -#: templates/js/translated/build.js:1889 templates/js/translated/order.js:3731 +#: templates/js/translated/build.js:1922 templates/js/translated/order.js:3770 msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:1893 templates/stock_table.html:50 +#: templates/js/translated/build.js:1926 templates/stock_table.html:50 msgid "Order stock" msgstr "" -#: templates/js/translated/build.js:1896 templates/js/translated/order.js:3724 +#: templates/js/translated/build.js:1929 templates/js/translated/order.js:3763 msgid "Allocate stock" msgstr "" -#: templates/js/translated/build.js:1935 templates/js/translated/label.js:172 -#: templates/js/translated/order.js:807 templates/js/translated/order.js:2859 +#: templates/js/translated/build.js:1968 templates/js/translated/label.js:172 +#: templates/js/translated/order.js:846 templates/js/translated/order.js:2898 #: templates/js/translated/report.js:225 msgid "Select Parts" msgstr "" -#: templates/js/translated/build.js:1936 templates/js/translated/order.js:2860 +#: templates/js/translated/build.js:1969 templates/js/translated/order.js:2899 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1985 templates/js/translated/order.js:2808 +#: templates/js/translated/build.js:2018 templates/js/translated/order.js:2847 msgid "Specify stock allocation quantity" msgstr "" -#: templates/js/translated/build.js:2059 +#: templates/js/translated/build.js:2092 msgid "All Parts Allocated" msgstr "" -#: templates/js/translated/build.js:2060 +#: templates/js/translated/build.js:2093 msgid "All selected parts have been fully allocated" msgstr "" -#: templates/js/translated/build.js:2074 templates/js/translated/order.js:2874 +#: templates/js/translated/build.js:2107 templates/js/translated/order.js:2913 msgid "Select source location (leave blank to take from all locations)" msgstr "" -#: templates/js/translated/build.js:2102 +#: templates/js/translated/build.js:2135 msgid "Allocate Stock Items to Build Order" msgstr "" -#: templates/js/translated/build.js:2113 templates/js/translated/order.js:2971 +#: templates/js/translated/build.js:2146 templates/js/translated/order.js:3010 msgid "No matching stock locations" msgstr "" -#: templates/js/translated/build.js:2185 templates/js/translated/order.js:3048 +#: templates/js/translated/build.js:2218 templates/js/translated/order.js:3087 msgid "No matching stock items" msgstr "" -#: templates/js/translated/build.js:2282 +#: templates/js/translated/build.js:2315 msgid "Automatic Stock Allocation" msgstr "" -#: templates/js/translated/build.js:2283 +#: templates/js/translated/build.js:2316 msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines" msgstr "" -#: templates/js/translated/build.js:2285 +#: templates/js/translated/build.js:2318 msgid "If a location is specifed, stock will only be allocated from that location" msgstr "" -#: templates/js/translated/build.js:2286 +#: templates/js/translated/build.js:2319 msgid "If stock is considered interchangeable, it will be allocated from the first location it is found" msgstr "" -#: templates/js/translated/build.js:2287 +#: templates/js/translated/build.js:2320 msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found" msgstr "" -#: templates/js/translated/build.js:2308 +#: templates/js/translated/build.js:2341 msgid "Allocate Stock Items" msgstr "" -#: templates/js/translated/build.js:2414 +#: templates/js/translated/build.js:2447 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387 -#: templates/js/translated/part.js:1899 templates/js/translated/stock.js:1686 +#: templates/js/translated/build.js:2482 templates/js/translated/part.js:1387 +#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1686 #: templates/js/translated/stock.js:2386 msgid "Select" msgstr "" -#: templates/js/translated/build.js:2463 +#: templates/js/translated/build.js:2496 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:2491 +#: templates/js/translated/build.js:2524 msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647 +#: templates/js/translated/build.js:2560 templates/js/translated/stock.js:2647 msgid "No user information" msgstr "" -#: templates/js/translated/build.js:2633 +#: templates/js/translated/build.js:2666 msgid "No parts allocated for" msgstr "" @@ -8390,11 +8404,11 @@ msgstr "" msgid "Edit Manufacturer Part" msgstr "" -#: templates/js/translated/company.js:167 templates/js/translated/order.js:509 +#: templates/js/translated/company.js:167 templates/js/translated/order.js:510 msgid "Add Supplier" msgstr "" -#: templates/js/translated/company.js:195 templates/js/translated/order.js:628 +#: templates/js/translated/company.js:195 templates/js/translated/order.js:667 msgid "Add Supplier Part" msgstr "" @@ -8765,381 +8779,385 @@ msgstr "" msgid "Notifications will load here" msgstr "" -#: templates/js/translated/order.js:94 +#: templates/js/translated/order.js:95 msgid "No stock items have been allocated to this shipment" msgstr "" -#: templates/js/translated/order.js:99 +#: templates/js/translated/order.js:100 msgid "The following stock items will be shipped" msgstr "" -#: templates/js/translated/order.js:139 +#: templates/js/translated/order.js:140 msgid "Complete Shipment" msgstr "" -#: templates/js/translated/order.js:159 +#: templates/js/translated/order.js:160 msgid "Confirm Shipment" msgstr "" -#: templates/js/translated/order.js:215 +#: templates/js/translated/order.js:216 msgid "No pending shipments found" msgstr "" -#: templates/js/translated/order.js:219 +#: templates/js/translated/order.js:220 msgid "No stock items have been allocated to pending shipments" msgstr "" -#: templates/js/translated/order.js:251 +#: templates/js/translated/order.js:252 msgid "Skip" msgstr "" -#: templates/js/translated/order.js:281 +#: templates/js/translated/order.js:282 msgid "Complete Purchase Order" msgstr "" -#: templates/js/translated/order.js:287 +#: templates/js/translated/order.js:288 msgid "Mark this order as complete?" msgstr "" -#: templates/js/translated/order.js:293 +#: templates/js/translated/order.js:294 msgid "All line items have been received" msgstr "" -#: templates/js/translated/order.js:298 +#: templates/js/translated/order.js:299 msgid "This order has line items which have not been marked as received." msgstr "" -#: templates/js/translated/order.js:299 +#: templates/js/translated/order.js:300 msgid "Completing this order means that the order and line items will no longer be editable." msgstr "" -#: templates/js/translated/order.js:322 +#: templates/js/translated/order.js:323 msgid "Cancel Purchase Order" msgstr "" -#: templates/js/translated/order.js:327 +#: templates/js/translated/order.js:328 msgid "Are you sure you wish to cancel this purchase order?" msgstr "" -#: templates/js/translated/order.js:333 +#: templates/js/translated/order.js:334 msgid "This purchase order can not be cancelled" msgstr "" -#: templates/js/translated/order.js:356 +#: templates/js/translated/order.js:357 msgid "Issue Purchase Order" msgstr "" -#: templates/js/translated/order.js:361 +#: templates/js/translated/order.js:362 msgid "After placing this purchase order, line items will no longer be editable." msgstr "" -#: templates/js/translated/order.js:383 +#: templates/js/translated/order.js:384 msgid "Cancel Sales Order" msgstr "" -#: templates/js/translated/order.js:388 +#: templates/js/translated/order.js:389 msgid "Cancelling this order means that the order will no longer be editable." msgstr "" -#: templates/js/translated/order.js:442 +#: templates/js/translated/order.js:443 msgid "Create New Shipment" msgstr "" -#: templates/js/translated/order.js:467 +#: templates/js/translated/order.js:468 msgid "Add Customer" msgstr "" -#: templates/js/translated/order.js:492 +#: templates/js/translated/order.js:493 msgid "Create Sales Order" msgstr "" -#: templates/js/translated/order.js:757 +#: templates/js/translated/order.js:554 +msgid "Edit Purchase Order" +msgstr "" + +#: templates/js/translated/order.js:796 msgid "Export Order" msgstr "" -#: templates/js/translated/order.js:808 +#: templates/js/translated/order.js:847 msgid "At least one purchaseable part must be selected" msgstr "" -#: templates/js/translated/order.js:833 +#: templates/js/translated/order.js:872 msgid "Quantity to order" msgstr "" -#: templates/js/translated/order.js:842 +#: templates/js/translated/order.js:881 msgid "New supplier part" msgstr "" -#: templates/js/translated/order.js:860 +#: templates/js/translated/order.js:899 msgid "New purchase order" msgstr "" -#: templates/js/translated/order.js:893 +#: templates/js/translated/order.js:932 msgid "Add to purchase order" msgstr "" -#: templates/js/translated/order.js:1002 +#: templates/js/translated/order.js:1041 msgid "No matching supplier parts" msgstr "" -#: templates/js/translated/order.js:1017 +#: templates/js/translated/order.js:1056 msgid "No matching purchase orders" msgstr "" -#: templates/js/translated/order.js:1194 +#: templates/js/translated/order.js:1233 msgid "Select Line Items" msgstr "" -#: templates/js/translated/order.js:1195 +#: templates/js/translated/order.js:1234 msgid "At least one line item must be selected" msgstr "" -#: templates/js/translated/order.js:1215 templates/js/translated/order.js:1314 +#: templates/js/translated/order.js:1254 templates/js/translated/order.js:1353 msgid "Add batch code" msgstr "" -#: templates/js/translated/order.js:1221 templates/js/translated/order.js:1325 +#: templates/js/translated/order.js:1260 templates/js/translated/order.js:1364 msgid "Add serial numbers" msgstr "" -#: templates/js/translated/order.js:1233 +#: templates/js/translated/order.js:1272 msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144 +#: templates/js/translated/order.js:1336 templates/js/translated/stock.js:2144 msgid "Stock Status" msgstr "" -#: templates/js/translated/order.js:1388 +#: templates/js/translated/order.js:1427 msgid "Order Code" msgstr "" -#: templates/js/translated/order.js:1389 +#: templates/js/translated/order.js:1428 msgid "Ordered" msgstr "" -#: templates/js/translated/order.js:1391 +#: templates/js/translated/order.js:1430 msgid "Quantity to Receive" msgstr "" -#: templates/js/translated/order.js:1410 +#: templates/js/translated/order.js:1449 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/order.js:1411 +#: templates/js/translated/order.js:1450 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943 +#: templates/js/translated/order.js:1711 templates/js/translated/part.js:943 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/order.js:1699 templates/js/translated/order.js:2503 +#: templates/js/translated/order.js:1738 templates/js/translated/order.js:2542 msgid "Order is overdue" msgstr "" -#: templates/js/translated/order.js:1749 templates/js/translated/order.js:2568 -#: templates/js/translated/order.js:2709 +#: templates/js/translated/order.js:1788 templates/js/translated/order.js:2607 +#: templates/js/translated/order.js:2748 msgid "Items" msgstr "" -#: templates/js/translated/order.js:1847 templates/js/translated/order.js:3783 +#: templates/js/translated/order.js:1886 templates/js/translated/order.js:3822 msgid "Duplicate Line Item" msgstr "" -#: templates/js/translated/order.js:1864 templates/js/translated/order.js:3805 +#: templates/js/translated/order.js:1903 templates/js/translated/order.js:3844 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/order.js:1877 templates/js/translated/order.js:3816 +#: templates/js/translated/order.js:1916 templates/js/translated/order.js:3855 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/order.js:1920 +#: templates/js/translated/order.js:1959 msgid "No line items found" msgstr "" -#: templates/js/translated/order.js:1947 templates/js/translated/order.js:3517 +#: templates/js/translated/order.js:1986 templates/js/translated/order.js:3556 msgid "Total" msgstr "" -#: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203 -#: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050 -#: templates/js/translated/part.js:2135 templates/js/translated/part.js:2488 +#: templates/js/translated/order.js:2040 templates/js/translated/order.js:2242 +#: templates/js/translated/order.js:3581 templates/js/translated/order.js:4089 +#: templates/js/translated/part.js:2131 templates/js/translated/part.js:2703 msgid "Unit Price" msgstr "" -#: templates/js/translated/order.js:2016 templates/js/translated/order.js:2219 -#: templates/js/translated/order.js:3558 templates/js/translated/order.js:4066 +#: templates/js/translated/order.js:2055 templates/js/translated/order.js:2258 +#: templates/js/translated/order.js:3597 templates/js/translated/order.js:4105 msgid "Total Price" msgstr "" -#: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600 +#: templates/js/translated/order.js:2096 templates/js/translated/order.js:3639 #: templates/js/translated/part.js:1050 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096 +#: templates/js/translated/order.js:2155 templates/js/translated/part.js:1096 msgid "Receive line item" msgstr "" -#: templates/js/translated/order.js:2120 templates/js/translated/order.js:3737 +#: templates/js/translated/order.js:2159 templates/js/translated/order.js:3776 msgid "Duplicate line item" msgstr "" -#: templates/js/translated/order.js:2121 templates/js/translated/order.js:3738 +#: templates/js/translated/order.js:2160 templates/js/translated/order.js:3777 msgid "Edit line item" msgstr "" -#: templates/js/translated/order.js:2122 templates/js/translated/order.js:3742 +#: templates/js/translated/order.js:2161 templates/js/translated/order.js:3781 msgid "Delete line item" msgstr "" -#: templates/js/translated/order.js:2268 templates/js/translated/order.js:4115 +#: templates/js/translated/order.js:2307 templates/js/translated/order.js:4154 msgid "Duplicate line" msgstr "" -#: templates/js/translated/order.js:2269 templates/js/translated/order.js:4116 +#: templates/js/translated/order.js:2308 templates/js/translated/order.js:4155 msgid "Edit line" msgstr "" -#: templates/js/translated/order.js:2270 templates/js/translated/order.js:4117 +#: templates/js/translated/order.js:2309 templates/js/translated/order.js:4156 msgid "Delete line" msgstr "" -#: templates/js/translated/order.js:2300 templates/js/translated/order.js:4147 +#: templates/js/translated/order.js:2339 templates/js/translated/order.js:4186 msgid "Duplicate Line" msgstr "" -#: templates/js/translated/order.js:2321 templates/js/translated/order.js:4168 +#: templates/js/translated/order.js:2360 templates/js/translated/order.js:4207 msgid "Edit Line" msgstr "" -#: templates/js/translated/order.js:2332 templates/js/translated/order.js:4179 +#: templates/js/translated/order.js:2371 templates/js/translated/order.js:4218 msgid "Delete Line" msgstr "" -#: templates/js/translated/order.js:2343 +#: templates/js/translated/order.js:2382 msgid "No matching line" msgstr "" -#: templates/js/translated/order.js:2454 +#: templates/js/translated/order.js:2493 msgid "No sales orders found" msgstr "" -#: templates/js/translated/order.js:2517 +#: templates/js/translated/order.js:2556 msgid "Invalid Customer" msgstr "" -#: templates/js/translated/order.js:2615 +#: templates/js/translated/order.js:2654 msgid "Edit shipment" msgstr "" -#: templates/js/translated/order.js:2618 +#: templates/js/translated/order.js:2657 msgid "Complete shipment" msgstr "" -#: templates/js/translated/order.js:2623 +#: templates/js/translated/order.js:2662 msgid "Delete shipment" msgstr "" -#: templates/js/translated/order.js:2643 +#: templates/js/translated/order.js:2682 msgid "Edit Shipment" msgstr "" -#: templates/js/translated/order.js:2660 +#: templates/js/translated/order.js:2699 msgid "Delete Shipment" msgstr "" -#: templates/js/translated/order.js:2694 +#: templates/js/translated/order.js:2733 msgid "No matching shipments found" msgstr "" -#: templates/js/translated/order.js:2704 +#: templates/js/translated/order.js:2743 msgid "Shipment Reference" msgstr "" -#: templates/js/translated/order.js:2728 +#: templates/js/translated/order.js:2767 msgid "Not shipped" msgstr "" -#: templates/js/translated/order.js:2734 +#: templates/js/translated/order.js:2773 msgid "Tracking" msgstr "" -#: templates/js/translated/order.js:2738 +#: templates/js/translated/order.js:2777 msgid "Invoice" msgstr "" -#: templates/js/translated/order.js:2907 +#: templates/js/translated/order.js:2946 msgid "Add Shipment" msgstr "" -#: templates/js/translated/order.js:2958 +#: templates/js/translated/order.js:2997 msgid "Confirm stock allocation" msgstr "" -#: templates/js/translated/order.js:2959 +#: templates/js/translated/order.js:2998 msgid "Allocate Stock Items to Sales Order" msgstr "" -#: templates/js/translated/order.js:3167 +#: templates/js/translated/order.js:3206 msgid "No sales order allocations found" msgstr "" -#: templates/js/translated/order.js:3246 +#: templates/js/translated/order.js:3285 msgid "Edit Stock Allocation" msgstr "" -#: templates/js/translated/order.js:3263 +#: templates/js/translated/order.js:3302 msgid "Confirm Delete Operation" msgstr "" -#: templates/js/translated/order.js:3264 +#: templates/js/translated/order.js:3303 msgid "Delete Stock Allocation" msgstr "" -#: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398 +#: templates/js/translated/order.js:3348 templates/js/translated/order.js:3437 #: templates/js/translated/stock.js:1602 msgid "Shipped to customer" msgstr "" -#: templates/js/translated/order.js:3317 templates/js/translated/order.js:3407 +#: templates/js/translated/order.js:3356 templates/js/translated/order.js:3446 msgid "Stock location not specified" msgstr "" -#: templates/js/translated/order.js:3721 +#: templates/js/translated/order.js:3760 msgid "Allocate serial numbers" msgstr "" -#: templates/js/translated/order.js:3727 +#: templates/js/translated/order.js:3766 msgid "Purchase stock" msgstr "" -#: templates/js/translated/order.js:3734 templates/js/translated/order.js:3932 +#: templates/js/translated/order.js:3773 templates/js/translated/order.js:3971 msgid "Calculate price" msgstr "" -#: templates/js/translated/order.js:3746 +#: templates/js/translated/order.js:3785 msgid "Cannot be deleted as items have been shipped" msgstr "" -#: templates/js/translated/order.js:3749 +#: templates/js/translated/order.js:3788 msgid "Cannot be deleted as items have been allocated" msgstr "" -#: templates/js/translated/order.js:3831 +#: templates/js/translated/order.js:3870 msgid "Allocate Serial Numbers" msgstr "" -#: templates/js/translated/order.js:3940 +#: templates/js/translated/order.js:3979 msgid "Update Unit Price" msgstr "" -#: templates/js/translated/order.js:3954 +#: templates/js/translated/order.js:3993 msgid "No matching line items" msgstr "" -#: templates/js/translated/order.js:4190 +#: templates/js/translated/order.js:4229 msgid "No matching lines" msgstr "" @@ -9319,12 +9337,12 @@ msgstr "" msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:586 templates/js/translated/part.js:1470 +#: templates/js/translated/part.js:586 templates/js/translated/part.js:1478 #: templates/js/translated/table_filters.js:468 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:596 templates/js/translated/part.js:1482 +#: templates/js/translated/part.js:596 msgid "No stock available" msgstr "" @@ -9356,7 +9374,7 @@ msgstr "" msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1553 +#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1549 msgid "No parts found" msgstr "" @@ -9368,100 +9386,124 @@ msgstr "" msgid "No category" msgstr "" -#: templates/js/translated/part.js:1577 templates/js/translated/part.js:1820 +#: templates/js/translated/part.js:1476 +msgid "No stock" +msgstr "" + +#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816 #: templates/js/translated/stock.js:2347 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:1593 +#: templates/js/translated/part.js:1589 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:1659 +#: templates/js/translated/part.js:1655 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:1664 +#: templates/js/translated/part.js:1660 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:1669 +#: templates/js/translated/part.js:1665 msgid "Select Part Category" msgstr "" -#: templates/js/translated/part.js:1682 +#: templates/js/translated/part.js:1678 msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1839 templates/js/translated/stock.js:2366 +#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2366 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:1918 +#: templates/js/translated/part.js:1914 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:1934 +#: templates/js/translated/part.js:1930 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:1992 +#: templates/js/translated/part.js:1988 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2043 templates/js/translated/stock.js:1299 +#: templates/js/translated/part.js:2039 templates/js/translated/stock.js:1299 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:2044 templates/js/translated/stock.js:1300 +#: templates/js/translated/part.js:2040 templates/js/translated/stock.js:1300 #: templates/js/translated/stock.js:1560 msgid "Delete test result" msgstr "" -#: templates/js/translated/part.js:2050 +#: templates/js/translated/part.js:2046 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2072 +#: templates/js/translated/part.js:2068 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2086 +#: templates/js/translated/part.js:2082 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2111 +#: templates/js/translated/part.js:2107 #, python-brace-format msgid "No ${human_name} information found" msgstr "" -#: templates/js/translated/part.js:2168 +#: templates/js/translated/part.js:2164 #, python-brace-format msgid "Edit ${human_name}" msgstr "" -#: templates/js/translated/part.js:2169 +#: templates/js/translated/part.js:2165 #, python-brace-format msgid "Delete ${human_name}" msgstr "" -#: templates/js/translated/part.js:2283 -msgid "Current Stock" +#: templates/js/translated/part.js:2330 templates/js/translated/part.js:2331 +msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:2316 +#: templates/js/translated/part.js:2333 +msgid "Specified date is in the past" +msgstr "" + +#: templates/js/translated/part.js:2339 +msgid "Speculative" +msgstr "" + +#: templates/js/translated/part.js:2389 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2342 +#: templates/js/translated/part.js:2395 +msgid "Error fetching scheduling information for this part" +msgstr "" + +#: templates/js/translated/part.js:2491 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2412 +#: templates/js/translated/part.js:2507 +msgid "Maximum Quantity" +msgstr "" + +#: templates/js/translated/part.js:2533 +msgid "Minimum Stock Level" +msgstr "" + +#: templates/js/translated/part.js:2627 msgid "Single Price" msgstr "" -#: templates/js/translated/part.js:2431 +#: templates/js/translated/part.js:2646 msgid "Single Price Difference" msgstr "" @@ -10222,10 +10264,6 @@ msgstr "" msgid "Hide/Show pagination" msgstr "" -#: templates/js/translated/tables.js:558 -msgid "Refresh" -msgstr "" - #: templates/js/translated/tables.js:561 msgid "Toggle" msgstr "" diff --git a/InvenTree/locale/pl/LC_MESSAGES/django.po b/InvenTree/locale/pl/LC_MESSAGES/django.po index ae64875ec8..253685f44e 100644 --- a/InvenTree/locale/pl/LC_MESSAGES/django.po +++ b/InvenTree/locale/pl/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-16 11:53+0000\n" -"PO-Revision-Date: 2022-08-16 21:35\n" +"POT-Creation-Date: 2022-08-18 05:14+0000\n" +"PO-Revision-Date: 2022-08-18 21:39\n" "Last-Translator: \n" "Language-Team: Polish\n" "Language: pl_PL\n" @@ -40,10 +40,10 @@ msgstr "Wprowadź dane" #: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825 #: stock/serializers.py:924 stock/serializers.py:1056 #: stock/templates/stock/stock_sidebar.html:25 -#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101 -#: templates/js/translated/company.js:964 templates/js/translated/order.js:2104 -#: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753 -#: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102 +#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1099 +#: templates/js/translated/company.js:964 templates/js/translated/order.js:2143 +#: templates/js/translated/order.js:2294 templates/js/translated/order.js:2792 +#: templates/js/translated/order.js:3743 templates/js/translated/order.js:4141 #: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980 msgid "Notes" msgstr "Uwagi" @@ -211,11 +211,11 @@ msgstr "Wybierz plik do załączenia" #: InvenTree/models.py:402 company/models.py:124 company/models.py:276 #: company/models.py:510 order/models.py:84 order/models.py:1245 -#: part/models.py:802 +#: part/models.py:802 part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_base.html:164 #: templates/js/translated/company.js:656 -#: templates/js/translated/company.js:948 templates/js/translated/order.js:2742 -#: templates/js/translated/part.js:1514 +#: templates/js/translated/company.js:948 templates/js/translated/order.js:2781 +#: templates/js/translated/part.js:1510 msgid "Link" msgstr "Łącze" @@ -235,8 +235,8 @@ msgstr "Komentarz pliku" #: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665 #: common/models.py:1666 common/models.py:1889 common/models.py:1890 -#: common/models.py:2152 common/models.py:2153 part/models.py:2200 -#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257 +#: common/models.py:2152 common/models.py:2153 part/models.py:2247 +#: part/models.py:2267 plugin/models.py:256 plugin/models.py:257 #: report/templates/report/inventree_test_report_base.html:96 #: templates/js/translated/stock.js:2641 msgid "User" @@ -277,7 +277,7 @@ msgstr "Błędny wybór" #: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875 #: company/models.py:358 label/models.py:101 part/models.py:746 -#: part/models.py:2378 plugin/models.py:94 report/models.py:152 +#: part/models.py:2425 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 #: templates/InvenTree/settings/plugin.html:51 #: templates/InvenTree/settings/plugin.html:134 @@ -287,7 +287,7 @@ msgstr "Błędny wybór" #: templates/js/translated/company.js:758 #: templates/js/translated/notification.js:71 #: templates/js/translated/part.js:688 templates/js/translated/part.js:840 -#: templates/js/translated/part.js:1906 templates/js/translated/stock.js:2392 +#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2392 msgid "Name" msgstr "Nazwa" @@ -297,19 +297,20 @@ msgstr "Nazwa" #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:87 label/models.py:108 #: order/models.py:82 part/models.py:769 part/templates/part/category.html:80 -#: part/templates/part/part_base.html:167 report/models.py:165 +#: part/templates/part/part_base.html:167 +#: part/templates/part/part_scheduling.html:12 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 #: stock/templates/stock/location.html:108 #: templates/InvenTree/settings/plugin_settings.html:33 -#: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848 -#: templates/js/translated/build.js:2471 templates/js/translated/company.js:409 +#: templates/js/translated/bom.js:553 templates/js/translated/bom.js:846 +#: templates/js/translated/build.js:2504 templates/js/translated/company.js:409 #: templates/js/translated/company.js:667 -#: templates/js/translated/company.js:959 templates/js/translated/order.js:1720 -#: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531 +#: templates/js/translated/company.js:959 templates/js/translated/order.js:1759 +#: templates/js/translated/order.js:1991 templates/js/translated/order.js:2570 #: templates/js/translated/part.js:747 templates/js/translated/part.js:1153 -#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1942 -#: templates/js/translated/part.js:2011 templates/js/translated/stock.js:1743 +#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1938 +#: templates/js/translated/part.js:2007 templates/js/translated/stock.js:1743 #: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478 msgid "Description" msgstr "Opis" @@ -323,7 +324,7 @@ msgid "parent" msgstr "nadrzędny" #: InvenTree/models.py:560 InvenTree/models.py:561 -#: templates/js/translated/part.js:1948 templates/js/translated/stock.js:2430 +#: templates/js/translated/part.js:1944 templates/js/translated/stock.js:2430 msgid "Path" msgstr "Ścieżka" @@ -335,7 +336,7 @@ msgstr "Błąd serwera" msgid "An error has been logged by the server." msgstr "Błąd został zapisany w logach serwera." -#: InvenTree/serializers.py:55 part/models.py:2699 +#: InvenTree/serializers.py:55 part/models.py:2746 msgid "Must be a valid number" msgstr "Numer musi być prawidłowy" @@ -541,7 +542,7 @@ msgid "Returned" msgstr "Zwrócone" #: InvenTree/status_codes.py:141 order/models.py:1128 -#: templates/js/translated/order.js:3330 templates/js/translated/order.js:3679 +#: templates/js/translated/order.js:3369 templates/js/translated/order.js:3718 msgid "Shipped" msgstr "Wysłane" @@ -728,7 +729,7 @@ msgstr "" #: report/templates/report/inventree_build_order_base.html:105 #: templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 -#: templates/js/translated/build.js:731 +#: templates/js/translated/build.js:763 msgid "Build Order" msgstr "Zlecenie Budowy" @@ -747,14 +748,14 @@ msgid "Build Order Reference" msgstr "Odwołanie do zamówienia wykonania" #: build/models.py:166 order/models.py:240 order/models.py:623 -#: order/models.py:904 part/models.py:2617 +#: order/models.py:904 part/models.py:2664 #: part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 -#: templates/js/translated/bom.js:692 templates/js/translated/bom.js:855 -#: templates/js/translated/build.js:1779 templates/js/translated/order.js:1983 -#: templates/js/translated/order.js:2184 templates/js/translated/order.js:3523 -#: templates/js/translated/order.js:4031 +#: templates/js/translated/bom.js:690 templates/js/translated/bom.js:853 +#: templates/js/translated/build.js:1811 templates/js/translated/order.js:2022 +#: templates/js/translated/order.js:2223 templates/js/translated/order.js:3562 +#: templates/js/translated/order.js:4070 msgid "Reference" msgstr "Referencja" @@ -762,7 +763,7 @@ msgstr "Referencja" msgid "Brief description of the build" msgstr "Krótki opis budowy" -#: build/models.py:185 build/templates/build/build_base.html:169 +#: build/models.py:185 build/templates/build/build_base.html:172 #: build/templates/build/detail.html:87 msgid "Parent Build" msgstr "Budowa nadrzędna" @@ -771,13 +772,13 @@ msgstr "Budowa nadrzędna" msgid "BuildOrder to which this build is allocated" msgstr "Zamówienie budowy, do którego budowa jest przypisana" -#: build/models.py:191 build/templates/build/build_base.html:77 +#: build/models.py:191 build/templates/build/build_base.html:80 #: build/templates/build/detail.html:29 company/models.py:670 #: order/models.py:1001 order/models.py:1112 order/models.py:1113 -#: part/models.py:343 part/models.py:2146 part/models.py:2161 -#: part/models.py:2180 part/models.py:2198 part/models.py:2297 -#: part/models.py:2417 part/models.py:2507 part/models.py:2592 -#: part/models.py:2868 part/serializers.py:813 +#: part/models.py:343 part/models.py:2193 part/models.py:2208 +#: part/models.py:2227 part/models.py:2245 part/models.py:2344 +#: part/models.py:2464 part/models.py:2554 part/models.py:2639 +#: part/models.py:2915 part/serializers.py:813 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -789,17 +790,17 @@ msgstr "Zamówienie budowy, do którego budowa jest przypisana" #: templates/email/build_order_required_stock.html:17 #: templates/email/low_stock_notification.html:16 #: templates/email/overdue_build_order.html:16 -#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:553 -#: templates/js/translated/bom.js:691 templates/js/translated/bom.js:802 -#: templates/js/translated/build.js:1156 templates/js/translated/build.js:1649 -#: templates/js/translated/build.js:2085 templates/js/translated/build.js:2476 +#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:552 +#: templates/js/translated/bom.js:689 templates/js/translated/bom.js:800 +#: templates/js/translated/build.js:1188 templates/js/translated/build.js:1681 +#: templates/js/translated/build.js:2118 templates/js/translated/build.js:2509 #: templates/js/translated/company.js:266 #: templates/js/translated/company.js:496 #: templates/js/translated/company.js:608 -#: templates/js/translated/company.js:868 templates/js/translated/order.js:103 -#: templates/js/translated/order.js:934 templates/js/translated/order.js:1387 -#: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885 -#: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507 +#: templates/js/translated/company.js:868 templates/js/translated/order.js:104 +#: templates/js/translated/order.js:973 templates/js/translated/order.js:1426 +#: templates/js/translated/order.js:1976 templates/js/translated/order.js:2924 +#: templates/js/translated/order.js:3320 templates/js/translated/order.js:3546 #: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210 #: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586 #: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958 @@ -821,7 +822,7 @@ msgid "SalesOrder to which this build is allocated" msgstr "Zamówienie sprzedaży, do którego budowa jest przypisana" #: build/models.py:213 build/serializers.py:800 -#: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873 +#: templates/js/translated/build.js:2106 templates/js/translated/order.js:2912 msgid "Source Location" msgstr "Lokalizacja źródła" @@ -862,7 +863,7 @@ msgid "Build status code" msgstr "Kod statusu budowania" #: build/models.py:251 build/serializers.py:225 order/serializers.py:447 -#: stock/models.py:662 templates/js/translated/order.js:1247 +#: stock/models.py:662 templates/js/translated/order.js:1286 msgid "Batch Code" msgstr "Kod partii" @@ -871,7 +872,7 @@ msgid "Batch code for this build output" msgstr "Kod partii dla wyjścia budowy" #: build/models.py:258 order/models.py:86 part/models.py:938 -#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544 +#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2583 msgid "Creation Date" msgstr "Data utworzenia" @@ -884,7 +885,7 @@ msgid "Target date for build completion. Build will be overdue after this date." msgstr "" #: build/models.py:266 order/models.py:286 -#: templates/js/translated/build.js:2553 +#: templates/js/translated/build.js:2586 msgid "Completion Date" msgstr "Data zakończenia" @@ -892,7 +893,7 @@ msgstr "Data zakończenia" msgid "completed by" msgstr "zrealizowane przez" -#: build/models.py:280 templates/js/translated/build.js:2521 +#: build/models.py:280 templates/js/translated/build.js:2554 msgid "Issued by" msgstr "Wydany przez" @@ -900,12 +901,12 @@ msgstr "Wydany przez" msgid "User who issued this build order" msgstr "Użytkownik, który wydał to zamówienie" -#: build/models.py:289 build/templates/build/build_base.html:190 +#: build/models.py:289 build/templates/build/build_base.html:193 #: build/templates/build/detail.html:115 order/models.py:100 #: order/templates/order/order_base.html:176 #: order/templates/order/sales_order_base.html:183 part/models.py:942 #: report/templates/report/inventree_build_order_base.html:158 -#: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754 +#: templates/js/translated/build.js:2566 templates/js/translated/order.js:1793 msgid "Responsible" msgstr "Odpowiedzialny" @@ -972,7 +973,7 @@ msgid "Selected stock item not found in BOM" msgstr "Nie znaleziono wybranego elementu magazynowego w BOM" #: build/models.py:1328 stock/templates/stock/item_base.html:177 -#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2455 +#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2488 #: templates/navbar.html:38 msgid "Build" msgstr "Budowa" @@ -986,11 +987,11 @@ msgstr "" #: stock/serializers.py:882 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:199 -#: templates/js/translated/build.js:741 templates/js/translated/build.js:746 -#: templates/js/translated/build.js:2087 templates/js/translated/build.js:2638 -#: templates/js/translated/order.js:104 templates/js/translated/order.js:2886 -#: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193 -#: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380 +#: templates/js/translated/build.js:773 templates/js/translated/build.js:778 +#: templates/js/translated/build.js:2120 templates/js/translated/build.js:2671 +#: templates/js/translated/order.js:105 templates/js/translated/order.js:2925 +#: templates/js/translated/order.js:3227 templates/js/translated/order.js:3232 +#: templates/js/translated/order.js:3327 templates/js/translated/order.js:3419 #: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752 #: templates/js/translated/stock.js:2577 msgid "Stock Item" @@ -1001,13 +1002,13 @@ msgid "Source stock item" msgstr "Lokalizacja magazynowania przedmiotu" #: build/models.py:1358 build/serializers.py:193 -#: build/templates/build/build_base.html:82 +#: build/templates/build/build_base.html:85 #: build/templates/build/detail.html:34 common/models.py:1697 #: company/templates/company/supplier_part.html:279 order/models.py:897 #: order/models.py:1423 order/serializers.py:1155 #: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40 -#: part/models.py:2608 part/templates/part/detail.html:937 -#: part/templates/part/detail.html:1023 +#: part/models.py:2655 part/templates/part/detail.html:951 +#: part/templates/part/detail.html:1037 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 #: report/templates/report/inventree_build_order_base.html:113 @@ -1018,20 +1019,20 @@ msgstr "Lokalizacja magazynowania przedmiotu" #: stock/serializers.py:293 stock/templates/stock/item_base.html:292 #: stock/templates/stock/item_base.html:300 #: templates/email/build_order_completed.html:18 -#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:693 -#: templates/js/translated/bom.js:863 templates/js/translated/build.js:426 -#: templates/js/translated/build.js:578 templates/js/translated/build.js:768 -#: templates/js/translated/build.js:1178 templates/js/translated/build.js:1675 -#: templates/js/translated/build.js:2088 +#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:691 +#: templates/js/translated/bom.js:861 templates/js/translated/build.js:458 +#: templates/js/translated/build.js:610 templates/js/translated/build.js:800 +#: templates/js/translated/build.js:1210 templates/js/translated/build.js:1707 +#: templates/js/translated/build.js:2121 #: templates/js/translated/model_renderers.js:120 -#: templates/js/translated/order.js:120 templates/js/translated/order.js:937 -#: templates/js/translated/order.js:1989 templates/js/translated/order.js:2190 -#: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207 -#: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386 -#: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037 -#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2156 -#: templates/js/translated/part.js:2387 templates/js/translated/part.js:2421 -#: templates/js/translated/part.js:2499 templates/js/translated/stock.js:458 +#: templates/js/translated/order.js:121 templates/js/translated/order.js:976 +#: templates/js/translated/order.js:2028 templates/js/translated/order.js:2229 +#: templates/js/translated/order.js:2926 templates/js/translated/order.js:3246 +#: templates/js/translated/order.js:3333 templates/js/translated/order.js:3425 +#: templates/js/translated/order.js:3568 templates/js/translated/order.js:4076 +#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2152 +#: templates/js/translated/part.js:2602 templates/js/translated/part.js:2636 +#: templates/js/translated/part.js:2714 templates/js/translated/stock.js:458 #: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782 #: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711 msgid "Quantity" @@ -1050,7 +1051,7 @@ msgid "Destination stock item" msgstr "Docelowa lokalizacja magazynowa przedmiotu" #: build/serializers.py:138 build/serializers.py:674 -#: templates/js/translated/build.js:1166 +#: templates/js/translated/build.js:1198 msgid "Build Output" msgstr "" @@ -1090,7 +1091,7 @@ msgid "Integer quantity required, as the bill of materials contains trackable pa msgstr "" #: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159 -#: stock/serializers.py:311 templates/js/translated/order.js:1258 +#: stock/serializers.py:311 templates/js/translated/order.js:1297 #: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459 msgid "Serial Numbers" msgstr "Numer seryjny" @@ -1120,10 +1121,10 @@ msgstr "" #: stock/serializers.py:917 stock/serializers.py:1150 #: stock/templates/stock/item_base.html:390 #: templates/js/translated/barcode.js:436 -#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753 -#: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285 -#: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305 -#: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394 +#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:785 +#: templates/js/translated/build.js:1719 templates/js/translated/order.js:1324 +#: templates/js/translated/order.js:3239 templates/js/translated/order.js:3344 +#: templates/js/translated/order.js:3352 templates/js/translated/order.js:3433 #: templates/js/translated/part.js:181 templates/js/translated/stock.js:588 #: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960 #: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518 @@ -1134,12 +1135,12 @@ msgstr "Lokalizacja" msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:373 build/templates/build/build_base.html:142 +#: build/serializers.py:373 build/templates/build/build_base.html:145 #: build/templates/build/detail.html:62 order/models.py:642 #: order/serializers.py:465 stock/templates/stock/item_base.html:423 -#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505 -#: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724 -#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829 +#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2538 +#: templates/js/translated/order.js:1431 templates/js/translated/order.js:1763 +#: templates/js/translated/order.js:2575 templates/js/translated/stock.js:1829 #: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727 msgid "Status" msgstr "Status" @@ -1196,7 +1197,7 @@ msgstr "" msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:522 templates/js/translated/build.js:195 +#: build/serializers.py:522 templates/js/translated/build.js:227 msgid "Required stock has not been fully allocated" msgstr "" @@ -1208,7 +1209,7 @@ msgstr "Akceptuj niekompletne" msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:538 templates/js/translated/build.js:199 +#: build/serializers.py:538 templates/js/translated/build.js:231 msgid "Required build quantity has not been completed" msgstr "" @@ -1216,8 +1217,8 @@ msgstr "" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726 -#: part/models.py:2860 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2773 +#: part/models.py:2907 msgid "BOM Item" msgstr "Element BOM" @@ -1322,66 +1323,70 @@ msgid "Cancel Build" msgstr "Anuluj Budowę" #: build/templates/build/build_base.html:59 +msgid "Duplicate Build" +msgstr "" + +#: build/templates/build/build_base.html:62 msgid "Delete Build" msgstr "" -#: build/templates/build/build_base.html:64 -#: build/templates/build/build_base.html:65 +#: build/templates/build/build_base.html:67 +#: build/templates/build/build_base.html:68 msgid "Complete Build" msgstr "" -#: build/templates/build/build_base.html:87 +#: build/templates/build/build_base.html:90 msgid "Build Description" msgstr "" -#: build/templates/build/build_base.html:95 +#: build/templates/build/build_base.html:98 msgid "No build outputs have been created for this build order" msgstr "" -#: build/templates/build/build_base.html:101 +#: build/templates/build/build_base.html:104 #, python-format msgid "This Build Order is allocated to Sales Order %(link)s" msgstr "" -#: build/templates/build/build_base.html:108 +#: build/templates/build/build_base.html:111 #, python-format msgid "This Build Order is a child of Build Order %(link)s" msgstr "" -#: build/templates/build/build_base.html:115 +#: build/templates/build/build_base.html:118 msgid "Build Order is ready to mark as completed" msgstr "" -#: build/templates/build/build_base.html:120 +#: build/templates/build/build_base.html:123 msgid "Build Order cannot be completed as outstanding outputs remain" msgstr "" -#: build/templates/build/build_base.html:125 +#: build/templates/build/build_base.html:128 msgid "Required build quantity has not yet been completed" msgstr "" -#: build/templates/build/build_base.html:130 +#: build/templates/build/build_base.html:133 msgid "Stock has not been fully allocated to this Build Order" msgstr "" -#: build/templates/build/build_base.html:151 +#: build/templates/build/build_base.html:154 #: build/templates/build/detail.html:131 order/models.py:910 #: order/templates/order/order_base.html:162 #: order/templates/order/sales_order_base.html:164 #: report/templates/report/inventree_build_order_base.html:125 -#: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741 -#: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552 -#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042 +#: templates/js/translated/build.js:2578 templates/js/translated/order.js:1780 +#: templates/js/translated/order.js:2090 templates/js/translated/order.js:2591 +#: templates/js/translated/order.js:3631 templates/js/translated/part.js:1042 msgid "Target Date" msgstr "Data docelowa" -#: build/templates/build/build_base.html:156 +#: build/templates/build/build_base.html:159 #, python-format msgid "This build was due on %(target)s" msgstr "" -#: build/templates/build/build_base.html:156 -#: build/templates/build/build_base.html:201 +#: build/templates/build/build_base.html:159 +#: build/templates/build/build_base.html:204 #: order/templates/order/order_base.html:98 #: order/templates/order/sales_order_base.html:94 #: templates/js/translated/table_filters.js:320 @@ -1390,14 +1395,14 @@ msgstr "" msgid "Overdue" msgstr "Zaległe" -#: build/templates/build/build_base.html:163 +#: build/templates/build/build_base.html:166 #: build/templates/build/detail.html:67 build/templates/build/detail.html:142 #: order/templates/order/sales_order_base.html:171 #: templates/js/translated/table_filters.js:400 msgid "Completed" msgstr "Zakończone" -#: build/templates/build/build_base.html:176 +#: build/templates/build/build_base.html:179 #: build/templates/build/detail.html:94 order/models.py:1105 #: order/models.py:1199 order/models.py:1330 #: order/templates/order/sales_order_base.html:9 @@ -1406,17 +1411,17 @@ msgstr "Zakończone" #: report/templates/report/inventree_so_report.html:77 #: stock/templates/stock/item_base.html:370 #: templates/email/overdue_sales_order.html:15 -#: templates/js/translated/order.js:2498 +#: templates/js/translated/order.js:2537 msgid "Sales Order" msgstr "Zamówienie zakupu" -#: build/templates/build/build_base.html:183 +#: build/templates/build/build_base.html:186 #: build/templates/build/detail.html:108 #: report/templates/report/inventree_build_order_base.html:152 msgid "Issued By" msgstr "Dodane przez" -#: build/templates/build/build_base.html:245 +#: build/templates/build/build_base.html:256 msgid "Delete Build Order" msgstr "" @@ -1433,7 +1438,7 @@ msgid "Stock can be taken from any available location." msgstr "" #: build/templates/build/detail.html:49 order/models.py:1023 -#: templates/js/translated/order.js:1393 templates/js/translated/order.js:2093 +#: templates/js/translated/order.js:1432 templates/js/translated/order.js:2132 msgid "Destination" msgstr "Przeznaczenie" @@ -1447,7 +1452,7 @@ msgstr "" #: build/templates/build/detail.html:80 #: stock/templates/stock/item_base.html:170 -#: templates/js/translated/build.js:1182 +#: templates/js/translated/build.js:1214 #: templates/js/translated/model_renderers.js:124 #: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843 #: templates/js/translated/stock.js:2734 @@ -1459,7 +1464,7 @@ msgstr "Partia" #: build/templates/build/detail.html:126 #: order/templates/order/order_base.html:149 #: order/templates/order/sales_order_base.html:158 -#: templates/js/translated/build.js:2513 +#: templates/js/translated/build.js:2546 msgid "Created" msgstr "Utworzony" @@ -1479,7 +1484,7 @@ msgstr "" msgid "Allocate Stock to Build" msgstr "Przydziel zapasy do budowy" -#: build/templates/build/detail.html:176 templates/js/translated/build.js:1901 +#: build/templates/build/detail.html:176 templates/js/translated/build.js:1934 msgid "Unallocate stock" msgstr "Cofnij przydział zapasów" @@ -1510,7 +1515,7 @@ msgstr "Zamów wymagane komponenty" #: build/templates/build/detail.html:187 #: company/templates/company/detail.html:37 #: company/templates/company/detail.html:85 -#: part/templates/part/category.html:183 templates/js/translated/order.js:977 +#: part/templates/part/category.html:183 templates/js/translated/order.js:1016 msgid "Order Parts" msgstr "Zamów komponent" @@ -1582,7 +1587,7 @@ msgstr "" #: order/templates/order/po_sidebar.html:9 #: order/templates/order/purchase_order_detail.html:82 #: order/templates/order/sales_order_detail.html:135 -#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:207 +#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:212 #: part/templates/part/part_sidebar.html:57 stock/templates/stock/item.html:117 #: stock/templates/stock/stock_sidebar.html:23 msgid "Attachments" @@ -1600,7 +1605,7 @@ msgstr "" msgid "All untracked stock items have been allocated" msgstr "" -#: build/templates/build/index.html:18 part/templates/part/detail.html:313 +#: build/templates/build/index.html:18 part/templates/part/detail.html:318 msgid "New Build Order" msgstr "Nowe zlecenie budowy" @@ -1845,7 +1850,7 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:951 part/models.py:2419 report/models.py:158 +#: common/models.py:951 part/models.py:2466 report/models.py:158 #: templates/js/translated/table_filters.js:38 #: templates/js/translated/table_filters.js:484 msgid "Template" @@ -1855,7 +1860,7 @@ msgstr "Szablon" msgid "Parts are templates by default" msgstr "" -#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448 +#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1446 #: templates/js/translated/table_filters.js:176 #: templates/js/translated/table_filters.js:447 msgid "Assembly" @@ -2591,7 +2596,7 @@ msgstr "" #: common/models.py:1705 company/serializers.py:366 #: company/templates/company/supplier_part.html:284 order/models.py:938 -#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2161 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2157 msgid "Price" msgstr "Cena" @@ -2830,7 +2835,7 @@ msgstr "" #: company/models.py:248 company/models.py:481 stock/models.py:598 #: stock/serializers.py:87 stock/templates/stock/item_base.html:148 -#: templates/js/translated/bom.js:543 +#: templates/js/translated/bom.js:542 msgid "Base Part" msgstr "Część bazowa" @@ -2859,7 +2864,7 @@ msgstr "Wybierz producenta" #: templates/js/translated/company.js:269 #: templates/js/translated/company.js:497 #: templates/js/translated/company.js:649 -#: templates/js/translated/company.js:937 templates/js/translated/order.js:1971 +#: templates/js/translated/company.js:937 templates/js/translated/order.js:2010 #: templates/js/translated/part.js:247 templates/js/translated/part.js:1027 msgid "MPN" msgstr "" @@ -2899,7 +2904,7 @@ msgstr "Wartość" msgid "Parameter value" msgstr "" -#: company/models.py:372 part/models.py:888 part/models.py:2386 +#: company/models.py:372 part/models.py:888 part/models.py:2433 #: part/templates/part/part_base.html:280 #: templates/InvenTree/settings/settings.html:352 #: templates/js/translated/company.js:770 templates/js/translated/part.js:855 @@ -2921,7 +2926,7 @@ msgstr "" #: templates/email/overdue_purchase_order.html:16 #: templates/js/translated/company.js:268 #: templates/js/translated/company.js:401 -#: templates/js/translated/company.js:893 templates/js/translated/order.js:1707 +#: templates/js/translated/company.js:893 templates/js/translated/order.js:1746 #: templates/js/translated/part.js:217 templates/js/translated/part.js:995 #: templates/js/translated/table_filters.js:423 msgid "Supplier" @@ -2933,7 +2938,7 @@ msgstr "Wybierz dostawcę" #: company/models.py:497 company/templates/company/supplier_part.html:118 #: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267 -#: templates/js/translated/order.js:1958 templates/js/translated/part.js:228 +#: templates/js/translated/order.js:1997 templates/js/translated/part.js:228 #: templates/js/translated/part.js:1013 msgid "SKU" msgstr "" @@ -2955,17 +2960,17 @@ msgid "Supplier part description" msgstr "" #: company/models.py:522 company/templates/company/supplier_part.html:146 -#: part/models.py:2620 part/templates/part/upload_bom.html:59 +#: part/models.py:2667 part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401 msgid "Note" msgstr "Uwaga" -#: company/models.py:526 part/models.py:1742 +#: company/models.py:526 part/models.py:1789 msgid "base cost" msgstr "koszt podstawowy" -#: company/models.py:526 part/models.py:1742 +#: company/models.py:526 part/models.py:1789 msgid "Minimum charge (e.g. stocking fee)" msgstr "" @@ -2979,7 +2984,7 @@ msgstr "Opakowanie" msgid "Part packaging" msgstr "Opakowanie części" -#: company/models.py:530 part/models.py:1744 +#: company/models.py:530 part/models.py:1791 msgid "multiple" msgstr "wielokrotność" @@ -2990,8 +2995,8 @@ msgstr "" #: company/models.py:538 company/templates/company/supplier_part.html:94 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789 -#: templates/js/translated/build.js:2645 templates/js/translated/company.js:979 +#: templates/js/translated/bom.js:911 templates/js/translated/build.js:1821 +#: templates/js/translated/build.js:2678 templates/js/translated/company.js:979 #: templates/js/translated/part.js:600 templates/js/translated/part.js:603 #: templates/js/translated/table_filters.js:186 msgid "Available" @@ -3028,7 +3033,7 @@ msgid "Company" msgstr "Firma" #: company/templates/company/company_base.html:22 -#: templates/js/translated/order.js:540 +#: templates/js/translated/order.js:579 msgid "Create Purchase Order" msgstr "Utwórz zamówienie zakupu" @@ -3069,7 +3074,7 @@ msgstr "Pobierz obraz z adresu URL" #: stock/models.py:644 stock/serializers.py:811 #: stock/templates/stock/item_base.html:401 #: templates/email/overdue_sales_order.html:16 -#: templates/js/translated/company.js:393 templates/js/translated/order.js:2513 +#: templates/js/translated/company.js:393 templates/js/translated/order.js:2552 #: templates/js/translated/stock.js:2559 #: templates/js/translated/table_filters.js:427 msgid "Customer" @@ -3105,7 +3110,7 @@ msgstr "Utwórz nowego dostawcę części" #: company/templates/company/detail.html:19 #: company/templates/company/manufacturer_part.html:123 -#: part/templates/part/detail.html:354 +#: part/templates/part/detail.html:359 msgid "New Supplier Part" msgstr "Nowy dostawca części" @@ -3134,7 +3139,7 @@ msgstr "Części producenta" msgid "Create new manufacturer part" msgstr "Utwórz nową część producenta" -#: company/templates/company/detail.html:66 part/templates/part/detail.html:384 +#: company/templates/company/detail.html:66 part/templates/part/detail.html:389 msgid "New Manufacturer Part" msgstr "Nowa część producenta" @@ -3148,7 +3153,7 @@ msgstr "Zapasy dostawcy" #: order/templates/order/order_base.html:13 #: order/templates/order/purchase_orders.html:8 #: order/templates/order/purchase_orders.html:12 -#: part/templates/part/detail.html:79 part/templates/part/part_sidebar.html:37 +#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:37 #: templates/InvenTree/index.html:252 templates/InvenTree/search.html:198 #: templates/InvenTree/settings/sidebar.html:49 #: templates/js/translated/search.js:275 templates/navbar.html:50 @@ -3171,7 +3176,7 @@ msgstr "Nowe zamówienie zakupu" #: order/templates/order/sales_order_base.html:13 #: order/templates/order/sales_orders.html:8 #: order/templates/order/sales_orders.html:15 -#: part/templates/part/detail.html:102 part/templates/part/part_sidebar.html:41 +#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:41 #: templates/InvenTree/index.html:283 templates/InvenTree/search.html:218 #: templates/InvenTree/settings/sidebar.html:51 #: templates/js/translated/search.js:299 templates/navbar.html:61 @@ -3190,7 +3195,7 @@ msgid "New Sales Order" msgstr "" #: company/templates/company/detail.html:168 -#: templates/js/translated/build.js:1660 +#: templates/js/translated/build.js:1692 msgid "Assigned Stock" msgstr "" @@ -3206,7 +3211,7 @@ msgstr "Producenci" #: company/templates/company/manufacturer_part.html:35 #: company/templates/company/supplier_part.html:186 -#: part/templates/part/detail.html:82 part/templates/part/part_base.html:80 +#: part/templates/part/detail.html:87 part/templates/part/part_base.html:80 msgid "Order part" msgstr "Zamów komponent" @@ -3237,13 +3242,13 @@ msgid "Suppliers" msgstr "Dostawcy" #: company/templates/company/manufacturer_part.html:136 -#: part/templates/part/detail.html:365 +#: part/templates/part/detail.html:370 msgid "Delete supplier parts" msgstr "" #: company/templates/company/manufacturer_part.html:136 #: company/templates/company/manufacturer_part.html:183 -#: part/templates/part/detail.html:366 part/templates/part/detail.html:396 +#: part/templates/part/detail.html:371 part/templates/part/detail.html:401 #: templates/js/translated/forms.js:453 templates/js/translated/helpers.js:33 #: users/models.py:220 msgid "Delete" @@ -3252,12 +3257,12 @@ msgstr "Usuń" #: company/templates/company/manufacturer_part.html:166 #: company/templates/company/manufacturer_part_sidebar.html:5 #: part/templates/part/category_sidebar.html:19 -#: part/templates/part/detail.html:181 part/templates/part/part_sidebar.html:8 +#: part/templates/part/detail.html:186 part/templates/part/part_sidebar.html:8 msgid "Parameters" msgstr "Parametry" #: company/templates/company/manufacturer_part.html:170 -#: part/templates/part/detail.html:186 +#: part/templates/part/detail.html:191 #: templates/InvenTree/settings/category.html:12 #: templates/InvenTree/settings/part.html:68 msgid "New Parameter" @@ -3268,7 +3273,7 @@ msgid "Delete parameters" msgstr "Usuń parametry" #: company/templates/company/manufacturer_part.html:245 -#: part/templates/part/detail.html:826 +#: part/templates/part/detail.html:840 msgid "Add Parameter" msgstr "Dodaj parametr" @@ -3291,7 +3296,7 @@ msgstr "" #: company/templates/company/supplier_part.html:7 #: company/templates/company/supplier_part.html:24 stock/models.py:607 #: stock/templates/stock/item_base.html:238 -#: templates/js/translated/company.js:909 templates/js/translated/order.js:935 +#: templates/js/translated/company.js:909 templates/js/translated/order.js:974 #: templates/js/translated/stock.js:1933 msgid "Supplier Part" msgstr "" @@ -3303,7 +3308,7 @@ msgstr "" #: company/templates/company/supplier_part.html:40 #: company/templates/company/supplier_part.html:41 #: company/templates/company/supplier_part.html:187 -#: part/templates/part/detail.html:83 +#: part/templates/part/detail.html:88 msgid "Order Part" msgstr "Zamów komponent" @@ -3358,7 +3363,7 @@ msgstr "Informacja cenowa" #: company/templates/company/supplier_part.html:212 #: company/templates/company/supplier_part.html:326 -#: part/templates/part/prices.html:276 templates/js/translated/part.js:2233 +#: part/templates/part/prices.html:276 templates/js/translated/part.js:2229 msgid "Add Price Break" msgstr "" @@ -3367,12 +3372,12 @@ msgid "No price break information found" msgstr "" #: company/templates/company/supplier_part.html:252 -#: templates/js/translated/part.js:2243 +#: templates/js/translated/part.js:2239 msgid "Delete Price Break" msgstr "" #: company/templates/company/supplier_part.html:266 -#: templates/js/translated/part.js:2257 +#: templates/js/translated/part.js:2253 msgid "Edit Price Break" msgstr "Edytuj przedział cenowy" @@ -3398,10 +3403,9 @@ msgstr "" #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:151 #: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751 -#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460 -#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754 -#: templates/navbar.html:31 +#: templates/js/translated/part.js:751 templates/js/translated/part.js:1299 +#: templates/js/translated/part.js:1460 templates/js/translated/stock.js:959 +#: templates/js/translated/stock.js:1754 templates/navbar.html:31 msgid "Stock" msgstr "Stan" @@ -3554,7 +3558,7 @@ msgid "Company from which the items are being ordered" msgstr "" #: order/models.py:262 order/templates/order/order_base.html:124 -#: templates/js/translated/order.js:1716 +#: templates/js/translated/order.js:1755 msgid "Supplier Reference" msgstr "" @@ -3611,7 +3615,7 @@ msgid "Target date for order completion. Order will be overdue after this date." msgstr "" #: order/models.py:652 order/models.py:1204 -#: templates/js/translated/order.js:2560 templates/js/translated/order.js:2722 +#: templates/js/translated/order.js:2599 templates/js/translated/order.js:2761 msgid "Shipment Date" msgstr "Data wysyłki" @@ -3673,7 +3677,7 @@ msgstr "" #: order/models.py:983 order/models.py:1063 order/models.py:1104 #: order/models.py:1198 order/models.py:1330 -#: templates/js/translated/order.js:3178 +#: templates/js/translated/order.js:3217 msgid "Order" msgstr "Zamówienie" @@ -3683,7 +3687,7 @@ msgstr "Zamówienie" #: report/templates/report/inventree_po_report.html:76 #: stock/templates/stock/item_base.html:184 #: templates/email/overdue_purchase_order.html:15 -#: templates/js/translated/order.js:936 templates/js/translated/order.js:1691 +#: templates/js/translated/order.js:975 templates/js/translated/order.js:1730 #: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913 #: templates/js/translated/stock.js:2540 msgid "Purchase Order" @@ -3694,7 +3698,7 @@ msgid "Supplier part" msgstr "" #: order/models.py:1009 order/templates/order/order_base.html:169 -#: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073 +#: templates/js/translated/order.js:1429 templates/js/translated/order.js:2112 #: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091 #: templates/js/translated/table_filters.js:338 msgid "Received" @@ -3880,11 +3884,11 @@ msgstr "" msgid "Select destination location for received items" msgstr "" -#: order/serializers.py:448 templates/js/translated/order.js:1248 +#: order/serializers.py:448 templates/js/translated/order.js:1287 msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:456 templates/js/translated/order.js:1259 +#: order/serializers.py:456 templates/js/translated/order.js:1298 msgid "Enter serial numbers for incoming stock items" msgstr "" @@ -4061,10 +4065,6 @@ msgstr "" msgid "Total cost could not be calculated" msgstr "" -#: order/templates/order/order_base.html:243 -msgid "Edit Purchase Order" -msgstr "Edytuj zamówienie zakupu" - #: order/templates/order/order_wizard/match_parts.html:12 #: part/templates/part/import_wizard/ajax_match_references.html:12 #: part/templates/part/import_wizard/match_references.html:12 @@ -4091,10 +4091,10 @@ msgstr "Wybierz dostawcę części" #: part/templates/part/import_wizard/ajax_match_fields.html:64 #: part/templates/part/import_wizard/ajax_match_references.html:42 #: part/templates/part/import_wizard/match_references.html:49 -#: templates/js/translated/bom.js:77 templates/js/translated/build.js:431 -#: templates/js/translated/build.js:583 templates/js/translated/build.js:1974 -#: templates/js/translated/order.js:884 templates/js/translated/order.js:1337 -#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625 +#: templates/js/translated/bom.js:77 templates/js/translated/build.js:463 +#: templates/js/translated/build.js:615 templates/js/translated/build.js:2007 +#: templates/js/translated/order.js:923 templates/js/translated/order.js:1376 +#: templates/js/translated/order.js:2836 templates/js/translated/stock.js:625 #: templates/js/translated/stock.js:793 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" @@ -4130,7 +4130,7 @@ msgstr "" #: order/templates/order/purchase_order_detail.html:26 #: order/templates/order/sales_order_detail.html:22 #: order/templates/order/sales_order_detail.html:255 -#: templates/js/translated/order.js:557 +#: templates/js/translated/order.js:596 msgid "Add Line Item" msgstr "Dodaj element zamówienia" @@ -4176,7 +4176,7 @@ msgid "Print packing list" msgstr "" #: order/templates/order/sales_order_base.html:60 -#: templates/js/translated/order.js:229 +#: templates/js/translated/order.js:230 msgid "Complete Shipments" msgstr "" @@ -4190,7 +4190,7 @@ msgid "This Sales Order has not been fully allocated" msgstr "" #: order/templates/order/sales_order_base.html:123 -#: templates/js/translated/order.js:2526 +#: templates/js/translated/order.js:2565 msgid "Customer Reference" msgstr "" @@ -4214,8 +4214,8 @@ msgid "Pending Shipments" msgstr "Oczekujące przesyłki" #: order/templates/order/sales_order_detail.html:72 -#: templates/attachment_table.html:6 templates/js/translated/bom.js:1110 -#: templates/js/translated/build.js:1882 +#: templates/attachment_table.html:6 templates/js/translated/bom.js:1108 +#: templates/js/translated/build.js:1915 msgid "Actions" msgstr "Akcje" @@ -4257,35 +4257,35 @@ msgstr "" msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:584 +#: part/api.py:621 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:704 +#: part/api.py:758 msgid "Valid" msgstr "Ważny" -#: part/api.py:705 +#: part/api.py:759 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:711 +#: part/api.py:765 msgid "This option must be selected" msgstr "Ta opcja musi być zaznaczona" -#: part/api.py:1134 +#: part/api.py:1188 msgid "Must be greater than zero" msgstr "Musi być większe niż zero" -#: part/api.py:1138 +#: part/api.py:1192 msgid "Must be a valid quantity" msgstr "Musi być prawidłową ilością" -#: part/api.py:1153 +#: part/api.py:1207 msgid "Specify location for initial part stock" msgstr "" -#: part/api.py:1184 part/api.py:1188 part/api.py:1203 part/api.py:1207 +#: part/api.py:1238 part/api.py:1242 part/api.py:1257 part/api.py:1261 msgid "This field is required" msgstr "To pole jest wymagane" @@ -4299,14 +4299,14 @@ msgid "Total Stock" msgstr "" #: part/bom.py:129 part/templates/part/part_base.html:189 -#: templates/js/translated/order.js:3618 +#: templates/js/translated/order.js:3657 msgid "Available Stock" msgstr "Dostępna ilość" #: part/bom.py:130 part/templates/part/part_base.html:207 -#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590 +#: templates/js/translated/bom.js:945 templates/js/translated/part.js:590 #: templates/js/translated/part.js:610 templates/js/translated/part.js:1302 -#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490 +#: templates/js/translated/part.js:1483 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "W Zamówieniu" @@ -4335,7 +4335,7 @@ msgstr "" msgid "Icon (optional)" msgstr "" -#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16 +#: part/models.py:122 part/models.py:2509 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "Kategoria komponentu" @@ -4352,7 +4352,7 @@ msgstr "Kategorie części" #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82 #: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:1955 templates/js/translated/search.js:144 +#: templates/js/translated/part.js:1951 templates/js/translated/search.js:144 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "Części" @@ -4382,7 +4382,7 @@ msgstr "" msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:745 part/models.py:2516 +#: part/models.py:745 part/models.py:2563 msgid "Part name" msgstr "Nazwa komponentu" @@ -4415,11 +4415,11 @@ msgstr "Słowa kluczowe" msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:783 part/models.py:2218 part/models.py:2461 +#: part/models.py:783 part/models.py:2265 part/models.py:2508 #: part/templates/part/part_base.html:257 #: templates/InvenTree/settings/settings.html:232 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1668 +#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1664 msgid "Category" msgstr "Kategoria" @@ -4530,245 +4530,245 @@ msgstr "" msgid "Creation User" msgstr "Tworzenie użytkownika" -#: part/models.py:1744 +#: part/models.py:1791 msgid "Sell multiple" msgstr "Sprzedaj wiele" -#: part/models.py:2265 +#: part/models.py:2312 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:2282 +#: part/models.py:2329 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:2302 templates/js/translated/part.js:2006 +#: part/models.py:2349 templates/js/translated/part.js:2002 #: templates/js/translated/stock.js:1340 msgid "Test Name" msgstr "Nazwa testu" -#: part/models.py:2303 +#: part/models.py:2350 msgid "Enter a name for the test" msgstr "" -#: part/models.py:2308 +#: part/models.py:2355 msgid "Test Description" msgstr "Testowy opis" -#: part/models.py:2309 +#: part/models.py:2356 msgid "Enter description for this test" msgstr "Wprowadź opis do tego testu" -#: part/models.py:2314 templates/js/translated/part.js:2015 +#: part/models.py:2361 templates/js/translated/part.js:2011 #: templates/js/translated/table_filters.js:302 msgid "Required" msgstr "Wymagane" -#: part/models.py:2315 +#: part/models.py:2362 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:2320 templates/js/translated/part.js:2023 +#: part/models.py:2367 templates/js/translated/part.js:2019 msgid "Requires Value" msgstr "Wymaga wartości" -#: part/models.py:2321 +#: part/models.py:2368 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:2326 templates/js/translated/part.js:2030 +#: part/models.py:2373 templates/js/translated/part.js:2026 msgid "Requires Attachment" msgstr "Wymaga załącznika" -#: part/models.py:2327 +#: part/models.py:2374 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:2335 +#: part/models.py:2382 #, python-brace-format msgid "Illegal character in template name ({c})" msgstr "" -#: part/models.py:2371 +#: part/models.py:2418 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:2379 +#: part/models.py:2426 msgid "Parameter Name" msgstr "" -#: part/models.py:2386 +#: part/models.py:2433 msgid "Parameter Units" msgstr "" -#: part/models.py:2417 +#: part/models.py:2464 msgid "Parent Part" msgstr "Część nadrzędna" -#: part/models.py:2419 part/models.py:2467 part/models.py:2468 +#: part/models.py:2466 part/models.py:2514 part/models.py:2515 #: templates/InvenTree/settings/settings.html:227 msgid "Parameter Template" msgstr "" -#: part/models.py:2421 +#: part/models.py:2468 msgid "Data" msgstr "Dane" -#: part/models.py:2421 +#: part/models.py:2468 msgid "Parameter Value" msgstr "Wartość parametru" -#: part/models.py:2472 templates/InvenTree/settings/settings.html:236 +#: part/models.py:2519 templates/InvenTree/settings/settings.html:236 msgid "Default Value" msgstr "Wartość domyślna" -#: part/models.py:2473 +#: part/models.py:2520 msgid "Default Parameter Value" msgstr "" -#: part/models.py:2508 +#: part/models.py:2555 msgid "Part ID or part name" msgstr "" -#: part/models.py:2511 templates/js/translated/model_renderers.js:212 +#: part/models.py:2558 templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "ID komponentu" -#: part/models.py:2512 +#: part/models.py:2559 msgid "Unique part ID value" msgstr "Unikalny wartość ID komponentu" -#: part/models.py:2515 +#: part/models.py:2562 msgid "Part Name" msgstr "Nazwa komponentu" -#: part/models.py:2519 +#: part/models.py:2566 msgid "Part IPN" msgstr "IPN komponentu" -#: part/models.py:2520 +#: part/models.py:2567 msgid "Part IPN value" msgstr "Wartość IPN części" -#: part/models.py:2523 +#: part/models.py:2570 msgid "Level" msgstr "Poziom" -#: part/models.py:2524 +#: part/models.py:2571 msgid "BOM level" msgstr "" -#: part/models.py:2593 +#: part/models.py:2640 msgid "Select parent part" msgstr "Wybierz część nadrzędną" -#: part/models.py:2601 +#: part/models.py:2648 msgid "Sub part" msgstr "Podczęść" -#: part/models.py:2602 +#: part/models.py:2649 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:2608 +#: part/models.py:2655 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:2610 part/templates/part/upload_bom.html:58 -#: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999 +#: part/models.py:2657 part/templates/part/upload_bom.html:58 +#: templates/js/translated/bom.js:872 templates/js/translated/bom.js:997 #: templates/js/translated/table_filters.js:100 msgid "Optional" msgstr "Opcjonalne" -#: part/models.py:2610 +#: part/models.py:2657 msgid "This BOM item is optional" msgstr "Ten element BOM jest opcjonalny" -#: part/models.py:2613 part/templates/part/upload_bom.html:55 +#: part/models.py:2660 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:2614 +#: part/models.py:2661 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:2617 +#: part/models.py:2664 msgid "BOM item reference" msgstr "" -#: part/models.py:2620 +#: part/models.py:2667 msgid "BOM item notes" msgstr "Notatki pozycji BOM" -#: part/models.py:2622 +#: part/models.py:2669 msgid "Checksum" msgstr "Suma kontrolna" -#: part/models.py:2622 +#: part/models.py:2669 msgid "BOM line checksum" msgstr "" -#: part/models.py:2626 part/templates/part/upload_bom.html:57 -#: templates/js/translated/bom.js:1016 +#: part/models.py:2673 part/templates/part/upload_bom.html:57 +#: templates/js/translated/bom.js:1014 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:96 msgid "Inherited" msgstr "Dziedziczone" -#: part/models.py:2627 +#: part/models.py:2674 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:2632 part/templates/part/upload_bom.html:56 -#: templates/js/translated/bom.js:1008 +#: part/models.py:2679 part/templates/part/upload_bom.html:56 +#: templates/js/translated/bom.js:1006 msgid "Allow Variants" msgstr "Zezwalaj na warianty" -#: part/models.py:2633 +#: part/models.py:2680 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:2711 stock/models.py:468 +#: part/models.py:2758 stock/models.py:468 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:2720 part/models.py:2722 +#: part/models.py:2767 part/models.py:2769 msgid "Sub part must be specified" msgstr "" -#: part/models.py:2827 +#: part/models.py:2874 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:2848 +#: part/models.py:2895 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:2861 +#: part/models.py:2908 msgid "Parent BOM item" msgstr "" -#: part/models.py:2869 +#: part/models.py:2916 msgid "Substitute part" msgstr "Część zastępcza" -#: part/models.py:2884 +#: part/models.py:2931 msgid "Part 1" msgstr "Część 1" -#: part/models.py:2888 +#: part/models.py:2935 msgid "Part 2" msgstr "Część 2" -#: part/models.py:2888 +#: part/models.py:2935 msgid "Select Related Part" msgstr "Wybierz powiązaną część" -#: part/models.py:2906 +#: part/models.py:2953 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:2910 +#: part/models.py:2957 msgid "Duplicate relationship already exists" msgstr "" @@ -4876,7 +4876,7 @@ msgstr "" msgid "The BOM for %(part)s has not been validated." msgstr "" -#: part/templates/part/bom.html:30 part/templates/part/detail.html:264 +#: part/templates/part/bom.html:30 part/templates/part/detail.html:269 msgid "BOM actions" msgstr "" @@ -4945,8 +4945,8 @@ msgstr "Utwórz nową część" msgid "New Part" msgstr "Nowy komponent" -#: part/templates/part/category.html:174 part/templates/part/detail.html:363 -#: part/templates/part/detail.html:394 +#: part/templates/part/category.html:174 part/templates/part/detail.html:368 +#: part/templates/part/detail.html:399 msgid "Options" msgstr "Opcje" @@ -5014,138 +5014,146 @@ msgstr "" msgid "Part Stock" msgstr "Zapasy części" -#: part/templates/part/detail.html:54 +#: part/templates/part/detail.html:44 +msgid "Refresh scheduling data" +msgstr "" + +#: part/templates/part/detail.html:45 templates/js/translated/tables.js:558 +msgid "Refresh" +msgstr "Odśwież" + +#: part/templates/part/detail.html:59 msgid "Part Test Templates" msgstr "" -#: part/templates/part/detail.html:59 +#: part/templates/part/detail.html:64 msgid "Add Test Template" msgstr "" -#: part/templates/part/detail.html:116 stock/templates/stock/item.html:53 +#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53 msgid "Sales Order Allocations" msgstr "" -#: part/templates/part/detail.html:138 +#: part/templates/part/detail.html:143 msgid "Part Notes" msgstr "" -#: part/templates/part/detail.html:153 +#: part/templates/part/detail.html:158 msgid "Part Variants" msgstr "Warianty Części" -#: part/templates/part/detail.html:157 +#: part/templates/part/detail.html:162 msgid "Create new variant" msgstr "Utwórz nowy wariant" -#: part/templates/part/detail.html:158 +#: part/templates/part/detail.html:163 msgid "New Variant" msgstr "Nowy wariant" -#: part/templates/part/detail.html:185 +#: part/templates/part/detail.html:190 msgid "Add new parameter" msgstr "" -#: part/templates/part/detail.html:222 part/templates/part/part_sidebar.html:54 +#: part/templates/part/detail.html:227 part/templates/part/part_sidebar.html:54 msgid "Related Parts" msgstr "Powiązane części" -#: part/templates/part/detail.html:226 part/templates/part/detail.html:227 +#: part/templates/part/detail.html:231 part/templates/part/detail.html:232 msgid "Add Related" msgstr "Dodaj powiązane" -#: part/templates/part/detail.html:247 part/templates/part/part_sidebar.html:17 +#: part/templates/part/detail.html:252 part/templates/part/part_sidebar.html:17 msgid "Bill of Materials" msgstr "Zestawienie materiałowe" -#: part/templates/part/detail.html:252 +#: part/templates/part/detail.html:257 msgid "Export actions" msgstr "Akcje eksportu" -#: part/templates/part/detail.html:256 templates/js/translated/bom.js:284 +#: part/templates/part/detail.html:261 templates/js/translated/bom.js:284 msgid "Export BOM" msgstr "Eksportuj BOM" -#: part/templates/part/detail.html:258 +#: part/templates/part/detail.html:263 msgid "Print BOM Report" msgstr "Drukuj raport BOM" -#: part/templates/part/detail.html:268 +#: part/templates/part/detail.html:273 msgid "Upload BOM" msgstr "Wgraj BOM" -#: part/templates/part/detail.html:269 templates/js/translated/part.js:274 +#: part/templates/part/detail.html:274 templates/js/translated/part.js:274 msgid "Copy BOM" msgstr "Kopiuj BOM" -#: part/templates/part/detail.html:270 +#: part/templates/part/detail.html:275 msgid "Validate BOM" msgstr "Weryfikuj BOM" -#: part/templates/part/detail.html:275 +#: part/templates/part/detail.html:280 msgid "New BOM Item" msgstr "Nowa część w BOM" -#: part/templates/part/detail.html:276 +#: part/templates/part/detail.html:281 msgid "Add BOM Item" msgstr "Dodaj część do BOM" -#: part/templates/part/detail.html:289 +#: part/templates/part/detail.html:294 msgid "Assemblies" msgstr "Złożenia" -#: part/templates/part/detail.html:307 +#: part/templates/part/detail.html:312 msgid "Part Builds" msgstr "" -#: part/templates/part/detail.html:334 stock/templates/stock/item.html:38 +#: part/templates/part/detail.html:339 stock/templates/stock/item.html:38 msgid "Build Order Allocations" msgstr "" -#: part/templates/part/detail.html:350 +#: part/templates/part/detail.html:355 msgid "Part Suppliers" msgstr "Dostawcy Części" -#: part/templates/part/detail.html:380 +#: part/templates/part/detail.html:385 msgid "Part Manufacturers" msgstr "Producenci części" -#: part/templates/part/detail.html:396 +#: part/templates/part/detail.html:401 msgid "Delete manufacturer parts" msgstr "" -#: part/templates/part/detail.html:612 +#: part/templates/part/detail.html:626 msgid "Create BOM Item" msgstr "" -#: part/templates/part/detail.html:656 +#: part/templates/part/detail.html:670 msgid "Related Part" msgstr "Powiązane części" -#: part/templates/part/detail.html:664 +#: part/templates/part/detail.html:678 msgid "Add Related Part" msgstr "Dodaj powiązaną część" -#: part/templates/part/detail.html:756 +#: part/templates/part/detail.html:770 msgid "Add Test Result Template" msgstr "" -#: part/templates/part/detail.html:900 +#: part/templates/part/detail.html:914 #, python-format msgid "Purchase Unit Price - %(currency)s" msgstr "" -#: part/templates/part/detail.html:912 +#: part/templates/part/detail.html:926 #, python-format msgid "Unit Price-Cost Difference - %(currency)s" msgstr "" -#: part/templates/part/detail.html:924 +#: part/templates/part/detail.html:938 #, python-format msgid "Supplier Unit Cost - %(currency)s" msgstr "" -#: part/templates/part/detail.html:1013 +#: part/templates/part/detail.html:1027 #, python-format msgid "Unit Price - %(currency)s" msgstr "" @@ -5321,13 +5329,13 @@ msgstr "" msgid "Allocated to Sales Orders" msgstr "Przypisane do zamówień sprzedaży" -#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1037 +#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1035 msgid "Can Build" msgstr "" #: part/templates/part/part_base.html:238 templates/js/translated/part.js:593 #: templates/js/translated/part.js:613 templates/js/translated/part.js:1306 -#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1494 +#: templates/js/translated/part.js:1490 msgid "Building" msgstr "" @@ -5379,7 +5387,7 @@ msgid "Total Cost" msgstr "Całkowity Koszt" #: part/templates/part/part_pricing.html:40 part/templates/part/prices.html:43 -#: templates/js/translated/bom.js:991 +#: templates/js/translated/bom.js:989 msgid "No supplier pricing available" msgstr "Brak dostępnych cen dostawców" @@ -5414,6 +5422,18 @@ msgstr "Cena wewnętrzna" msgid "No pricing information is available for this part." msgstr "Brak dostępnych informacji o cenach dla tej części." +#: part/templates/part/part_scheduling.html:13 +#: report/templates/report/inventree_test_report_base.html:97 +#: templates/InvenTree/settings/plugin.html:53 +#: templates/InvenTree/settings/plugin_settings.html:38 +#: templates/js/translated/order.js:1772 templates/js/translated/stock.js:2468 +msgid "Date" +msgstr "Data" + +#: part/templates/part/part_scheduling.html:14 +msgid "Scheduled Quantity" +msgstr "" + #: part/templates/part/part_sidebar.html:11 msgid "Variants" msgstr "Warianty" @@ -5462,7 +5482,7 @@ msgstr "Pokaż cenę sprzedaży" msgid "Calculation parameters" msgstr "Parametry obliczeniowe" -#: part/templates/part/prices.html:160 templates/js/translated/bom.js:985 +#: part/templates/part/prices.html:160 templates/js/translated/bom.js:983 msgid "Supplier Cost" msgstr "Koszty dostawcy" @@ -5501,7 +5521,7 @@ msgid "No sale pice history available for this part." msgstr "" #: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616 -#: templates/js/translated/part.js:1294 templates/js/translated/part.js:1498 +#: templates/js/translated/part.js:1294 msgid "No Stock" msgstr "Brak w magazynie" @@ -5893,11 +5913,11 @@ msgstr "" #: report/templates/report/inventree_test_report_base.html:79 #: stock/models.py:648 stock/templates/stock/item_base.html:322 -#: templates/js/translated/build.js:424 templates/js/translated/build.js:576 -#: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673 +#: templates/js/translated/build.js:456 templates/js/translated/build.js:608 +#: templates/js/translated/build.js:1208 templates/js/translated/build.js:1705 #: templates/js/translated/model_renderers.js:118 -#: templates/js/translated/order.js:118 templates/js/translated/order.js:3297 -#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490 +#: templates/js/translated/order.js:119 templates/js/translated/order.js:3336 +#: templates/js/translated/order.js:3423 templates/js/translated/stock.js:490 msgid "Serial Number" msgstr "Numer Seryjny" @@ -5915,13 +5935,6 @@ msgstr "" msgid "Result" msgstr "Wynik" -#: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:53 -#: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468 -msgid "Date" -msgstr "Data" - #: report/templates/report/inventree_test_report_base.html:108 msgid "Pass" msgstr "Zaliczone" @@ -6519,7 +6532,7 @@ msgid "Available Quantity" msgstr "" #: stock/templates/stock/item_base.html:394 -#: templates/js/translated/build.js:1695 +#: templates/js/translated/build.js:1727 msgid "No location set" msgstr "Lokacje nie są ustawione" @@ -7705,7 +7718,7 @@ msgid "The following parts are low on required stock" msgstr "" #: templates/email/build_order_required_stock.html:18 -#: templates/js/translated/bom.js:1483 +#: templates/js/translated/bom.js:1481 msgid "Required Quantity" msgstr "Wymagana ilość" @@ -7719,6 +7732,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:19 +#: templates/js/translated/part.js:2498 msgid "Minimum Quantity" msgstr "Minimalna ilość" @@ -7920,10 +7934,10 @@ msgstr "Wyświetl dane wiersza" msgid "Row Data" msgstr "Dane wiersza" -#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:622 +#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:620 #: templates/js/translated/modals.js:56 templates/js/translated/modals.js:601 #: templates/js/translated/modals.js:695 templates/js/translated/modals.js:1003 -#: templates/js/translated/order.js:979 templates/modals.html:15 +#: templates/js/translated/order.js:1018 templates/modals.html:15 #: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50 msgid "Close" msgstr "Zamknij" @@ -7933,12 +7947,12 @@ msgid "Download BOM Template" msgstr "Pobierz szablon BOM-u" #: templates/js/translated/bom.js:253 templates/js/translated/bom.js:287 -#: templates/js/translated/order.js:760 templates/js/translated/tables.js:145 +#: templates/js/translated/order.js:799 templates/js/translated/tables.js:145 msgid "Format" msgstr "" #: templates/js/translated/bom.js:254 templates/js/translated/bom.js:288 -#: templates/js/translated/order.js:761 +#: templates/js/translated/order.js:800 msgid "Select file format" msgstr "Wybierz format pliku" @@ -7994,390 +8008,390 @@ msgstr "" msgid "Remove substitute part" msgstr "" -#: templates/js/translated/bom.js:567 +#: templates/js/translated/bom.js:565 msgid "Select and add a new substitute part using the input below" msgstr "" -#: templates/js/translated/bom.js:578 +#: templates/js/translated/bom.js:576 msgid "Are you sure you wish to remove this substitute part link?" msgstr "" -#: templates/js/translated/bom.js:584 +#: templates/js/translated/bom.js:582 msgid "Remove Substitute Part" msgstr "" -#: templates/js/translated/bom.js:623 +#: templates/js/translated/bom.js:621 msgid "Add Substitute" msgstr "Dodaj zamiennik" -#: templates/js/translated/bom.js:624 +#: templates/js/translated/bom.js:622 msgid "Edit BOM Item Substitutes" msgstr "" -#: templates/js/translated/bom.js:686 +#: templates/js/translated/bom.js:684 msgid "All selected BOM items will be deleted" msgstr "" -#: templates/js/translated/bom.js:702 +#: templates/js/translated/bom.js:700 msgid "Delete selected BOM items?" msgstr "" -#: templates/js/translated/bom.js:821 +#: templates/js/translated/bom.js:819 msgid "Load BOM for subassembly" msgstr "" -#: templates/js/translated/bom.js:831 +#: templates/js/translated/bom.js:829 msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:835 templates/js/translated/build.js:1771 +#: templates/js/translated/bom.js:833 templates/js/translated/build.js:1803 msgid "Variant stock allowed" msgstr "" -#: templates/js/translated/bom.js:929 templates/js/translated/build.js:1816 -#: templates/js/translated/order.js:3632 +#: templates/js/translated/bom.js:927 templates/js/translated/build.js:1849 +#: templates/js/translated/order.js:3671 msgid "No Stock Available" msgstr "" -#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1820 +#: templates/js/translated/bom.js:932 templates/js/translated/build.js:1853 msgid "Includes variant and substitute stock" msgstr "" -#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822 +#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1855 #: templates/js/translated/part.js:763 msgid "Includes variant stock" msgstr "" -#: templates/js/translated/bom.js:938 templates/js/translated/build.js:1824 +#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1857 msgid "Includes substitute stock" msgstr "" -#: templates/js/translated/bom.js:956 +#: templates/js/translated/bom.js:954 msgid "Substitutes" msgstr "" -#: templates/js/translated/bom.js:971 +#: templates/js/translated/bom.js:969 msgid "Purchase Price Range" msgstr "" -#: templates/js/translated/bom.js:978 +#: templates/js/translated/bom.js:976 msgid "Purchase Price Average" msgstr "" -#: templates/js/translated/bom.js:1027 templates/js/translated/bom.js:1147 +#: templates/js/translated/bom.js:1025 templates/js/translated/bom.js:1145 msgid "View BOM" msgstr "Zobacz BOM" -#: templates/js/translated/bom.js:1054 +#: templates/js/translated/bom.js:1052 msgid "Including On Order" msgstr "" -#: templates/js/translated/bom.js:1118 +#: templates/js/translated/bom.js:1116 msgid "Validate BOM Item" msgstr "" -#: templates/js/translated/bom.js:1120 +#: templates/js/translated/bom.js:1118 msgid "This line has been validated" msgstr "" -#: templates/js/translated/bom.js:1122 +#: templates/js/translated/bom.js:1120 msgid "Edit substitute parts" msgstr "" -#: templates/js/translated/bom.js:1124 templates/js/translated/bom.js:1286 +#: templates/js/translated/bom.js:1122 templates/js/translated/bom.js:1284 msgid "Edit BOM Item" msgstr "" -#: templates/js/translated/bom.js:1126 +#: templates/js/translated/bom.js:1124 msgid "Delete BOM Item" msgstr "" -#: templates/js/translated/bom.js:1222 templates/js/translated/build.js:1617 +#: templates/js/translated/bom.js:1220 templates/js/translated/build.js:1649 msgid "No BOM items found" msgstr "" -#: templates/js/translated/bom.js:1466 templates/js/translated/build.js:1755 +#: templates/js/translated/bom.js:1464 templates/js/translated/build.js:1787 msgid "Required Part" msgstr "" -#: templates/js/translated/bom.js:1488 +#: templates/js/translated/bom.js:1486 msgid "Inherited from parent BOM" msgstr "" -#: templates/js/translated/build.js:86 +#: templates/js/translated/build.js:89 msgid "Edit Build Order" msgstr "" -#: templates/js/translated/build.js:120 +#: templates/js/translated/build.js:132 msgid "Create Build Order" msgstr "" -#: templates/js/translated/build.js:133 +#: templates/js/translated/build.js:165 msgid "Cancel Build Order" msgstr "" -#: templates/js/translated/build.js:142 +#: templates/js/translated/build.js:174 msgid "Are you sure you wish to cancel this build?" msgstr "Czy na pewno przerwać tę budowę?" -#: templates/js/translated/build.js:148 +#: templates/js/translated/build.js:180 msgid "Stock items have been allocated to this build order" msgstr "" -#: templates/js/translated/build.js:155 +#: templates/js/translated/build.js:187 msgid "There are incomplete outputs remaining for this build order" msgstr "" -#: templates/js/translated/build.js:185 +#: templates/js/translated/build.js:217 msgid "Build order is ready to be completed" msgstr "" -#: templates/js/translated/build.js:190 +#: templates/js/translated/build.js:222 msgid "Build Order is incomplete" msgstr "" -#: templates/js/translated/build.js:222 +#: templates/js/translated/build.js:254 msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:263 templates/js/translated/stock.js:92 +#: templates/js/translated/build.js:295 templates/js/translated/stock.js:92 #: templates/js/translated/stock.js:214 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:265 templates/js/translated/stock.js:94 +#: templates/js/translated/build.js:297 templates/js/translated/stock.js:94 #: templates/js/translated/stock.js:216 msgid "Latest serial number" msgstr "Ostatni numer seryjny" -#: templates/js/translated/build.js:274 +#: templates/js/translated/build.js:306 msgid "The Bill of Materials contains trackable parts" msgstr "" -#: templates/js/translated/build.js:275 +#: templates/js/translated/build.js:307 msgid "Build outputs must be generated individually" msgstr "" -#: templates/js/translated/build.js:283 +#: templates/js/translated/build.js:315 msgid "Trackable parts can have serial numbers specified" msgstr "" -#: templates/js/translated/build.js:284 +#: templates/js/translated/build.js:316 msgid "Enter serial numbers to generate multiple single build outputs" msgstr "" -#: templates/js/translated/build.js:291 +#: templates/js/translated/build.js:323 msgid "Create Build Output" msgstr "Utwórz zlecenie budowy" -#: templates/js/translated/build.js:322 +#: templates/js/translated/build.js:354 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:333 +#: templates/js/translated/build.js:365 msgid "Unallocate stock from build output" msgstr "" -#: templates/js/translated/build.js:342 +#: templates/js/translated/build.js:374 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:350 +#: templates/js/translated/build.js:382 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:373 +#: templates/js/translated/build.js:405 msgid "Are you sure you wish to unallocate stock items from this build?" msgstr "" -#: templates/js/translated/build.js:391 +#: templates/js/translated/build.js:423 msgid "Unallocate Stock Items" msgstr "" -#: templates/js/translated/build.js:411 templates/js/translated/build.js:563 +#: templates/js/translated/build.js:443 templates/js/translated/build.js:595 msgid "Select Build Outputs" msgstr "" -#: templates/js/translated/build.js:412 templates/js/translated/build.js:564 +#: templates/js/translated/build.js:444 templates/js/translated/build.js:596 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:466 templates/js/translated/build.js:618 +#: templates/js/translated/build.js:498 templates/js/translated/build.js:650 msgid "Output" msgstr "Wyjście" -#: templates/js/translated/build.js:484 +#: templates/js/translated/build.js:516 msgid "Complete Build Outputs" msgstr "" -#: templates/js/translated/build.js:631 +#: templates/js/translated/build.js:663 msgid "Delete Build Outputs" msgstr "" -#: templates/js/translated/build.js:720 +#: templates/js/translated/build.js:752 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:757 +#: templates/js/translated/build.js:789 msgid "Location not specified" msgstr "" -#: templates/js/translated/build.js:1136 +#: templates/js/translated/build.js:1168 msgid "No active build outputs found" msgstr "" -#: templates/js/translated/build.js:1205 +#: templates/js/translated/build.js:1237 msgid "Allocated Stock" msgstr "" -#: templates/js/translated/build.js:1212 +#: templates/js/translated/build.js:1244 msgid "No tracked BOM items for this build" msgstr "" -#: templates/js/translated/build.js:1234 +#: templates/js/translated/build.js:1266 msgid "Completed Tests" msgstr "" -#: templates/js/translated/build.js:1239 +#: templates/js/translated/build.js:1271 msgid "No required tests for this build" msgstr "" -#: templates/js/translated/build.js:1712 templates/js/translated/build.js:2656 -#: templates/js/translated/order.js:3332 +#: templates/js/translated/build.js:1744 templates/js/translated/build.js:2689 +#: templates/js/translated/order.js:3371 msgid "Edit stock allocation" msgstr "" -#: templates/js/translated/build.js:1714 templates/js/translated/build.js:2657 -#: templates/js/translated/order.js:3333 +#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2690 +#: templates/js/translated/order.js:3372 msgid "Delete stock allocation" msgstr "" -#: templates/js/translated/build.js:1732 +#: templates/js/translated/build.js:1764 msgid "Edit Allocation" msgstr "" -#: templates/js/translated/build.js:1742 +#: templates/js/translated/build.js:1774 msgid "Remove Allocation" msgstr "" -#: templates/js/translated/build.js:1767 +#: templates/js/translated/build.js:1799 msgid "Substitute parts available" msgstr "" -#: templates/js/translated/build.js:1784 +#: templates/js/translated/build.js:1816 msgid "Quantity Per" msgstr "Ilość za" -#: templates/js/translated/build.js:1810 templates/js/translated/order.js:3639 +#: templates/js/translated/build.js:1843 templates/js/translated/order.js:3678 msgid "Insufficient stock available" msgstr "" -#: templates/js/translated/build.js:1812 templates/js/translated/order.js:3637 +#: templates/js/translated/build.js:1845 templates/js/translated/order.js:3676 msgid "Sufficient stock available" msgstr "" -#: templates/js/translated/build.js:1841 templates/js/translated/build.js:2086 -#: templates/js/translated/build.js:2652 templates/js/translated/order.js:3651 +#: templates/js/translated/build.js:1874 templates/js/translated/build.js:2119 +#: templates/js/translated/build.js:2685 templates/js/translated/order.js:3690 msgid "Allocated" msgstr "Przydzielono" -#: templates/js/translated/build.js:1889 templates/js/translated/order.js:3731 +#: templates/js/translated/build.js:1922 templates/js/translated/order.js:3770 msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:1893 templates/stock_table.html:50 +#: templates/js/translated/build.js:1926 templates/stock_table.html:50 msgid "Order stock" msgstr "" -#: templates/js/translated/build.js:1896 templates/js/translated/order.js:3724 +#: templates/js/translated/build.js:1929 templates/js/translated/order.js:3763 msgid "Allocate stock" msgstr "" -#: templates/js/translated/build.js:1935 templates/js/translated/label.js:172 -#: templates/js/translated/order.js:807 templates/js/translated/order.js:2859 +#: templates/js/translated/build.js:1968 templates/js/translated/label.js:172 +#: templates/js/translated/order.js:846 templates/js/translated/order.js:2898 #: templates/js/translated/report.js:225 msgid "Select Parts" msgstr "Wybierz części" -#: templates/js/translated/build.js:1936 templates/js/translated/order.js:2860 +#: templates/js/translated/build.js:1969 templates/js/translated/order.js:2899 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1985 templates/js/translated/order.js:2808 +#: templates/js/translated/build.js:2018 templates/js/translated/order.js:2847 msgid "Specify stock allocation quantity" msgstr "" -#: templates/js/translated/build.js:2059 +#: templates/js/translated/build.js:2092 msgid "All Parts Allocated" msgstr "" -#: templates/js/translated/build.js:2060 +#: templates/js/translated/build.js:2093 msgid "All selected parts have been fully allocated" msgstr "" -#: templates/js/translated/build.js:2074 templates/js/translated/order.js:2874 +#: templates/js/translated/build.js:2107 templates/js/translated/order.js:2913 msgid "Select source location (leave blank to take from all locations)" msgstr "" -#: templates/js/translated/build.js:2102 +#: templates/js/translated/build.js:2135 msgid "Allocate Stock Items to Build Order" msgstr "" -#: templates/js/translated/build.js:2113 templates/js/translated/order.js:2971 +#: templates/js/translated/build.js:2146 templates/js/translated/order.js:3010 msgid "No matching stock locations" msgstr "" -#: templates/js/translated/build.js:2185 templates/js/translated/order.js:3048 +#: templates/js/translated/build.js:2218 templates/js/translated/order.js:3087 msgid "No matching stock items" msgstr "" -#: templates/js/translated/build.js:2282 +#: templates/js/translated/build.js:2315 msgid "Automatic Stock Allocation" msgstr "" -#: templates/js/translated/build.js:2283 +#: templates/js/translated/build.js:2316 msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines" msgstr "" -#: templates/js/translated/build.js:2285 +#: templates/js/translated/build.js:2318 msgid "If a location is specifed, stock will only be allocated from that location" msgstr "" -#: templates/js/translated/build.js:2286 +#: templates/js/translated/build.js:2319 msgid "If stock is considered interchangeable, it will be allocated from the first location it is found" msgstr "" -#: templates/js/translated/build.js:2287 +#: templates/js/translated/build.js:2320 msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found" msgstr "" -#: templates/js/translated/build.js:2308 +#: templates/js/translated/build.js:2341 msgid "Allocate Stock Items" msgstr "" -#: templates/js/translated/build.js:2414 +#: templates/js/translated/build.js:2447 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387 -#: templates/js/translated/part.js:1899 templates/js/translated/stock.js:1686 +#: templates/js/translated/build.js:2482 templates/js/translated/part.js:1387 +#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1686 #: templates/js/translated/stock.js:2386 msgid "Select" msgstr "Wybierz" -#: templates/js/translated/build.js:2463 +#: templates/js/translated/build.js:2496 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:2491 +#: templates/js/translated/build.js:2524 msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647 +#: templates/js/translated/build.js:2560 templates/js/translated/stock.js:2647 msgid "No user information" msgstr "Brak informacji o użytkowniku" -#: templates/js/translated/build.js:2633 +#: templates/js/translated/build.js:2666 msgid "No parts allocated for" msgstr "" @@ -8393,11 +8407,11 @@ msgstr "Dodaj część producenta" msgid "Edit Manufacturer Part" msgstr "" -#: templates/js/translated/company.js:167 templates/js/translated/order.js:509 +#: templates/js/translated/company.js:167 templates/js/translated/order.js:510 msgid "Add Supplier" msgstr "Dodaj dostawcę" -#: templates/js/translated/company.js:195 templates/js/translated/order.js:628 +#: templates/js/translated/company.js:195 templates/js/translated/order.js:667 msgid "Add Supplier Part" msgstr "" @@ -8768,381 +8782,385 @@ msgstr "" msgid "Notifications will load here" msgstr "" -#: templates/js/translated/order.js:94 +#: templates/js/translated/order.js:95 msgid "No stock items have been allocated to this shipment" msgstr "" -#: templates/js/translated/order.js:99 +#: templates/js/translated/order.js:100 msgid "The following stock items will be shipped" msgstr "" -#: templates/js/translated/order.js:139 +#: templates/js/translated/order.js:140 msgid "Complete Shipment" msgstr "" -#: templates/js/translated/order.js:159 +#: templates/js/translated/order.js:160 msgid "Confirm Shipment" msgstr "" -#: templates/js/translated/order.js:215 +#: templates/js/translated/order.js:216 msgid "No pending shipments found" msgstr "" -#: templates/js/translated/order.js:219 +#: templates/js/translated/order.js:220 msgid "No stock items have been allocated to pending shipments" msgstr "" -#: templates/js/translated/order.js:251 +#: templates/js/translated/order.js:252 msgid "Skip" msgstr "" -#: templates/js/translated/order.js:281 +#: templates/js/translated/order.js:282 msgid "Complete Purchase Order" msgstr "" -#: templates/js/translated/order.js:287 +#: templates/js/translated/order.js:288 msgid "Mark this order as complete?" msgstr "Oznacz zamówienie jako zakończone?" -#: templates/js/translated/order.js:293 +#: templates/js/translated/order.js:294 msgid "All line items have been received" msgstr "" -#: templates/js/translated/order.js:298 +#: templates/js/translated/order.js:299 msgid "This order has line items which have not been marked as received." msgstr "" -#: templates/js/translated/order.js:299 +#: templates/js/translated/order.js:300 msgid "Completing this order means that the order and line items will no longer be editable." msgstr "" -#: templates/js/translated/order.js:322 +#: templates/js/translated/order.js:323 msgid "Cancel Purchase Order" msgstr "" -#: templates/js/translated/order.js:327 +#: templates/js/translated/order.js:328 msgid "Are you sure you wish to cancel this purchase order?" msgstr "" -#: templates/js/translated/order.js:333 +#: templates/js/translated/order.js:334 msgid "This purchase order can not be cancelled" msgstr "" -#: templates/js/translated/order.js:356 +#: templates/js/translated/order.js:357 msgid "Issue Purchase Order" msgstr "" -#: templates/js/translated/order.js:361 +#: templates/js/translated/order.js:362 msgid "After placing this purchase order, line items will no longer be editable." msgstr "" -#: templates/js/translated/order.js:383 +#: templates/js/translated/order.js:384 msgid "Cancel Sales Order" msgstr "" -#: templates/js/translated/order.js:388 +#: templates/js/translated/order.js:389 msgid "Cancelling this order means that the order will no longer be editable." msgstr "" -#: templates/js/translated/order.js:442 +#: templates/js/translated/order.js:443 msgid "Create New Shipment" msgstr "" -#: templates/js/translated/order.js:467 +#: templates/js/translated/order.js:468 msgid "Add Customer" msgstr "" -#: templates/js/translated/order.js:492 +#: templates/js/translated/order.js:493 msgid "Create Sales Order" msgstr "" -#: templates/js/translated/order.js:757 +#: templates/js/translated/order.js:554 +msgid "Edit Purchase Order" +msgstr "Edytuj zamówienie zakupu" + +#: templates/js/translated/order.js:796 msgid "Export Order" msgstr "" -#: templates/js/translated/order.js:808 +#: templates/js/translated/order.js:847 msgid "At least one purchaseable part must be selected" msgstr "" -#: templates/js/translated/order.js:833 +#: templates/js/translated/order.js:872 msgid "Quantity to order" msgstr "" -#: templates/js/translated/order.js:842 +#: templates/js/translated/order.js:881 msgid "New supplier part" msgstr "" -#: templates/js/translated/order.js:860 +#: templates/js/translated/order.js:899 msgid "New purchase order" msgstr "" -#: templates/js/translated/order.js:893 +#: templates/js/translated/order.js:932 msgid "Add to purchase order" msgstr "" -#: templates/js/translated/order.js:1002 +#: templates/js/translated/order.js:1041 msgid "No matching supplier parts" msgstr "" -#: templates/js/translated/order.js:1017 +#: templates/js/translated/order.js:1056 msgid "No matching purchase orders" msgstr "" -#: templates/js/translated/order.js:1194 +#: templates/js/translated/order.js:1233 msgid "Select Line Items" msgstr "" -#: templates/js/translated/order.js:1195 +#: templates/js/translated/order.js:1234 msgid "At least one line item must be selected" msgstr "" -#: templates/js/translated/order.js:1215 templates/js/translated/order.js:1314 +#: templates/js/translated/order.js:1254 templates/js/translated/order.js:1353 msgid "Add batch code" msgstr "" -#: templates/js/translated/order.js:1221 templates/js/translated/order.js:1325 +#: templates/js/translated/order.js:1260 templates/js/translated/order.js:1364 msgid "Add serial numbers" msgstr "" -#: templates/js/translated/order.js:1233 +#: templates/js/translated/order.js:1272 msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144 +#: templates/js/translated/order.js:1336 templates/js/translated/stock.js:2144 msgid "Stock Status" msgstr "" -#: templates/js/translated/order.js:1388 +#: templates/js/translated/order.js:1427 msgid "Order Code" msgstr "Kod zamówienia" -#: templates/js/translated/order.js:1389 +#: templates/js/translated/order.js:1428 msgid "Ordered" msgstr "Zamówione" -#: templates/js/translated/order.js:1391 +#: templates/js/translated/order.js:1430 msgid "Quantity to Receive" msgstr "Ilość do otrzymania" -#: templates/js/translated/order.js:1410 +#: templates/js/translated/order.js:1449 msgid "Confirm receipt of items" msgstr "Potwierdź odbiór elementów" -#: templates/js/translated/order.js:1411 +#: templates/js/translated/order.js:1450 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943 +#: templates/js/translated/order.js:1711 templates/js/translated/part.js:943 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/order.js:1699 templates/js/translated/order.js:2503 +#: templates/js/translated/order.js:1738 templates/js/translated/order.js:2542 msgid "Order is overdue" msgstr "" -#: templates/js/translated/order.js:1749 templates/js/translated/order.js:2568 -#: templates/js/translated/order.js:2709 +#: templates/js/translated/order.js:1788 templates/js/translated/order.js:2607 +#: templates/js/translated/order.js:2748 msgid "Items" msgstr "Przedmioty" -#: templates/js/translated/order.js:1847 templates/js/translated/order.js:3783 +#: templates/js/translated/order.js:1886 templates/js/translated/order.js:3822 msgid "Duplicate Line Item" msgstr "" -#: templates/js/translated/order.js:1864 templates/js/translated/order.js:3805 +#: templates/js/translated/order.js:1903 templates/js/translated/order.js:3844 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/order.js:1877 templates/js/translated/order.js:3816 +#: templates/js/translated/order.js:1916 templates/js/translated/order.js:3855 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/order.js:1920 +#: templates/js/translated/order.js:1959 msgid "No line items found" msgstr "" -#: templates/js/translated/order.js:1947 templates/js/translated/order.js:3517 +#: templates/js/translated/order.js:1986 templates/js/translated/order.js:3556 msgid "Total" msgstr "Razem" -#: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203 -#: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050 -#: templates/js/translated/part.js:2135 templates/js/translated/part.js:2488 +#: templates/js/translated/order.js:2040 templates/js/translated/order.js:2242 +#: templates/js/translated/order.js:3581 templates/js/translated/order.js:4089 +#: templates/js/translated/part.js:2131 templates/js/translated/part.js:2703 msgid "Unit Price" msgstr "Cena jednostkowa" -#: templates/js/translated/order.js:2016 templates/js/translated/order.js:2219 -#: templates/js/translated/order.js:3558 templates/js/translated/order.js:4066 +#: templates/js/translated/order.js:2055 templates/js/translated/order.js:2258 +#: templates/js/translated/order.js:3597 templates/js/translated/order.js:4105 msgid "Total Price" msgstr "Cena całkowita" -#: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600 +#: templates/js/translated/order.js:2096 templates/js/translated/order.js:3639 #: templates/js/translated/part.js:1050 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096 +#: templates/js/translated/order.js:2155 templates/js/translated/part.js:1096 msgid "Receive line item" msgstr "" -#: templates/js/translated/order.js:2120 templates/js/translated/order.js:3737 +#: templates/js/translated/order.js:2159 templates/js/translated/order.js:3776 msgid "Duplicate line item" msgstr "" -#: templates/js/translated/order.js:2121 templates/js/translated/order.js:3738 +#: templates/js/translated/order.js:2160 templates/js/translated/order.js:3777 msgid "Edit line item" msgstr "" -#: templates/js/translated/order.js:2122 templates/js/translated/order.js:3742 +#: templates/js/translated/order.js:2161 templates/js/translated/order.js:3781 msgid "Delete line item" msgstr "" -#: templates/js/translated/order.js:2268 templates/js/translated/order.js:4115 +#: templates/js/translated/order.js:2307 templates/js/translated/order.js:4154 msgid "Duplicate line" msgstr "" -#: templates/js/translated/order.js:2269 templates/js/translated/order.js:4116 +#: templates/js/translated/order.js:2308 templates/js/translated/order.js:4155 msgid "Edit line" msgstr "" -#: templates/js/translated/order.js:2270 templates/js/translated/order.js:4117 +#: templates/js/translated/order.js:2309 templates/js/translated/order.js:4156 msgid "Delete line" msgstr "" -#: templates/js/translated/order.js:2300 templates/js/translated/order.js:4147 +#: templates/js/translated/order.js:2339 templates/js/translated/order.js:4186 msgid "Duplicate Line" msgstr "" -#: templates/js/translated/order.js:2321 templates/js/translated/order.js:4168 +#: templates/js/translated/order.js:2360 templates/js/translated/order.js:4207 msgid "Edit Line" msgstr "" -#: templates/js/translated/order.js:2332 templates/js/translated/order.js:4179 +#: templates/js/translated/order.js:2371 templates/js/translated/order.js:4218 msgid "Delete Line" msgstr "" -#: templates/js/translated/order.js:2343 +#: templates/js/translated/order.js:2382 msgid "No matching line" msgstr "" -#: templates/js/translated/order.js:2454 +#: templates/js/translated/order.js:2493 msgid "No sales orders found" msgstr "Nie znaleziono zamówień sprzedaży" -#: templates/js/translated/order.js:2517 +#: templates/js/translated/order.js:2556 msgid "Invalid Customer" msgstr "Nieprawidłowy klient" -#: templates/js/translated/order.js:2615 +#: templates/js/translated/order.js:2654 msgid "Edit shipment" msgstr "Edytuj wysyłkę" -#: templates/js/translated/order.js:2618 +#: templates/js/translated/order.js:2657 msgid "Complete shipment" msgstr "Kompletna wysyłka" -#: templates/js/translated/order.js:2623 +#: templates/js/translated/order.js:2662 msgid "Delete shipment" msgstr "Usuń wysyłkę" -#: templates/js/translated/order.js:2643 +#: templates/js/translated/order.js:2682 msgid "Edit Shipment" msgstr "Edytuj wysyłkę" -#: templates/js/translated/order.js:2660 +#: templates/js/translated/order.js:2699 msgid "Delete Shipment" msgstr "Usuń wysyłkę" -#: templates/js/translated/order.js:2694 +#: templates/js/translated/order.js:2733 msgid "No matching shipments found" msgstr "Nie odnaleziono pasujących przesyłek" -#: templates/js/translated/order.js:2704 +#: templates/js/translated/order.js:2743 msgid "Shipment Reference" msgstr "Numer referencyjny przesyłki" -#: templates/js/translated/order.js:2728 +#: templates/js/translated/order.js:2767 msgid "Not shipped" msgstr "Nie wysłano" -#: templates/js/translated/order.js:2734 +#: templates/js/translated/order.js:2773 msgid "Tracking" msgstr "Śledzenie" -#: templates/js/translated/order.js:2738 +#: templates/js/translated/order.js:2777 msgid "Invoice" msgstr "" -#: templates/js/translated/order.js:2907 +#: templates/js/translated/order.js:2946 msgid "Add Shipment" msgstr "" -#: templates/js/translated/order.js:2958 +#: templates/js/translated/order.js:2997 msgid "Confirm stock allocation" msgstr "Potwierdź przydział zapasów" -#: templates/js/translated/order.js:2959 +#: templates/js/translated/order.js:2998 msgid "Allocate Stock Items to Sales Order" msgstr "" -#: templates/js/translated/order.js:3167 +#: templates/js/translated/order.js:3206 msgid "No sales order allocations found" msgstr "" -#: templates/js/translated/order.js:3246 +#: templates/js/translated/order.js:3285 msgid "Edit Stock Allocation" msgstr "" -#: templates/js/translated/order.js:3263 +#: templates/js/translated/order.js:3302 msgid "Confirm Delete Operation" msgstr "" -#: templates/js/translated/order.js:3264 +#: templates/js/translated/order.js:3303 msgid "Delete Stock Allocation" msgstr "" -#: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398 +#: templates/js/translated/order.js:3348 templates/js/translated/order.js:3437 #: templates/js/translated/stock.js:1602 msgid "Shipped to customer" msgstr "" -#: templates/js/translated/order.js:3317 templates/js/translated/order.js:3407 +#: templates/js/translated/order.js:3356 templates/js/translated/order.js:3446 msgid "Stock location not specified" msgstr "" -#: templates/js/translated/order.js:3721 +#: templates/js/translated/order.js:3760 msgid "Allocate serial numbers" msgstr "" -#: templates/js/translated/order.js:3727 +#: templates/js/translated/order.js:3766 msgid "Purchase stock" msgstr "Cena zakupu" -#: templates/js/translated/order.js:3734 templates/js/translated/order.js:3932 +#: templates/js/translated/order.js:3773 templates/js/translated/order.js:3971 msgid "Calculate price" msgstr "Oblicz cenę" -#: templates/js/translated/order.js:3746 +#: templates/js/translated/order.js:3785 msgid "Cannot be deleted as items have been shipped" msgstr "" -#: templates/js/translated/order.js:3749 +#: templates/js/translated/order.js:3788 msgid "Cannot be deleted as items have been allocated" msgstr "" -#: templates/js/translated/order.js:3831 +#: templates/js/translated/order.js:3870 msgid "Allocate Serial Numbers" msgstr "" -#: templates/js/translated/order.js:3940 +#: templates/js/translated/order.js:3979 msgid "Update Unit Price" msgstr "Zaktualizuj cenę jednostkową" -#: templates/js/translated/order.js:3954 +#: templates/js/translated/order.js:3993 msgid "No matching line items" msgstr "" -#: templates/js/translated/order.js:4190 +#: templates/js/translated/order.js:4229 msgid "No matching lines" msgstr "" @@ -9322,12 +9340,12 @@ msgstr "" msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:586 templates/js/translated/part.js:1470 +#: templates/js/translated/part.js:586 templates/js/translated/part.js:1478 #: templates/js/translated/table_filters.js:468 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:596 templates/js/translated/part.js:1482 +#: templates/js/translated/part.js:596 msgid "No stock available" msgstr "" @@ -9359,7 +9377,7 @@ msgstr "" msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1553 +#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1549 msgid "No parts found" msgstr "Nie znaleziono części" @@ -9371,100 +9389,124 @@ msgstr "" msgid "No category" msgstr "Brak kategorii" -#: templates/js/translated/part.js:1577 templates/js/translated/part.js:1820 +#: templates/js/translated/part.js:1476 +msgid "No stock" +msgstr "" + +#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816 #: templates/js/translated/stock.js:2347 msgid "Display as list" msgstr "Wyświetl jako listę" -#: templates/js/translated/part.js:1593 +#: templates/js/translated/part.js:1589 msgid "Display as grid" msgstr "Wyświetl jako siatkę" -#: templates/js/translated/part.js:1659 +#: templates/js/translated/part.js:1655 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:1664 +#: templates/js/translated/part.js:1660 msgid "Set Part Category" msgstr "Ustaw kategorię części" -#: templates/js/translated/part.js:1669 +#: templates/js/translated/part.js:1665 msgid "Select Part Category" msgstr "" -#: templates/js/translated/part.js:1682 +#: templates/js/translated/part.js:1678 msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1839 templates/js/translated/stock.js:2366 +#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2366 msgid "Display as tree" msgstr "Wyświetl jako drzewo" -#: templates/js/translated/part.js:1918 +#: templates/js/translated/part.js:1914 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:1934 +#: templates/js/translated/part.js:1930 msgid "Subscribed category" msgstr "Obserwowana kategoria" -#: templates/js/translated/part.js:1992 +#: templates/js/translated/part.js:1988 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2043 templates/js/translated/stock.js:1299 +#: templates/js/translated/part.js:2039 templates/js/translated/stock.js:1299 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:2044 templates/js/translated/stock.js:1300 +#: templates/js/translated/part.js:2040 templates/js/translated/stock.js:1300 #: templates/js/translated/stock.js:1560 msgid "Delete test result" msgstr "" -#: templates/js/translated/part.js:2050 +#: templates/js/translated/part.js:2046 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2072 +#: templates/js/translated/part.js:2068 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2086 +#: templates/js/translated/part.js:2082 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2111 +#: templates/js/translated/part.js:2107 #, python-brace-format msgid "No ${human_name} information found" msgstr "Nie znaleziono informacji o ${human_name}" -#: templates/js/translated/part.js:2168 +#: templates/js/translated/part.js:2164 #, python-brace-format msgid "Edit ${human_name}" msgstr "Edytuj ${human_name}" -#: templates/js/translated/part.js:2169 +#: templates/js/translated/part.js:2165 #, python-brace-format msgid "Delete ${human_name}" msgstr "Usuń ${human_name}" -#: templates/js/translated/part.js:2283 -msgid "Current Stock" +#: templates/js/translated/part.js:2330 templates/js/translated/part.js:2331 +msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:2316 +#: templates/js/translated/part.js:2333 +msgid "Specified date is in the past" +msgstr "" + +#: templates/js/translated/part.js:2339 +msgid "Speculative" +msgstr "" + +#: templates/js/translated/part.js:2389 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2342 +#: templates/js/translated/part.js:2395 +msgid "Error fetching scheduling information for this part" +msgstr "" + +#: templates/js/translated/part.js:2491 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2412 +#: templates/js/translated/part.js:2507 +msgid "Maximum Quantity" +msgstr "" + +#: templates/js/translated/part.js:2533 +msgid "Minimum Stock Level" +msgstr "" + +#: templates/js/translated/part.js:2627 msgid "Single Price" msgstr "Cena jednostkowa" -#: templates/js/translated/part.js:2431 +#: templates/js/translated/part.js:2646 msgid "Single Price Difference" msgstr "" @@ -10225,10 +10267,6 @@ msgstr "Brak pasujących wyników" msgid "Hide/Show pagination" msgstr "Ukryj/Pokaż stronicowanie" -#: templates/js/translated/tables.js:558 -msgid "Refresh" -msgstr "Odśwież" - #: templates/js/translated/tables.js:561 msgid "Toggle" msgstr "Przełącz" diff --git a/InvenTree/locale/pt/LC_MESSAGES/django.po b/InvenTree/locale/pt/LC_MESSAGES/django.po index be9d592f45..8b2a7c9ef9 100644 --- a/InvenTree/locale/pt/LC_MESSAGES/django.po +++ b/InvenTree/locale/pt/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-16 11:53+0000\n" -"PO-Revision-Date: 2022-08-16 21:35\n" +"POT-Creation-Date: 2022-08-18 05:14+0000\n" +"PO-Revision-Date: 2022-08-18 21:38\n" "Last-Translator: \n" "Language-Team: Portuguese, Brazilian\n" "Language: pt_BR\n" @@ -40,22 +40,22 @@ msgstr "Insira uma Data" #: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825 #: stock/serializers.py:924 stock/serializers.py:1056 #: stock/templates/stock/stock_sidebar.html:25 -#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101 -#: templates/js/translated/company.js:964 templates/js/translated/order.js:2104 -#: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753 -#: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102 +#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1099 +#: templates/js/translated/company.js:964 templates/js/translated/order.js:2143 +#: templates/js/translated/order.js:2294 templates/js/translated/order.js:2792 +#: templates/js/translated/order.js:3743 templates/js/translated/order.js:4141 #: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980 msgid "Notes" -msgstr "" +msgstr "Anotações" #: InvenTree/format.py:142 #, python-brace-format msgid "Value '{name}' does not appear in pattern format" -msgstr "" +msgstr "Valor '{name}' não está no formato correto" #: InvenTree/format.py:152 msgid "Provided value does not match required pattern: " -msgstr "" +msgstr "O valor fornecido não corresponde ao padrão exigido: " #: InvenTree/forms.py:133 msgid "Enter password" @@ -91,23 +91,23 @@ msgstr "Voce precisa digital o mesmo email." #: InvenTree/helpers.py:173 msgid "Connection error" -msgstr "" +msgstr "Erro de conexão" #: InvenTree/helpers.py:177 InvenTree/helpers.py:182 msgid "Server responded with invalid status code" -msgstr "" +msgstr "O servidor respondeu com código de status inválido" #: InvenTree/helpers.py:179 msgid "Exception occurred" -msgstr "" +msgstr "Ocorreu uma exceção" #: InvenTree/helpers.py:187 msgid "Server responded with invalid Content-Length value" -msgstr "" +msgstr "O servidor respondeu com valor inválido de '{Content-Length}'" #: InvenTree/helpers.py:190 msgid "Image size is too large" -msgstr "" +msgstr "Tamanho da imagem muito grande" #: InvenTree/helpers.py:202 msgid "Image download exceeded maximum size" @@ -211,11 +211,11 @@ msgstr "Selecione arquivo para anexar" #: InvenTree/models.py:402 company/models.py:124 company/models.py:276 #: company/models.py:510 order/models.py:84 order/models.py:1245 -#: part/models.py:802 +#: part/models.py:802 part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_base.html:164 #: templates/js/translated/company.js:656 -#: templates/js/translated/company.js:948 templates/js/translated/order.js:2742 -#: templates/js/translated/part.js:1514 +#: templates/js/translated/company.js:948 templates/js/translated/order.js:2781 +#: templates/js/translated/part.js:1510 msgid "Link" msgstr "Link" @@ -235,8 +235,8 @@ msgstr "Comentario sobre arquivo" #: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665 #: common/models.py:1666 common/models.py:1889 common/models.py:1890 -#: common/models.py:2152 common/models.py:2153 part/models.py:2200 -#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257 +#: common/models.py:2152 common/models.py:2153 part/models.py:2247 +#: part/models.py:2267 plugin/models.py:256 plugin/models.py:257 #: report/templates/report/inventree_test_report_base.html:96 #: templates/js/translated/stock.js:2641 msgid "User" @@ -277,7 +277,7 @@ msgstr "Escolha invalida" #: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875 #: company/models.py:358 label/models.py:101 part/models.py:746 -#: part/models.py:2378 plugin/models.py:94 report/models.py:152 +#: part/models.py:2425 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 #: templates/InvenTree/settings/plugin.html:51 #: templates/InvenTree/settings/plugin.html:134 @@ -287,7 +287,7 @@ msgstr "Escolha invalida" #: templates/js/translated/company.js:758 #: templates/js/translated/notification.js:71 #: templates/js/translated/part.js:688 templates/js/translated/part.js:840 -#: templates/js/translated/part.js:1906 templates/js/translated/stock.js:2392 +#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2392 msgid "Name" msgstr "Nome" @@ -297,19 +297,20 @@ msgstr "Nome" #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:87 label/models.py:108 #: order/models.py:82 part/models.py:769 part/templates/part/category.html:80 -#: part/templates/part/part_base.html:167 report/models.py:165 +#: part/templates/part/part_base.html:167 +#: part/templates/part/part_scheduling.html:12 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 #: stock/templates/stock/location.html:108 #: templates/InvenTree/settings/plugin_settings.html:33 -#: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848 -#: templates/js/translated/build.js:2471 templates/js/translated/company.js:409 +#: templates/js/translated/bom.js:553 templates/js/translated/bom.js:846 +#: templates/js/translated/build.js:2504 templates/js/translated/company.js:409 #: templates/js/translated/company.js:667 -#: templates/js/translated/company.js:959 templates/js/translated/order.js:1720 -#: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531 +#: templates/js/translated/company.js:959 templates/js/translated/order.js:1759 +#: templates/js/translated/order.js:1991 templates/js/translated/order.js:2570 #: templates/js/translated/part.js:747 templates/js/translated/part.js:1153 -#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1942 -#: templates/js/translated/part.js:2011 templates/js/translated/stock.js:1743 +#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1938 +#: templates/js/translated/part.js:2007 templates/js/translated/stock.js:1743 #: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478 msgid "Description" msgstr "Descricao" @@ -323,7 +324,7 @@ msgid "parent" msgstr "parent" #: InvenTree/models.py:560 InvenTree/models.py:561 -#: templates/js/translated/part.js:1948 templates/js/translated/stock.js:2430 +#: templates/js/translated/part.js:1944 templates/js/translated/stock.js:2430 msgid "Path" msgstr "" @@ -335,7 +336,7 @@ msgstr "Erro de servidor" msgid "An error has been logged by the server." msgstr "Log de erro salvo pelo servidor." -#: InvenTree/serializers.py:55 part/models.py:2699 +#: InvenTree/serializers.py:55 part/models.py:2746 msgid "Must be a valid number" msgstr "Preicsa ser um numero valido" @@ -541,7 +542,7 @@ msgid "Returned" msgstr "" #: InvenTree/status_codes.py:141 order/models.py:1128 -#: templates/js/translated/order.js:3330 templates/js/translated/order.js:3679 +#: templates/js/translated/order.js:3369 templates/js/translated/order.js:3718 msgid "Shipped" msgstr "" @@ -728,7 +729,7 @@ msgstr "" #: report/templates/report/inventree_build_order_base.html:105 #: templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 -#: templates/js/translated/build.js:731 +#: templates/js/translated/build.js:763 msgid "Build Order" msgstr "" @@ -747,14 +748,14 @@ msgid "Build Order Reference" msgstr "" #: build/models.py:166 order/models.py:240 order/models.py:623 -#: order/models.py:904 part/models.py:2617 +#: order/models.py:904 part/models.py:2664 #: part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 -#: templates/js/translated/bom.js:692 templates/js/translated/bom.js:855 -#: templates/js/translated/build.js:1779 templates/js/translated/order.js:1983 -#: templates/js/translated/order.js:2184 templates/js/translated/order.js:3523 -#: templates/js/translated/order.js:4031 +#: templates/js/translated/bom.js:690 templates/js/translated/bom.js:853 +#: templates/js/translated/build.js:1811 templates/js/translated/order.js:2022 +#: templates/js/translated/order.js:2223 templates/js/translated/order.js:3562 +#: templates/js/translated/order.js:4070 msgid "Reference" msgstr "" @@ -762,7 +763,7 @@ msgstr "" msgid "Brief description of the build" msgstr "" -#: build/models.py:185 build/templates/build/build_base.html:169 +#: build/models.py:185 build/templates/build/build_base.html:172 #: build/templates/build/detail.html:87 msgid "Parent Build" msgstr "" @@ -771,13 +772,13 @@ msgstr "" msgid "BuildOrder to which this build is allocated" msgstr "" -#: build/models.py:191 build/templates/build/build_base.html:77 +#: build/models.py:191 build/templates/build/build_base.html:80 #: build/templates/build/detail.html:29 company/models.py:670 #: order/models.py:1001 order/models.py:1112 order/models.py:1113 -#: part/models.py:343 part/models.py:2146 part/models.py:2161 -#: part/models.py:2180 part/models.py:2198 part/models.py:2297 -#: part/models.py:2417 part/models.py:2507 part/models.py:2592 -#: part/models.py:2868 part/serializers.py:813 +#: part/models.py:343 part/models.py:2193 part/models.py:2208 +#: part/models.py:2227 part/models.py:2245 part/models.py:2344 +#: part/models.py:2464 part/models.py:2554 part/models.py:2639 +#: part/models.py:2915 part/serializers.py:813 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -789,17 +790,17 @@ msgstr "" #: templates/email/build_order_required_stock.html:17 #: templates/email/low_stock_notification.html:16 #: templates/email/overdue_build_order.html:16 -#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:553 -#: templates/js/translated/bom.js:691 templates/js/translated/bom.js:802 -#: templates/js/translated/build.js:1156 templates/js/translated/build.js:1649 -#: templates/js/translated/build.js:2085 templates/js/translated/build.js:2476 +#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:552 +#: templates/js/translated/bom.js:689 templates/js/translated/bom.js:800 +#: templates/js/translated/build.js:1188 templates/js/translated/build.js:1681 +#: templates/js/translated/build.js:2118 templates/js/translated/build.js:2509 #: templates/js/translated/company.js:266 #: templates/js/translated/company.js:496 #: templates/js/translated/company.js:608 -#: templates/js/translated/company.js:868 templates/js/translated/order.js:103 -#: templates/js/translated/order.js:934 templates/js/translated/order.js:1387 -#: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885 -#: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507 +#: templates/js/translated/company.js:868 templates/js/translated/order.js:104 +#: templates/js/translated/order.js:973 templates/js/translated/order.js:1426 +#: templates/js/translated/order.js:1976 templates/js/translated/order.js:2924 +#: templates/js/translated/order.js:3320 templates/js/translated/order.js:3546 #: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210 #: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586 #: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958 @@ -821,7 +822,7 @@ msgid "SalesOrder to which this build is allocated" msgstr "" #: build/models.py:213 build/serializers.py:800 -#: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873 +#: templates/js/translated/build.js:2106 templates/js/translated/order.js:2912 msgid "Source Location" msgstr "" @@ -862,7 +863,7 @@ msgid "Build status code" msgstr "" #: build/models.py:251 build/serializers.py:225 order/serializers.py:447 -#: stock/models.py:662 templates/js/translated/order.js:1247 +#: stock/models.py:662 templates/js/translated/order.js:1286 msgid "Batch Code" msgstr "" @@ -871,7 +872,7 @@ msgid "Batch code for this build output" msgstr "" #: build/models.py:258 order/models.py:86 part/models.py:938 -#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544 +#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2583 msgid "Creation Date" msgstr "" @@ -884,7 +885,7 @@ msgid "Target date for build completion. Build will be overdue after this date." msgstr "" #: build/models.py:266 order/models.py:286 -#: templates/js/translated/build.js:2553 +#: templates/js/translated/build.js:2586 msgid "Completion Date" msgstr "" @@ -892,7 +893,7 @@ msgstr "" msgid "completed by" msgstr "" -#: build/models.py:280 templates/js/translated/build.js:2521 +#: build/models.py:280 templates/js/translated/build.js:2554 msgid "Issued by" msgstr "" @@ -900,12 +901,12 @@ msgstr "" msgid "User who issued this build order" msgstr "" -#: build/models.py:289 build/templates/build/build_base.html:190 +#: build/models.py:289 build/templates/build/build_base.html:193 #: build/templates/build/detail.html:115 order/models.py:100 #: order/templates/order/order_base.html:176 #: order/templates/order/sales_order_base.html:183 part/models.py:942 #: report/templates/report/inventree_build_order_base.html:158 -#: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754 +#: templates/js/translated/build.js:2566 templates/js/translated/order.js:1793 msgid "Responsible" msgstr "" @@ -972,7 +973,7 @@ msgid "Selected stock item not found in BOM" msgstr "" #: build/models.py:1328 stock/templates/stock/item_base.html:177 -#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2455 +#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2488 #: templates/navbar.html:38 msgid "Build" msgstr "" @@ -986,11 +987,11 @@ msgstr "" #: stock/serializers.py:882 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:199 -#: templates/js/translated/build.js:741 templates/js/translated/build.js:746 -#: templates/js/translated/build.js:2087 templates/js/translated/build.js:2638 -#: templates/js/translated/order.js:104 templates/js/translated/order.js:2886 -#: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193 -#: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380 +#: templates/js/translated/build.js:773 templates/js/translated/build.js:778 +#: templates/js/translated/build.js:2120 templates/js/translated/build.js:2671 +#: templates/js/translated/order.js:105 templates/js/translated/order.js:2925 +#: templates/js/translated/order.js:3227 templates/js/translated/order.js:3232 +#: templates/js/translated/order.js:3327 templates/js/translated/order.js:3419 #: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752 #: templates/js/translated/stock.js:2577 msgid "Stock Item" @@ -1001,13 +1002,13 @@ msgid "Source stock item" msgstr "" #: build/models.py:1358 build/serializers.py:193 -#: build/templates/build/build_base.html:82 +#: build/templates/build/build_base.html:85 #: build/templates/build/detail.html:34 common/models.py:1697 #: company/templates/company/supplier_part.html:279 order/models.py:897 #: order/models.py:1423 order/serializers.py:1155 #: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40 -#: part/models.py:2608 part/templates/part/detail.html:937 -#: part/templates/part/detail.html:1023 +#: part/models.py:2655 part/templates/part/detail.html:951 +#: part/templates/part/detail.html:1037 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 #: report/templates/report/inventree_build_order_base.html:113 @@ -1018,20 +1019,20 @@ msgstr "" #: stock/serializers.py:293 stock/templates/stock/item_base.html:292 #: stock/templates/stock/item_base.html:300 #: templates/email/build_order_completed.html:18 -#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:693 -#: templates/js/translated/bom.js:863 templates/js/translated/build.js:426 -#: templates/js/translated/build.js:578 templates/js/translated/build.js:768 -#: templates/js/translated/build.js:1178 templates/js/translated/build.js:1675 -#: templates/js/translated/build.js:2088 +#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:691 +#: templates/js/translated/bom.js:861 templates/js/translated/build.js:458 +#: templates/js/translated/build.js:610 templates/js/translated/build.js:800 +#: templates/js/translated/build.js:1210 templates/js/translated/build.js:1707 +#: templates/js/translated/build.js:2121 #: templates/js/translated/model_renderers.js:120 -#: templates/js/translated/order.js:120 templates/js/translated/order.js:937 -#: templates/js/translated/order.js:1989 templates/js/translated/order.js:2190 -#: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207 -#: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386 -#: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037 -#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2156 -#: templates/js/translated/part.js:2387 templates/js/translated/part.js:2421 -#: templates/js/translated/part.js:2499 templates/js/translated/stock.js:458 +#: templates/js/translated/order.js:121 templates/js/translated/order.js:976 +#: templates/js/translated/order.js:2028 templates/js/translated/order.js:2229 +#: templates/js/translated/order.js:2926 templates/js/translated/order.js:3246 +#: templates/js/translated/order.js:3333 templates/js/translated/order.js:3425 +#: templates/js/translated/order.js:3568 templates/js/translated/order.js:4076 +#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2152 +#: templates/js/translated/part.js:2602 templates/js/translated/part.js:2636 +#: templates/js/translated/part.js:2714 templates/js/translated/stock.js:458 #: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782 #: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711 msgid "Quantity" @@ -1050,7 +1051,7 @@ msgid "Destination stock item" msgstr "" #: build/serializers.py:138 build/serializers.py:674 -#: templates/js/translated/build.js:1166 +#: templates/js/translated/build.js:1198 msgid "Build Output" msgstr "" @@ -1090,7 +1091,7 @@ msgid "Integer quantity required, as the bill of materials contains trackable pa msgstr "" #: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159 -#: stock/serializers.py:311 templates/js/translated/order.js:1258 +#: stock/serializers.py:311 templates/js/translated/order.js:1297 #: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459 msgid "Serial Numbers" msgstr "" @@ -1120,10 +1121,10 @@ msgstr "" #: stock/serializers.py:917 stock/serializers.py:1150 #: stock/templates/stock/item_base.html:390 #: templates/js/translated/barcode.js:436 -#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753 -#: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285 -#: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305 -#: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394 +#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:785 +#: templates/js/translated/build.js:1719 templates/js/translated/order.js:1324 +#: templates/js/translated/order.js:3239 templates/js/translated/order.js:3344 +#: templates/js/translated/order.js:3352 templates/js/translated/order.js:3433 #: templates/js/translated/part.js:181 templates/js/translated/stock.js:588 #: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960 #: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518 @@ -1134,12 +1135,12 @@ msgstr "" msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:373 build/templates/build/build_base.html:142 +#: build/serializers.py:373 build/templates/build/build_base.html:145 #: build/templates/build/detail.html:62 order/models.py:642 #: order/serializers.py:465 stock/templates/stock/item_base.html:423 -#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505 -#: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724 -#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829 +#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2538 +#: templates/js/translated/order.js:1431 templates/js/translated/order.js:1763 +#: templates/js/translated/order.js:2575 templates/js/translated/stock.js:1829 #: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727 msgid "Status" msgstr "" @@ -1196,7 +1197,7 @@ msgstr "" msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:522 templates/js/translated/build.js:195 +#: build/serializers.py:522 templates/js/translated/build.js:227 msgid "Required stock has not been fully allocated" msgstr "" @@ -1208,7 +1209,7 @@ msgstr "" msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:538 templates/js/translated/build.js:199 +#: build/serializers.py:538 templates/js/translated/build.js:231 msgid "Required build quantity has not been completed" msgstr "" @@ -1216,8 +1217,8 @@ msgstr "" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726 -#: part/models.py:2860 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2773 +#: part/models.py:2907 msgid "BOM Item" msgstr "" @@ -1322,66 +1323,70 @@ msgid "Cancel Build" msgstr "" #: build/templates/build/build_base.html:59 +msgid "Duplicate Build" +msgstr "" + +#: build/templates/build/build_base.html:62 msgid "Delete Build" msgstr "" -#: build/templates/build/build_base.html:64 -#: build/templates/build/build_base.html:65 +#: build/templates/build/build_base.html:67 +#: build/templates/build/build_base.html:68 msgid "Complete Build" msgstr "" -#: build/templates/build/build_base.html:87 +#: build/templates/build/build_base.html:90 msgid "Build Description" msgstr "" -#: build/templates/build/build_base.html:95 +#: build/templates/build/build_base.html:98 msgid "No build outputs have been created for this build order" msgstr "" -#: build/templates/build/build_base.html:101 +#: build/templates/build/build_base.html:104 #, python-format msgid "This Build Order is allocated to Sales Order %(link)s" msgstr "" -#: build/templates/build/build_base.html:108 +#: build/templates/build/build_base.html:111 #, python-format msgid "This Build Order is a child of Build Order %(link)s" msgstr "" -#: build/templates/build/build_base.html:115 +#: build/templates/build/build_base.html:118 msgid "Build Order is ready to mark as completed" msgstr "" -#: build/templates/build/build_base.html:120 +#: build/templates/build/build_base.html:123 msgid "Build Order cannot be completed as outstanding outputs remain" msgstr "" -#: build/templates/build/build_base.html:125 +#: build/templates/build/build_base.html:128 msgid "Required build quantity has not yet been completed" msgstr "" -#: build/templates/build/build_base.html:130 +#: build/templates/build/build_base.html:133 msgid "Stock has not been fully allocated to this Build Order" msgstr "" -#: build/templates/build/build_base.html:151 +#: build/templates/build/build_base.html:154 #: build/templates/build/detail.html:131 order/models.py:910 #: order/templates/order/order_base.html:162 #: order/templates/order/sales_order_base.html:164 #: report/templates/report/inventree_build_order_base.html:125 -#: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741 -#: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552 -#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042 +#: templates/js/translated/build.js:2578 templates/js/translated/order.js:1780 +#: templates/js/translated/order.js:2090 templates/js/translated/order.js:2591 +#: templates/js/translated/order.js:3631 templates/js/translated/part.js:1042 msgid "Target Date" msgstr "" -#: build/templates/build/build_base.html:156 +#: build/templates/build/build_base.html:159 #, python-format msgid "This build was due on %(target)s" msgstr "" -#: build/templates/build/build_base.html:156 -#: build/templates/build/build_base.html:201 +#: build/templates/build/build_base.html:159 +#: build/templates/build/build_base.html:204 #: order/templates/order/order_base.html:98 #: order/templates/order/sales_order_base.html:94 #: templates/js/translated/table_filters.js:320 @@ -1390,14 +1395,14 @@ msgstr "" msgid "Overdue" msgstr "" -#: build/templates/build/build_base.html:163 +#: build/templates/build/build_base.html:166 #: build/templates/build/detail.html:67 build/templates/build/detail.html:142 #: order/templates/order/sales_order_base.html:171 #: templates/js/translated/table_filters.js:400 msgid "Completed" msgstr "" -#: build/templates/build/build_base.html:176 +#: build/templates/build/build_base.html:179 #: build/templates/build/detail.html:94 order/models.py:1105 #: order/models.py:1199 order/models.py:1330 #: order/templates/order/sales_order_base.html:9 @@ -1406,17 +1411,17 @@ msgstr "" #: report/templates/report/inventree_so_report.html:77 #: stock/templates/stock/item_base.html:370 #: templates/email/overdue_sales_order.html:15 -#: templates/js/translated/order.js:2498 +#: templates/js/translated/order.js:2537 msgid "Sales Order" msgstr "" -#: build/templates/build/build_base.html:183 +#: build/templates/build/build_base.html:186 #: build/templates/build/detail.html:108 #: report/templates/report/inventree_build_order_base.html:152 msgid "Issued By" msgstr "" -#: build/templates/build/build_base.html:245 +#: build/templates/build/build_base.html:256 msgid "Delete Build Order" msgstr "" @@ -1433,7 +1438,7 @@ msgid "Stock can be taken from any available location." msgstr "" #: build/templates/build/detail.html:49 order/models.py:1023 -#: templates/js/translated/order.js:1393 templates/js/translated/order.js:2093 +#: templates/js/translated/order.js:1432 templates/js/translated/order.js:2132 msgid "Destination" msgstr "" @@ -1447,7 +1452,7 @@ msgstr "" #: build/templates/build/detail.html:80 #: stock/templates/stock/item_base.html:170 -#: templates/js/translated/build.js:1182 +#: templates/js/translated/build.js:1214 #: templates/js/translated/model_renderers.js:124 #: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843 #: templates/js/translated/stock.js:2734 @@ -1459,7 +1464,7 @@ msgstr "" #: build/templates/build/detail.html:126 #: order/templates/order/order_base.html:149 #: order/templates/order/sales_order_base.html:158 -#: templates/js/translated/build.js:2513 +#: templates/js/translated/build.js:2546 msgid "Created" msgstr "" @@ -1479,7 +1484,7 @@ msgstr "" msgid "Allocate Stock to Build" msgstr "" -#: build/templates/build/detail.html:176 templates/js/translated/build.js:1901 +#: build/templates/build/detail.html:176 templates/js/translated/build.js:1934 msgid "Unallocate stock" msgstr "" @@ -1510,7 +1515,7 @@ msgstr "" #: build/templates/build/detail.html:187 #: company/templates/company/detail.html:37 #: company/templates/company/detail.html:85 -#: part/templates/part/category.html:183 templates/js/translated/order.js:977 +#: part/templates/part/category.html:183 templates/js/translated/order.js:1016 msgid "Order Parts" msgstr "" @@ -1582,7 +1587,7 @@ msgstr "" #: order/templates/order/po_sidebar.html:9 #: order/templates/order/purchase_order_detail.html:82 #: order/templates/order/sales_order_detail.html:135 -#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:207 +#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:212 #: part/templates/part/part_sidebar.html:57 stock/templates/stock/item.html:117 #: stock/templates/stock/stock_sidebar.html:23 msgid "Attachments" @@ -1600,7 +1605,7 @@ msgstr "" msgid "All untracked stock items have been allocated" msgstr "" -#: build/templates/build/index.html:18 part/templates/part/detail.html:313 +#: build/templates/build/index.html:18 part/templates/part/detail.html:318 msgid "New Build Order" msgstr "" @@ -1845,7 +1850,7 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:951 part/models.py:2419 report/models.py:158 +#: common/models.py:951 part/models.py:2466 report/models.py:158 #: templates/js/translated/table_filters.js:38 #: templates/js/translated/table_filters.js:484 msgid "Template" @@ -1855,7 +1860,7 @@ msgstr "" msgid "Parts are templates by default" msgstr "" -#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448 +#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1446 #: templates/js/translated/table_filters.js:176 #: templates/js/translated/table_filters.js:447 msgid "Assembly" @@ -2591,7 +2596,7 @@ msgstr "" #: common/models.py:1705 company/serializers.py:366 #: company/templates/company/supplier_part.html:284 order/models.py:938 -#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2161 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2157 msgid "Price" msgstr "" @@ -2830,7 +2835,7 @@ msgstr "" #: company/models.py:248 company/models.py:481 stock/models.py:598 #: stock/serializers.py:87 stock/templates/stock/item_base.html:148 -#: templates/js/translated/bom.js:543 +#: templates/js/translated/bom.js:542 msgid "Base Part" msgstr "" @@ -2859,7 +2864,7 @@ msgstr "" #: templates/js/translated/company.js:269 #: templates/js/translated/company.js:497 #: templates/js/translated/company.js:649 -#: templates/js/translated/company.js:937 templates/js/translated/order.js:1971 +#: templates/js/translated/company.js:937 templates/js/translated/order.js:2010 #: templates/js/translated/part.js:247 templates/js/translated/part.js:1027 msgid "MPN" msgstr "" @@ -2899,7 +2904,7 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:372 part/models.py:888 part/models.py:2386 +#: company/models.py:372 part/models.py:888 part/models.py:2433 #: part/templates/part/part_base.html:280 #: templates/InvenTree/settings/settings.html:352 #: templates/js/translated/company.js:770 templates/js/translated/part.js:855 @@ -2921,7 +2926,7 @@ msgstr "" #: templates/email/overdue_purchase_order.html:16 #: templates/js/translated/company.js:268 #: templates/js/translated/company.js:401 -#: templates/js/translated/company.js:893 templates/js/translated/order.js:1707 +#: templates/js/translated/company.js:893 templates/js/translated/order.js:1746 #: templates/js/translated/part.js:217 templates/js/translated/part.js:995 #: templates/js/translated/table_filters.js:423 msgid "Supplier" @@ -2933,7 +2938,7 @@ msgstr "" #: company/models.py:497 company/templates/company/supplier_part.html:118 #: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267 -#: templates/js/translated/order.js:1958 templates/js/translated/part.js:228 +#: templates/js/translated/order.js:1997 templates/js/translated/part.js:228 #: templates/js/translated/part.js:1013 msgid "SKU" msgstr "" @@ -2955,17 +2960,17 @@ msgid "Supplier part description" msgstr "" #: company/models.py:522 company/templates/company/supplier_part.html:146 -#: part/models.py:2620 part/templates/part/upload_bom.html:59 +#: part/models.py:2667 part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401 msgid "Note" msgstr "" -#: company/models.py:526 part/models.py:1742 +#: company/models.py:526 part/models.py:1789 msgid "base cost" msgstr "" -#: company/models.py:526 part/models.py:1742 +#: company/models.py:526 part/models.py:1789 msgid "Minimum charge (e.g. stocking fee)" msgstr "" @@ -2979,7 +2984,7 @@ msgstr "" msgid "Part packaging" msgstr "" -#: company/models.py:530 part/models.py:1744 +#: company/models.py:530 part/models.py:1791 msgid "multiple" msgstr "" @@ -2990,8 +2995,8 @@ msgstr "" #: company/models.py:538 company/templates/company/supplier_part.html:94 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789 -#: templates/js/translated/build.js:2645 templates/js/translated/company.js:979 +#: templates/js/translated/bom.js:911 templates/js/translated/build.js:1821 +#: templates/js/translated/build.js:2678 templates/js/translated/company.js:979 #: templates/js/translated/part.js:600 templates/js/translated/part.js:603 #: templates/js/translated/table_filters.js:186 msgid "Available" @@ -3028,7 +3033,7 @@ msgid "Company" msgstr "" #: company/templates/company/company_base.html:22 -#: templates/js/translated/order.js:540 +#: templates/js/translated/order.js:579 msgid "Create Purchase Order" msgstr "" @@ -3069,7 +3074,7 @@ msgstr "" #: stock/models.py:644 stock/serializers.py:811 #: stock/templates/stock/item_base.html:401 #: templates/email/overdue_sales_order.html:16 -#: templates/js/translated/company.js:393 templates/js/translated/order.js:2513 +#: templates/js/translated/company.js:393 templates/js/translated/order.js:2552 #: templates/js/translated/stock.js:2559 #: templates/js/translated/table_filters.js:427 msgid "Customer" @@ -3105,7 +3110,7 @@ msgstr "" #: company/templates/company/detail.html:19 #: company/templates/company/manufacturer_part.html:123 -#: part/templates/part/detail.html:354 +#: part/templates/part/detail.html:359 msgid "New Supplier Part" msgstr "" @@ -3134,7 +3139,7 @@ msgstr "" msgid "Create new manufacturer part" msgstr "" -#: company/templates/company/detail.html:66 part/templates/part/detail.html:384 +#: company/templates/company/detail.html:66 part/templates/part/detail.html:389 msgid "New Manufacturer Part" msgstr "" @@ -3148,7 +3153,7 @@ msgstr "" #: order/templates/order/order_base.html:13 #: order/templates/order/purchase_orders.html:8 #: order/templates/order/purchase_orders.html:12 -#: part/templates/part/detail.html:79 part/templates/part/part_sidebar.html:37 +#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:37 #: templates/InvenTree/index.html:252 templates/InvenTree/search.html:198 #: templates/InvenTree/settings/sidebar.html:49 #: templates/js/translated/search.js:275 templates/navbar.html:50 @@ -3171,7 +3176,7 @@ msgstr "" #: order/templates/order/sales_order_base.html:13 #: order/templates/order/sales_orders.html:8 #: order/templates/order/sales_orders.html:15 -#: part/templates/part/detail.html:102 part/templates/part/part_sidebar.html:41 +#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:41 #: templates/InvenTree/index.html:283 templates/InvenTree/search.html:218 #: templates/InvenTree/settings/sidebar.html:51 #: templates/js/translated/search.js:299 templates/navbar.html:61 @@ -3190,7 +3195,7 @@ msgid "New Sales Order" msgstr "" #: company/templates/company/detail.html:168 -#: templates/js/translated/build.js:1660 +#: templates/js/translated/build.js:1692 msgid "Assigned Stock" msgstr "" @@ -3206,7 +3211,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:35 #: company/templates/company/supplier_part.html:186 -#: part/templates/part/detail.html:82 part/templates/part/part_base.html:80 +#: part/templates/part/detail.html:87 part/templates/part/part_base.html:80 msgid "Order part" msgstr "" @@ -3237,13 +3242,13 @@ msgid "Suppliers" msgstr "" #: company/templates/company/manufacturer_part.html:136 -#: part/templates/part/detail.html:365 +#: part/templates/part/detail.html:370 msgid "Delete supplier parts" msgstr "" #: company/templates/company/manufacturer_part.html:136 #: company/templates/company/manufacturer_part.html:183 -#: part/templates/part/detail.html:366 part/templates/part/detail.html:396 +#: part/templates/part/detail.html:371 part/templates/part/detail.html:401 #: templates/js/translated/forms.js:453 templates/js/translated/helpers.js:33 #: users/models.py:220 msgid "Delete" @@ -3252,12 +3257,12 @@ msgstr "" #: company/templates/company/manufacturer_part.html:166 #: company/templates/company/manufacturer_part_sidebar.html:5 #: part/templates/part/category_sidebar.html:19 -#: part/templates/part/detail.html:181 part/templates/part/part_sidebar.html:8 +#: part/templates/part/detail.html:186 part/templates/part/part_sidebar.html:8 msgid "Parameters" msgstr "" #: company/templates/company/manufacturer_part.html:170 -#: part/templates/part/detail.html:186 +#: part/templates/part/detail.html:191 #: templates/InvenTree/settings/category.html:12 #: templates/InvenTree/settings/part.html:68 msgid "New Parameter" @@ -3268,7 +3273,7 @@ msgid "Delete parameters" msgstr "" #: company/templates/company/manufacturer_part.html:245 -#: part/templates/part/detail.html:826 +#: part/templates/part/detail.html:840 msgid "Add Parameter" msgstr "" @@ -3291,7 +3296,7 @@ msgstr "" #: company/templates/company/supplier_part.html:7 #: company/templates/company/supplier_part.html:24 stock/models.py:607 #: stock/templates/stock/item_base.html:238 -#: templates/js/translated/company.js:909 templates/js/translated/order.js:935 +#: templates/js/translated/company.js:909 templates/js/translated/order.js:974 #: templates/js/translated/stock.js:1933 msgid "Supplier Part" msgstr "" @@ -3303,7 +3308,7 @@ msgstr "" #: company/templates/company/supplier_part.html:40 #: company/templates/company/supplier_part.html:41 #: company/templates/company/supplier_part.html:187 -#: part/templates/part/detail.html:83 +#: part/templates/part/detail.html:88 msgid "Order Part" msgstr "" @@ -3358,7 +3363,7 @@ msgstr "" #: company/templates/company/supplier_part.html:212 #: company/templates/company/supplier_part.html:326 -#: part/templates/part/prices.html:276 templates/js/translated/part.js:2233 +#: part/templates/part/prices.html:276 templates/js/translated/part.js:2229 msgid "Add Price Break" msgstr "" @@ -3367,12 +3372,12 @@ msgid "No price break information found" msgstr "" #: company/templates/company/supplier_part.html:252 -#: templates/js/translated/part.js:2243 +#: templates/js/translated/part.js:2239 msgid "Delete Price Break" msgstr "" #: company/templates/company/supplier_part.html:266 -#: templates/js/translated/part.js:2257 +#: templates/js/translated/part.js:2253 msgid "Edit Price Break" msgstr "" @@ -3398,10 +3403,9 @@ msgstr "" #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:151 #: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751 -#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460 -#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754 -#: templates/navbar.html:31 +#: templates/js/translated/part.js:751 templates/js/translated/part.js:1299 +#: templates/js/translated/part.js:1460 templates/js/translated/stock.js:959 +#: templates/js/translated/stock.js:1754 templates/navbar.html:31 msgid "Stock" msgstr "" @@ -3554,7 +3558,7 @@ msgid "Company from which the items are being ordered" msgstr "" #: order/models.py:262 order/templates/order/order_base.html:124 -#: templates/js/translated/order.js:1716 +#: templates/js/translated/order.js:1755 msgid "Supplier Reference" msgstr "" @@ -3611,7 +3615,7 @@ msgid "Target date for order completion. Order will be overdue after this date." msgstr "" #: order/models.py:652 order/models.py:1204 -#: templates/js/translated/order.js:2560 templates/js/translated/order.js:2722 +#: templates/js/translated/order.js:2599 templates/js/translated/order.js:2761 msgid "Shipment Date" msgstr "" @@ -3673,7 +3677,7 @@ msgstr "" #: order/models.py:983 order/models.py:1063 order/models.py:1104 #: order/models.py:1198 order/models.py:1330 -#: templates/js/translated/order.js:3178 +#: templates/js/translated/order.js:3217 msgid "Order" msgstr "" @@ -3683,7 +3687,7 @@ msgstr "" #: report/templates/report/inventree_po_report.html:76 #: stock/templates/stock/item_base.html:184 #: templates/email/overdue_purchase_order.html:15 -#: templates/js/translated/order.js:936 templates/js/translated/order.js:1691 +#: templates/js/translated/order.js:975 templates/js/translated/order.js:1730 #: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913 #: templates/js/translated/stock.js:2540 msgid "Purchase Order" @@ -3694,7 +3698,7 @@ msgid "Supplier part" msgstr "" #: order/models.py:1009 order/templates/order/order_base.html:169 -#: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073 +#: templates/js/translated/order.js:1429 templates/js/translated/order.js:2112 #: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091 #: templates/js/translated/table_filters.js:338 msgid "Received" @@ -3880,11 +3884,11 @@ msgstr "" msgid "Select destination location for received items" msgstr "" -#: order/serializers.py:448 templates/js/translated/order.js:1248 +#: order/serializers.py:448 templates/js/translated/order.js:1287 msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:456 templates/js/translated/order.js:1259 +#: order/serializers.py:456 templates/js/translated/order.js:1298 msgid "Enter serial numbers for incoming stock items" msgstr "" @@ -4061,10 +4065,6 @@ msgstr "" msgid "Total cost could not be calculated" msgstr "" -#: order/templates/order/order_base.html:243 -msgid "Edit Purchase Order" -msgstr "" - #: order/templates/order/order_wizard/match_parts.html:12 #: part/templates/part/import_wizard/ajax_match_references.html:12 #: part/templates/part/import_wizard/match_references.html:12 @@ -4091,10 +4091,10 @@ msgstr "" #: part/templates/part/import_wizard/ajax_match_fields.html:64 #: part/templates/part/import_wizard/ajax_match_references.html:42 #: part/templates/part/import_wizard/match_references.html:49 -#: templates/js/translated/bom.js:77 templates/js/translated/build.js:431 -#: templates/js/translated/build.js:583 templates/js/translated/build.js:1974 -#: templates/js/translated/order.js:884 templates/js/translated/order.js:1337 -#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625 +#: templates/js/translated/bom.js:77 templates/js/translated/build.js:463 +#: templates/js/translated/build.js:615 templates/js/translated/build.js:2007 +#: templates/js/translated/order.js:923 templates/js/translated/order.js:1376 +#: templates/js/translated/order.js:2836 templates/js/translated/stock.js:625 #: templates/js/translated/stock.js:793 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" @@ -4130,7 +4130,7 @@ msgstr "" #: order/templates/order/purchase_order_detail.html:26 #: order/templates/order/sales_order_detail.html:22 #: order/templates/order/sales_order_detail.html:255 -#: templates/js/translated/order.js:557 +#: templates/js/translated/order.js:596 msgid "Add Line Item" msgstr "" @@ -4176,7 +4176,7 @@ msgid "Print packing list" msgstr "" #: order/templates/order/sales_order_base.html:60 -#: templates/js/translated/order.js:229 +#: templates/js/translated/order.js:230 msgid "Complete Shipments" msgstr "" @@ -4190,7 +4190,7 @@ msgid "This Sales Order has not been fully allocated" msgstr "" #: order/templates/order/sales_order_base.html:123 -#: templates/js/translated/order.js:2526 +#: templates/js/translated/order.js:2565 msgid "Customer Reference" msgstr "" @@ -4214,8 +4214,8 @@ msgid "Pending Shipments" msgstr "" #: order/templates/order/sales_order_detail.html:72 -#: templates/attachment_table.html:6 templates/js/translated/bom.js:1110 -#: templates/js/translated/build.js:1882 +#: templates/attachment_table.html:6 templates/js/translated/bom.js:1108 +#: templates/js/translated/build.js:1915 msgid "Actions" msgstr "" @@ -4257,35 +4257,35 @@ msgstr "" msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:584 +#: part/api.py:621 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:704 +#: part/api.py:758 msgid "Valid" msgstr "" -#: part/api.py:705 +#: part/api.py:759 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:711 +#: part/api.py:765 msgid "This option must be selected" msgstr "" -#: part/api.py:1134 +#: part/api.py:1188 msgid "Must be greater than zero" msgstr "" -#: part/api.py:1138 +#: part/api.py:1192 msgid "Must be a valid quantity" msgstr "" -#: part/api.py:1153 +#: part/api.py:1207 msgid "Specify location for initial part stock" msgstr "" -#: part/api.py:1184 part/api.py:1188 part/api.py:1203 part/api.py:1207 +#: part/api.py:1238 part/api.py:1242 part/api.py:1257 part/api.py:1261 msgid "This field is required" msgstr "" @@ -4299,14 +4299,14 @@ msgid "Total Stock" msgstr "" #: part/bom.py:129 part/templates/part/part_base.html:189 -#: templates/js/translated/order.js:3618 +#: templates/js/translated/order.js:3657 msgid "Available Stock" msgstr "" #: part/bom.py:130 part/templates/part/part_base.html:207 -#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590 +#: templates/js/translated/bom.js:945 templates/js/translated/part.js:590 #: templates/js/translated/part.js:610 templates/js/translated/part.js:1302 -#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490 +#: templates/js/translated/part.js:1483 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "" @@ -4335,7 +4335,7 @@ msgstr "" msgid "Icon (optional)" msgstr "" -#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16 +#: part/models.py:122 part/models.py:2509 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" @@ -4352,7 +4352,7 @@ msgstr "" #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82 #: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:1955 templates/js/translated/search.js:144 +#: templates/js/translated/part.js:1951 templates/js/translated/search.js:144 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "" @@ -4382,7 +4382,7 @@ msgstr "" msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:745 part/models.py:2516 +#: part/models.py:745 part/models.py:2563 msgid "Part name" msgstr "" @@ -4415,11 +4415,11 @@ msgstr "" msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:783 part/models.py:2218 part/models.py:2461 +#: part/models.py:783 part/models.py:2265 part/models.py:2508 #: part/templates/part/part_base.html:257 #: templates/InvenTree/settings/settings.html:232 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1668 +#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1664 msgid "Category" msgstr "" @@ -4530,245 +4530,245 @@ msgstr "" msgid "Creation User" msgstr "" -#: part/models.py:1744 +#: part/models.py:1791 msgid "Sell multiple" msgstr "" -#: part/models.py:2265 +#: part/models.py:2312 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:2282 +#: part/models.py:2329 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:2302 templates/js/translated/part.js:2006 +#: part/models.py:2349 templates/js/translated/part.js:2002 #: templates/js/translated/stock.js:1340 msgid "Test Name" msgstr "" -#: part/models.py:2303 +#: part/models.py:2350 msgid "Enter a name for the test" msgstr "" -#: part/models.py:2308 +#: part/models.py:2355 msgid "Test Description" msgstr "" -#: part/models.py:2309 +#: part/models.py:2356 msgid "Enter description for this test" msgstr "" -#: part/models.py:2314 templates/js/translated/part.js:2015 +#: part/models.py:2361 templates/js/translated/part.js:2011 #: templates/js/translated/table_filters.js:302 msgid "Required" msgstr "" -#: part/models.py:2315 +#: part/models.py:2362 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:2320 templates/js/translated/part.js:2023 +#: part/models.py:2367 templates/js/translated/part.js:2019 msgid "Requires Value" msgstr "" -#: part/models.py:2321 +#: part/models.py:2368 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:2326 templates/js/translated/part.js:2030 +#: part/models.py:2373 templates/js/translated/part.js:2026 msgid "Requires Attachment" msgstr "" -#: part/models.py:2327 +#: part/models.py:2374 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:2335 +#: part/models.py:2382 #, python-brace-format msgid "Illegal character in template name ({c})" msgstr "" -#: part/models.py:2371 +#: part/models.py:2418 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:2379 +#: part/models.py:2426 msgid "Parameter Name" msgstr "" -#: part/models.py:2386 +#: part/models.py:2433 msgid "Parameter Units" msgstr "" -#: part/models.py:2417 +#: part/models.py:2464 msgid "Parent Part" msgstr "" -#: part/models.py:2419 part/models.py:2467 part/models.py:2468 +#: part/models.py:2466 part/models.py:2514 part/models.py:2515 #: templates/InvenTree/settings/settings.html:227 msgid "Parameter Template" msgstr "" -#: part/models.py:2421 +#: part/models.py:2468 msgid "Data" msgstr "" -#: part/models.py:2421 +#: part/models.py:2468 msgid "Parameter Value" msgstr "" -#: part/models.py:2472 templates/InvenTree/settings/settings.html:236 +#: part/models.py:2519 templates/InvenTree/settings/settings.html:236 msgid "Default Value" msgstr "" -#: part/models.py:2473 +#: part/models.py:2520 msgid "Default Parameter Value" msgstr "" -#: part/models.py:2508 +#: part/models.py:2555 msgid "Part ID or part name" msgstr "" -#: part/models.py:2511 templates/js/translated/model_renderers.js:212 +#: part/models.py:2558 templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "" -#: part/models.py:2512 +#: part/models.py:2559 msgid "Unique part ID value" msgstr "" -#: part/models.py:2515 +#: part/models.py:2562 msgid "Part Name" msgstr "" -#: part/models.py:2519 +#: part/models.py:2566 msgid "Part IPN" msgstr "" -#: part/models.py:2520 +#: part/models.py:2567 msgid "Part IPN value" msgstr "" -#: part/models.py:2523 +#: part/models.py:2570 msgid "Level" msgstr "" -#: part/models.py:2524 +#: part/models.py:2571 msgid "BOM level" msgstr "" -#: part/models.py:2593 +#: part/models.py:2640 msgid "Select parent part" msgstr "" -#: part/models.py:2601 +#: part/models.py:2648 msgid "Sub part" msgstr "" -#: part/models.py:2602 +#: part/models.py:2649 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:2608 +#: part/models.py:2655 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:2610 part/templates/part/upload_bom.html:58 -#: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999 +#: part/models.py:2657 part/templates/part/upload_bom.html:58 +#: templates/js/translated/bom.js:872 templates/js/translated/bom.js:997 #: templates/js/translated/table_filters.js:100 msgid "Optional" msgstr "" -#: part/models.py:2610 +#: part/models.py:2657 msgid "This BOM item is optional" msgstr "" -#: part/models.py:2613 part/templates/part/upload_bom.html:55 +#: part/models.py:2660 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:2614 +#: part/models.py:2661 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:2617 +#: part/models.py:2664 msgid "BOM item reference" msgstr "" -#: part/models.py:2620 +#: part/models.py:2667 msgid "BOM item notes" msgstr "" -#: part/models.py:2622 +#: part/models.py:2669 msgid "Checksum" msgstr "" -#: part/models.py:2622 +#: part/models.py:2669 msgid "BOM line checksum" msgstr "" -#: part/models.py:2626 part/templates/part/upload_bom.html:57 -#: templates/js/translated/bom.js:1016 +#: part/models.py:2673 part/templates/part/upload_bom.html:57 +#: templates/js/translated/bom.js:1014 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:96 msgid "Inherited" msgstr "" -#: part/models.py:2627 +#: part/models.py:2674 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:2632 part/templates/part/upload_bom.html:56 -#: templates/js/translated/bom.js:1008 +#: part/models.py:2679 part/templates/part/upload_bom.html:56 +#: templates/js/translated/bom.js:1006 msgid "Allow Variants" msgstr "" -#: part/models.py:2633 +#: part/models.py:2680 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:2711 stock/models.py:468 +#: part/models.py:2758 stock/models.py:468 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:2720 part/models.py:2722 +#: part/models.py:2767 part/models.py:2769 msgid "Sub part must be specified" msgstr "" -#: part/models.py:2827 +#: part/models.py:2874 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:2848 +#: part/models.py:2895 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:2861 +#: part/models.py:2908 msgid "Parent BOM item" msgstr "" -#: part/models.py:2869 +#: part/models.py:2916 msgid "Substitute part" msgstr "" -#: part/models.py:2884 +#: part/models.py:2931 msgid "Part 1" msgstr "" -#: part/models.py:2888 +#: part/models.py:2935 msgid "Part 2" msgstr "" -#: part/models.py:2888 +#: part/models.py:2935 msgid "Select Related Part" msgstr "" -#: part/models.py:2906 +#: part/models.py:2953 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:2910 +#: part/models.py:2957 msgid "Duplicate relationship already exists" msgstr "" @@ -4876,7 +4876,7 @@ msgstr "" msgid "The BOM for %(part)s has not been validated." msgstr "" -#: part/templates/part/bom.html:30 part/templates/part/detail.html:264 +#: part/templates/part/bom.html:30 part/templates/part/detail.html:269 msgid "BOM actions" msgstr "" @@ -4945,8 +4945,8 @@ msgstr "" msgid "New Part" msgstr "" -#: part/templates/part/category.html:174 part/templates/part/detail.html:363 -#: part/templates/part/detail.html:394 +#: part/templates/part/category.html:174 part/templates/part/detail.html:368 +#: part/templates/part/detail.html:399 msgid "Options" msgstr "" @@ -5014,138 +5014,146 @@ msgstr "" msgid "Part Stock" msgstr "" -#: part/templates/part/detail.html:54 -msgid "Part Test Templates" +#: part/templates/part/detail.html:44 +msgid "Refresh scheduling data" +msgstr "" + +#: part/templates/part/detail.html:45 templates/js/translated/tables.js:558 +msgid "Refresh" msgstr "" #: part/templates/part/detail.html:59 +msgid "Part Test Templates" +msgstr "" + +#: part/templates/part/detail.html:64 msgid "Add Test Template" msgstr "" -#: part/templates/part/detail.html:116 stock/templates/stock/item.html:53 +#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53 msgid "Sales Order Allocations" msgstr "" -#: part/templates/part/detail.html:138 +#: part/templates/part/detail.html:143 msgid "Part Notes" msgstr "" -#: part/templates/part/detail.html:153 +#: part/templates/part/detail.html:158 msgid "Part Variants" msgstr "" -#: part/templates/part/detail.html:157 +#: part/templates/part/detail.html:162 msgid "Create new variant" msgstr "" -#: part/templates/part/detail.html:158 +#: part/templates/part/detail.html:163 msgid "New Variant" msgstr "" -#: part/templates/part/detail.html:185 +#: part/templates/part/detail.html:190 msgid "Add new parameter" msgstr "" -#: part/templates/part/detail.html:222 part/templates/part/part_sidebar.html:54 +#: part/templates/part/detail.html:227 part/templates/part/part_sidebar.html:54 msgid "Related Parts" msgstr "" -#: part/templates/part/detail.html:226 part/templates/part/detail.html:227 +#: part/templates/part/detail.html:231 part/templates/part/detail.html:232 msgid "Add Related" msgstr "" -#: part/templates/part/detail.html:247 part/templates/part/part_sidebar.html:17 +#: part/templates/part/detail.html:252 part/templates/part/part_sidebar.html:17 msgid "Bill of Materials" msgstr "" -#: part/templates/part/detail.html:252 +#: part/templates/part/detail.html:257 msgid "Export actions" msgstr "" -#: part/templates/part/detail.html:256 templates/js/translated/bom.js:284 +#: part/templates/part/detail.html:261 templates/js/translated/bom.js:284 msgid "Export BOM" msgstr "" -#: part/templates/part/detail.html:258 +#: part/templates/part/detail.html:263 msgid "Print BOM Report" msgstr "" -#: part/templates/part/detail.html:268 +#: part/templates/part/detail.html:273 msgid "Upload BOM" msgstr "" -#: part/templates/part/detail.html:269 templates/js/translated/part.js:274 +#: part/templates/part/detail.html:274 templates/js/translated/part.js:274 msgid "Copy BOM" msgstr "" -#: part/templates/part/detail.html:270 +#: part/templates/part/detail.html:275 msgid "Validate BOM" msgstr "" -#: part/templates/part/detail.html:275 +#: part/templates/part/detail.html:280 msgid "New BOM Item" msgstr "" -#: part/templates/part/detail.html:276 +#: part/templates/part/detail.html:281 msgid "Add BOM Item" msgstr "" -#: part/templates/part/detail.html:289 +#: part/templates/part/detail.html:294 msgid "Assemblies" msgstr "" -#: part/templates/part/detail.html:307 +#: part/templates/part/detail.html:312 msgid "Part Builds" msgstr "" -#: part/templates/part/detail.html:334 stock/templates/stock/item.html:38 +#: part/templates/part/detail.html:339 stock/templates/stock/item.html:38 msgid "Build Order Allocations" msgstr "" -#: part/templates/part/detail.html:350 +#: part/templates/part/detail.html:355 msgid "Part Suppliers" msgstr "" -#: part/templates/part/detail.html:380 +#: part/templates/part/detail.html:385 msgid "Part Manufacturers" msgstr "" -#: part/templates/part/detail.html:396 +#: part/templates/part/detail.html:401 msgid "Delete manufacturer parts" msgstr "" -#: part/templates/part/detail.html:612 +#: part/templates/part/detail.html:626 msgid "Create BOM Item" msgstr "" -#: part/templates/part/detail.html:656 +#: part/templates/part/detail.html:670 msgid "Related Part" msgstr "" -#: part/templates/part/detail.html:664 +#: part/templates/part/detail.html:678 msgid "Add Related Part" msgstr "" -#: part/templates/part/detail.html:756 +#: part/templates/part/detail.html:770 msgid "Add Test Result Template" msgstr "" -#: part/templates/part/detail.html:900 +#: part/templates/part/detail.html:914 #, python-format msgid "Purchase Unit Price - %(currency)s" msgstr "" -#: part/templates/part/detail.html:912 +#: part/templates/part/detail.html:926 #, python-format msgid "Unit Price-Cost Difference - %(currency)s" msgstr "" -#: part/templates/part/detail.html:924 +#: part/templates/part/detail.html:938 #, python-format msgid "Supplier Unit Cost - %(currency)s" msgstr "" -#: part/templates/part/detail.html:1013 +#: part/templates/part/detail.html:1027 #, python-format msgid "Unit Price - %(currency)s" msgstr "" @@ -5321,13 +5329,13 @@ msgstr "" msgid "Allocated to Sales Orders" msgstr "" -#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1037 +#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1035 msgid "Can Build" msgstr "" #: part/templates/part/part_base.html:238 templates/js/translated/part.js:593 #: templates/js/translated/part.js:613 templates/js/translated/part.js:1306 -#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1494 +#: templates/js/translated/part.js:1490 msgid "Building" msgstr "" @@ -5379,7 +5387,7 @@ msgid "Total Cost" msgstr "" #: part/templates/part/part_pricing.html:40 part/templates/part/prices.html:43 -#: templates/js/translated/bom.js:991 +#: templates/js/translated/bom.js:989 msgid "No supplier pricing available" msgstr "" @@ -5414,6 +5422,18 @@ msgstr "" msgid "No pricing information is available for this part." msgstr "" +#: part/templates/part/part_scheduling.html:13 +#: report/templates/report/inventree_test_report_base.html:97 +#: templates/InvenTree/settings/plugin.html:53 +#: templates/InvenTree/settings/plugin_settings.html:38 +#: templates/js/translated/order.js:1772 templates/js/translated/stock.js:2468 +msgid "Date" +msgstr "" + +#: part/templates/part/part_scheduling.html:14 +msgid "Scheduled Quantity" +msgstr "" + #: part/templates/part/part_sidebar.html:11 msgid "Variants" msgstr "" @@ -5462,7 +5482,7 @@ msgstr "" msgid "Calculation parameters" msgstr "" -#: part/templates/part/prices.html:160 templates/js/translated/bom.js:985 +#: part/templates/part/prices.html:160 templates/js/translated/bom.js:983 msgid "Supplier Cost" msgstr "" @@ -5501,7 +5521,7 @@ msgid "No sale pice history available for this part." msgstr "" #: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616 -#: templates/js/translated/part.js:1294 templates/js/translated/part.js:1498 +#: templates/js/translated/part.js:1294 msgid "No Stock" msgstr "" @@ -5893,11 +5913,11 @@ msgstr "" #: report/templates/report/inventree_test_report_base.html:79 #: stock/models.py:648 stock/templates/stock/item_base.html:322 -#: templates/js/translated/build.js:424 templates/js/translated/build.js:576 -#: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673 +#: templates/js/translated/build.js:456 templates/js/translated/build.js:608 +#: templates/js/translated/build.js:1208 templates/js/translated/build.js:1705 #: templates/js/translated/model_renderers.js:118 -#: templates/js/translated/order.js:118 templates/js/translated/order.js:3297 -#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490 +#: templates/js/translated/order.js:119 templates/js/translated/order.js:3336 +#: templates/js/translated/order.js:3423 templates/js/translated/stock.js:490 msgid "Serial Number" msgstr "" @@ -5915,13 +5935,6 @@ msgstr "" msgid "Result" msgstr "" -#: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:53 -#: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468 -msgid "Date" -msgstr "" - #: report/templates/report/inventree_test_report_base.html:108 msgid "Pass" msgstr "" @@ -6519,7 +6532,7 @@ msgid "Available Quantity" msgstr "" #: stock/templates/stock/item_base.html:394 -#: templates/js/translated/build.js:1695 +#: templates/js/translated/build.js:1727 msgid "No location set" msgstr "" @@ -7702,7 +7715,7 @@ msgid "The following parts are low on required stock" msgstr "" #: templates/email/build_order_required_stock.html:18 -#: templates/js/translated/bom.js:1483 +#: templates/js/translated/bom.js:1481 msgid "Required Quantity" msgstr "" @@ -7716,6 +7729,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:19 +#: templates/js/translated/part.js:2498 msgid "Minimum Quantity" msgstr "" @@ -7917,10 +7931,10 @@ msgstr "" msgid "Row Data" msgstr "" -#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:622 +#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:620 #: templates/js/translated/modals.js:56 templates/js/translated/modals.js:601 #: templates/js/translated/modals.js:695 templates/js/translated/modals.js:1003 -#: templates/js/translated/order.js:979 templates/modals.html:15 +#: templates/js/translated/order.js:1018 templates/modals.html:15 #: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50 msgid "Close" msgstr "" @@ -7930,12 +7944,12 @@ msgid "Download BOM Template" msgstr "" #: templates/js/translated/bom.js:253 templates/js/translated/bom.js:287 -#: templates/js/translated/order.js:760 templates/js/translated/tables.js:145 +#: templates/js/translated/order.js:799 templates/js/translated/tables.js:145 msgid "Format" msgstr "" #: templates/js/translated/bom.js:254 templates/js/translated/bom.js:288 -#: templates/js/translated/order.js:761 +#: templates/js/translated/order.js:800 msgid "Select file format" msgstr "" @@ -7991,390 +8005,390 @@ msgstr "" msgid "Remove substitute part" msgstr "" -#: templates/js/translated/bom.js:567 +#: templates/js/translated/bom.js:565 msgid "Select and add a new substitute part using the input below" msgstr "" -#: templates/js/translated/bom.js:578 +#: templates/js/translated/bom.js:576 msgid "Are you sure you wish to remove this substitute part link?" msgstr "" -#: templates/js/translated/bom.js:584 +#: templates/js/translated/bom.js:582 msgid "Remove Substitute Part" msgstr "" -#: templates/js/translated/bom.js:623 +#: templates/js/translated/bom.js:621 msgid "Add Substitute" msgstr "" -#: templates/js/translated/bom.js:624 +#: templates/js/translated/bom.js:622 msgid "Edit BOM Item Substitutes" msgstr "" -#: templates/js/translated/bom.js:686 +#: templates/js/translated/bom.js:684 msgid "All selected BOM items will be deleted" msgstr "" -#: templates/js/translated/bom.js:702 +#: templates/js/translated/bom.js:700 msgid "Delete selected BOM items?" msgstr "" -#: templates/js/translated/bom.js:821 +#: templates/js/translated/bom.js:819 msgid "Load BOM for subassembly" msgstr "" -#: templates/js/translated/bom.js:831 +#: templates/js/translated/bom.js:829 msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:835 templates/js/translated/build.js:1771 +#: templates/js/translated/bom.js:833 templates/js/translated/build.js:1803 msgid "Variant stock allowed" msgstr "" -#: templates/js/translated/bom.js:929 templates/js/translated/build.js:1816 -#: templates/js/translated/order.js:3632 +#: templates/js/translated/bom.js:927 templates/js/translated/build.js:1849 +#: templates/js/translated/order.js:3671 msgid "No Stock Available" msgstr "" -#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1820 +#: templates/js/translated/bom.js:932 templates/js/translated/build.js:1853 msgid "Includes variant and substitute stock" msgstr "" -#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822 +#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1855 #: templates/js/translated/part.js:763 msgid "Includes variant stock" msgstr "" -#: templates/js/translated/bom.js:938 templates/js/translated/build.js:1824 +#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1857 msgid "Includes substitute stock" msgstr "" -#: templates/js/translated/bom.js:956 +#: templates/js/translated/bom.js:954 msgid "Substitutes" msgstr "" -#: templates/js/translated/bom.js:971 +#: templates/js/translated/bom.js:969 msgid "Purchase Price Range" msgstr "" -#: templates/js/translated/bom.js:978 +#: templates/js/translated/bom.js:976 msgid "Purchase Price Average" msgstr "" -#: templates/js/translated/bom.js:1027 templates/js/translated/bom.js:1147 +#: templates/js/translated/bom.js:1025 templates/js/translated/bom.js:1145 msgid "View BOM" msgstr "" -#: templates/js/translated/bom.js:1054 +#: templates/js/translated/bom.js:1052 msgid "Including On Order" msgstr "" -#: templates/js/translated/bom.js:1118 +#: templates/js/translated/bom.js:1116 msgid "Validate BOM Item" msgstr "" -#: templates/js/translated/bom.js:1120 +#: templates/js/translated/bom.js:1118 msgid "This line has been validated" msgstr "" -#: templates/js/translated/bom.js:1122 +#: templates/js/translated/bom.js:1120 msgid "Edit substitute parts" msgstr "" -#: templates/js/translated/bom.js:1124 templates/js/translated/bom.js:1286 +#: templates/js/translated/bom.js:1122 templates/js/translated/bom.js:1284 msgid "Edit BOM Item" msgstr "" -#: templates/js/translated/bom.js:1126 +#: templates/js/translated/bom.js:1124 msgid "Delete BOM Item" msgstr "" -#: templates/js/translated/bom.js:1222 templates/js/translated/build.js:1617 +#: templates/js/translated/bom.js:1220 templates/js/translated/build.js:1649 msgid "No BOM items found" msgstr "" -#: templates/js/translated/bom.js:1466 templates/js/translated/build.js:1755 +#: templates/js/translated/bom.js:1464 templates/js/translated/build.js:1787 msgid "Required Part" msgstr "" -#: templates/js/translated/bom.js:1488 +#: templates/js/translated/bom.js:1486 msgid "Inherited from parent BOM" msgstr "" -#: templates/js/translated/build.js:86 +#: templates/js/translated/build.js:89 msgid "Edit Build Order" msgstr "" -#: templates/js/translated/build.js:120 +#: templates/js/translated/build.js:132 msgid "Create Build Order" msgstr "" -#: templates/js/translated/build.js:133 +#: templates/js/translated/build.js:165 msgid "Cancel Build Order" msgstr "" -#: templates/js/translated/build.js:142 +#: templates/js/translated/build.js:174 msgid "Are you sure you wish to cancel this build?" msgstr "" -#: templates/js/translated/build.js:148 +#: templates/js/translated/build.js:180 msgid "Stock items have been allocated to this build order" msgstr "" -#: templates/js/translated/build.js:155 +#: templates/js/translated/build.js:187 msgid "There are incomplete outputs remaining for this build order" msgstr "" -#: templates/js/translated/build.js:185 +#: templates/js/translated/build.js:217 msgid "Build order is ready to be completed" msgstr "" -#: templates/js/translated/build.js:190 +#: templates/js/translated/build.js:222 msgid "Build Order is incomplete" msgstr "" -#: templates/js/translated/build.js:222 +#: templates/js/translated/build.js:254 msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:263 templates/js/translated/stock.js:92 +#: templates/js/translated/build.js:295 templates/js/translated/stock.js:92 #: templates/js/translated/stock.js:214 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:265 templates/js/translated/stock.js:94 +#: templates/js/translated/build.js:297 templates/js/translated/stock.js:94 #: templates/js/translated/stock.js:216 msgid "Latest serial number" msgstr "" -#: templates/js/translated/build.js:274 +#: templates/js/translated/build.js:306 msgid "The Bill of Materials contains trackable parts" msgstr "" -#: templates/js/translated/build.js:275 +#: templates/js/translated/build.js:307 msgid "Build outputs must be generated individually" msgstr "" -#: templates/js/translated/build.js:283 +#: templates/js/translated/build.js:315 msgid "Trackable parts can have serial numbers specified" msgstr "" -#: templates/js/translated/build.js:284 +#: templates/js/translated/build.js:316 msgid "Enter serial numbers to generate multiple single build outputs" msgstr "" -#: templates/js/translated/build.js:291 +#: templates/js/translated/build.js:323 msgid "Create Build Output" msgstr "" -#: templates/js/translated/build.js:322 +#: templates/js/translated/build.js:354 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:333 +#: templates/js/translated/build.js:365 msgid "Unallocate stock from build output" msgstr "" -#: templates/js/translated/build.js:342 +#: templates/js/translated/build.js:374 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:350 +#: templates/js/translated/build.js:382 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:373 +#: templates/js/translated/build.js:405 msgid "Are you sure you wish to unallocate stock items from this build?" msgstr "" -#: templates/js/translated/build.js:391 +#: templates/js/translated/build.js:423 msgid "Unallocate Stock Items" msgstr "" -#: templates/js/translated/build.js:411 templates/js/translated/build.js:563 +#: templates/js/translated/build.js:443 templates/js/translated/build.js:595 msgid "Select Build Outputs" msgstr "" -#: templates/js/translated/build.js:412 templates/js/translated/build.js:564 +#: templates/js/translated/build.js:444 templates/js/translated/build.js:596 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:466 templates/js/translated/build.js:618 +#: templates/js/translated/build.js:498 templates/js/translated/build.js:650 msgid "Output" msgstr "" -#: templates/js/translated/build.js:484 +#: templates/js/translated/build.js:516 msgid "Complete Build Outputs" msgstr "" -#: templates/js/translated/build.js:631 +#: templates/js/translated/build.js:663 msgid "Delete Build Outputs" msgstr "" -#: templates/js/translated/build.js:720 +#: templates/js/translated/build.js:752 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:757 +#: templates/js/translated/build.js:789 msgid "Location not specified" msgstr "" -#: templates/js/translated/build.js:1136 +#: templates/js/translated/build.js:1168 msgid "No active build outputs found" msgstr "" -#: templates/js/translated/build.js:1205 +#: templates/js/translated/build.js:1237 msgid "Allocated Stock" msgstr "" -#: templates/js/translated/build.js:1212 +#: templates/js/translated/build.js:1244 msgid "No tracked BOM items for this build" msgstr "" -#: templates/js/translated/build.js:1234 +#: templates/js/translated/build.js:1266 msgid "Completed Tests" msgstr "" -#: templates/js/translated/build.js:1239 +#: templates/js/translated/build.js:1271 msgid "No required tests for this build" msgstr "" -#: templates/js/translated/build.js:1712 templates/js/translated/build.js:2656 -#: templates/js/translated/order.js:3332 +#: templates/js/translated/build.js:1744 templates/js/translated/build.js:2689 +#: templates/js/translated/order.js:3371 msgid "Edit stock allocation" msgstr "" -#: templates/js/translated/build.js:1714 templates/js/translated/build.js:2657 -#: templates/js/translated/order.js:3333 +#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2690 +#: templates/js/translated/order.js:3372 msgid "Delete stock allocation" msgstr "" -#: templates/js/translated/build.js:1732 +#: templates/js/translated/build.js:1764 msgid "Edit Allocation" msgstr "" -#: templates/js/translated/build.js:1742 +#: templates/js/translated/build.js:1774 msgid "Remove Allocation" msgstr "" -#: templates/js/translated/build.js:1767 +#: templates/js/translated/build.js:1799 msgid "Substitute parts available" msgstr "" -#: templates/js/translated/build.js:1784 +#: templates/js/translated/build.js:1816 msgid "Quantity Per" msgstr "" -#: templates/js/translated/build.js:1810 templates/js/translated/order.js:3639 +#: templates/js/translated/build.js:1843 templates/js/translated/order.js:3678 msgid "Insufficient stock available" msgstr "" -#: templates/js/translated/build.js:1812 templates/js/translated/order.js:3637 +#: templates/js/translated/build.js:1845 templates/js/translated/order.js:3676 msgid "Sufficient stock available" msgstr "" -#: templates/js/translated/build.js:1841 templates/js/translated/build.js:2086 -#: templates/js/translated/build.js:2652 templates/js/translated/order.js:3651 +#: templates/js/translated/build.js:1874 templates/js/translated/build.js:2119 +#: templates/js/translated/build.js:2685 templates/js/translated/order.js:3690 msgid "Allocated" msgstr "" -#: templates/js/translated/build.js:1889 templates/js/translated/order.js:3731 +#: templates/js/translated/build.js:1922 templates/js/translated/order.js:3770 msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:1893 templates/stock_table.html:50 +#: templates/js/translated/build.js:1926 templates/stock_table.html:50 msgid "Order stock" msgstr "" -#: templates/js/translated/build.js:1896 templates/js/translated/order.js:3724 +#: templates/js/translated/build.js:1929 templates/js/translated/order.js:3763 msgid "Allocate stock" msgstr "" -#: templates/js/translated/build.js:1935 templates/js/translated/label.js:172 -#: templates/js/translated/order.js:807 templates/js/translated/order.js:2859 +#: templates/js/translated/build.js:1968 templates/js/translated/label.js:172 +#: templates/js/translated/order.js:846 templates/js/translated/order.js:2898 #: templates/js/translated/report.js:225 msgid "Select Parts" msgstr "" -#: templates/js/translated/build.js:1936 templates/js/translated/order.js:2860 +#: templates/js/translated/build.js:1969 templates/js/translated/order.js:2899 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1985 templates/js/translated/order.js:2808 +#: templates/js/translated/build.js:2018 templates/js/translated/order.js:2847 msgid "Specify stock allocation quantity" msgstr "" -#: templates/js/translated/build.js:2059 +#: templates/js/translated/build.js:2092 msgid "All Parts Allocated" msgstr "" -#: templates/js/translated/build.js:2060 +#: templates/js/translated/build.js:2093 msgid "All selected parts have been fully allocated" msgstr "" -#: templates/js/translated/build.js:2074 templates/js/translated/order.js:2874 +#: templates/js/translated/build.js:2107 templates/js/translated/order.js:2913 msgid "Select source location (leave blank to take from all locations)" msgstr "" -#: templates/js/translated/build.js:2102 +#: templates/js/translated/build.js:2135 msgid "Allocate Stock Items to Build Order" msgstr "" -#: templates/js/translated/build.js:2113 templates/js/translated/order.js:2971 +#: templates/js/translated/build.js:2146 templates/js/translated/order.js:3010 msgid "No matching stock locations" msgstr "" -#: templates/js/translated/build.js:2185 templates/js/translated/order.js:3048 +#: templates/js/translated/build.js:2218 templates/js/translated/order.js:3087 msgid "No matching stock items" msgstr "" -#: templates/js/translated/build.js:2282 +#: templates/js/translated/build.js:2315 msgid "Automatic Stock Allocation" msgstr "" -#: templates/js/translated/build.js:2283 +#: templates/js/translated/build.js:2316 msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines" msgstr "" -#: templates/js/translated/build.js:2285 +#: templates/js/translated/build.js:2318 msgid "If a location is specifed, stock will only be allocated from that location" msgstr "" -#: templates/js/translated/build.js:2286 +#: templates/js/translated/build.js:2319 msgid "If stock is considered interchangeable, it will be allocated from the first location it is found" msgstr "" -#: templates/js/translated/build.js:2287 +#: templates/js/translated/build.js:2320 msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found" msgstr "" -#: templates/js/translated/build.js:2308 +#: templates/js/translated/build.js:2341 msgid "Allocate Stock Items" msgstr "" -#: templates/js/translated/build.js:2414 +#: templates/js/translated/build.js:2447 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387 -#: templates/js/translated/part.js:1899 templates/js/translated/stock.js:1686 +#: templates/js/translated/build.js:2482 templates/js/translated/part.js:1387 +#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1686 #: templates/js/translated/stock.js:2386 msgid "Select" msgstr "" -#: templates/js/translated/build.js:2463 +#: templates/js/translated/build.js:2496 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:2491 +#: templates/js/translated/build.js:2524 msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647 +#: templates/js/translated/build.js:2560 templates/js/translated/stock.js:2647 msgid "No user information" msgstr "" -#: templates/js/translated/build.js:2633 +#: templates/js/translated/build.js:2666 msgid "No parts allocated for" msgstr "" @@ -8390,11 +8404,11 @@ msgstr "" msgid "Edit Manufacturer Part" msgstr "" -#: templates/js/translated/company.js:167 templates/js/translated/order.js:509 +#: templates/js/translated/company.js:167 templates/js/translated/order.js:510 msgid "Add Supplier" msgstr "" -#: templates/js/translated/company.js:195 templates/js/translated/order.js:628 +#: templates/js/translated/company.js:195 templates/js/translated/order.js:667 msgid "Add Supplier Part" msgstr "" @@ -8765,381 +8779,385 @@ msgstr "" msgid "Notifications will load here" msgstr "" -#: templates/js/translated/order.js:94 +#: templates/js/translated/order.js:95 msgid "No stock items have been allocated to this shipment" msgstr "" -#: templates/js/translated/order.js:99 +#: templates/js/translated/order.js:100 msgid "The following stock items will be shipped" msgstr "" -#: templates/js/translated/order.js:139 +#: templates/js/translated/order.js:140 msgid "Complete Shipment" msgstr "" -#: templates/js/translated/order.js:159 +#: templates/js/translated/order.js:160 msgid "Confirm Shipment" msgstr "" -#: templates/js/translated/order.js:215 +#: templates/js/translated/order.js:216 msgid "No pending shipments found" msgstr "" -#: templates/js/translated/order.js:219 +#: templates/js/translated/order.js:220 msgid "No stock items have been allocated to pending shipments" msgstr "" -#: templates/js/translated/order.js:251 +#: templates/js/translated/order.js:252 msgid "Skip" msgstr "" -#: templates/js/translated/order.js:281 +#: templates/js/translated/order.js:282 msgid "Complete Purchase Order" msgstr "" -#: templates/js/translated/order.js:287 +#: templates/js/translated/order.js:288 msgid "Mark this order as complete?" msgstr "" -#: templates/js/translated/order.js:293 +#: templates/js/translated/order.js:294 msgid "All line items have been received" msgstr "" -#: templates/js/translated/order.js:298 +#: templates/js/translated/order.js:299 msgid "This order has line items which have not been marked as received." msgstr "" -#: templates/js/translated/order.js:299 +#: templates/js/translated/order.js:300 msgid "Completing this order means that the order and line items will no longer be editable." msgstr "" -#: templates/js/translated/order.js:322 +#: templates/js/translated/order.js:323 msgid "Cancel Purchase Order" msgstr "" -#: templates/js/translated/order.js:327 +#: templates/js/translated/order.js:328 msgid "Are you sure you wish to cancel this purchase order?" msgstr "" -#: templates/js/translated/order.js:333 +#: templates/js/translated/order.js:334 msgid "This purchase order can not be cancelled" msgstr "" -#: templates/js/translated/order.js:356 +#: templates/js/translated/order.js:357 msgid "Issue Purchase Order" msgstr "" -#: templates/js/translated/order.js:361 +#: templates/js/translated/order.js:362 msgid "After placing this purchase order, line items will no longer be editable." msgstr "" -#: templates/js/translated/order.js:383 +#: templates/js/translated/order.js:384 msgid "Cancel Sales Order" msgstr "" -#: templates/js/translated/order.js:388 +#: templates/js/translated/order.js:389 msgid "Cancelling this order means that the order will no longer be editable." msgstr "" -#: templates/js/translated/order.js:442 +#: templates/js/translated/order.js:443 msgid "Create New Shipment" msgstr "" -#: templates/js/translated/order.js:467 +#: templates/js/translated/order.js:468 msgid "Add Customer" msgstr "" -#: templates/js/translated/order.js:492 +#: templates/js/translated/order.js:493 msgid "Create Sales Order" msgstr "" -#: templates/js/translated/order.js:757 +#: templates/js/translated/order.js:554 +msgid "Edit Purchase Order" +msgstr "" + +#: templates/js/translated/order.js:796 msgid "Export Order" msgstr "" -#: templates/js/translated/order.js:808 +#: templates/js/translated/order.js:847 msgid "At least one purchaseable part must be selected" msgstr "" -#: templates/js/translated/order.js:833 +#: templates/js/translated/order.js:872 msgid "Quantity to order" msgstr "" -#: templates/js/translated/order.js:842 +#: templates/js/translated/order.js:881 msgid "New supplier part" msgstr "" -#: templates/js/translated/order.js:860 +#: templates/js/translated/order.js:899 msgid "New purchase order" msgstr "" -#: templates/js/translated/order.js:893 +#: templates/js/translated/order.js:932 msgid "Add to purchase order" msgstr "" -#: templates/js/translated/order.js:1002 +#: templates/js/translated/order.js:1041 msgid "No matching supplier parts" msgstr "" -#: templates/js/translated/order.js:1017 +#: templates/js/translated/order.js:1056 msgid "No matching purchase orders" msgstr "" -#: templates/js/translated/order.js:1194 +#: templates/js/translated/order.js:1233 msgid "Select Line Items" msgstr "" -#: templates/js/translated/order.js:1195 +#: templates/js/translated/order.js:1234 msgid "At least one line item must be selected" msgstr "" -#: templates/js/translated/order.js:1215 templates/js/translated/order.js:1314 +#: templates/js/translated/order.js:1254 templates/js/translated/order.js:1353 msgid "Add batch code" msgstr "" -#: templates/js/translated/order.js:1221 templates/js/translated/order.js:1325 +#: templates/js/translated/order.js:1260 templates/js/translated/order.js:1364 msgid "Add serial numbers" msgstr "" -#: templates/js/translated/order.js:1233 +#: templates/js/translated/order.js:1272 msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144 +#: templates/js/translated/order.js:1336 templates/js/translated/stock.js:2144 msgid "Stock Status" msgstr "" -#: templates/js/translated/order.js:1388 +#: templates/js/translated/order.js:1427 msgid "Order Code" msgstr "" -#: templates/js/translated/order.js:1389 +#: templates/js/translated/order.js:1428 msgid "Ordered" msgstr "" -#: templates/js/translated/order.js:1391 +#: templates/js/translated/order.js:1430 msgid "Quantity to Receive" msgstr "" -#: templates/js/translated/order.js:1410 +#: templates/js/translated/order.js:1449 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/order.js:1411 +#: templates/js/translated/order.js:1450 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943 +#: templates/js/translated/order.js:1711 templates/js/translated/part.js:943 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/order.js:1699 templates/js/translated/order.js:2503 +#: templates/js/translated/order.js:1738 templates/js/translated/order.js:2542 msgid "Order is overdue" msgstr "" -#: templates/js/translated/order.js:1749 templates/js/translated/order.js:2568 -#: templates/js/translated/order.js:2709 +#: templates/js/translated/order.js:1788 templates/js/translated/order.js:2607 +#: templates/js/translated/order.js:2748 msgid "Items" msgstr "" -#: templates/js/translated/order.js:1847 templates/js/translated/order.js:3783 +#: templates/js/translated/order.js:1886 templates/js/translated/order.js:3822 msgid "Duplicate Line Item" msgstr "" -#: templates/js/translated/order.js:1864 templates/js/translated/order.js:3805 +#: templates/js/translated/order.js:1903 templates/js/translated/order.js:3844 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/order.js:1877 templates/js/translated/order.js:3816 +#: templates/js/translated/order.js:1916 templates/js/translated/order.js:3855 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/order.js:1920 +#: templates/js/translated/order.js:1959 msgid "No line items found" msgstr "" -#: templates/js/translated/order.js:1947 templates/js/translated/order.js:3517 +#: templates/js/translated/order.js:1986 templates/js/translated/order.js:3556 msgid "Total" msgstr "" -#: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203 -#: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050 -#: templates/js/translated/part.js:2135 templates/js/translated/part.js:2488 +#: templates/js/translated/order.js:2040 templates/js/translated/order.js:2242 +#: templates/js/translated/order.js:3581 templates/js/translated/order.js:4089 +#: templates/js/translated/part.js:2131 templates/js/translated/part.js:2703 msgid "Unit Price" msgstr "" -#: templates/js/translated/order.js:2016 templates/js/translated/order.js:2219 -#: templates/js/translated/order.js:3558 templates/js/translated/order.js:4066 +#: templates/js/translated/order.js:2055 templates/js/translated/order.js:2258 +#: templates/js/translated/order.js:3597 templates/js/translated/order.js:4105 msgid "Total Price" msgstr "" -#: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600 +#: templates/js/translated/order.js:2096 templates/js/translated/order.js:3639 #: templates/js/translated/part.js:1050 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096 +#: templates/js/translated/order.js:2155 templates/js/translated/part.js:1096 msgid "Receive line item" msgstr "" -#: templates/js/translated/order.js:2120 templates/js/translated/order.js:3737 +#: templates/js/translated/order.js:2159 templates/js/translated/order.js:3776 msgid "Duplicate line item" msgstr "" -#: templates/js/translated/order.js:2121 templates/js/translated/order.js:3738 +#: templates/js/translated/order.js:2160 templates/js/translated/order.js:3777 msgid "Edit line item" msgstr "" -#: templates/js/translated/order.js:2122 templates/js/translated/order.js:3742 +#: templates/js/translated/order.js:2161 templates/js/translated/order.js:3781 msgid "Delete line item" msgstr "" -#: templates/js/translated/order.js:2268 templates/js/translated/order.js:4115 +#: templates/js/translated/order.js:2307 templates/js/translated/order.js:4154 msgid "Duplicate line" msgstr "" -#: templates/js/translated/order.js:2269 templates/js/translated/order.js:4116 +#: templates/js/translated/order.js:2308 templates/js/translated/order.js:4155 msgid "Edit line" msgstr "" -#: templates/js/translated/order.js:2270 templates/js/translated/order.js:4117 +#: templates/js/translated/order.js:2309 templates/js/translated/order.js:4156 msgid "Delete line" msgstr "" -#: templates/js/translated/order.js:2300 templates/js/translated/order.js:4147 +#: templates/js/translated/order.js:2339 templates/js/translated/order.js:4186 msgid "Duplicate Line" msgstr "" -#: templates/js/translated/order.js:2321 templates/js/translated/order.js:4168 +#: templates/js/translated/order.js:2360 templates/js/translated/order.js:4207 msgid "Edit Line" msgstr "" -#: templates/js/translated/order.js:2332 templates/js/translated/order.js:4179 +#: templates/js/translated/order.js:2371 templates/js/translated/order.js:4218 msgid "Delete Line" msgstr "" -#: templates/js/translated/order.js:2343 +#: templates/js/translated/order.js:2382 msgid "No matching line" msgstr "" -#: templates/js/translated/order.js:2454 +#: templates/js/translated/order.js:2493 msgid "No sales orders found" msgstr "" -#: templates/js/translated/order.js:2517 +#: templates/js/translated/order.js:2556 msgid "Invalid Customer" msgstr "" -#: templates/js/translated/order.js:2615 +#: templates/js/translated/order.js:2654 msgid "Edit shipment" msgstr "" -#: templates/js/translated/order.js:2618 +#: templates/js/translated/order.js:2657 msgid "Complete shipment" msgstr "" -#: templates/js/translated/order.js:2623 +#: templates/js/translated/order.js:2662 msgid "Delete shipment" msgstr "" -#: templates/js/translated/order.js:2643 +#: templates/js/translated/order.js:2682 msgid "Edit Shipment" msgstr "" -#: templates/js/translated/order.js:2660 +#: templates/js/translated/order.js:2699 msgid "Delete Shipment" msgstr "" -#: templates/js/translated/order.js:2694 +#: templates/js/translated/order.js:2733 msgid "No matching shipments found" msgstr "" -#: templates/js/translated/order.js:2704 +#: templates/js/translated/order.js:2743 msgid "Shipment Reference" msgstr "" -#: templates/js/translated/order.js:2728 +#: templates/js/translated/order.js:2767 msgid "Not shipped" msgstr "" -#: templates/js/translated/order.js:2734 +#: templates/js/translated/order.js:2773 msgid "Tracking" msgstr "" -#: templates/js/translated/order.js:2738 +#: templates/js/translated/order.js:2777 msgid "Invoice" msgstr "" -#: templates/js/translated/order.js:2907 +#: templates/js/translated/order.js:2946 msgid "Add Shipment" msgstr "" -#: templates/js/translated/order.js:2958 +#: templates/js/translated/order.js:2997 msgid "Confirm stock allocation" msgstr "" -#: templates/js/translated/order.js:2959 +#: templates/js/translated/order.js:2998 msgid "Allocate Stock Items to Sales Order" msgstr "" -#: templates/js/translated/order.js:3167 +#: templates/js/translated/order.js:3206 msgid "No sales order allocations found" msgstr "" -#: templates/js/translated/order.js:3246 +#: templates/js/translated/order.js:3285 msgid "Edit Stock Allocation" msgstr "" -#: templates/js/translated/order.js:3263 +#: templates/js/translated/order.js:3302 msgid "Confirm Delete Operation" msgstr "" -#: templates/js/translated/order.js:3264 +#: templates/js/translated/order.js:3303 msgid "Delete Stock Allocation" msgstr "" -#: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398 +#: templates/js/translated/order.js:3348 templates/js/translated/order.js:3437 #: templates/js/translated/stock.js:1602 msgid "Shipped to customer" msgstr "" -#: templates/js/translated/order.js:3317 templates/js/translated/order.js:3407 +#: templates/js/translated/order.js:3356 templates/js/translated/order.js:3446 msgid "Stock location not specified" msgstr "" -#: templates/js/translated/order.js:3721 +#: templates/js/translated/order.js:3760 msgid "Allocate serial numbers" msgstr "" -#: templates/js/translated/order.js:3727 +#: templates/js/translated/order.js:3766 msgid "Purchase stock" msgstr "" -#: templates/js/translated/order.js:3734 templates/js/translated/order.js:3932 +#: templates/js/translated/order.js:3773 templates/js/translated/order.js:3971 msgid "Calculate price" msgstr "" -#: templates/js/translated/order.js:3746 +#: templates/js/translated/order.js:3785 msgid "Cannot be deleted as items have been shipped" msgstr "" -#: templates/js/translated/order.js:3749 +#: templates/js/translated/order.js:3788 msgid "Cannot be deleted as items have been allocated" msgstr "" -#: templates/js/translated/order.js:3831 +#: templates/js/translated/order.js:3870 msgid "Allocate Serial Numbers" msgstr "" -#: templates/js/translated/order.js:3940 +#: templates/js/translated/order.js:3979 msgid "Update Unit Price" msgstr "" -#: templates/js/translated/order.js:3954 +#: templates/js/translated/order.js:3993 msgid "No matching line items" msgstr "" -#: templates/js/translated/order.js:4190 +#: templates/js/translated/order.js:4229 msgid "No matching lines" msgstr "" @@ -9319,12 +9337,12 @@ msgstr "" msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:586 templates/js/translated/part.js:1470 +#: templates/js/translated/part.js:586 templates/js/translated/part.js:1478 #: templates/js/translated/table_filters.js:468 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:596 templates/js/translated/part.js:1482 +#: templates/js/translated/part.js:596 msgid "No stock available" msgstr "" @@ -9356,7 +9374,7 @@ msgstr "" msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1553 +#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1549 msgid "No parts found" msgstr "" @@ -9368,100 +9386,124 @@ msgstr "" msgid "No category" msgstr "" -#: templates/js/translated/part.js:1577 templates/js/translated/part.js:1820 +#: templates/js/translated/part.js:1476 +msgid "No stock" +msgstr "" + +#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816 #: templates/js/translated/stock.js:2347 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:1593 +#: templates/js/translated/part.js:1589 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:1659 +#: templates/js/translated/part.js:1655 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:1664 +#: templates/js/translated/part.js:1660 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:1669 +#: templates/js/translated/part.js:1665 msgid "Select Part Category" msgstr "" -#: templates/js/translated/part.js:1682 +#: templates/js/translated/part.js:1678 msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1839 templates/js/translated/stock.js:2366 +#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2366 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:1918 +#: templates/js/translated/part.js:1914 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:1934 +#: templates/js/translated/part.js:1930 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:1992 +#: templates/js/translated/part.js:1988 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2043 templates/js/translated/stock.js:1299 +#: templates/js/translated/part.js:2039 templates/js/translated/stock.js:1299 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:2044 templates/js/translated/stock.js:1300 +#: templates/js/translated/part.js:2040 templates/js/translated/stock.js:1300 #: templates/js/translated/stock.js:1560 msgid "Delete test result" msgstr "" -#: templates/js/translated/part.js:2050 +#: templates/js/translated/part.js:2046 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2072 +#: templates/js/translated/part.js:2068 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2086 +#: templates/js/translated/part.js:2082 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2111 +#: templates/js/translated/part.js:2107 #, python-brace-format msgid "No ${human_name} information found" msgstr "" -#: templates/js/translated/part.js:2168 +#: templates/js/translated/part.js:2164 #, python-brace-format msgid "Edit ${human_name}" msgstr "" -#: templates/js/translated/part.js:2169 +#: templates/js/translated/part.js:2165 #, python-brace-format msgid "Delete ${human_name}" msgstr "" -#: templates/js/translated/part.js:2283 -msgid "Current Stock" +#: templates/js/translated/part.js:2330 templates/js/translated/part.js:2331 +msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:2316 +#: templates/js/translated/part.js:2333 +msgid "Specified date is in the past" +msgstr "" + +#: templates/js/translated/part.js:2339 +msgid "Speculative" +msgstr "" + +#: templates/js/translated/part.js:2389 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2342 +#: templates/js/translated/part.js:2395 +msgid "Error fetching scheduling information for this part" +msgstr "" + +#: templates/js/translated/part.js:2491 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2412 +#: templates/js/translated/part.js:2507 +msgid "Maximum Quantity" +msgstr "" + +#: templates/js/translated/part.js:2533 +msgid "Minimum Stock Level" +msgstr "" + +#: templates/js/translated/part.js:2627 msgid "Single Price" msgstr "" -#: templates/js/translated/part.js:2431 +#: templates/js/translated/part.js:2646 msgid "Single Price Difference" msgstr "" @@ -10222,10 +10264,6 @@ msgstr "" msgid "Hide/Show pagination" msgstr "" -#: templates/js/translated/tables.js:558 -msgid "Refresh" -msgstr "" - #: templates/js/translated/tables.js:561 msgid "Toggle" msgstr "" diff --git a/InvenTree/locale/pt_br/LC_MESSAGES/django.po b/InvenTree/locale/pt_br/LC_MESSAGES/django.po index 5548cd4fd5..e222b10313 100644 --- a/InvenTree/locale/pt_br/LC_MESSAGES/django.po +++ b/InvenTree/locale/pt_br/LC_MESSAGES/django.po @@ -8,7 +8,7 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-15 13:12+0000\n" +"POT-Creation-Date: 2022-08-17 06:25+0000\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" @@ -37,15 +37,15 @@ msgstr "" #: order/templates/order/so_sidebar.html:17 #: part/templates/part/part_sidebar.html:59 #: report/templates/report/inventree_build_order_base.html:172 -#: stock/models.py:1993 stock/models.py:2101 stock/serializers.py:329 -#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:823 -#: stock/serializers.py:922 stock/serializers.py:1054 +#: stock/models.py:2000 stock/models.py:2108 stock/serializers.py:329 +#: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825 +#: stock/serializers.py:924 stock/serializers.py:1056 #: stock/templates/stock/stock_sidebar.html:25 #: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101 #: templates/js/translated/company.js:964 templates/js/translated/order.js:2104 #: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753 #: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102 -#: templates/js/translated/stock.js:1370 templates/js/translated/stock.js:1976 +#: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980 msgid "Notes" msgstr "" @@ -200,7 +200,7 @@ msgstr "" msgid "Missing external link" msgstr "" -#: InvenTree/models.py:395 stock/models.py:2095 +#: InvenTree/models.py:395 stock/models.py:2102 #: templates/js/translated/attachment.js:103 #: templates/js/translated/attachment.js:241 msgid "Attachment" @@ -212,7 +212,7 @@ msgstr "" #: InvenTree/models.py:402 company/models.py:124 company/models.py:276 #: company/models.py:510 order/models.py:84 order/models.py:1245 -#: part/models.py:795 +#: part/models.py:802 #: report/templates/report/inventree_build_order_base.html:164 #: templates/js/translated/company.js:656 #: templates/js/translated/company.js:948 templates/js/translated/order.js:2742 @@ -220,8 +220,8 @@ msgstr "" msgid "Link" msgstr "" -#: InvenTree/models.py:403 build/models.py:296 part/models.py:796 -#: stock/models.py:651 +#: InvenTree/models.py:403 build/models.py:296 part/models.py:803 +#: stock/models.py:658 msgid "Link to external URL" msgstr "" @@ -234,12 +234,12 @@ msgstr "" msgid "File comment" msgstr "" -#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1646 -#: common/models.py:1647 common/models.py:1870 common/models.py:1871 -#: common/models.py:2133 common/models.py:2134 part/models.py:2193 -#: part/models.py:2213 plugin/models.py:238 plugin/models.py:239 +#: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665 +#: common/models.py:1666 common/models.py:1889 common/models.py:1890 +#: common/models.py:2152 common/models.py:2153 part/models.py:2200 +#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257 #: report/templates/report/inventree_test_report_base.html:96 -#: templates/js/translated/stock.js:2632 +#: templates/js/translated/stock.js:2641 msgid "User" msgstr "" @@ -276,19 +276,19 @@ msgstr "" msgid "Invalid choice" msgstr "" -#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1856 -#: company/models.py:358 label/models.py:101 part/models.py:739 -#: part/models.py:2371 plugin/models.py:93 report/models.py:152 +#: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875 +#: company/models.py:358 label/models.py:101 part/models.py:746 +#: part/models.py:2378 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 -#: templates/InvenTree/settings/plugin.html:49 -#: templates/InvenTree/settings/plugin.html:132 +#: templates/InvenTree/settings/plugin.html:51 +#: templates/InvenTree/settings/plugin.html:134 #: templates/InvenTree/settings/plugin_settings.html:23 #: templates/InvenTree/settings/settings.html:347 #: templates/js/translated/company.js:545 #: templates/js/translated/company.js:758 #: templates/js/translated/notification.js:71 -#: templates/js/translated/part.js:684 templates/js/translated/part.js:836 -#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2388 +#: templates/js/translated/part.js:688 templates/js/translated/part.js:840 +#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2392 msgid "Name" msgstr "" @@ -297,21 +297,21 @@ msgstr "" #: company/models.py:516 company/templates/company/company_base.html:71 #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:87 label/models.py:108 -#: order/models.py:82 part/models.py:762 part/templates/part/category.html:74 +#: order/models.py:82 part/models.py:769 part/templates/part/category.html:80 #: part/templates/part/part_base.html:167 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 -#: stock/templates/stock/location.html:103 +#: stock/templates/stock/location.html:108 #: templates/InvenTree/settings/plugin_settings.html:33 #: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848 #: templates/js/translated/build.js:2471 templates/js/translated/company.js:409 #: templates/js/translated/company.js:667 #: templates/js/translated/company.js:959 templates/js/translated/order.js:1720 #: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531 -#: templates/js/translated/part.js:743 templates/js/translated/part.js:1149 -#: templates/js/translated/part.js:1424 templates/js/translated/part.js:1933 -#: templates/js/translated/part.js:2002 templates/js/translated/stock.js:1739 -#: templates/js/translated/stock.js:2415 templates/js/translated/stock.js:2469 +#: templates/js/translated/part.js:747 templates/js/translated/part.js:1153 +#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1938 +#: templates/js/translated/part.js:2007 templates/js/translated/stock.js:1743 +#: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478 msgid "Description" msgstr "" @@ -324,7 +324,7 @@ msgid "parent" msgstr "" #: InvenTree/models.py:560 InvenTree/models.py:561 -#: templates/js/translated/part.js:1939 templates/js/translated/stock.js:2421 +#: templates/js/translated/part.js:1944 templates/js/translated/stock.js:2430 msgid "Path" msgstr "" @@ -336,7 +336,7 @@ msgstr "" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:55 part/models.py:2692 +#: InvenTree/serializers.py:55 part/models.py:2699 msgid "Must be a valid number" msgstr "" @@ -626,7 +626,7 @@ msgstr "" msgid "Split child item" msgstr "" -#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2080 +#: InvenTree/status_codes.py:281 templates/js/translated/stock.js:2084 msgid "Merged stock items" msgstr "" @@ -748,7 +748,7 @@ msgid "Build Order Reference" msgstr "" #: build/models.py:166 order/models.py:240 order/models.py:623 -#: order/models.py:904 part/models.py:2610 +#: order/models.py:904 part/models.py:2617 #: part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 @@ -775,10 +775,10 @@ msgstr "" #: build/models.py:191 build/templates/build/build_base.html:77 #: build/templates/build/detail.html:29 company/models.py:670 #: order/models.py:1001 order/models.py:1112 order/models.py:1113 -#: part/models.py:336 part/models.py:2139 part/models.py:2154 -#: part/models.py:2173 part/models.py:2191 part/models.py:2290 -#: part/models.py:2410 part/models.py:2500 part/models.py:2585 -#: part/models.py:2861 part/serializers.py:811 +#: part/models.py:343 part/models.py:2146 part/models.py:2161 +#: part/models.py:2180 part/models.py:2198 part/models.py:2297 +#: part/models.py:2417 part/models.py:2507 part/models.py:2592 +#: part/models.py:2868 part/serializers.py:813 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -801,11 +801,11 @@ msgstr "" #: templates/js/translated/order.js:934 templates/js/translated/order.js:1387 #: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885 #: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507 -#: templates/js/translated/part.js:1134 templates/js/translated/part.js:1206 -#: templates/js/translated/part.js:1402 templates/js/translated/stock.js:582 -#: templates/js/translated/stock.js:747 templates/js/translated/stock.js:954 -#: templates/js/translated/stock.js:1696 templates/js/translated/stock.js:2495 -#: templates/js/translated/stock.js:2690 templates/js/translated/stock.js:2824 +#: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210 +#: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586 +#: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958 +#: templates/js/translated/stock.js:1700 templates/js/translated/stock.js:2504 +#: templates/js/translated/stock.js:2699 templates/js/translated/stock.js:2833 msgid "Part" msgstr "" @@ -863,7 +863,7 @@ msgid "Build status code" msgstr "" #: build/models.py:251 build/serializers.py:225 order/serializers.py:447 -#: stock/models.py:655 templates/js/translated/order.js:1247 +#: stock/models.py:662 templates/js/translated/order.js:1247 msgid "Batch Code" msgstr "" @@ -871,7 +871,7 @@ msgstr "" msgid "Batch code for this build output" msgstr "" -#: build/models.py:258 order/models.py:86 part/models.py:931 +#: build/models.py:258 order/models.py:86 part/models.py:938 #: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544 msgid "Creation Date" msgstr "" @@ -904,7 +904,7 @@ msgstr "" #: build/models.py:289 build/templates/build/build_base.html:190 #: build/templates/build/detail.html:115 order/models.py:100 #: order/templates/order/order_base.html:176 -#: order/templates/order/sales_order_base.html:183 part/models.py:935 +#: order/templates/order/sales_order_base.html:183 part/models.py:942 #: report/templates/report/inventree_build_order_base.html:158 #: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754 msgid "Responsible" @@ -917,7 +917,7 @@ msgstr "" #: build/models.py:295 build/templates/build/detail.html:101 #: company/templates/company/manufacturer_part.html:107 #: company/templates/company/supplier_part.html:153 -#: part/templates/part/part_base.html:346 stock/models.py:649 +#: part/templates/part/part_base.html:346 stock/models.py:656 #: stock/templates/stock/item_base.html:205 msgid "External Link" msgstr "" @@ -983,8 +983,8 @@ msgid "Build to allocate parts" msgstr "" #: build/models.py:1345 build/serializers.py:645 order/serializers.py:1015 -#: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:754 -#: stock/serializers.py:880 stock/templates/stock/item_base.html:10 +#: order/serializers.py:1036 stock/serializers.py:396 stock/serializers.py:756 +#: stock/serializers.py:882 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:199 #: templates/js/translated/build.js:741 templates/js/translated/build.js:746 @@ -992,8 +992,8 @@ msgstr "" #: templates/js/translated/order.js:104 templates/js/translated/order.js:2886 #: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193 #: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380 -#: templates/js/translated/stock.js:583 templates/js/translated/stock.js:748 -#: templates/js/translated/stock.js:2568 +#: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752 +#: templates/js/translated/stock.js:2577 msgid "Stock Item" msgstr "" @@ -1003,11 +1003,11 @@ msgstr "" #: build/models.py:1358 build/serializers.py:193 #: build/templates/build/build_base.html:82 -#: build/templates/build/detail.html:34 common/models.py:1678 +#: build/templates/build/detail.html:34 common/models.py:1697 #: company/templates/company/supplier_part.html:279 order/models.py:897 #: order/models.py:1423 order/serializers.py:1155 #: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40 -#: part/models.py:2601 part/templates/part/detail.html:937 +#: part/models.py:2608 part/templates/part/detail.html:937 #: part/templates/part/detail.html:1023 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 @@ -1030,11 +1030,11 @@ msgstr "" #: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207 #: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386 #: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037 -#: templates/js/translated/part.js:1034 templates/js/translated/part.js:2147 -#: templates/js/translated/part.js:2378 templates/js/translated/part.js:2412 -#: templates/js/translated/part.js:2490 templates/js/translated/stock.js:454 -#: templates/js/translated/stock.js:608 templates/js/translated/stock.js:778 -#: templates/js/translated/stock.js:2617 templates/js/translated/stock.js:2702 +#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2152 +#: templates/js/translated/part.js:2383 templates/js/translated/part.js:2417 +#: templates/js/translated/part.js:2495 templates/js/translated/stock.js:458 +#: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782 +#: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711 msgid "Quantity" msgstr "" @@ -1076,8 +1076,8 @@ msgid "Enter quantity for build output" msgstr "" #: build/serializers.py:208 build/serializers.py:665 order/models.py:318 -#: order/serializers.py:287 order/serializers.py:442 part/serializers.py:542 -#: part/serializers.py:974 stock/models.py:477 stock/models.py:1244 +#: order/serializers.py:287 order/serializers.py:442 part/serializers.py:544 +#: part/serializers.py:976 stock/models.py:484 stock/models.py:1251 #: stock/serializers.py:302 msgid "Quantity must be greater than zero" msgstr "" @@ -1092,7 +1092,7 @@ msgstr "" #: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159 #: stock/serializers.py:311 templates/js/translated/order.js:1258 -#: templates/js/translated/stock.js:267 templates/js/translated/stock.js:455 +#: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459 msgid "Serial Numbers" msgstr "" @@ -1118,16 +1118,16 @@ msgstr "" #: build/serializers.py:366 order/serializers.py:428 order/serializers.py:532 #: stock/serializers.py:322 stock/serializers.py:453 stock/serializers.py:534 -#: stock/serializers.py:915 stock/serializers.py:1148 +#: stock/serializers.py:917 stock/serializers.py:1150 #: stock/templates/stock/item_base.html:390 #: templates/js/translated/barcode.js:436 #: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753 #: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285 #: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305 #: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394 -#: templates/js/translated/part.js:181 templates/js/translated/stock.js:584 -#: templates/js/translated/stock.js:749 templates/js/translated/stock.js:956 -#: templates/js/translated/stock.js:1850 templates/js/translated/stock.js:2509 +#: templates/js/translated/part.js:181 templates/js/translated/stock.js:588 +#: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960 +#: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518 msgid "Location" msgstr "" @@ -1140,8 +1140,8 @@ msgstr "" #: order/serializers.py:465 stock/templates/stock/item_base.html:423 #: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505 #: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724 -#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1825 -#: templates/js/translated/stock.js:2586 templates/js/translated/stock.js:2718 +#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829 +#: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727 msgid "Status" msgstr "" @@ -1217,8 +1217,8 @@ msgstr "" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:577 build/serializers.py:622 part/models.py:2719 -#: part/models.py:2853 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726 +#: part/models.py:2860 msgid "BOM Item" msgstr "" @@ -1234,7 +1234,7 @@ msgstr "" msgid "bom_item.part must point to the same part as the build order" msgstr "" -#: build/serializers.py:651 stock/serializers.py:767 +#: build/serializers.py:651 stock/serializers.py:769 msgid "Item must be in stock" msgstr "" @@ -1372,7 +1372,7 @@ msgstr "" #: report/templates/report/inventree_build_order_base.html:125 #: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741 #: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552 -#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1038 +#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042 msgid "Target Date" msgstr "" @@ -1450,8 +1450,8 @@ msgstr "" #: stock/templates/stock/item_base.html:170 #: templates/js/translated/build.js:1182 #: templates/js/translated/model_renderers.js:124 -#: templates/js/translated/stock.js:1022 templates/js/translated/stock.js:1839 -#: templates/js/translated/stock.js:2725 +#: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843 +#: templates/js/translated/stock.js:2734 #: templates/js/translated/table_filters.js:159 #: templates/js/translated/table_filters.js:250 msgid "Batch" @@ -1511,7 +1511,7 @@ msgstr "" #: build/templates/build/detail.html:187 #: company/templates/company/detail.html:37 #: company/templates/company/detail.html:85 -#: part/templates/part/category.html:177 templates/js/translated/order.js:977 +#: part/templates/part/category.html:183 templates/js/translated/order.js:977 msgid "Order Parts" msgstr "" @@ -1564,12 +1564,12 @@ msgid "Delete outputs" msgstr "" #: build/templates/build/detail.html:267 -#: stock/templates/stock/location.html:197 templates/stock_table.html:27 +#: stock/templates/stock/location.html:202 templates/stock_table.html:27 msgid "Printing Actions" msgstr "" #: build/templates/build/detail.html:271 build/templates/build/detail.html:272 -#: stock/templates/stock/location.html:201 templates/stock_table.html:31 +#: stock/templates/stock/location.html:206 templates/stock_table.html:31 msgid "Print labels" msgstr "" @@ -1846,7 +1846,7 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:951 part/models.py:2412 report/models.py:158 +#: common/models.py:951 part/models.py:2419 report/models.py:158 #: templates/js/translated/table_filters.js:38 #: templates/js/translated/table_filters.js:484 msgid "Template" @@ -1856,7 +1856,7 @@ msgstr "" msgid "Parts are templates by default" msgstr "" -#: common/models.py:958 part/models.py:887 templates/js/translated/bom.js:1448 +#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448 #: templates/js/translated/table_filters.js:176 #: templates/js/translated/table_filters.js:447 msgid "Assembly" @@ -1866,7 +1866,7 @@ msgstr "" msgid "Parts can be assembled from other components by default" msgstr "" -#: common/models.py:965 part/models.py:893 +#: common/models.py:965 part/models.py:900 #: templates/js/translated/table_filters.js:455 msgid "Component" msgstr "" @@ -1875,7 +1875,7 @@ msgstr "" msgid "Parts can be used as sub-components by default" msgstr "" -#: common/models.py:972 part/models.py:904 +#: common/models.py:972 part/models.py:911 msgid "Purchaseable" msgstr "" @@ -1883,7 +1883,7 @@ msgstr "" msgid "Parts are purchaseable by default" msgstr "" -#: common/models.py:979 part/models.py:909 +#: common/models.py:979 part/models.py:916 #: templates/js/translated/table_filters.js:476 msgid "Salable" msgstr "" @@ -1892,7 +1892,7 @@ msgstr "" msgid "Parts are salable by default" msgstr "" -#: common/models.py:986 part/models.py:899 +#: common/models.py:986 part/models.py:906 #: templates/js/translated/table_filters.js:46 #: templates/js/translated/table_filters.js:108 #: templates/js/translated/table_filters.js:488 @@ -1903,7 +1903,7 @@ msgstr "" msgid "Parts are trackable by default" msgstr "" -#: common/models.py:993 part/models.py:919 +#: common/models.py:993 part/models.py:926 #: part/templates/part/part_base.html:151 #: templates/js/translated/table_filters.js:42 #: templates/js/translated/table_filters.js:492 @@ -1987,608 +1987,632 @@ msgid "Format to display the part name" msgstr "" #: common/models.py:1074 -msgid "Enable label printing" +msgid "Part Category Default Icon" msgstr "" #: common/models.py:1075 -msgid "Enable label printing from the web interface" +msgid "Part category default icon (empty means no icon)" +msgstr "" + +#: common/models.py:1080 +msgid "Enable label printing" msgstr "" #: common/models.py:1081 +msgid "Enable label printing from the web interface" +msgstr "" + +#: common/models.py:1087 msgid "Label Image DPI" msgstr "" -#: common/models.py:1082 +#: common/models.py:1088 msgid "DPI resolution when generating image files to supply to label printing plugins" msgstr "" -#: common/models.py:1091 +#: common/models.py:1097 msgid "Enable Reports" msgstr "" -#: common/models.py:1092 +#: common/models.py:1098 msgid "Enable generation of reports" msgstr "" -#: common/models.py:1098 templates/stats.html:25 +#: common/models.py:1104 templates/stats.html:25 msgid "Debug Mode" msgstr "" -#: common/models.py:1099 +#: common/models.py:1105 msgid "Generate reports in debug mode (HTML output)" msgstr "" -#: common/models.py:1105 +#: common/models.py:1111 msgid "Page Size" msgstr "" -#: common/models.py:1106 +#: common/models.py:1112 msgid "Default page size for PDF reports" msgstr "" -#: common/models.py:1116 +#: common/models.py:1122 msgid "Enable Test Reports" msgstr "" -#: common/models.py:1117 +#: common/models.py:1123 msgid "Enable generation of test reports" msgstr "" -#: common/models.py:1123 +#: common/models.py:1129 msgid "Attach Test Reports" msgstr "" -#: common/models.py:1124 +#: common/models.py:1130 msgid "When printing a Test Report, attach a copy of the Test Report to the associated Stock Item" msgstr "" -#: common/models.py:1130 +#: common/models.py:1136 msgid "Batch Code Template" msgstr "" -#: common/models.py:1131 +#: common/models.py:1137 msgid "Template for generating default batch codes for stock items" msgstr "" -#: common/models.py:1136 +#: common/models.py:1142 msgid "Stock Expiry" msgstr "" -#: common/models.py:1137 +#: common/models.py:1143 msgid "Enable stock expiry functionality" msgstr "" -#: common/models.py:1143 +#: common/models.py:1149 msgid "Sell Expired Stock" msgstr "" -#: common/models.py:1144 +#: common/models.py:1150 msgid "Allow sale of expired stock" msgstr "" -#: common/models.py:1150 +#: common/models.py:1156 msgid "Stock Stale Time" msgstr "" -#: common/models.py:1151 +#: common/models.py:1157 msgid "Number of days stock items are considered stale before expiring" msgstr "" -#: common/models.py:1153 +#: common/models.py:1159 msgid "days" msgstr "" -#: common/models.py:1158 +#: common/models.py:1164 msgid "Build Expired Stock" msgstr "" -#: common/models.py:1159 +#: common/models.py:1165 msgid "Allow building with expired stock" msgstr "" -#: common/models.py:1165 +#: common/models.py:1171 msgid "Stock Ownership Control" msgstr "" -#: common/models.py:1166 +#: common/models.py:1172 msgid "Enable ownership control over stock locations and items" msgstr "" -#: common/models.py:1172 -msgid "Build Order Reference Pattern" -msgstr "" - -#: common/models.py:1173 -msgid "Required pattern for generating Build Order reference field" +#: common/models.py:1178 +msgid "Stock Location Default Icon" msgstr "" #: common/models.py:1179 +msgid "Stock location default icon (empty means no icon)" +msgstr "" + +#: common/models.py:1184 +msgid "Build Order Reference Pattern" +msgstr "" + +#: common/models.py:1185 +msgid "Required pattern for generating Build Order reference field" +msgstr "" + +#: common/models.py:1191 msgid "Sales Order Reference Pattern" msgstr "" -#: common/models.py:1180 +#: common/models.py:1192 msgid "Required pattern for generating Sales Order reference field" msgstr "" -#: common/models.py:1186 +#: common/models.py:1198 msgid "Sales Order Default Shipment" msgstr "" -#: common/models.py:1187 +#: common/models.py:1199 msgid "Enable creation of default shipment with sales orders" msgstr "" -#: common/models.py:1193 +#: common/models.py:1205 msgid "Purchase Order Reference Pattern" msgstr "" -#: common/models.py:1194 +#: common/models.py:1206 msgid "Required pattern for generating Purchase Order reference field" msgstr "" -#: common/models.py:1201 +#: common/models.py:1213 msgid "Enable password forgot" msgstr "" -#: common/models.py:1202 +#: common/models.py:1214 msgid "Enable password forgot function on the login pages" msgstr "" -#: common/models.py:1208 +#: common/models.py:1220 msgid "Enable registration" msgstr "" -#: common/models.py:1209 +#: common/models.py:1221 msgid "Enable self-registration for users on the login pages" msgstr "" -#: common/models.py:1215 +#: common/models.py:1227 msgid "Enable SSO" msgstr "" -#: common/models.py:1216 +#: common/models.py:1228 msgid "Enable SSO on the login pages" msgstr "" -#: common/models.py:1222 +#: common/models.py:1234 msgid "Email required" msgstr "" -#: common/models.py:1223 +#: common/models.py:1235 msgid "Require user to supply mail on signup" msgstr "" -#: common/models.py:1229 +#: common/models.py:1241 msgid "Auto-fill SSO users" msgstr "" -#: common/models.py:1230 +#: common/models.py:1242 msgid "Automatically fill out user-details from SSO account-data" msgstr "" -#: common/models.py:1236 +#: common/models.py:1248 msgid "Mail twice" msgstr "" -#: common/models.py:1237 +#: common/models.py:1249 msgid "On signup ask users twice for their mail" msgstr "" -#: common/models.py:1243 +#: common/models.py:1255 msgid "Password twice" msgstr "" -#: common/models.py:1244 +#: common/models.py:1256 msgid "On signup ask users twice for their password" msgstr "" -#: common/models.py:1250 +#: common/models.py:1262 msgid "Group on signup" msgstr "" -#: common/models.py:1251 +#: common/models.py:1263 msgid "Group to which new users are assigned on registration" msgstr "" -#: common/models.py:1257 +#: common/models.py:1269 msgid "Enforce MFA" msgstr "" -#: common/models.py:1258 +#: common/models.py:1270 msgid "Users must use multifactor security." msgstr "" -#: common/models.py:1264 +#: common/models.py:1276 msgid "Check plugins on startup" msgstr "" -#: common/models.py:1265 +#: common/models.py:1277 msgid "Check that all plugins are installed on startup - enable in container enviroments" msgstr "" -#: common/models.py:1273 +#: common/models.py:1284 +msgid "Check plugin signatures" +msgstr "" + +#: common/models.py:1285 +msgid "Check and show signatures for plugins" +msgstr "" + +#: common/models.py:1292 msgid "Enable URL integration" msgstr "" -#: common/models.py:1274 +#: common/models.py:1293 msgid "Enable plugins to add URL routes" msgstr "" -#: common/models.py:1281 +#: common/models.py:1300 msgid "Enable navigation integration" msgstr "" -#: common/models.py:1282 +#: common/models.py:1301 msgid "Enable plugins to integrate into navigation" msgstr "" -#: common/models.py:1289 +#: common/models.py:1308 msgid "Enable app integration" msgstr "" -#: common/models.py:1290 +#: common/models.py:1309 msgid "Enable plugins to add apps" msgstr "" -#: common/models.py:1297 +#: common/models.py:1316 msgid "Enable schedule integration" msgstr "" -#: common/models.py:1298 +#: common/models.py:1317 msgid "Enable plugins to run scheduled tasks" msgstr "" -#: common/models.py:1305 +#: common/models.py:1324 msgid "Enable event integration" msgstr "" -#: common/models.py:1306 +#: common/models.py:1325 msgid "Enable plugins to respond to internal events" msgstr "" -#: common/models.py:1323 common/models.py:1639 +#: common/models.py:1342 common/models.py:1658 msgid "Settings key (must be unique - case insensitive" msgstr "" -#: common/models.py:1345 +#: common/models.py:1364 msgid "Show subscribed parts" msgstr "" -#: common/models.py:1346 +#: common/models.py:1365 msgid "Show subscribed parts on the homepage" msgstr "" -#: common/models.py:1352 +#: common/models.py:1371 msgid "Show subscribed categories" msgstr "" -#: common/models.py:1353 +#: common/models.py:1372 msgid "Show subscribed part categories on the homepage" msgstr "" -#: common/models.py:1359 +#: common/models.py:1378 msgid "Show latest parts" msgstr "" -#: common/models.py:1360 +#: common/models.py:1379 msgid "Show latest parts on the homepage" msgstr "" -#: common/models.py:1366 +#: common/models.py:1385 msgid "Recent Part Count" msgstr "" -#: common/models.py:1367 +#: common/models.py:1386 msgid "Number of recent parts to display on index page" msgstr "" -#: common/models.py:1373 +#: common/models.py:1392 msgid "Show unvalidated BOMs" msgstr "" -#: common/models.py:1374 +#: common/models.py:1393 msgid "Show BOMs that await validation on the homepage" msgstr "" -#: common/models.py:1380 +#: common/models.py:1399 msgid "Show recent stock changes" msgstr "" -#: common/models.py:1381 +#: common/models.py:1400 msgid "Show recently changed stock items on the homepage" msgstr "" -#: common/models.py:1387 +#: common/models.py:1406 msgid "Recent Stock Count" msgstr "" -#: common/models.py:1388 +#: common/models.py:1407 msgid "Number of recent stock items to display on index page" msgstr "" -#: common/models.py:1394 +#: common/models.py:1413 msgid "Show low stock" msgstr "" -#: common/models.py:1395 +#: common/models.py:1414 msgid "Show low stock items on the homepage" msgstr "" -#: common/models.py:1401 +#: common/models.py:1420 msgid "Show depleted stock" msgstr "" -#: common/models.py:1402 +#: common/models.py:1421 msgid "Show depleted stock items on the homepage" msgstr "" -#: common/models.py:1408 +#: common/models.py:1427 msgid "Show needed stock" msgstr "" -#: common/models.py:1409 +#: common/models.py:1428 msgid "Show stock items needed for builds on the homepage" msgstr "" -#: common/models.py:1415 +#: common/models.py:1434 msgid "Show expired stock" msgstr "" -#: common/models.py:1416 +#: common/models.py:1435 msgid "Show expired stock items on the homepage" msgstr "" -#: common/models.py:1422 +#: common/models.py:1441 msgid "Show stale stock" msgstr "" -#: common/models.py:1423 +#: common/models.py:1442 msgid "Show stale stock items on the homepage" msgstr "" -#: common/models.py:1429 +#: common/models.py:1448 msgid "Show pending builds" msgstr "" -#: common/models.py:1430 +#: common/models.py:1449 msgid "Show pending builds on the homepage" msgstr "" -#: common/models.py:1436 +#: common/models.py:1455 msgid "Show overdue builds" msgstr "" -#: common/models.py:1437 +#: common/models.py:1456 msgid "Show overdue builds on the homepage" msgstr "" -#: common/models.py:1443 +#: common/models.py:1462 msgid "Show outstanding POs" msgstr "" -#: common/models.py:1444 +#: common/models.py:1463 msgid "Show outstanding POs on the homepage" msgstr "" -#: common/models.py:1450 +#: common/models.py:1469 msgid "Show overdue POs" msgstr "" -#: common/models.py:1451 +#: common/models.py:1470 msgid "Show overdue POs on the homepage" msgstr "" -#: common/models.py:1457 +#: common/models.py:1476 msgid "Show outstanding SOs" msgstr "" -#: common/models.py:1458 +#: common/models.py:1477 msgid "Show outstanding SOs on the homepage" msgstr "" -#: common/models.py:1464 +#: common/models.py:1483 msgid "Show overdue SOs" msgstr "" -#: common/models.py:1465 +#: common/models.py:1484 msgid "Show overdue SOs on the homepage" msgstr "" -#: common/models.py:1471 +#: common/models.py:1490 msgid "Inline label display" msgstr "" -#: common/models.py:1472 +#: common/models.py:1491 msgid "Display PDF labels in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1478 +#: common/models.py:1497 msgid "Inline report display" msgstr "" -#: common/models.py:1479 +#: common/models.py:1498 msgid "Display PDF reports in the browser, instead of downloading as a file" msgstr "" -#: common/models.py:1485 +#: common/models.py:1504 msgid "Search Parts" msgstr "" -#: common/models.py:1486 +#: common/models.py:1505 msgid "Display parts in search preview window" msgstr "" -#: common/models.py:1492 +#: common/models.py:1511 msgid "Seach Supplier Parts" msgstr "" -#: common/models.py:1493 +#: common/models.py:1512 msgid "Display supplier parts in search preview window" msgstr "" -#: common/models.py:1499 +#: common/models.py:1518 msgid "Search Manufacturer Parts" msgstr "" -#: common/models.py:1500 +#: common/models.py:1519 msgid "Display manufacturer parts in search preview window" msgstr "" -#: common/models.py:1506 +#: common/models.py:1525 msgid "Hide Inactive Parts" msgstr "" -#: common/models.py:1507 +#: common/models.py:1526 msgid "Excluded inactive parts from search preview window" msgstr "" -#: common/models.py:1513 +#: common/models.py:1532 msgid "Search Categories" msgstr "" -#: common/models.py:1514 +#: common/models.py:1533 msgid "Display part categories in search preview window" msgstr "" -#: common/models.py:1520 +#: common/models.py:1539 msgid "Search Stock" msgstr "" -#: common/models.py:1521 +#: common/models.py:1540 msgid "Display stock items in search preview window" msgstr "" -#: common/models.py:1527 +#: common/models.py:1546 msgid "Hide Unavailable Stock Items" msgstr "" -#: common/models.py:1528 +#: common/models.py:1547 msgid "Exclude stock items which are not available from the search preview window" msgstr "" -#: common/models.py:1534 +#: common/models.py:1553 msgid "Search Locations" msgstr "" -#: common/models.py:1535 +#: common/models.py:1554 msgid "Display stock locations in search preview window" msgstr "" -#: common/models.py:1541 +#: common/models.py:1560 msgid "Search Companies" msgstr "" -#: common/models.py:1542 +#: common/models.py:1561 msgid "Display companies in search preview window" msgstr "" -#: common/models.py:1548 +#: common/models.py:1567 msgid "Search Purchase Orders" msgstr "" -#: common/models.py:1549 +#: common/models.py:1568 msgid "Display purchase orders in search preview window" msgstr "" -#: common/models.py:1555 +#: common/models.py:1574 msgid "Exclude Inactive Purchase Orders" msgstr "" -#: common/models.py:1556 +#: common/models.py:1575 msgid "Exclude inactive purchase orders from search preview window" msgstr "" -#: common/models.py:1562 +#: common/models.py:1581 msgid "Search Sales Orders" msgstr "" -#: common/models.py:1563 +#: common/models.py:1582 msgid "Display sales orders in search preview window" msgstr "" -#: common/models.py:1569 +#: common/models.py:1588 msgid "Exclude Inactive Sales Orders" msgstr "" -#: common/models.py:1570 +#: common/models.py:1589 msgid "Exclude inactive sales orders from search preview window" msgstr "" -#: common/models.py:1576 +#: common/models.py:1595 msgid "Search Preview Results" msgstr "" -#: common/models.py:1577 +#: common/models.py:1596 msgid "Number of results to show in each section of the search preview window" msgstr "" -#: common/models.py:1583 +#: common/models.py:1602 msgid "Show Quantity in Forms" msgstr "" -#: common/models.py:1584 +#: common/models.py:1603 msgid "Display available part quantity in some forms" msgstr "" -#: common/models.py:1590 +#: common/models.py:1609 msgid "Escape Key Closes Forms" msgstr "" -#: common/models.py:1591 +#: common/models.py:1610 msgid "Use the escape key to close modal forms" msgstr "" -#: common/models.py:1597 +#: common/models.py:1616 msgid "Fixed Navbar" msgstr "" -#: common/models.py:1598 +#: common/models.py:1617 msgid "The navbar position is fixed to the top of the screen" msgstr "" -#: common/models.py:1604 +#: common/models.py:1623 msgid "Date Format" msgstr "" -#: common/models.py:1605 +#: common/models.py:1624 msgid "Preferred format for displaying dates" msgstr "" -#: common/models.py:1619 part/templates/part/detail.html:41 +#: common/models.py:1638 part/templates/part/detail.html:41 msgid "Part Scheduling" msgstr "" -#: common/models.py:1620 +#: common/models.py:1639 msgid "Display part scheduling information" msgstr "" -#: common/models.py:1679 +#: common/models.py:1698 msgid "Price break quantity" msgstr "" -#: common/models.py:1686 company/serializers.py:366 +#: common/models.py:1705 company/serializers.py:366 #: company/templates/company/supplier_part.html:284 order/models.py:938 -#: templates/js/translated/part.js:1065 templates/js/translated/part.js:2152 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2157 msgid "Price" msgstr "" -#: common/models.py:1687 +#: common/models.py:1706 msgid "Unit price at specified quantity" msgstr "" -#: common/models.py:1847 common/models.py:2025 +#: common/models.py:1866 common/models.py:2044 msgid "Endpoint" msgstr "" -#: common/models.py:1848 +#: common/models.py:1867 msgid "Endpoint at which this webhook is received" msgstr "" -#: common/models.py:1857 +#: common/models.py:1876 msgid "Name for this webhook" msgstr "" -#: common/models.py:1862 part/models.py:914 plugin/models.py:99 +#: common/models.py:1881 part/models.py:921 plugin/models.py:100 #: templates/js/translated/table_filters.js:34 #: templates/js/translated/table_filters.js:104 #: templates/js/translated/table_filters.js:316 @@ -2596,67 +2620,67 @@ msgstr "" msgid "Active" msgstr "" -#: common/models.py:1863 +#: common/models.py:1882 msgid "Is this webhook active" msgstr "" -#: common/models.py:1877 +#: common/models.py:1896 msgid "Token" msgstr "" -#: common/models.py:1878 +#: common/models.py:1897 msgid "Token for access" msgstr "" -#: common/models.py:1885 +#: common/models.py:1904 msgid "Secret" msgstr "" -#: common/models.py:1886 +#: common/models.py:1905 msgid "Shared secret for HMAC" msgstr "" -#: common/models.py:1992 +#: common/models.py:2011 msgid "Message ID" msgstr "" -#: common/models.py:1993 +#: common/models.py:2012 msgid "Unique identifier for this message" msgstr "" -#: common/models.py:2001 +#: common/models.py:2020 msgid "Host" msgstr "" -#: common/models.py:2002 +#: common/models.py:2021 msgid "Host from which this message was received" msgstr "" -#: common/models.py:2009 +#: common/models.py:2028 msgid "Header" msgstr "" -#: common/models.py:2010 +#: common/models.py:2029 msgid "Header of this message" msgstr "" -#: common/models.py:2016 +#: common/models.py:2035 msgid "Body" msgstr "" -#: common/models.py:2017 +#: common/models.py:2036 msgid "Body of this message" msgstr "" -#: common/models.py:2026 +#: common/models.py:2045 msgid "Endpoint on which this message was received" msgstr "" -#: common/models.py:2031 +#: common/models.py:2050 msgid "Worked on" msgstr "" -#: common/models.py:2032 +#: common/models.py:2051 msgid "Was the work on this message finished?" msgstr "" @@ -2763,7 +2787,7 @@ msgstr "" msgid "Link to external company information" msgstr "" -#: company/models.py:135 part/models.py:808 +#: company/models.py:135 part/models.py:815 msgid "Image" msgstr "" @@ -2796,8 +2820,8 @@ msgid "Does this company manufacture parts?" msgstr "" #: company/models.py:148 company/serializers.py:372 -#: company/templates/company/company_base.html:106 part/serializers.py:151 -#: part/serializers.py:182 stock/serializers.py:180 +#: company/templates/company/company_base.html:106 part/serializers.py:153 +#: part/serializers.py:184 stock/serializers.py:180 msgid "Currency" msgstr "" @@ -2805,7 +2829,7 @@ msgstr "" msgid "Default currency used for this company" msgstr "" -#: company/models.py:248 company/models.py:481 stock/models.py:591 +#: company/models.py:248 company/models.py:481 stock/models.py:598 #: stock/serializers.py:87 stock/templates/stock/item_base.html:148 #: templates/js/translated/bom.js:543 msgid "Base Part" @@ -2837,7 +2861,7 @@ msgstr "" #: templates/js/translated/company.js:497 #: templates/js/translated/company.js:649 #: templates/js/translated/company.js:937 templates/js/translated/order.js:1971 -#: templates/js/translated/part.js:247 templates/js/translated/part.js:1023 +#: templates/js/translated/part.js:247 templates/js/translated/part.js:1027 msgid "MPN" msgstr "" @@ -2866,9 +2890,9 @@ msgstr "" #: company/models.py:365 #: report/templates/report/inventree_test_report_base.html:95 -#: stock/models.py:2088 templates/js/translated/company.js:546 -#: templates/js/translated/company.js:764 templates/js/translated/part.js:845 -#: templates/js/translated/stock.js:1356 +#: stock/models.py:2095 templates/js/translated/company.js:546 +#: templates/js/translated/company.js:764 templates/js/translated/part.js:849 +#: templates/js/translated/stock.js:1360 msgid "Value" msgstr "" @@ -2876,10 +2900,10 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:372 part/models.py:881 part/models.py:2379 +#: company/models.py:372 part/models.py:888 part/models.py:2386 #: part/templates/part/part_base.html:280 #: templates/InvenTree/settings/settings.html:352 -#: templates/js/translated/company.js:770 templates/js/translated/part.js:851 +#: templates/js/translated/company.js:770 templates/js/translated/part.js:855 msgid "Units" msgstr "" @@ -2899,7 +2923,7 @@ msgstr "" #: templates/js/translated/company.js:268 #: templates/js/translated/company.js:401 #: templates/js/translated/company.js:893 templates/js/translated/order.js:1707 -#: templates/js/translated/part.js:217 templates/js/translated/part.js:991 +#: templates/js/translated/part.js:217 templates/js/translated/part.js:995 #: templates/js/translated/table_filters.js:423 msgid "Supplier" msgstr "" @@ -2911,7 +2935,7 @@ msgstr "" #: company/models.py:497 company/templates/company/supplier_part.html:118 #: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267 #: templates/js/translated/order.js:1958 templates/js/translated/part.js:228 -#: templates/js/translated/part.js:1009 +#: templates/js/translated/part.js:1013 msgid "SKU" msgstr "" @@ -2932,23 +2956,23 @@ msgid "Supplier part description" msgstr "" #: company/models.py:522 company/templates/company/supplier_part.html:146 -#: part/models.py:2613 part/templates/part/upload_bom.html:59 +#: part/models.py:2620 part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401 msgid "Note" msgstr "" -#: company/models.py:526 part/models.py:1735 +#: company/models.py:526 part/models.py:1742 msgid "base cost" msgstr "" -#: company/models.py:526 part/models.py:1735 +#: company/models.py:526 part/models.py:1742 msgid "Minimum charge (e.g. stocking fee)" msgstr "" #: company/models.py:528 company/templates/company/supplier_part.html:139 -#: stock/models.py:617 stock/templates/stock/item_base.html:245 -#: templates/js/translated/company.js:969 templates/js/translated/stock.js:1972 +#: stock/models.py:624 stock/templates/stock/item_base.html:245 +#: templates/js/translated/company.js:969 templates/js/translated/stock.js:1976 msgid "Packaging" msgstr "" @@ -2956,7 +2980,7 @@ msgstr "" msgid "Part packaging" msgstr "" -#: company/models.py:530 part/models.py:1737 +#: company/models.py:530 part/models.py:1744 msgid "multiple" msgstr "" @@ -2969,7 +2993,7 @@ msgstr "" #: templates/email/low_stock_notification.html:18 #: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789 #: templates/js/translated/build.js:2645 templates/js/translated/company.js:979 -#: templates/js/translated/part.js:596 templates/js/translated/part.js:599 +#: templates/js/translated/part.js:600 templates/js/translated/part.js:603 #: templates/js/translated/table_filters.js:186 msgid "Available" msgstr "" @@ -3042,12 +3066,12 @@ msgid "Download image from URL" msgstr "" #: company/templates/company/company_base.html:86 order/models.py:637 -#: order/templates/order/sales_order_base.html:116 stock/models.py:636 -#: stock/models.py:637 stock/serializers.py:809 +#: order/templates/order/sales_order_base.html:116 stock/models.py:643 +#: stock/models.py:644 stock/serializers.py:811 #: stock/templates/stock/item_base.html:401 #: templates/email/overdue_sales_order.html:16 #: templates/js/translated/company.js:393 templates/js/translated/order.js:2513 -#: templates/js/translated/stock.js:2550 +#: templates/js/translated/stock.js:2559 #: templates/js/translated/table_filters.js:427 msgid "Customer" msgstr "" @@ -3088,7 +3112,7 @@ msgstr "" #: company/templates/company/detail.html:36 #: company/templates/company/detail.html:84 -#: part/templates/part/category.html:176 +#: part/templates/part/category.html:182 msgid "Order parts" msgstr "" @@ -3236,7 +3260,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:170 #: part/templates/part/detail.html:186 #: templates/InvenTree/settings/category.html:12 -#: templates/InvenTree/settings/part.html:66 +#: templates/InvenTree/settings/part.html:68 msgid "New Parameter" msgstr "" @@ -3266,10 +3290,10 @@ msgid "Assigned Stock Items" msgstr "" #: company/templates/company/supplier_part.html:7 -#: company/templates/company/supplier_part.html:24 stock/models.py:600 +#: company/templates/company/supplier_part.html:24 stock/models.py:607 #: stock/templates/stock/item_base.html:238 #: templates/js/translated/company.js:909 templates/js/translated/order.js:935 -#: templates/js/translated/stock.js:1929 +#: templates/js/translated/stock.js:1933 msgid "Supplier Part" msgstr "" @@ -3313,13 +3337,13 @@ msgid "Supplier Part Stock" msgstr "" #: company/templates/company/supplier_part.html:168 -#: part/templates/part/detail.html:24 stock/templates/stock/location.html:176 +#: part/templates/part/detail.html:24 stock/templates/stock/location.html:181 msgid "Create new stock item" msgstr "" #: company/templates/company/supplier_part.html:169 -#: part/templates/part/detail.html:25 stock/templates/stock/location.html:177 -#: templates/js/translated/stock.js:431 +#: part/templates/part/detail.html:25 stock/templates/stock/location.html:182 +#: templates/js/translated/stock.js:435 msgid "New Stock Item" msgstr "" @@ -3335,7 +3359,7 @@ msgstr "" #: company/templates/company/supplier_part.html:212 #: company/templates/company/supplier_part.html:326 -#: part/templates/part/prices.html:276 templates/js/translated/part.js:2224 +#: part/templates/part/prices.html:276 templates/js/translated/part.js:2229 msgid "Add Price Break" msgstr "" @@ -3344,12 +3368,12 @@ msgid "No price break information found" msgstr "" #: company/templates/company/supplier_part.html:252 -#: templates/js/translated/part.js:2234 +#: templates/js/translated/part.js:2239 msgid "Delete Price Break" msgstr "" #: company/templates/company/supplier_part.html:266 -#: templates/js/translated/part.js:2248 +#: templates/js/translated/part.js:2253 msgid "Edit Price Break" msgstr "" @@ -3371,13 +3395,13 @@ msgstr "" #: company/templates/company/supplier_part_navbar.html:15 #: part/templates/part/part_sidebar.html:14 -#: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:19 +#: stock/templates/stock/loc_link.html:3 stock/templates/stock/location.html:24 #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:151 #: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/bom.js:555 templates/js/translated/part.js:747 -#: templates/js/translated/part.js:1295 templates/js/translated/part.js:1456 -#: templates/js/translated/stock.js:955 templates/js/translated/stock.js:1750 +#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751 +#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460 +#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754 #: templates/navbar.html:31 msgid "Stock" msgstr "" @@ -3397,14 +3421,14 @@ msgid "Pricing" msgstr "" #: company/templates/company/supplier_part_sidebar.html:5 -#: part/templates/part/category.html:197 +#: part/templates/part/category.html:203 #: part/templates/part/category_sidebar.html:17 -#: stock/templates/stock/location.html:147 -#: stock/templates/stock/location.html:161 -#: stock/templates/stock/location.html:173 +#: stock/templates/stock/location.html:152 +#: stock/templates/stock/location.html:166 +#: stock/templates/stock/location.html:178 #: stock/templates/stock/location_sidebar.html:7 #: templates/InvenTree/search.html:153 templates/js/translated/search.js:223 -#: templates/js/translated/stock.js:2427 users/models.py:40 +#: templates/js/translated/stock.js:2436 users/models.py:40 msgid "Stock Items" msgstr "" @@ -3661,8 +3685,8 @@ msgstr "" #: stock/templates/stock/item_base.html:184 #: templates/email/overdue_purchase_order.html:15 #: templates/js/translated/order.js:936 templates/js/translated/order.js:1691 -#: templates/js/translated/part.js:968 templates/js/translated/stock.js:1909 -#: templates/js/translated/stock.js:2531 +#: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913 +#: templates/js/translated/stock.js:2540 msgid "Purchase Order" msgstr "" @@ -3672,7 +3696,7 @@ msgstr "" #: order/models.py:1009 order/templates/order/order_base.html:169 #: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073 -#: templates/js/translated/part.js:1060 templates/js/translated/part.js:1087 +#: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091 #: templates/js/translated/table_filters.js:338 msgid "Received" msgstr "" @@ -3681,9 +3705,9 @@ msgstr "" msgid "Number of items received" msgstr "" -#: order/models.py:1017 part/templates/part/prices.html:181 stock/models.py:727 +#: order/models.py:1017 part/templates/part/prices.html:181 stock/models.py:734 #: stock/serializers.py:171 stock/templates/stock/item_base.html:191 -#: templates/js/translated/stock.js:1960 +#: templates/js/translated/stock.js:1964 msgid "Purchase Price" msgstr "" @@ -4071,8 +4095,8 @@ msgstr "" #: templates/js/translated/bom.js:77 templates/js/translated/build.js:431 #: templates/js/translated/build.js:583 templates/js/translated/build.js:1974 #: templates/js/translated/order.js:884 templates/js/translated/order.js:1337 -#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:621 -#: templates/js/translated/stock.js:789 +#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625 +#: templates/js/translated/stock.js:793 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" msgstr "" @@ -4266,8 +4290,8 @@ msgstr "" msgid "This field is required" msgstr "" -#: part/bom.py:127 part/models.py:98 part/models.py:817 -#: part/templates/part/category.html:108 part/templates/part/part_base.html:330 +#: part/bom.py:127 part/models.py:98 part/models.py:824 +#: part/templates/part/category.html:114 part/templates/part/part_base.html:330 msgid "Default Location" msgstr "" @@ -4281,9 +4305,9 @@ msgid "Available Stock" msgstr "" #: part/bom.py:130 part/templates/part/part_base.html:207 -#: templates/js/translated/bom.js:947 templates/js/translated/part.js:586 -#: templates/js/translated/part.js:606 templates/js/translated/part.js:1298 -#: templates/js/translated/part.js:1470 templates/js/translated/part.js:1486 +#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590 +#: templates/js/translated/part.js:610 templates/js/translated/part.js:1302 +#: templates/js/translated/part.js:1483 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "" @@ -4304,516 +4328,524 @@ msgstr "" msgid "Default keywords for parts in this category" msgstr "" -#: part/models.py:115 part/models.py:2455 part/templates/part/category.html:15 +#: part/models.py:107 stock/models.py:84 +msgid "Icon" +msgstr "" + +#: part/models.py:108 stock/models.py:85 +msgid "Icon (optional)" +msgstr "" + +#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" -#: part/models.py:116 part/templates/part/category.html:128 +#: part/models.py:123 part/templates/part/category.html:134 #: templates/InvenTree/search.html:95 templates/js/translated/search.js:198 #: users/models.py:37 msgid "Part Categories" msgstr "" -#: part/models.py:337 part/templates/part/cat_link.html:3 -#: part/templates/part/category.html:17 part/templates/part/category.html:133 -#: part/templates/part/category.html:153 +#: part/models.py:344 part/templates/part/cat_link.html:3 +#: part/templates/part/category.html:23 part/templates/part/category.html:139 +#: part/templates/part/category.html:159 #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82 #: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:1946 templates/js/translated/search.js:144 +#: templates/js/translated/part.js:1951 templates/js/translated/search.js:144 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "" -#: part/models.py:422 +#: part/models.py:429 msgid "Invalid choice for parent part" msgstr "" -#: part/models.py:492 part/models.py:504 +#: part/models.py:499 part/models.py:511 #, python-brace-format msgid "Part '{p1}' is used in BOM for '{p2}' (recursive)" msgstr "" -#: part/models.py:621 +#: part/models.py:628 msgid "Next available serial numbers are" msgstr "" -#: part/models.py:625 +#: part/models.py:632 msgid "Next available serial number is" msgstr "" -#: part/models.py:630 +#: part/models.py:637 msgid "Most recent serial number is" msgstr "" -#: part/models.py:711 +#: part/models.py:718 msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:738 part/models.py:2509 +#: part/models.py:745 part/models.py:2516 msgid "Part name" msgstr "" -#: part/models.py:745 +#: part/models.py:752 msgid "Is Template" msgstr "" -#: part/models.py:746 +#: part/models.py:753 msgid "Is this part a template part?" msgstr "" -#: part/models.py:756 +#: part/models.py:763 msgid "Is this part a variant of another part?" msgstr "" -#: part/models.py:757 +#: part/models.py:764 msgid "Variant Of" msgstr "" -#: part/models.py:763 +#: part/models.py:770 msgid "Part description" msgstr "" -#: part/models.py:768 part/templates/part/category.html:86 +#: part/models.py:775 part/templates/part/category.html:92 #: part/templates/part/part_base.html:294 msgid "Keywords" msgstr "" -#: part/models.py:769 +#: part/models.py:776 msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:776 part/models.py:2211 part/models.py:2454 +#: part/models.py:783 part/models.py:2218 part/models.py:2461 #: part/templates/part/part_base.html:257 #: templates/InvenTree/settings/settings.html:232 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1438 templates/js/translated/part.js:1664 +#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1664 msgid "Category" msgstr "" -#: part/models.py:777 +#: part/models.py:784 msgid "Part category" msgstr "" -#: part/models.py:782 part/templates/part/part_base.html:266 -#: templates/js/translated/part.js:735 templates/js/translated/part.js:1391 -#: templates/js/translated/stock.js:1722 +#: part/models.py:789 part/templates/part/part_base.html:266 +#: templates/js/translated/part.js:739 templates/js/translated/part.js:1395 +#: templates/js/translated/stock.js:1726 msgid "IPN" msgstr "" -#: part/models.py:783 +#: part/models.py:790 msgid "Internal Part Number" msgstr "" -#: part/models.py:789 +#: part/models.py:796 msgid "Part revision or version number" msgstr "" -#: part/models.py:790 part/templates/part/part_base.html:273 -#: report/models.py:171 templates/js/translated/part.js:739 +#: part/models.py:797 part/templates/part/part_base.html:273 +#: report/models.py:171 templates/js/translated/part.js:743 msgid "Revision" msgstr "" -#: part/models.py:815 +#: part/models.py:822 msgid "Where is this item normally stored?" msgstr "" -#: part/models.py:860 part/templates/part/part_base.html:339 +#: part/models.py:867 part/templates/part/part_base.html:339 msgid "Default Supplier" msgstr "" -#: part/models.py:861 +#: part/models.py:868 msgid "Default supplier part" msgstr "" -#: part/models.py:868 +#: part/models.py:875 msgid "Default Expiry" msgstr "" -#: part/models.py:869 +#: part/models.py:876 msgid "Expiry time (in days) for stock items of this part" msgstr "" -#: part/models.py:874 part/templates/part/part_base.html:200 +#: part/models.py:881 part/templates/part/part_base.html:200 msgid "Minimum Stock" msgstr "" -#: part/models.py:875 +#: part/models.py:882 msgid "Minimum allowed stock level" msgstr "" -#: part/models.py:882 +#: part/models.py:889 msgid "Stock keeping units for this part" msgstr "" -#: part/models.py:888 +#: part/models.py:895 msgid "Can this part be built from other parts?" msgstr "" -#: part/models.py:894 +#: part/models.py:901 msgid "Can this part be used to build other parts?" msgstr "" -#: part/models.py:900 +#: part/models.py:907 msgid "Does this part have tracking for unique items?" msgstr "" -#: part/models.py:905 +#: part/models.py:912 msgid "Can this part be purchased from external suppliers?" msgstr "" -#: part/models.py:910 +#: part/models.py:917 msgid "Can this part be sold to customers?" msgstr "" -#: part/models.py:915 +#: part/models.py:922 msgid "Is this part active?" msgstr "" -#: part/models.py:920 +#: part/models.py:927 msgid "Is this a virtual part, such as a software product or license?" msgstr "" -#: part/models.py:922 +#: part/models.py:929 msgid "Part notes" msgstr "" -#: part/models.py:924 +#: part/models.py:931 msgid "BOM checksum" msgstr "" -#: part/models.py:924 +#: part/models.py:931 msgid "Stored BOM checksum" msgstr "" -#: part/models.py:927 +#: part/models.py:934 msgid "BOM checked by" msgstr "" -#: part/models.py:929 +#: part/models.py:936 msgid "BOM checked date" msgstr "" -#: part/models.py:933 +#: part/models.py:940 msgid "Creation User" msgstr "" -#: part/models.py:1737 +#: part/models.py:1744 msgid "Sell multiple" msgstr "" -#: part/models.py:2258 +#: part/models.py:2265 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:2275 +#: part/models.py:2282 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:2295 templates/js/translated/part.js:1997 -#: templates/js/translated/stock.js:1336 +#: part/models.py:2302 templates/js/translated/part.js:2002 +#: templates/js/translated/stock.js:1340 msgid "Test Name" msgstr "" -#: part/models.py:2296 +#: part/models.py:2303 msgid "Enter a name for the test" msgstr "" -#: part/models.py:2301 +#: part/models.py:2308 msgid "Test Description" msgstr "" -#: part/models.py:2302 +#: part/models.py:2309 msgid "Enter description for this test" msgstr "" -#: part/models.py:2307 templates/js/translated/part.js:2006 +#: part/models.py:2314 templates/js/translated/part.js:2011 #: templates/js/translated/table_filters.js:302 msgid "Required" msgstr "" -#: part/models.py:2308 +#: part/models.py:2315 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:2313 templates/js/translated/part.js:2014 +#: part/models.py:2320 templates/js/translated/part.js:2019 msgid "Requires Value" msgstr "" -#: part/models.py:2314 +#: part/models.py:2321 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:2319 templates/js/translated/part.js:2021 +#: part/models.py:2326 templates/js/translated/part.js:2026 msgid "Requires Attachment" msgstr "" -#: part/models.py:2320 +#: part/models.py:2327 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:2328 +#: part/models.py:2335 #, python-brace-format msgid "Illegal character in template name ({c})" msgstr "" -#: part/models.py:2364 +#: part/models.py:2371 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:2372 +#: part/models.py:2379 msgid "Parameter Name" msgstr "" -#: part/models.py:2379 +#: part/models.py:2386 msgid "Parameter Units" msgstr "" -#: part/models.py:2410 +#: part/models.py:2417 msgid "Parent Part" msgstr "" -#: part/models.py:2412 part/models.py:2460 part/models.py:2461 +#: part/models.py:2419 part/models.py:2467 part/models.py:2468 #: templates/InvenTree/settings/settings.html:227 msgid "Parameter Template" msgstr "" -#: part/models.py:2414 +#: part/models.py:2421 msgid "Data" msgstr "" -#: part/models.py:2414 +#: part/models.py:2421 msgid "Parameter Value" msgstr "" -#: part/models.py:2465 templates/InvenTree/settings/settings.html:236 +#: part/models.py:2472 templates/InvenTree/settings/settings.html:236 msgid "Default Value" msgstr "" -#: part/models.py:2466 +#: part/models.py:2473 msgid "Default Parameter Value" msgstr "" -#: part/models.py:2501 +#: part/models.py:2508 msgid "Part ID or part name" msgstr "" -#: part/models.py:2504 templates/js/translated/model_renderers.js:212 +#: part/models.py:2511 templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "" -#: part/models.py:2505 +#: part/models.py:2512 msgid "Unique part ID value" msgstr "" -#: part/models.py:2508 +#: part/models.py:2515 msgid "Part Name" msgstr "" -#: part/models.py:2512 +#: part/models.py:2519 msgid "Part IPN" msgstr "" -#: part/models.py:2513 +#: part/models.py:2520 msgid "Part IPN value" msgstr "" -#: part/models.py:2516 +#: part/models.py:2523 msgid "Level" msgstr "" -#: part/models.py:2517 +#: part/models.py:2524 msgid "BOM level" msgstr "" -#: part/models.py:2586 +#: part/models.py:2593 msgid "Select parent part" msgstr "" -#: part/models.py:2594 +#: part/models.py:2601 msgid "Sub part" msgstr "" -#: part/models.py:2595 +#: part/models.py:2602 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:2601 +#: part/models.py:2608 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:2603 part/templates/part/upload_bom.html:58 +#: part/models.py:2610 part/templates/part/upload_bom.html:58 #: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999 #: templates/js/translated/table_filters.js:100 msgid "Optional" msgstr "" -#: part/models.py:2603 +#: part/models.py:2610 msgid "This BOM item is optional" msgstr "" -#: part/models.py:2606 part/templates/part/upload_bom.html:55 +#: part/models.py:2613 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:2607 +#: part/models.py:2614 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:2610 +#: part/models.py:2617 msgid "BOM item reference" msgstr "" -#: part/models.py:2613 +#: part/models.py:2620 msgid "BOM item notes" msgstr "" -#: part/models.py:2615 +#: part/models.py:2622 msgid "Checksum" msgstr "" -#: part/models.py:2615 +#: part/models.py:2622 msgid "BOM line checksum" msgstr "" -#: part/models.py:2619 part/templates/part/upload_bom.html:57 +#: part/models.py:2626 part/templates/part/upload_bom.html:57 #: templates/js/translated/bom.js:1016 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:96 msgid "Inherited" msgstr "" -#: part/models.py:2620 +#: part/models.py:2627 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:2625 part/templates/part/upload_bom.html:56 +#: part/models.py:2632 part/templates/part/upload_bom.html:56 #: templates/js/translated/bom.js:1008 msgid "Allow Variants" msgstr "" -#: part/models.py:2626 +#: part/models.py:2633 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:2704 stock/models.py:461 +#: part/models.py:2711 stock/models.py:468 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:2713 part/models.py:2715 +#: part/models.py:2720 part/models.py:2722 msgid "Sub part must be specified" msgstr "" -#: part/models.py:2820 +#: part/models.py:2827 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:2841 +#: part/models.py:2848 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:2854 +#: part/models.py:2861 msgid "Parent BOM item" msgstr "" -#: part/models.py:2862 +#: part/models.py:2869 msgid "Substitute part" msgstr "" -#: part/models.py:2877 +#: part/models.py:2884 msgid "Part 1" msgstr "" -#: part/models.py:2881 +#: part/models.py:2888 msgid "Part 2" msgstr "" -#: part/models.py:2881 +#: part/models.py:2888 msgid "Select Related Part" msgstr "" -#: part/models.py:2899 +#: part/models.py:2906 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:2903 +#: part/models.py:2910 msgid "Duplicate relationship already exists" msgstr "" -#: part/serializers.py:152 part/serializers.py:183 stock/serializers.py:181 +#: part/serializers.py:154 part/serializers.py:185 stock/serializers.py:181 msgid "Purchase currency of this stock item" msgstr "" -#: part/serializers.py:812 +#: part/serializers.py:814 msgid "Select part to copy BOM from" msgstr "" -#: part/serializers.py:820 +#: part/serializers.py:822 msgid "Remove Existing Data" msgstr "" -#: part/serializers.py:821 +#: part/serializers.py:823 msgid "Remove existing BOM items before copying" msgstr "" -#: part/serializers.py:826 +#: part/serializers.py:828 msgid "Include Inherited" msgstr "" -#: part/serializers.py:827 +#: part/serializers.py:829 msgid "Include BOM items which are inherited from templated parts" msgstr "" -#: part/serializers.py:832 +#: part/serializers.py:834 msgid "Skip Invalid Rows" msgstr "" -#: part/serializers.py:833 +#: part/serializers.py:835 msgid "Enable this option to skip invalid rows" msgstr "" -#: part/serializers.py:838 +#: part/serializers.py:840 msgid "Copy Substitute Parts" msgstr "" -#: part/serializers.py:839 +#: part/serializers.py:841 msgid "Copy substitute parts when duplicate BOM items" msgstr "" -#: part/serializers.py:879 +#: part/serializers.py:881 msgid "Clear Existing BOM" msgstr "" -#: part/serializers.py:880 +#: part/serializers.py:882 msgid "Delete existing BOM items before uploading" msgstr "" -#: part/serializers.py:910 +#: part/serializers.py:912 msgid "No part column specified" msgstr "" -#: part/serializers.py:953 +#: part/serializers.py:955 msgid "Multiple matching parts found" msgstr "" -#: part/serializers.py:956 +#: part/serializers.py:958 msgid "No matching part found" msgstr "" -#: part/serializers.py:959 +#: part/serializers.py:961 msgid "Part is not designated as a component" msgstr "" -#: part/serializers.py:968 +#: part/serializers.py:970 msgid "Quantity not provided" msgstr "" -#: part/serializers.py:976 +#: part/serializers.py:978 msgid "Invalid quantity" msgstr "" -#: part/serializers.py:997 +#: part/serializers.py:999 msgid "At least one BOM item is required" msgstr "" @@ -4853,101 +4885,101 @@ msgstr "" msgid "Delete Items" msgstr "" -#: part/templates/part/category.html:28 part/templates/part/category.html:32 +#: part/templates/part/category.html:34 part/templates/part/category.html:38 msgid "You are subscribed to notifications for this category" msgstr "" -#: part/templates/part/category.html:36 +#: part/templates/part/category.html:42 msgid "Subscribe to notifications for this category" msgstr "" -#: part/templates/part/category.html:42 +#: part/templates/part/category.html:48 msgid "Category Actions" msgstr "" -#: part/templates/part/category.html:47 +#: part/templates/part/category.html:53 msgid "Edit category" msgstr "" -#: part/templates/part/category.html:48 +#: part/templates/part/category.html:54 msgid "Edit Category" msgstr "" -#: part/templates/part/category.html:52 +#: part/templates/part/category.html:58 msgid "Delete category" msgstr "" -#: part/templates/part/category.html:53 +#: part/templates/part/category.html:59 msgid "Delete Category" msgstr "" -#: part/templates/part/category.html:61 +#: part/templates/part/category.html:67 msgid "Create new part category" msgstr "" -#: part/templates/part/category.html:62 +#: part/templates/part/category.html:68 msgid "New Category" msgstr "" -#: part/templates/part/category.html:80 part/templates/part/category.html:93 +#: part/templates/part/category.html:86 part/templates/part/category.html:99 msgid "Category Path" msgstr "" -#: part/templates/part/category.html:94 +#: part/templates/part/category.html:100 msgid "Top level part category" msgstr "" -#: part/templates/part/category.html:114 part/templates/part/category.html:222 +#: part/templates/part/category.html:120 part/templates/part/category.html:228 #: part/templates/part/category_sidebar.html:7 msgid "Subcategories" msgstr "" -#: part/templates/part/category.html:119 +#: part/templates/part/category.html:125 msgid "Parts (Including subcategories)" msgstr "" -#: part/templates/part/category.html:157 +#: part/templates/part/category.html:163 msgid "Create new part" msgstr "" -#: part/templates/part/category.html:158 templates/js/translated/bom.js:367 +#: part/templates/part/category.html:164 templates/js/translated/bom.js:367 msgid "New Part" msgstr "" -#: part/templates/part/category.html:168 part/templates/part/detail.html:363 +#: part/templates/part/category.html:174 part/templates/part/detail.html:363 #: part/templates/part/detail.html:394 msgid "Options" msgstr "" -#: part/templates/part/category.html:172 +#: part/templates/part/category.html:178 msgid "Set category" msgstr "" -#: part/templates/part/category.html:173 +#: part/templates/part/category.html:179 msgid "Set Category" msgstr "" -#: part/templates/part/category.html:180 part/templates/part/category.html:181 +#: part/templates/part/category.html:186 part/templates/part/category.html:187 msgid "Print Labels" msgstr "" -#: part/templates/part/category.html:206 +#: part/templates/part/category.html:212 msgid "Part Parameters" msgstr "" -#: part/templates/part/category.html:320 +#: part/templates/part/category.html:327 msgid "Create Part Category" msgstr "" -#: part/templates/part/category.html:340 +#: part/templates/part/category.html:347 msgid "Create Part" msgstr "" -#: part/templates/part/category.html:343 +#: part/templates/part/category.html:350 msgid "Create another part after this one" msgstr "" -#: part/templates/part/category.html:344 +#: part/templates/part/category.html:351 msgid "Part created successfully" msgstr "" @@ -4955,7 +4987,7 @@ msgstr "" msgid "Import Parts" msgstr "" -#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:375 +#: part/templates/part/copy_part.html:9 templates/js/translated/part.js:379 msgid "Duplicate Part" msgstr "" @@ -5177,19 +5209,19 @@ msgstr "" #: part/templates/part/part_base.html:43 #: stock/templates/stock/item_base.html:41 -#: stock/templates/stock/location.html:43 +#: stock/templates/stock/location.html:48 msgid "Barcode actions" msgstr "" #: part/templates/part/part_base.html:46 #: stock/templates/stock/item_base.html:45 -#: stock/templates/stock/location.html:45 templates/qr_button.html:1 +#: stock/templates/stock/location.html:50 templates/qr_button.html:1 msgid "Show QR Code" msgstr "" #: part/templates/part/part_base.html:49 #: stock/templates/stock/item_base.html:63 -#: stock/templates/stock/location.html:47 +#: stock/templates/stock/location.html:52 msgid "Print Label" msgstr "" @@ -5199,7 +5231,7 @@ msgstr "" #: part/templates/part/part_base.html:60 #: stock/templates/stock/item_base.html:116 -#: stock/templates/stock/location.html:56 +#: stock/templates/stock/location.html:61 msgid "Stock actions" msgstr "" @@ -5260,7 +5292,7 @@ msgstr "" #: templates/js/translated/company.js:624 #: templates/js/translated/company.js:884 #: templates/js/translated/model_renderers.js:204 -#: templates/js/translated/part.js:650 templates/js/translated/part.js:727 +#: templates/js/translated/part.js:654 templates/js/translated/part.js:731 msgid "Inactive" msgstr "" @@ -5294,9 +5326,9 @@ msgstr "" msgid "Can Build" msgstr "" -#: part/templates/part/part_base.html:238 templates/js/translated/part.js:589 -#: templates/js/translated/part.js:609 templates/js/translated/part.js:1302 -#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490 +#: part/templates/part/part_base.html:238 templates/js/translated/part.js:593 +#: templates/js/translated/part.js:613 templates/js/translated/part.js:1306 +#: templates/js/translated/part.js:1490 msgid "Building" msgstr "" @@ -5469,8 +5501,8 @@ msgstr "" msgid "No sale pice history available for this part." msgstr "" -#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:612 -#: templates/js/translated/part.js:1290 templates/js/translated/part.js:1494 +#: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616 +#: templates/js/translated/part.js:1294 msgid "No Stock" msgstr "" @@ -5635,51 +5667,55 @@ msgstr "" msgid "Allow sending of emails for event notifications" msgstr "" -#: plugin/models.py:32 +#: plugin/models.py:33 msgid "Plugin Metadata" msgstr "" -#: plugin/models.py:33 +#: plugin/models.py:34 msgid "JSON metadata field, for use by external plugins" msgstr "" -#: plugin/models.py:79 +#: plugin/models.py:80 msgid "Plugin Configuration" msgstr "" -#: plugin/models.py:80 +#: plugin/models.py:81 msgid "Plugin Configurations" msgstr "" -#: plugin/models.py:85 +#: plugin/models.py:86 msgid "Key" msgstr "" -#: plugin/models.py:86 +#: plugin/models.py:87 msgid "Key of plugin" msgstr "" -#: plugin/models.py:94 +#: plugin/models.py:95 msgid "PluginName of the plugin" msgstr "" -#: plugin/models.py:100 +#: plugin/models.py:101 msgid "Is the plugin active" msgstr "" -#: plugin/models.py:168 +#: plugin/models.py:158 +msgid "Sample plugin" +msgstr "" + +#: plugin/models.py:186 msgid "Plugin" msgstr "" -#: plugin/models.py:231 +#: plugin/models.py:249 msgid "Method" msgstr "" -#: plugin/plugin.py:228 +#: plugin/plugin.py:251 msgid "No author found" msgstr "" -#: plugin/plugin.py:240 +#: plugin/plugin.py:263 msgid "No date found" msgstr "" @@ -5857,12 +5893,12 @@ msgid "Stock Item Test Report" msgstr "" #: report/templates/report/inventree_test_report_base.html:79 -#: stock/models.py:641 stock/templates/stock/item_base.html:322 +#: stock/models.py:648 stock/templates/stock/item_base.html:322 #: templates/js/translated/build.js:424 templates/js/translated/build.js:576 #: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673 #: templates/js/translated/model_renderers.js:118 #: templates/js/translated/order.js:118 templates/js/translated/order.js:3297 -#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:486 +#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490 msgid "Serial Number" msgstr "" @@ -5871,19 +5907,19 @@ msgid "Test Results" msgstr "" #: report/templates/report/inventree_test_report_base.html:93 -#: stock/models.py:2076 +#: stock/models.py:2083 msgid "Test" msgstr "" #: report/templates/report/inventree_test_report_base.html:94 -#: stock/models.py:2082 +#: stock/models.py:2089 msgid "Result" msgstr "" #: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:51 +#: templates/InvenTree/settings/plugin.html:53 #: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2459 +#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468 msgid "Date" msgstr "" @@ -5901,8 +5937,8 @@ msgid "Installed Items" msgstr "" #: report/templates/report/inventree_test_report_base.html:137 -#: templates/js/translated/stock.js:606 templates/js/translated/stock.js:776 -#: templates/js/translated/stock.js:2708 +#: templates/js/translated/stock.js:610 templates/js/translated/stock.js:780 +#: templates/js/translated/stock.js:2717 msgid "Serial" msgstr "" @@ -5918,241 +5954,241 @@ msgstr "" msgid "Serial numbers cannot be supplied for a non-trackable part" msgstr "" -#: stock/models.py:82 stock/models.py:732 +#: stock/models.py:89 stock/models.py:739 #: stock/templates/stock/item_base.html:252 msgid "Owner" msgstr "" -#: stock/models.py:83 stock/models.py:733 +#: stock/models.py:90 stock/models.py:740 msgid "Select Owner" msgstr "" -#: stock/models.py:435 +#: stock/models.py:442 msgid "StockItem with this serial number already exists" msgstr "" -#: stock/models.py:467 stock/serializers.py:95 +#: stock/models.py:474 stock/serializers.py:95 msgid "Stock item cannot be created for virtual parts" msgstr "" -#: stock/models.py:484 +#: stock/models.py:491 #, python-brace-format msgid "Part type ('{pf}') must be {pe}" msgstr "" -#: stock/models.py:494 stock/models.py:503 +#: stock/models.py:501 stock/models.py:510 msgid "Quantity must be 1 for item with a serial number" msgstr "" -#: stock/models.py:495 +#: stock/models.py:502 msgid "Serial number cannot be set if quantity greater than 1" msgstr "" -#: stock/models.py:517 +#: stock/models.py:524 msgid "Item cannot belong to itself" msgstr "" -#: stock/models.py:523 +#: stock/models.py:530 msgid "Item must have a build reference if is_building=True" msgstr "" -#: stock/models.py:537 +#: stock/models.py:544 msgid "Build reference does not point to the same part object" msgstr "" -#: stock/models.py:583 +#: stock/models.py:590 msgid "Parent Stock Item" msgstr "" -#: stock/models.py:593 +#: stock/models.py:600 msgid "Base part" msgstr "" -#: stock/models.py:601 +#: stock/models.py:608 msgid "Select a matching supplier part for this stock item" msgstr "" -#: stock/models.py:608 stock/templates/stock/location.html:17 +#: stock/models.py:615 stock/templates/stock/location.html:17 #: stock/templates/stock/stock_app_base.html:8 msgid "Stock Location" msgstr "" -#: stock/models.py:611 +#: stock/models.py:618 msgid "Where is this stock item located?" msgstr "" -#: stock/models.py:618 +#: stock/models.py:625 msgid "Packaging this stock item is stored in" msgstr "" -#: stock/models.py:624 stock/templates/stock/item_base.html:361 +#: stock/models.py:631 stock/templates/stock/item_base.html:361 msgid "Installed In" msgstr "" -#: stock/models.py:627 +#: stock/models.py:634 msgid "Is this item installed in another item?" msgstr "" -#: stock/models.py:643 +#: stock/models.py:650 msgid "Serial number for this item" msgstr "" -#: stock/models.py:657 +#: stock/models.py:664 msgid "Batch code for this stock item" msgstr "" -#: stock/models.py:662 +#: stock/models.py:669 msgid "Stock Quantity" msgstr "" -#: stock/models.py:671 +#: stock/models.py:678 msgid "Source Build" msgstr "" -#: stock/models.py:673 +#: stock/models.py:680 msgid "Build for this stock item" msgstr "" -#: stock/models.py:684 +#: stock/models.py:691 msgid "Source Purchase Order" msgstr "" -#: stock/models.py:687 +#: stock/models.py:694 msgid "Purchase order for this stock item" msgstr "" -#: stock/models.py:693 +#: stock/models.py:700 msgid "Destination Sales Order" msgstr "" -#: stock/models.py:699 stock/templates/stock/item_base.html:429 -#: templates/js/translated/stock.js:1879 +#: stock/models.py:706 stock/templates/stock/item_base.html:429 +#: templates/js/translated/stock.js:1883 msgid "Expiry Date" msgstr "" -#: stock/models.py:700 +#: stock/models.py:707 msgid "Expiry date for stock item. Stock will be considered expired after this date" msgstr "" -#: stock/models.py:713 +#: stock/models.py:720 msgid "Delete on deplete" msgstr "" -#: stock/models.py:713 +#: stock/models.py:720 msgid "Delete this Stock Item when stock is depleted" msgstr "" -#: stock/models.py:720 stock/templates/stock/item.html:132 +#: stock/models.py:727 stock/templates/stock/item.html:132 msgid "Stock Item Notes" msgstr "" -#: stock/models.py:728 +#: stock/models.py:735 msgid "Single unit purchase price at time of purchase" msgstr "" -#: stock/models.py:756 +#: stock/models.py:763 msgid "Converted to part" msgstr "" -#: stock/models.py:1235 +#: stock/models.py:1242 msgid "Part is not set as trackable" msgstr "" -#: stock/models.py:1241 +#: stock/models.py:1248 msgid "Quantity must be integer" msgstr "" -#: stock/models.py:1247 +#: stock/models.py:1254 #, python-brace-format msgid "Quantity must not exceed available stock quantity ({n})" msgstr "" -#: stock/models.py:1250 +#: stock/models.py:1257 msgid "Serial numbers must be a list of integers" msgstr "" -#: stock/models.py:1253 +#: stock/models.py:1260 msgid "Quantity does not match serial numbers" msgstr "" -#: stock/models.py:1260 +#: stock/models.py:1267 #, python-brace-format msgid "Serial numbers already exist: {exists}" msgstr "" -#: stock/models.py:1330 +#: stock/models.py:1337 msgid "Stock item has been assigned to a sales order" msgstr "" -#: stock/models.py:1333 +#: stock/models.py:1340 msgid "Stock item is installed in another item" msgstr "" -#: stock/models.py:1336 +#: stock/models.py:1343 msgid "Stock item contains other items" msgstr "" -#: stock/models.py:1339 +#: stock/models.py:1346 msgid "Stock item has been assigned to a customer" msgstr "" -#: stock/models.py:1342 +#: stock/models.py:1349 msgid "Stock item is currently in production" msgstr "" -#: stock/models.py:1345 +#: stock/models.py:1352 msgid "Serialized stock cannot be merged" msgstr "" -#: stock/models.py:1352 stock/serializers.py:959 +#: stock/models.py:1359 stock/serializers.py:961 msgid "Duplicate stock items" msgstr "" -#: stock/models.py:1356 +#: stock/models.py:1363 msgid "Stock items must refer to the same part" msgstr "" -#: stock/models.py:1360 +#: stock/models.py:1367 msgid "Stock items must refer to the same supplier part" msgstr "" -#: stock/models.py:1364 +#: stock/models.py:1371 msgid "Stock status codes must match" msgstr "" -#: stock/models.py:1533 +#: stock/models.py:1540 msgid "StockItem cannot be moved as it is not in stock" msgstr "" -#: stock/models.py:1994 +#: stock/models.py:2001 msgid "Entry notes" msgstr "" -#: stock/models.py:2052 +#: stock/models.py:2059 msgid "Value must be provided for this test" msgstr "" -#: stock/models.py:2058 +#: stock/models.py:2065 msgid "Attachment must be uploaded for this test" msgstr "" -#: stock/models.py:2077 +#: stock/models.py:2084 msgid "Test name" msgstr "" -#: stock/models.py:2083 +#: stock/models.py:2090 msgid "Test result" msgstr "" -#: stock/models.py:2089 +#: stock/models.py:2096 msgid "Test output value" msgstr "" -#: stock/models.py:2096 +#: stock/models.py:2103 msgid "Test result attachment" msgstr "" -#: stock/models.py:2102 +#: stock/models.py:2109 msgid "Test notes" msgstr "" @@ -6177,7 +6213,7 @@ msgstr "" msgid "Enter serial numbers for new items" msgstr "" -#: stock/serializers.py:323 stock/serializers.py:916 stock/serializers.py:1149 +#: stock/serializers.py:323 stock/serializers.py:918 stock/serializers.py:1151 msgid "Destination stock location" msgstr "" @@ -6225,63 +6261,63 @@ msgstr "" msgid "Destination location for returned item" msgstr "" -#: stock/serializers.py:771 +#: stock/serializers.py:773 msgid "Part must be salable" msgstr "" -#: stock/serializers.py:775 +#: stock/serializers.py:777 msgid "Item is allocated to a sales order" msgstr "" -#: stock/serializers.py:779 +#: stock/serializers.py:781 msgid "Item is allocated to a build order" msgstr "" -#: stock/serializers.py:810 +#: stock/serializers.py:812 msgid "Customer to assign stock items" msgstr "" -#: stock/serializers.py:816 +#: stock/serializers.py:818 msgid "Selected company is not a customer" msgstr "" -#: stock/serializers.py:824 +#: stock/serializers.py:826 msgid "Stock assignment notes" msgstr "" -#: stock/serializers.py:834 stock/serializers.py:1065 +#: stock/serializers.py:836 stock/serializers.py:1067 msgid "A list of stock items must be provided" msgstr "" -#: stock/serializers.py:923 +#: stock/serializers.py:925 msgid "Stock merging notes" msgstr "" -#: stock/serializers.py:928 +#: stock/serializers.py:930 msgid "Allow mismatched suppliers" msgstr "" -#: stock/serializers.py:929 +#: stock/serializers.py:931 msgid "Allow stock items with different supplier parts to be merged" msgstr "" -#: stock/serializers.py:934 +#: stock/serializers.py:936 msgid "Allow mismatched status" msgstr "" -#: stock/serializers.py:935 +#: stock/serializers.py:937 msgid "Allow stock items with different status codes to be merged" msgstr "" -#: stock/serializers.py:945 +#: stock/serializers.py:947 msgid "At least two stock items must be provided" msgstr "" -#: stock/serializers.py:1027 +#: stock/serializers.py:1029 msgid "StockItem primary key value" msgstr "" -#: stock/serializers.py:1055 +#: stock/serializers.py:1057 msgid "Stock transaction notes" msgstr "" @@ -6318,7 +6354,7 @@ msgstr "" msgid "Installed Stock Items" msgstr "" -#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2852 +#: stock/templates/stock/item.html:152 templates/js/translated/stock.js:2861 msgid "Install Stock Item" msgstr "" @@ -6326,7 +6362,7 @@ msgstr "" msgid "Delete all test results for this stock item" msgstr "" -#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1518 +#: stock/templates/stock/item.html:327 templates/js/translated/stock.js:1522 msgid "Add Test Result" msgstr "" @@ -6357,7 +6393,7 @@ msgid "Stock adjustment actions" msgstr "" #: stock/templates/stock/item_base.html:80 -#: stock/templates/stock/location.html:63 templates/stock_table.html:47 +#: stock/templates/stock/location.html:68 templates/stock_table.html:47 msgid "Count stock" msgstr "" @@ -6374,7 +6410,7 @@ msgid "Serialize stock" msgstr "" #: stock/templates/stock/item_base.html:93 -#: stock/templates/stock/location.html:69 templates/stock_table.html:48 +#: stock/templates/stock/location.html:74 templates/stock_table.html:48 msgid "Transfer stock" msgstr "" @@ -6435,7 +6471,7 @@ msgid "You are not in the list of owners of this item. This stock item cannot be msgstr "" #: stock/templates/stock/item_base.html:257 -#: stock/templates/stock/location.html:127 +#: stock/templates/stock/location.html:132 msgid "Read only" msgstr "" @@ -6513,7 +6549,7 @@ msgid "Stale" msgstr "" #: stock/templates/stock/item_base.html:442 -#: templates/js/translated/company.js:985 templates/js/translated/stock.js:1895 +#: templates/js/translated/company.js:985 templates/js/translated/stock.js:1899 msgid "Last Updated" msgstr "" @@ -6557,58 +6593,58 @@ msgstr "" msgid "Select quantity to serialize, and unique serial numbers." msgstr "" -#: stock/templates/stock/location.html:33 +#: stock/templates/stock/location.html:38 msgid "Locate stock location" msgstr "" -#: stock/templates/stock/location.html:49 +#: stock/templates/stock/location.html:54 msgid "Check-in Items" msgstr "" -#: stock/templates/stock/location.html:77 +#: stock/templates/stock/location.html:82 msgid "Location actions" msgstr "" -#: stock/templates/stock/location.html:79 +#: stock/templates/stock/location.html:84 msgid "Edit location" msgstr "" -#: stock/templates/stock/location.html:81 +#: stock/templates/stock/location.html:86 msgid "Delete location" msgstr "" -#: stock/templates/stock/location.html:90 +#: stock/templates/stock/location.html:95 msgid "Create new stock location" msgstr "" -#: stock/templates/stock/location.html:91 +#: stock/templates/stock/location.html:96 msgid "New Location" msgstr "" -#: stock/templates/stock/location.html:109 -#: stock/templates/stock/location.html:115 +#: stock/templates/stock/location.html:114 +#: stock/templates/stock/location.html:120 msgid "Location Path" msgstr "" -#: stock/templates/stock/location.html:116 +#: stock/templates/stock/location.html:121 msgid "Top level stock location" msgstr "" -#: stock/templates/stock/location.html:122 +#: stock/templates/stock/location.html:127 msgid "Location Owner" msgstr "" -#: stock/templates/stock/location.html:126 +#: stock/templates/stock/location.html:131 msgid "You are not in the list of owners of this location. This stock location cannot be edited." msgstr "" -#: stock/templates/stock/location.html:142 -#: stock/templates/stock/location.html:189 +#: stock/templates/stock/location.html:147 +#: stock/templates/stock/location.html:194 #: stock/templates/stock/location_sidebar.html:5 msgid "Sublocations" msgstr "" -#: stock/templates/stock/location.html:156 templates/InvenTree/search.html:165 +#: stock/templates/stock/location.html:161 templates/InvenTree/search.html:165 #: templates/js/translated/search.js:238 users/models.py:39 msgid "Stock Locations" msgstr "" @@ -6880,15 +6916,15 @@ msgstr "" msgid "Part Settings" msgstr "" -#: templates/InvenTree/settings/part.html:44 +#: templates/InvenTree/settings/part.html:46 msgid "Part Import" msgstr "" -#: templates/InvenTree/settings/part.html:48 +#: templates/InvenTree/settings/part.html:50 msgid "Import Part" msgstr "" -#: templates/InvenTree/settings/part.html:62 +#: templates/InvenTree/settings/part.html:64 msgid "Part Parameter Templates" msgstr "" @@ -6900,47 +6936,47 @@ msgstr "" msgid "Changing the settings below require you to immediately restart the server. Do not change this while under active usage." msgstr "" -#: templates/InvenTree/settings/plugin.html:34 +#: templates/InvenTree/settings/plugin.html:36 msgid "Plugins" msgstr "" -#: templates/InvenTree/settings/plugin.html:39 +#: templates/InvenTree/settings/plugin.html:41 #: templates/js/translated/plugin.js:16 msgid "Install Plugin" msgstr "" -#: templates/InvenTree/settings/plugin.html:48 templates/navbar.html:137 +#: templates/InvenTree/settings/plugin.html:50 templates/navbar.html:137 #: users/models.py:36 msgid "Admin" msgstr "" -#: templates/InvenTree/settings/plugin.html:50 +#: templates/InvenTree/settings/plugin.html:52 #: templates/InvenTree/settings/plugin_settings.html:28 msgid "Author" msgstr "" -#: templates/InvenTree/settings/plugin.html:52 +#: templates/InvenTree/settings/plugin.html:54 #: templates/InvenTree/settings/plugin_settings.html:43 msgid "Version" msgstr "" -#: templates/InvenTree/settings/plugin.html:74 +#: templates/InvenTree/settings/plugin.html:76 msgid "Sample" msgstr "" -#: templates/InvenTree/settings/plugin.html:99 +#: templates/InvenTree/settings/plugin.html:101 msgid "Inactive plugins" msgstr "" -#: templates/InvenTree/settings/plugin.html:122 +#: templates/InvenTree/settings/plugin.html:124 msgid "Plugin Error Stack" msgstr "" -#: templates/InvenTree/settings/plugin.html:131 +#: templates/InvenTree/settings/plugin.html:133 msgid "Stage" msgstr "" -#: templates/InvenTree/settings/plugin.html:133 +#: templates/InvenTree/settings/plugin.html:135 #: templates/js/translated/notification.js:75 msgid "Message" msgstr "" @@ -7004,11 +7040,11 @@ msgstr "" msgid "Commit Message" msgstr "" -#: templates/InvenTree/settings/plugin_settings.html:117 +#: templates/InvenTree/settings/plugin_settings.html:120 msgid "Sign Status" msgstr "" -#: templates/InvenTree/settings/plugin_settings.html:122 +#: templates/InvenTree/settings/plugin_settings.html:125 msgid "Sign Key" msgstr "" @@ -7835,7 +7871,7 @@ msgstr "" msgid "Unlink" msgstr "" -#: templates/js/translated/barcode.js:456 templates/js/translated/stock.js:1050 +#: templates/js/translated/barcode.js:456 templates/js/translated/stock.js:1054 msgid "Remove stock item" msgstr "" @@ -8008,7 +8044,7 @@ msgid "Includes variant and substitute stock" msgstr "" #: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822 -#: templates/js/translated/part.js:759 +#: templates/js/translated/part.js:763 msgid "Includes variant stock" msgstr "" @@ -8105,12 +8141,12 @@ msgid "Complete Build Order" msgstr "" #: templates/js/translated/build.js:263 templates/js/translated/stock.js:92 -#: templates/js/translated/stock.js:210 +#: templates/js/translated/stock.js:214 msgid "Next available serial number" msgstr "" #: templates/js/translated/build.js:265 templates/js/translated/stock.js:94 -#: templates/js/translated/stock.js:212 +#: templates/js/translated/stock.js:216 msgid "Latest serial number" msgstr "" @@ -8323,9 +8359,9 @@ msgstr "" msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1383 -#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1682 -#: templates/js/translated/stock.js:2382 +#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387 +#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1686 +#: templates/js/translated/stock.js:2386 msgid "Select" msgstr "" @@ -8337,7 +8373,7 @@ msgstr "" msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2638 +#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647 msgid "No user information" msgstr "" @@ -8410,34 +8446,34 @@ msgid "No manufacturer parts found" msgstr "" #: templates/js/translated/company.js:616 -#: templates/js/translated/company.js:876 templates/js/translated/part.js:634 -#: templates/js/translated/part.js:719 +#: templates/js/translated/company.js:876 templates/js/translated/part.js:638 +#: templates/js/translated/part.js:723 msgid "Template part" msgstr "" #: templates/js/translated/company.js:620 -#: templates/js/translated/company.js:880 templates/js/translated/part.js:638 -#: templates/js/translated/part.js:723 +#: templates/js/translated/company.js:880 templates/js/translated/part.js:642 +#: templates/js/translated/part.js:727 msgid "Assembled part" msgstr "" -#: templates/js/translated/company.js:748 templates/js/translated/part.js:826 +#: templates/js/translated/company.js:748 templates/js/translated/part.js:830 msgid "No parameters found" msgstr "" -#: templates/js/translated/company.js:785 templates/js/translated/part.js:868 +#: templates/js/translated/company.js:785 templates/js/translated/part.js:872 msgid "Edit parameter" msgstr "" -#: templates/js/translated/company.js:786 templates/js/translated/part.js:869 +#: templates/js/translated/company.js:786 templates/js/translated/part.js:873 msgid "Delete parameter" msgstr "" -#: templates/js/translated/company.js:805 templates/js/translated/part.js:886 +#: templates/js/translated/company.js:805 templates/js/translated/part.js:890 msgid "Edit Parameter" msgstr "" -#: templates/js/translated/company.js:816 templates/js/translated/part.js:898 +#: templates/js/translated/company.js:816 templates/js/translated/part.js:902 msgid "Delete Parameter" msgstr "" @@ -8562,7 +8598,7 @@ msgid "Labels sent to printer" msgstr "" #: templates/js/translated/label.js:60 templates/js/translated/report.js:118 -#: templates/js/translated/stock.js:1074 +#: templates/js/translated/stock.js:1078 msgid "Select Stock Items" msgstr "" @@ -8872,7 +8908,7 @@ msgstr "" msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2140 +#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144 msgid "Stock Status" msgstr "" @@ -8896,7 +8932,7 @@ msgstr "" msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:1672 templates/js/translated/part.js:939 +#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943 msgid "No purchase orders found" msgstr "" @@ -8931,7 +8967,7 @@ msgstr "" #: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203 #: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050 -#: templates/js/translated/part.js:2126 templates/js/translated/part.js:2479 +#: templates/js/translated/part.js:2131 templates/js/translated/part.js:2484 msgid "Unit Price" msgstr "" @@ -8941,11 +8977,11 @@ msgid "Total Price" msgstr "" #: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600 -#: templates/js/translated/part.js:1046 +#: templates/js/translated/part.js:1050 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1092 +#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096 msgid "Receive line item" msgstr "" @@ -9066,7 +9102,7 @@ msgid "Delete Stock Allocation" msgstr "" #: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398 -#: templates/js/translated/stock.js:1598 +#: templates/js/translated/stock.js:1602 msgid "Shipped to customer" msgstr "" @@ -9190,149 +9226,157 @@ msgstr "" msgid "Parent part category" msgstr "" -#: templates/js/translated/part.js:318 +#: templates/js/translated/part.js:306 templates/js/translated/stock.js:118 +msgid "Icon (optional) - Explore all available icons on" +msgstr "" + +#: templates/js/translated/part.js:322 msgid "Edit Part Category" msgstr "" -#: templates/js/translated/part.js:331 +#: templates/js/translated/part.js:335 msgid "Are you sure you want to delete this part category?" msgstr "" -#: templates/js/translated/part.js:333 +#: templates/js/translated/part.js:337 msgid "Any child categories will be moved to the parent of this category" msgstr "" -#: templates/js/translated/part.js:334 +#: templates/js/translated/part.js:338 msgid "Any parts in this category will be moved to the parent of this category" msgstr "" -#: templates/js/translated/part.js:339 +#: templates/js/translated/part.js:343 msgid "Delete Part Category" msgstr "" -#: templates/js/translated/part.js:365 +#: templates/js/translated/part.js:369 msgid "Edit Part" msgstr "" -#: templates/js/translated/part.js:367 +#: templates/js/translated/part.js:371 msgid "Part edited" msgstr "" -#: templates/js/translated/part.js:378 +#: templates/js/translated/part.js:382 msgid "Create Part Variant" msgstr "" -#: templates/js/translated/part.js:430 +#: templates/js/translated/part.js:434 msgid "Active Part" msgstr "" -#: templates/js/translated/part.js:431 +#: templates/js/translated/part.js:435 msgid "Part cannot be deleted as it is currently active" msgstr "" -#: templates/js/translated/part.js:445 +#: templates/js/translated/part.js:449 msgid "Deleting this part cannot be reversed" msgstr "" -#: templates/js/translated/part.js:447 +#: templates/js/translated/part.js:451 msgid "Any stock items for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:448 +#: templates/js/translated/part.js:452 msgid "This part will be removed from any Bills of Material" msgstr "" -#: templates/js/translated/part.js:449 +#: templates/js/translated/part.js:453 msgid "All manufacturer and supplier information for this part will be deleted" msgstr "" -#: templates/js/translated/part.js:456 +#: templates/js/translated/part.js:460 msgid "Delete Part" msgstr "" -#: templates/js/translated/part.js:492 +#: templates/js/translated/part.js:496 msgid "You are subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:494 +#: templates/js/translated/part.js:498 msgid "You have subscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:499 +#: templates/js/translated/part.js:503 msgid "Subscribe to notifications for this item" msgstr "" -#: templates/js/translated/part.js:501 +#: templates/js/translated/part.js:505 msgid "You have unsubscribed to notifications for this item" msgstr "" -#: templates/js/translated/part.js:518 +#: templates/js/translated/part.js:522 msgid "Validating the BOM will mark each line item as valid" msgstr "" -#: templates/js/translated/part.js:528 +#: templates/js/translated/part.js:532 msgid "Validate Bill of Materials" msgstr "" -#: templates/js/translated/part.js:531 +#: templates/js/translated/part.js:535 msgid "Validated Bill of Materials" msgstr "" -#: templates/js/translated/part.js:556 +#: templates/js/translated/part.js:560 msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:582 templates/js/translated/part.js:1466 +#: templates/js/translated/part.js:586 templates/js/translated/part.js:1478 #: templates/js/translated/table_filters.js:468 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:592 templates/js/translated/part.js:1478 +#: templates/js/translated/part.js:596 msgid "No stock available" msgstr "" -#: templates/js/translated/part.js:626 templates/js/translated/part.js:711 +#: templates/js/translated/part.js:630 templates/js/translated/part.js:715 msgid "Trackable part" msgstr "" -#: templates/js/translated/part.js:630 templates/js/translated/part.js:715 +#: templates/js/translated/part.js:634 templates/js/translated/part.js:719 msgid "Virtual part" msgstr "" -#: templates/js/translated/part.js:642 +#: templates/js/translated/part.js:646 msgid "Subscribed part" msgstr "" -#: templates/js/translated/part.js:646 +#: templates/js/translated/part.js:650 msgid "Salable part" msgstr "" -#: templates/js/translated/part.js:774 +#: templates/js/translated/part.js:778 msgid "No variants found" msgstr "" -#: templates/js/translated/part.js:1162 +#: templates/js/translated/part.js:1166 msgid "Delete part relationship" msgstr "" -#: templates/js/translated/part.js:1186 +#: templates/js/translated/part.js:1190 msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:1253 templates/js/translated/part.js:1549 +#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1549 msgid "No parts found" msgstr "" -#: templates/js/translated/part.js:1292 +#: templates/js/translated/part.js:1296 msgid "Not available" msgstr "" -#: templates/js/translated/part.js:1443 +#: templates/js/translated/part.js:1447 msgid "No category" msgstr "" +#: templates/js/translated/part.js:1476 +msgid "No stock" +msgstr "" + #: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816 -#: templates/js/translated/stock.js:2343 +#: templates/js/translated/stock.js:2347 msgid "Display as list" msgstr "" @@ -9356,7 +9400,7 @@ msgstr "" msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2362 +#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2366 msgid "Display as tree" msgstr "" @@ -9364,67 +9408,67 @@ msgstr "" msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:1925 +#: templates/js/translated/part.js:1930 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:1983 +#: templates/js/translated/part.js:1988 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2034 templates/js/translated/stock.js:1295 +#: templates/js/translated/part.js:2039 templates/js/translated/stock.js:1299 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:2035 templates/js/translated/stock.js:1296 -#: templates/js/translated/stock.js:1556 +#: templates/js/translated/part.js:2040 templates/js/translated/stock.js:1300 +#: templates/js/translated/stock.js:1560 msgid "Delete test result" msgstr "" -#: templates/js/translated/part.js:2041 +#: templates/js/translated/part.js:2046 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2063 +#: templates/js/translated/part.js:2068 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2077 +#: templates/js/translated/part.js:2082 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2102 +#: templates/js/translated/part.js:2107 #, python-brace-format msgid "No ${human_name} information found" msgstr "" -#: templates/js/translated/part.js:2159 +#: templates/js/translated/part.js:2164 #, python-brace-format msgid "Edit ${human_name}" msgstr "" -#: templates/js/translated/part.js:2160 +#: templates/js/translated/part.js:2165 #, python-brace-format msgid "Delete ${human_name}" msgstr "" -#: templates/js/translated/part.js:2274 +#: templates/js/translated/part.js:2279 msgid "Current Stock" msgstr "" -#: templates/js/translated/part.js:2307 +#: templates/js/translated/part.js:2312 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2333 +#: templates/js/translated/part.js:2338 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2403 +#: templates/js/translated/part.js:2408 msgid "Single Price" msgstr "" -#: templates/js/translated/part.js:2422 +#: templates/js/translated/part.js:2427 msgid "Single Price Difference" msgstr "" @@ -9518,376 +9562,376 @@ msgstr "" msgid "Parent stock location" msgstr "" -#: templates/js/translated/stock.js:140 +#: templates/js/translated/stock.js:144 msgid "Edit Stock Location" msgstr "" -#: templates/js/translated/stock.js:155 +#: templates/js/translated/stock.js:159 msgid "New Stock Location" msgstr "" -#: templates/js/translated/stock.js:169 +#: templates/js/translated/stock.js:173 msgid "Are you sure you want to delete this stock location?" msgstr "" -#: templates/js/translated/stock.js:171 +#: templates/js/translated/stock.js:175 msgid "Any child locations will be moved to the parent of this location" msgstr "" -#: templates/js/translated/stock.js:172 +#: templates/js/translated/stock.js:176 msgid "Any stock items in this location will be moved to the parent of this location" msgstr "" -#: templates/js/translated/stock.js:178 +#: templates/js/translated/stock.js:182 msgid "Delete Stock Location" msgstr "" -#: templates/js/translated/stock.js:223 +#: templates/js/translated/stock.js:227 msgid "This part cannot be serialized" msgstr "" -#: templates/js/translated/stock.js:262 +#: templates/js/translated/stock.js:266 msgid "Enter initial quantity for this stock item" msgstr "" -#: templates/js/translated/stock.js:268 +#: templates/js/translated/stock.js:272 msgid "Enter serial numbers for new stock (or leave blank)" msgstr "" -#: templates/js/translated/stock.js:333 +#: templates/js/translated/stock.js:337 msgid "Stock item duplicated" msgstr "" -#: templates/js/translated/stock.js:353 +#: templates/js/translated/stock.js:357 msgid "Duplicate Stock Item" msgstr "" -#: templates/js/translated/stock.js:369 +#: templates/js/translated/stock.js:373 msgid "Are you sure you want to delete this stock item?" msgstr "" -#: templates/js/translated/stock.js:374 +#: templates/js/translated/stock.js:378 msgid "Delete Stock Item" msgstr "" -#: templates/js/translated/stock.js:395 +#: templates/js/translated/stock.js:399 msgid "Edit Stock Item" msgstr "" -#: templates/js/translated/stock.js:445 +#: templates/js/translated/stock.js:449 msgid "Created new stock item" msgstr "" -#: templates/js/translated/stock.js:458 +#: templates/js/translated/stock.js:462 msgid "Created multiple stock items" msgstr "" -#: templates/js/translated/stock.js:483 +#: templates/js/translated/stock.js:487 msgid "Find Serial Number" msgstr "" -#: templates/js/translated/stock.js:487 templates/js/translated/stock.js:488 +#: templates/js/translated/stock.js:491 templates/js/translated/stock.js:492 msgid "Enter serial number" msgstr "" -#: templates/js/translated/stock.js:504 +#: templates/js/translated/stock.js:508 msgid "Enter a serial number" msgstr "" -#: templates/js/translated/stock.js:524 +#: templates/js/translated/stock.js:528 msgid "No matching serial number" msgstr "" -#: templates/js/translated/stock.js:533 +#: templates/js/translated/stock.js:537 msgid "More than one matching result found" msgstr "" -#: templates/js/translated/stock.js:656 +#: templates/js/translated/stock.js:660 msgid "Confirm stock assignment" msgstr "" -#: templates/js/translated/stock.js:657 +#: templates/js/translated/stock.js:661 msgid "Assign Stock to Customer" msgstr "" -#: templates/js/translated/stock.js:734 +#: templates/js/translated/stock.js:738 msgid "Warning: Merge operation cannot be reversed" msgstr "" -#: templates/js/translated/stock.js:735 +#: templates/js/translated/stock.js:739 msgid "Some information will be lost when merging stock items" msgstr "" -#: templates/js/translated/stock.js:737 +#: templates/js/translated/stock.js:741 msgid "Stock transaction history will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:738 +#: templates/js/translated/stock.js:742 msgid "Supplier part information will be deleted for merged items" msgstr "" -#: templates/js/translated/stock.js:824 +#: templates/js/translated/stock.js:828 msgid "Confirm stock item merge" msgstr "" -#: templates/js/translated/stock.js:825 +#: templates/js/translated/stock.js:829 msgid "Merge Stock Items" msgstr "" -#: templates/js/translated/stock.js:920 +#: templates/js/translated/stock.js:924 msgid "Transfer Stock" msgstr "" -#: templates/js/translated/stock.js:921 +#: templates/js/translated/stock.js:925 msgid "Move" msgstr "" -#: templates/js/translated/stock.js:927 +#: templates/js/translated/stock.js:931 msgid "Count Stock" msgstr "" -#: templates/js/translated/stock.js:928 +#: templates/js/translated/stock.js:932 msgid "Count" msgstr "" -#: templates/js/translated/stock.js:932 +#: templates/js/translated/stock.js:936 msgid "Remove Stock" msgstr "" -#: templates/js/translated/stock.js:933 +#: templates/js/translated/stock.js:937 msgid "Take" msgstr "" -#: templates/js/translated/stock.js:937 +#: templates/js/translated/stock.js:941 msgid "Add Stock" msgstr "" -#: templates/js/translated/stock.js:938 users/models.py:216 +#: templates/js/translated/stock.js:942 users/models.py:216 msgid "Add" msgstr "" -#: templates/js/translated/stock.js:942 +#: templates/js/translated/stock.js:946 msgid "Delete Stock" msgstr "" -#: templates/js/translated/stock.js:1035 +#: templates/js/translated/stock.js:1039 msgid "Quantity cannot be adjusted for serialized stock" msgstr "" -#: templates/js/translated/stock.js:1035 +#: templates/js/translated/stock.js:1039 msgid "Specify stock quantity" msgstr "" -#: templates/js/translated/stock.js:1075 +#: templates/js/translated/stock.js:1079 msgid "You must select at least one available stock item" msgstr "" -#: templates/js/translated/stock.js:1098 +#: templates/js/translated/stock.js:1102 msgid "Confirm stock adjustment" msgstr "" -#: templates/js/translated/stock.js:1234 +#: templates/js/translated/stock.js:1238 msgid "PASS" msgstr "" -#: templates/js/translated/stock.js:1236 +#: templates/js/translated/stock.js:1240 msgid "FAIL" msgstr "" -#: templates/js/translated/stock.js:1241 +#: templates/js/translated/stock.js:1245 msgid "NO RESULT" msgstr "" -#: templates/js/translated/stock.js:1288 +#: templates/js/translated/stock.js:1292 msgid "Pass test" msgstr "" -#: templates/js/translated/stock.js:1291 +#: templates/js/translated/stock.js:1295 msgid "Add test result" msgstr "" -#: templates/js/translated/stock.js:1317 +#: templates/js/translated/stock.js:1321 msgid "No test results found" msgstr "" -#: templates/js/translated/stock.js:1374 +#: templates/js/translated/stock.js:1378 msgid "Test Date" msgstr "" -#: templates/js/translated/stock.js:1539 +#: templates/js/translated/stock.js:1543 msgid "Edit Test Result" msgstr "" -#: templates/js/translated/stock.js:1561 +#: templates/js/translated/stock.js:1565 msgid "Delete Test Result" msgstr "" -#: templates/js/translated/stock.js:1590 +#: templates/js/translated/stock.js:1594 msgid "In production" msgstr "" -#: templates/js/translated/stock.js:1594 +#: templates/js/translated/stock.js:1598 msgid "Installed in Stock Item" msgstr "" -#: templates/js/translated/stock.js:1602 +#: templates/js/translated/stock.js:1606 msgid "Assigned to Sales Order" msgstr "" -#: templates/js/translated/stock.js:1608 +#: templates/js/translated/stock.js:1612 msgid "No stock location set" msgstr "" -#: templates/js/translated/stock.js:1775 +#: templates/js/translated/stock.js:1779 msgid "Stock item is in production" msgstr "" -#: templates/js/translated/stock.js:1780 +#: templates/js/translated/stock.js:1784 msgid "Stock item assigned to sales order" msgstr "" -#: templates/js/translated/stock.js:1783 +#: templates/js/translated/stock.js:1787 msgid "Stock item assigned to customer" msgstr "" -#: templates/js/translated/stock.js:1786 +#: templates/js/translated/stock.js:1790 msgid "Serialized stock item has been allocated" msgstr "" -#: templates/js/translated/stock.js:1788 +#: templates/js/translated/stock.js:1792 msgid "Stock item has been fully allocated" msgstr "" -#: templates/js/translated/stock.js:1790 +#: templates/js/translated/stock.js:1794 msgid "Stock item has been partially allocated" msgstr "" -#: templates/js/translated/stock.js:1793 +#: templates/js/translated/stock.js:1797 msgid "Stock item has been installed in another item" msgstr "" -#: templates/js/translated/stock.js:1797 +#: templates/js/translated/stock.js:1801 msgid "Stock item has expired" msgstr "" -#: templates/js/translated/stock.js:1799 +#: templates/js/translated/stock.js:1803 msgid "Stock item will expire soon" msgstr "" -#: templates/js/translated/stock.js:1806 +#: templates/js/translated/stock.js:1810 msgid "Stock item has been rejected" msgstr "" -#: templates/js/translated/stock.js:1808 +#: templates/js/translated/stock.js:1812 msgid "Stock item is lost" msgstr "" -#: templates/js/translated/stock.js:1810 +#: templates/js/translated/stock.js:1814 msgid "Stock item is destroyed" msgstr "" -#: templates/js/translated/stock.js:1814 +#: templates/js/translated/stock.js:1818 #: templates/js/translated/table_filters.js:196 msgid "Depleted" msgstr "" -#: templates/js/translated/stock.js:1865 +#: templates/js/translated/stock.js:1869 msgid "Stocktake" msgstr "" -#: templates/js/translated/stock.js:1944 +#: templates/js/translated/stock.js:1948 msgid "Supplier part not specified" msgstr "" -#: templates/js/translated/stock.js:1982 +#: templates/js/translated/stock.js:1986 msgid "No stock items matching query" msgstr "" -#: templates/js/translated/stock.js:2155 +#: templates/js/translated/stock.js:2159 msgid "Set Stock Status" msgstr "" -#: templates/js/translated/stock.js:2169 +#: templates/js/translated/stock.js:2173 msgid "Select Status Code" msgstr "" -#: templates/js/translated/stock.js:2170 +#: templates/js/translated/stock.js:2174 msgid "Status code must be selected" msgstr "" -#: templates/js/translated/stock.js:2400 +#: templates/js/translated/stock.js:2404 msgid "Load Subloactions" msgstr "" -#: templates/js/translated/stock.js:2484 +#: templates/js/translated/stock.js:2493 msgid "Details" msgstr "" -#: templates/js/translated/stock.js:2500 +#: templates/js/translated/stock.js:2509 msgid "Part information unavailable" msgstr "" -#: templates/js/translated/stock.js:2522 +#: templates/js/translated/stock.js:2531 msgid "Location no longer exists" msgstr "" -#: templates/js/translated/stock.js:2541 +#: templates/js/translated/stock.js:2550 msgid "Purchase order no longer exists" msgstr "" -#: templates/js/translated/stock.js:2560 +#: templates/js/translated/stock.js:2569 msgid "Customer no longer exists" msgstr "" -#: templates/js/translated/stock.js:2578 +#: templates/js/translated/stock.js:2587 msgid "Stock item no longer exists" msgstr "" -#: templates/js/translated/stock.js:2601 +#: templates/js/translated/stock.js:2610 msgid "Added" msgstr "" -#: templates/js/translated/stock.js:2609 +#: templates/js/translated/stock.js:2618 msgid "Removed" msgstr "" -#: templates/js/translated/stock.js:2685 +#: templates/js/translated/stock.js:2694 msgid "No installed items" msgstr "" -#: templates/js/translated/stock.js:2736 templates/js/translated/stock.js:2772 +#: templates/js/translated/stock.js:2745 templates/js/translated/stock.js:2781 msgid "Uninstall Stock Item" msgstr "" -#: templates/js/translated/stock.js:2785 +#: templates/js/translated/stock.js:2794 msgid "Select stock item to uninstall" msgstr "" -#: templates/js/translated/stock.js:2806 +#: templates/js/translated/stock.js:2815 msgid "Install another stock item into this item" msgstr "" -#: templates/js/translated/stock.js:2807 +#: templates/js/translated/stock.js:2816 msgid "Stock items can only be installed if they meet the following criteria" msgstr "" -#: templates/js/translated/stock.js:2809 +#: templates/js/translated/stock.js:2818 msgid "The Stock Item links to a Part which is the BOM for this Stock Item" msgstr "" -#: templates/js/translated/stock.js:2810 +#: templates/js/translated/stock.js:2819 msgid "The Stock Item is currently available in stock" msgstr "" -#: templates/js/translated/stock.js:2811 +#: templates/js/translated/stock.js:2820 msgid "The Stock Item is not already installed in another item" msgstr "" -#: templates/js/translated/stock.js:2812 +#: templates/js/translated/stock.js:2821 msgid "The Stock Item is tracked by either a batch code or serial number" msgstr "" -#: templates/js/translated/stock.js:2825 +#: templates/js/translated/stock.js:2834 msgid "Select part to install" msgstr "" diff --git a/InvenTree/locale/ru/LC_MESSAGES/django.po b/InvenTree/locale/ru/LC_MESSAGES/django.po index 764fb7e315..021369afa5 100644 --- a/InvenTree/locale/ru/LC_MESSAGES/django.po +++ b/InvenTree/locale/ru/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-16 11:53+0000\n" -"PO-Revision-Date: 2022-08-16 21:35\n" +"POT-Creation-Date: 2022-08-18 05:14+0000\n" +"PO-Revision-Date: 2022-08-18 21:39\n" "Last-Translator: \n" "Language-Team: Russian\n" "Language: ru_RU\n" @@ -40,10 +40,10 @@ msgstr "Введите дату" #: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825 #: stock/serializers.py:924 stock/serializers.py:1056 #: stock/templates/stock/stock_sidebar.html:25 -#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101 -#: templates/js/translated/company.js:964 templates/js/translated/order.js:2104 -#: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753 -#: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102 +#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1099 +#: templates/js/translated/company.js:964 templates/js/translated/order.js:2143 +#: templates/js/translated/order.js:2294 templates/js/translated/order.js:2792 +#: templates/js/translated/order.js:3743 templates/js/translated/order.js:4141 #: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980 msgid "Notes" msgstr "Заметки" @@ -211,11 +211,11 @@ msgstr "Выберите файл для вложения" #: InvenTree/models.py:402 company/models.py:124 company/models.py:276 #: company/models.py:510 order/models.py:84 order/models.py:1245 -#: part/models.py:802 +#: part/models.py:802 part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_base.html:164 #: templates/js/translated/company.js:656 -#: templates/js/translated/company.js:948 templates/js/translated/order.js:2742 -#: templates/js/translated/part.js:1514 +#: templates/js/translated/company.js:948 templates/js/translated/order.js:2781 +#: templates/js/translated/part.js:1510 msgid "Link" msgstr "Ссылка" @@ -235,8 +235,8 @@ msgstr "Комментарий к файлу" #: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665 #: common/models.py:1666 common/models.py:1889 common/models.py:1890 -#: common/models.py:2152 common/models.py:2153 part/models.py:2200 -#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257 +#: common/models.py:2152 common/models.py:2153 part/models.py:2247 +#: part/models.py:2267 plugin/models.py:256 plugin/models.py:257 #: report/templates/report/inventree_test_report_base.html:96 #: templates/js/translated/stock.js:2641 msgid "User" @@ -277,7 +277,7 @@ msgstr "Неверный выбор" #: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875 #: company/models.py:358 label/models.py:101 part/models.py:746 -#: part/models.py:2378 plugin/models.py:94 report/models.py:152 +#: part/models.py:2425 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 #: templates/InvenTree/settings/plugin.html:51 #: templates/InvenTree/settings/plugin.html:134 @@ -287,7 +287,7 @@ msgstr "Неверный выбор" #: templates/js/translated/company.js:758 #: templates/js/translated/notification.js:71 #: templates/js/translated/part.js:688 templates/js/translated/part.js:840 -#: templates/js/translated/part.js:1906 templates/js/translated/stock.js:2392 +#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2392 msgid "Name" msgstr "Название" @@ -297,19 +297,20 @@ msgstr "Название" #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:87 label/models.py:108 #: order/models.py:82 part/models.py:769 part/templates/part/category.html:80 -#: part/templates/part/part_base.html:167 report/models.py:165 +#: part/templates/part/part_base.html:167 +#: part/templates/part/part_scheduling.html:12 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 #: stock/templates/stock/location.html:108 #: templates/InvenTree/settings/plugin_settings.html:33 -#: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848 -#: templates/js/translated/build.js:2471 templates/js/translated/company.js:409 +#: templates/js/translated/bom.js:553 templates/js/translated/bom.js:846 +#: templates/js/translated/build.js:2504 templates/js/translated/company.js:409 #: templates/js/translated/company.js:667 -#: templates/js/translated/company.js:959 templates/js/translated/order.js:1720 -#: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531 +#: templates/js/translated/company.js:959 templates/js/translated/order.js:1759 +#: templates/js/translated/order.js:1991 templates/js/translated/order.js:2570 #: templates/js/translated/part.js:747 templates/js/translated/part.js:1153 -#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1942 -#: templates/js/translated/part.js:2011 templates/js/translated/stock.js:1743 +#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1938 +#: templates/js/translated/part.js:2007 templates/js/translated/stock.js:1743 #: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478 msgid "Description" msgstr "Описание" @@ -323,7 +324,7 @@ msgid "parent" msgstr "родитель" #: InvenTree/models.py:560 InvenTree/models.py:561 -#: templates/js/translated/part.js:1948 templates/js/translated/stock.js:2430 +#: templates/js/translated/part.js:1944 templates/js/translated/stock.js:2430 msgid "Path" msgstr "Путь" @@ -335,7 +336,7 @@ msgstr "" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:55 part/models.py:2699 +#: InvenTree/serializers.py:55 part/models.py:2746 msgid "Must be a valid number" msgstr "Должно быть действительным номером" @@ -541,7 +542,7 @@ msgid "Returned" msgstr "Возвращено" #: InvenTree/status_codes.py:141 order/models.py:1128 -#: templates/js/translated/order.js:3330 templates/js/translated/order.js:3679 +#: templates/js/translated/order.js:3369 templates/js/translated/order.js:3718 msgid "Shipped" msgstr "Доставлено" @@ -728,7 +729,7 @@ msgstr "Неверный выбор для родительской сборки #: report/templates/report/inventree_build_order_base.html:105 #: templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 -#: templates/js/translated/build.js:731 +#: templates/js/translated/build.js:763 msgid "Build Order" msgstr "Порядок сборки" @@ -747,14 +748,14 @@ msgid "Build Order Reference" msgstr "Ссылка на заказ" #: build/models.py:166 order/models.py:240 order/models.py:623 -#: order/models.py:904 part/models.py:2617 +#: order/models.py:904 part/models.py:2664 #: part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 -#: templates/js/translated/bom.js:692 templates/js/translated/bom.js:855 -#: templates/js/translated/build.js:1779 templates/js/translated/order.js:1983 -#: templates/js/translated/order.js:2184 templates/js/translated/order.js:3523 -#: templates/js/translated/order.js:4031 +#: templates/js/translated/bom.js:690 templates/js/translated/bom.js:853 +#: templates/js/translated/build.js:1811 templates/js/translated/order.js:2022 +#: templates/js/translated/order.js:2223 templates/js/translated/order.js:3562 +#: templates/js/translated/order.js:4070 msgid "Reference" msgstr "Отсылка" @@ -762,7 +763,7 @@ msgstr "Отсылка" msgid "Brief description of the build" msgstr "Краткое описание сборки" -#: build/models.py:185 build/templates/build/build_base.html:169 +#: build/models.py:185 build/templates/build/build_base.html:172 #: build/templates/build/detail.html:87 msgid "Parent Build" msgstr "Родительская сборка" @@ -771,13 +772,13 @@ msgstr "Родительская сборка" msgid "BuildOrder to which this build is allocated" msgstr "" -#: build/models.py:191 build/templates/build/build_base.html:77 +#: build/models.py:191 build/templates/build/build_base.html:80 #: build/templates/build/detail.html:29 company/models.py:670 #: order/models.py:1001 order/models.py:1112 order/models.py:1113 -#: part/models.py:343 part/models.py:2146 part/models.py:2161 -#: part/models.py:2180 part/models.py:2198 part/models.py:2297 -#: part/models.py:2417 part/models.py:2507 part/models.py:2592 -#: part/models.py:2868 part/serializers.py:813 +#: part/models.py:343 part/models.py:2193 part/models.py:2208 +#: part/models.py:2227 part/models.py:2245 part/models.py:2344 +#: part/models.py:2464 part/models.py:2554 part/models.py:2639 +#: part/models.py:2915 part/serializers.py:813 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -789,17 +790,17 @@ msgstr "" #: templates/email/build_order_required_stock.html:17 #: templates/email/low_stock_notification.html:16 #: templates/email/overdue_build_order.html:16 -#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:553 -#: templates/js/translated/bom.js:691 templates/js/translated/bom.js:802 -#: templates/js/translated/build.js:1156 templates/js/translated/build.js:1649 -#: templates/js/translated/build.js:2085 templates/js/translated/build.js:2476 +#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:552 +#: templates/js/translated/bom.js:689 templates/js/translated/bom.js:800 +#: templates/js/translated/build.js:1188 templates/js/translated/build.js:1681 +#: templates/js/translated/build.js:2118 templates/js/translated/build.js:2509 #: templates/js/translated/company.js:266 #: templates/js/translated/company.js:496 #: templates/js/translated/company.js:608 -#: templates/js/translated/company.js:868 templates/js/translated/order.js:103 -#: templates/js/translated/order.js:934 templates/js/translated/order.js:1387 -#: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885 -#: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507 +#: templates/js/translated/company.js:868 templates/js/translated/order.js:104 +#: templates/js/translated/order.js:973 templates/js/translated/order.js:1426 +#: templates/js/translated/order.js:1976 templates/js/translated/order.js:2924 +#: templates/js/translated/order.js:3320 templates/js/translated/order.js:3546 #: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210 #: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586 #: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958 @@ -821,7 +822,7 @@ msgid "SalesOrder to which this build is allocated" msgstr "" #: build/models.py:213 build/serializers.py:800 -#: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873 +#: templates/js/translated/build.js:2106 templates/js/translated/order.js:2912 msgid "Source Location" msgstr "Расположение источника" @@ -862,7 +863,7 @@ msgid "Build status code" msgstr "Код статуса сборки" #: build/models.py:251 build/serializers.py:225 order/serializers.py:447 -#: stock/models.py:662 templates/js/translated/order.js:1247 +#: stock/models.py:662 templates/js/translated/order.js:1286 msgid "Batch Code" msgstr "Код партии" @@ -871,7 +872,7 @@ msgid "Batch code for this build output" msgstr "Код партии для этого вывода сборки" #: build/models.py:258 order/models.py:86 part/models.py:938 -#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544 +#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2583 msgid "Creation Date" msgstr "Дата создания" @@ -884,7 +885,7 @@ msgid "Target date for build completion. Build will be overdue after this date." msgstr "Целевая дата для сборки. Сборка будет просрочена после этой даты." #: build/models.py:266 order/models.py:286 -#: templates/js/translated/build.js:2553 +#: templates/js/translated/build.js:2586 msgid "Completion Date" msgstr "Дата завершения" @@ -892,7 +893,7 @@ msgstr "Дата завершения" msgid "completed by" msgstr "выполнено" -#: build/models.py:280 templates/js/translated/build.js:2521 +#: build/models.py:280 templates/js/translated/build.js:2554 msgid "Issued by" msgstr "Выдал/ла" @@ -900,12 +901,12 @@ msgstr "Выдал/ла" msgid "User who issued this build order" msgstr "Пользователь, выпустивший этот заказ на сборку" -#: build/models.py:289 build/templates/build/build_base.html:190 +#: build/models.py:289 build/templates/build/build_base.html:193 #: build/templates/build/detail.html:115 order/models.py:100 #: order/templates/order/order_base.html:176 #: order/templates/order/sales_order_base.html:183 part/models.py:942 #: report/templates/report/inventree_build_order_base.html:158 -#: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754 +#: templates/js/translated/build.js:2566 templates/js/translated/order.js:1793 msgid "Responsible" msgstr "Ответственный" @@ -972,7 +973,7 @@ msgid "Selected stock item not found in BOM" msgstr "Выбранная единица хранения не найдена в BOM" #: build/models.py:1328 stock/templates/stock/item_base.html:177 -#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2455 +#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2488 #: templates/navbar.html:38 msgid "Build" msgstr "Сборка" @@ -986,11 +987,11 @@ msgstr "" #: stock/serializers.py:882 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:199 -#: templates/js/translated/build.js:741 templates/js/translated/build.js:746 -#: templates/js/translated/build.js:2087 templates/js/translated/build.js:2638 -#: templates/js/translated/order.js:104 templates/js/translated/order.js:2886 -#: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193 -#: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380 +#: templates/js/translated/build.js:773 templates/js/translated/build.js:778 +#: templates/js/translated/build.js:2120 templates/js/translated/build.js:2671 +#: templates/js/translated/order.js:105 templates/js/translated/order.js:2925 +#: templates/js/translated/order.js:3227 templates/js/translated/order.js:3232 +#: templates/js/translated/order.js:3327 templates/js/translated/order.js:3419 #: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752 #: templates/js/translated/stock.js:2577 msgid "Stock Item" @@ -1001,13 +1002,13 @@ msgid "Source stock item" msgstr "Исходный складской предмет" #: build/models.py:1358 build/serializers.py:193 -#: build/templates/build/build_base.html:82 +#: build/templates/build/build_base.html:85 #: build/templates/build/detail.html:34 common/models.py:1697 #: company/templates/company/supplier_part.html:279 order/models.py:897 #: order/models.py:1423 order/serializers.py:1155 #: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40 -#: part/models.py:2608 part/templates/part/detail.html:937 -#: part/templates/part/detail.html:1023 +#: part/models.py:2655 part/templates/part/detail.html:951 +#: part/templates/part/detail.html:1037 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 #: report/templates/report/inventree_build_order_base.html:113 @@ -1018,20 +1019,20 @@ msgstr "Исходный складской предмет" #: stock/serializers.py:293 stock/templates/stock/item_base.html:292 #: stock/templates/stock/item_base.html:300 #: templates/email/build_order_completed.html:18 -#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:693 -#: templates/js/translated/bom.js:863 templates/js/translated/build.js:426 -#: templates/js/translated/build.js:578 templates/js/translated/build.js:768 -#: templates/js/translated/build.js:1178 templates/js/translated/build.js:1675 -#: templates/js/translated/build.js:2088 +#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:691 +#: templates/js/translated/bom.js:861 templates/js/translated/build.js:458 +#: templates/js/translated/build.js:610 templates/js/translated/build.js:800 +#: templates/js/translated/build.js:1210 templates/js/translated/build.js:1707 +#: templates/js/translated/build.js:2121 #: templates/js/translated/model_renderers.js:120 -#: templates/js/translated/order.js:120 templates/js/translated/order.js:937 -#: templates/js/translated/order.js:1989 templates/js/translated/order.js:2190 -#: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207 -#: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386 -#: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037 -#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2156 -#: templates/js/translated/part.js:2387 templates/js/translated/part.js:2421 -#: templates/js/translated/part.js:2499 templates/js/translated/stock.js:458 +#: templates/js/translated/order.js:121 templates/js/translated/order.js:976 +#: templates/js/translated/order.js:2028 templates/js/translated/order.js:2229 +#: templates/js/translated/order.js:2926 templates/js/translated/order.js:3246 +#: templates/js/translated/order.js:3333 templates/js/translated/order.js:3425 +#: templates/js/translated/order.js:3568 templates/js/translated/order.js:4076 +#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2152 +#: templates/js/translated/part.js:2602 templates/js/translated/part.js:2636 +#: templates/js/translated/part.js:2714 templates/js/translated/stock.js:458 #: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782 #: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711 msgid "Quantity" @@ -1050,7 +1051,7 @@ msgid "Destination stock item" msgstr "" #: build/serializers.py:138 build/serializers.py:674 -#: templates/js/translated/build.js:1166 +#: templates/js/translated/build.js:1198 msgid "Build Output" msgstr "" @@ -1090,7 +1091,7 @@ msgid "Integer quantity required, as the bill of materials contains trackable pa msgstr "" #: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159 -#: stock/serializers.py:311 templates/js/translated/order.js:1258 +#: stock/serializers.py:311 templates/js/translated/order.js:1297 #: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459 msgid "Serial Numbers" msgstr "Серийные номера" @@ -1120,10 +1121,10 @@ msgstr "" #: stock/serializers.py:917 stock/serializers.py:1150 #: stock/templates/stock/item_base.html:390 #: templates/js/translated/barcode.js:436 -#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753 -#: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285 -#: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305 -#: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394 +#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:785 +#: templates/js/translated/build.js:1719 templates/js/translated/order.js:1324 +#: templates/js/translated/order.js:3239 templates/js/translated/order.js:3344 +#: templates/js/translated/order.js:3352 templates/js/translated/order.js:3433 #: templates/js/translated/part.js:181 templates/js/translated/stock.js:588 #: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960 #: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518 @@ -1134,12 +1135,12 @@ msgstr "Расположение" msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:373 build/templates/build/build_base.html:142 +#: build/serializers.py:373 build/templates/build/build_base.html:145 #: build/templates/build/detail.html:62 order/models.py:642 #: order/serializers.py:465 stock/templates/stock/item_base.html:423 -#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505 -#: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724 -#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829 +#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2538 +#: templates/js/translated/order.js:1431 templates/js/translated/order.js:1763 +#: templates/js/translated/order.js:2575 templates/js/translated/stock.js:1829 #: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727 msgid "Status" msgstr "Статус" @@ -1196,7 +1197,7 @@ msgstr "" msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:522 templates/js/translated/build.js:195 +#: build/serializers.py:522 templates/js/translated/build.js:227 msgid "Required stock has not been fully allocated" msgstr "" @@ -1208,7 +1209,7 @@ msgstr "" msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:538 templates/js/translated/build.js:199 +#: build/serializers.py:538 templates/js/translated/build.js:231 msgid "Required build quantity has not been completed" msgstr "" @@ -1216,8 +1217,8 @@ msgstr "" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726 -#: part/models.py:2860 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2773 +#: part/models.py:2907 msgid "BOM Item" msgstr "BOM Компонент" @@ -1322,66 +1323,70 @@ msgid "Cancel Build" msgstr "Отменить сборку" #: build/templates/build/build_base.html:59 +msgid "Duplicate Build" +msgstr "" + +#: build/templates/build/build_base.html:62 msgid "Delete Build" msgstr "Удалить сборку" -#: build/templates/build/build_base.html:64 -#: build/templates/build/build_base.html:65 +#: build/templates/build/build_base.html:67 +#: build/templates/build/build_base.html:68 msgid "Complete Build" msgstr "Завершить сборку" -#: build/templates/build/build_base.html:87 +#: build/templates/build/build_base.html:90 msgid "Build Description" msgstr "Описание сборки" -#: build/templates/build/build_base.html:95 +#: build/templates/build/build_base.html:98 msgid "No build outputs have been created for this build order" msgstr "" -#: build/templates/build/build_base.html:101 +#: build/templates/build/build_base.html:104 #, python-format msgid "This Build Order is allocated to Sales Order %(link)s" msgstr "" -#: build/templates/build/build_base.html:108 +#: build/templates/build/build_base.html:111 #, python-format msgid "This Build Order is a child of Build Order %(link)s" msgstr "" -#: build/templates/build/build_base.html:115 +#: build/templates/build/build_base.html:118 msgid "Build Order is ready to mark as completed" msgstr "" -#: build/templates/build/build_base.html:120 +#: build/templates/build/build_base.html:123 msgid "Build Order cannot be completed as outstanding outputs remain" msgstr "" -#: build/templates/build/build_base.html:125 +#: build/templates/build/build_base.html:128 msgid "Required build quantity has not yet been completed" msgstr "" -#: build/templates/build/build_base.html:130 +#: build/templates/build/build_base.html:133 msgid "Stock has not been fully allocated to this Build Order" msgstr "" -#: build/templates/build/build_base.html:151 +#: build/templates/build/build_base.html:154 #: build/templates/build/detail.html:131 order/models.py:910 #: order/templates/order/order_base.html:162 #: order/templates/order/sales_order_base.html:164 #: report/templates/report/inventree_build_order_base.html:125 -#: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741 -#: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552 -#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042 +#: templates/js/translated/build.js:2578 templates/js/translated/order.js:1780 +#: templates/js/translated/order.js:2090 templates/js/translated/order.js:2591 +#: templates/js/translated/order.js:3631 templates/js/translated/part.js:1042 msgid "Target Date" msgstr "Целевая дата" -#: build/templates/build/build_base.html:156 +#: build/templates/build/build_base.html:159 #, python-format msgid "This build was due on %(target)s" msgstr "" -#: build/templates/build/build_base.html:156 -#: build/templates/build/build_base.html:201 +#: build/templates/build/build_base.html:159 +#: build/templates/build/build_base.html:204 #: order/templates/order/order_base.html:98 #: order/templates/order/sales_order_base.html:94 #: templates/js/translated/table_filters.js:320 @@ -1390,14 +1395,14 @@ msgstr "" msgid "Overdue" msgstr "Просрочено" -#: build/templates/build/build_base.html:163 +#: build/templates/build/build_base.html:166 #: build/templates/build/detail.html:67 build/templates/build/detail.html:142 #: order/templates/order/sales_order_base.html:171 #: templates/js/translated/table_filters.js:400 msgid "Completed" msgstr "Завершённые" -#: build/templates/build/build_base.html:176 +#: build/templates/build/build_base.html:179 #: build/templates/build/detail.html:94 order/models.py:1105 #: order/models.py:1199 order/models.py:1330 #: order/templates/order/sales_order_base.html:9 @@ -1406,17 +1411,17 @@ msgstr "Завершённые" #: report/templates/report/inventree_so_report.html:77 #: stock/templates/stock/item_base.html:370 #: templates/email/overdue_sales_order.html:15 -#: templates/js/translated/order.js:2498 +#: templates/js/translated/order.js:2537 msgid "Sales Order" msgstr "Заказ покупателя" -#: build/templates/build/build_base.html:183 +#: build/templates/build/build_base.html:186 #: build/templates/build/detail.html:108 #: report/templates/report/inventree_build_order_base.html:152 msgid "Issued By" msgstr "Выдано" -#: build/templates/build/build_base.html:245 +#: build/templates/build/build_base.html:256 msgid "Delete Build Order" msgstr "Удалить заказ на сборку" @@ -1433,7 +1438,7 @@ msgid "Stock can be taken from any available location." msgstr "" #: build/templates/build/detail.html:49 order/models.py:1023 -#: templates/js/translated/order.js:1393 templates/js/translated/order.js:2093 +#: templates/js/translated/order.js:1432 templates/js/translated/order.js:2132 msgid "Destination" msgstr "Назначение" @@ -1447,7 +1452,7 @@ msgstr "" #: build/templates/build/detail.html:80 #: stock/templates/stock/item_base.html:170 -#: templates/js/translated/build.js:1182 +#: templates/js/translated/build.js:1214 #: templates/js/translated/model_renderers.js:124 #: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843 #: templates/js/translated/stock.js:2734 @@ -1459,7 +1464,7 @@ msgstr "Партия" #: build/templates/build/detail.html:126 #: order/templates/order/order_base.html:149 #: order/templates/order/sales_order_base.html:158 -#: templates/js/translated/build.js:2513 +#: templates/js/translated/build.js:2546 msgid "Created" msgstr "Создано" @@ -1479,7 +1484,7 @@ msgstr "" msgid "Allocate Stock to Build" msgstr "" -#: build/templates/build/detail.html:176 templates/js/translated/build.js:1901 +#: build/templates/build/detail.html:176 templates/js/translated/build.js:1934 msgid "Unallocate stock" msgstr "" @@ -1510,7 +1515,7 @@ msgstr "" #: build/templates/build/detail.html:187 #: company/templates/company/detail.html:37 #: company/templates/company/detail.html:85 -#: part/templates/part/category.html:183 templates/js/translated/order.js:977 +#: part/templates/part/category.html:183 templates/js/translated/order.js:1016 msgid "Order Parts" msgstr "Заказать детали" @@ -1582,7 +1587,7 @@ msgstr "" #: order/templates/order/po_sidebar.html:9 #: order/templates/order/purchase_order_detail.html:82 #: order/templates/order/sales_order_detail.html:135 -#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:207 +#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:212 #: part/templates/part/part_sidebar.html:57 stock/templates/stock/item.html:117 #: stock/templates/stock/stock_sidebar.html:23 msgid "Attachments" @@ -1600,7 +1605,7 @@ msgstr "" msgid "All untracked stock items have been allocated" msgstr "" -#: build/templates/build/index.html:18 part/templates/part/detail.html:313 +#: build/templates/build/index.html:18 part/templates/part/detail.html:318 msgid "New Build Order" msgstr "Новый заказ на сборку" @@ -1845,7 +1850,7 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:951 part/models.py:2419 report/models.py:158 +#: common/models.py:951 part/models.py:2466 report/models.py:158 #: templates/js/translated/table_filters.js:38 #: templates/js/translated/table_filters.js:484 msgid "Template" @@ -1855,7 +1860,7 @@ msgstr "Шаблон" msgid "Parts are templates by default" msgstr "По умолчанию детали являются шаблонами" -#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448 +#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1446 #: templates/js/translated/table_filters.js:176 #: templates/js/translated/table_filters.js:447 msgid "Assembly" @@ -2591,7 +2596,7 @@ msgstr "" #: common/models.py:1705 company/serializers.py:366 #: company/templates/company/supplier_part.html:284 order/models.py:938 -#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2161 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2157 msgid "Price" msgstr "Цена" @@ -2830,7 +2835,7 @@ msgstr "Для этой компании используется валюта #: company/models.py:248 company/models.py:481 stock/models.py:598 #: stock/serializers.py:87 stock/templates/stock/item_base.html:148 -#: templates/js/translated/bom.js:543 +#: templates/js/translated/bom.js:542 msgid "Base Part" msgstr "Базовая деталь" @@ -2859,7 +2864,7 @@ msgstr "Выберите производителя" #: templates/js/translated/company.js:269 #: templates/js/translated/company.js:497 #: templates/js/translated/company.js:649 -#: templates/js/translated/company.js:937 templates/js/translated/order.js:1971 +#: templates/js/translated/company.js:937 templates/js/translated/order.js:2010 #: templates/js/translated/part.js:247 templates/js/translated/part.js:1027 msgid "MPN" msgstr "" @@ -2899,7 +2904,7 @@ msgstr "Значение" msgid "Parameter value" msgstr "Значение параметра" -#: company/models.py:372 part/models.py:888 part/models.py:2386 +#: company/models.py:372 part/models.py:888 part/models.py:2433 #: part/templates/part/part_base.html:280 #: templates/InvenTree/settings/settings.html:352 #: templates/js/translated/company.js:770 templates/js/translated/part.js:855 @@ -2921,7 +2926,7 @@ msgstr "" #: templates/email/overdue_purchase_order.html:16 #: templates/js/translated/company.js:268 #: templates/js/translated/company.js:401 -#: templates/js/translated/company.js:893 templates/js/translated/order.js:1707 +#: templates/js/translated/company.js:893 templates/js/translated/order.js:1746 #: templates/js/translated/part.js:217 templates/js/translated/part.js:995 #: templates/js/translated/table_filters.js:423 msgid "Supplier" @@ -2933,7 +2938,7 @@ msgstr "Выберите поставщика" #: company/models.py:497 company/templates/company/supplier_part.html:118 #: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267 -#: templates/js/translated/order.js:1958 templates/js/translated/part.js:228 +#: templates/js/translated/order.js:1997 templates/js/translated/part.js:228 #: templates/js/translated/part.js:1013 msgid "SKU" msgstr "" @@ -2955,17 +2960,17 @@ msgid "Supplier part description" msgstr "" #: company/models.py:522 company/templates/company/supplier_part.html:146 -#: part/models.py:2620 part/templates/part/upload_bom.html:59 +#: part/models.py:2667 part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401 msgid "Note" msgstr "Заметка" -#: company/models.py:526 part/models.py:1742 +#: company/models.py:526 part/models.py:1789 msgid "base cost" msgstr "" -#: company/models.py:526 part/models.py:1742 +#: company/models.py:526 part/models.py:1789 msgid "Minimum charge (e.g. stocking fee)" msgstr "" @@ -2979,7 +2984,7 @@ msgstr "Упаковка" msgid "Part packaging" msgstr "" -#: company/models.py:530 part/models.py:1744 +#: company/models.py:530 part/models.py:1791 msgid "multiple" msgstr "" @@ -2990,8 +2995,8 @@ msgstr "" #: company/models.py:538 company/templates/company/supplier_part.html:94 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789 -#: templates/js/translated/build.js:2645 templates/js/translated/company.js:979 +#: templates/js/translated/bom.js:911 templates/js/translated/build.js:1821 +#: templates/js/translated/build.js:2678 templates/js/translated/company.js:979 #: templates/js/translated/part.js:600 templates/js/translated/part.js:603 #: templates/js/translated/table_filters.js:186 msgid "Available" @@ -3028,7 +3033,7 @@ msgid "Company" msgstr "Компания" #: company/templates/company/company_base.html:22 -#: templates/js/translated/order.js:540 +#: templates/js/translated/order.js:579 msgid "Create Purchase Order" msgstr "Создать заказ на закупку" @@ -3069,7 +3074,7 @@ msgstr "Скачать изображение по ссылке" #: stock/models.py:644 stock/serializers.py:811 #: stock/templates/stock/item_base.html:401 #: templates/email/overdue_sales_order.html:16 -#: templates/js/translated/company.js:393 templates/js/translated/order.js:2513 +#: templates/js/translated/company.js:393 templates/js/translated/order.js:2552 #: templates/js/translated/stock.js:2559 #: templates/js/translated/table_filters.js:427 msgid "Customer" @@ -3105,7 +3110,7 @@ msgstr "Создать новую деталь поставщика" #: company/templates/company/detail.html:19 #: company/templates/company/manufacturer_part.html:123 -#: part/templates/part/detail.html:354 +#: part/templates/part/detail.html:359 msgid "New Supplier Part" msgstr "Новая деталь поставщика" @@ -3134,7 +3139,7 @@ msgstr "Детали производителей" msgid "Create new manufacturer part" msgstr "Создать новую деталь производителя" -#: company/templates/company/detail.html:66 part/templates/part/detail.html:384 +#: company/templates/company/detail.html:66 part/templates/part/detail.html:389 msgid "New Manufacturer Part" msgstr "Новая деталь производителя" @@ -3148,7 +3153,7 @@ msgstr "Склад поставщика" #: order/templates/order/order_base.html:13 #: order/templates/order/purchase_orders.html:8 #: order/templates/order/purchase_orders.html:12 -#: part/templates/part/detail.html:79 part/templates/part/part_sidebar.html:37 +#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:37 #: templates/InvenTree/index.html:252 templates/InvenTree/search.html:198 #: templates/InvenTree/settings/sidebar.html:49 #: templates/js/translated/search.js:275 templates/navbar.html:50 @@ -3171,7 +3176,7 @@ msgstr "Новый заказ на закупку" #: order/templates/order/sales_order_base.html:13 #: order/templates/order/sales_orders.html:8 #: order/templates/order/sales_orders.html:15 -#: part/templates/part/detail.html:102 part/templates/part/part_sidebar.html:41 +#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:41 #: templates/InvenTree/index.html:283 templates/InvenTree/search.html:218 #: templates/InvenTree/settings/sidebar.html:51 #: templates/js/translated/search.js:299 templates/navbar.html:61 @@ -3190,7 +3195,7 @@ msgid "New Sales Order" msgstr "Новый заказ на продажу" #: company/templates/company/detail.html:168 -#: templates/js/translated/build.js:1660 +#: templates/js/translated/build.js:1692 msgid "Assigned Stock" msgstr "" @@ -3206,7 +3211,7 @@ msgstr "Производители" #: company/templates/company/manufacturer_part.html:35 #: company/templates/company/supplier_part.html:186 -#: part/templates/part/detail.html:82 part/templates/part/part_base.html:80 +#: part/templates/part/detail.html:87 part/templates/part/part_base.html:80 msgid "Order part" msgstr "" @@ -3237,13 +3242,13 @@ msgid "Suppliers" msgstr "Поставщики" #: company/templates/company/manufacturer_part.html:136 -#: part/templates/part/detail.html:365 +#: part/templates/part/detail.html:370 msgid "Delete supplier parts" msgstr "Удалить деталь поставщика" #: company/templates/company/manufacturer_part.html:136 #: company/templates/company/manufacturer_part.html:183 -#: part/templates/part/detail.html:366 part/templates/part/detail.html:396 +#: part/templates/part/detail.html:371 part/templates/part/detail.html:401 #: templates/js/translated/forms.js:453 templates/js/translated/helpers.js:33 #: users/models.py:220 msgid "Delete" @@ -3252,12 +3257,12 @@ msgstr "Удалить" #: company/templates/company/manufacturer_part.html:166 #: company/templates/company/manufacturer_part_sidebar.html:5 #: part/templates/part/category_sidebar.html:19 -#: part/templates/part/detail.html:181 part/templates/part/part_sidebar.html:8 +#: part/templates/part/detail.html:186 part/templates/part/part_sidebar.html:8 msgid "Parameters" msgstr "Параметры" #: company/templates/company/manufacturer_part.html:170 -#: part/templates/part/detail.html:186 +#: part/templates/part/detail.html:191 #: templates/InvenTree/settings/category.html:12 #: templates/InvenTree/settings/part.html:68 msgid "New Parameter" @@ -3268,7 +3273,7 @@ msgid "Delete parameters" msgstr "Удалить параметры" #: company/templates/company/manufacturer_part.html:245 -#: part/templates/part/detail.html:826 +#: part/templates/part/detail.html:840 msgid "Add Parameter" msgstr "Добавить параметр" @@ -3291,7 +3296,7 @@ msgstr "" #: company/templates/company/supplier_part.html:7 #: company/templates/company/supplier_part.html:24 stock/models.py:607 #: stock/templates/stock/item_base.html:238 -#: templates/js/translated/company.js:909 templates/js/translated/order.js:935 +#: templates/js/translated/company.js:909 templates/js/translated/order.js:974 #: templates/js/translated/stock.js:1933 msgid "Supplier Part" msgstr "Деталь поставщика" @@ -3303,7 +3308,7 @@ msgstr "" #: company/templates/company/supplier_part.html:40 #: company/templates/company/supplier_part.html:41 #: company/templates/company/supplier_part.html:187 -#: part/templates/part/detail.html:83 +#: part/templates/part/detail.html:88 msgid "Order Part" msgstr "" @@ -3358,7 +3363,7 @@ msgstr "Информация о цене" #: company/templates/company/supplier_part.html:212 #: company/templates/company/supplier_part.html:326 -#: part/templates/part/prices.html:276 templates/js/translated/part.js:2233 +#: part/templates/part/prices.html:276 templates/js/translated/part.js:2229 msgid "Add Price Break" msgstr "" @@ -3367,12 +3372,12 @@ msgid "No price break information found" msgstr "" #: company/templates/company/supplier_part.html:252 -#: templates/js/translated/part.js:2243 +#: templates/js/translated/part.js:2239 msgid "Delete Price Break" msgstr "" #: company/templates/company/supplier_part.html:266 -#: templates/js/translated/part.js:2257 +#: templates/js/translated/part.js:2253 msgid "Edit Price Break" msgstr "" @@ -3398,10 +3403,9 @@ msgstr "" #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:151 #: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751 -#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460 -#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754 -#: templates/navbar.html:31 +#: templates/js/translated/part.js:751 templates/js/translated/part.js:1299 +#: templates/js/translated/part.js:1460 templates/js/translated/stock.js:959 +#: templates/js/translated/stock.js:1754 templates/navbar.html:31 msgid "Stock" msgstr "Склад" @@ -3554,7 +3558,7 @@ msgid "Company from which the items are being ordered" msgstr "Компания, в которой детали заказываются" #: order/models.py:262 order/templates/order/order_base.html:124 -#: templates/js/translated/order.js:1716 +#: templates/js/translated/order.js:1755 msgid "Supplier Reference" msgstr "" @@ -3611,7 +3615,7 @@ msgid "Target date for order completion. Order will be overdue after this date." msgstr "" #: order/models.py:652 order/models.py:1204 -#: templates/js/translated/order.js:2560 templates/js/translated/order.js:2722 +#: templates/js/translated/order.js:2599 templates/js/translated/order.js:2761 msgid "Shipment Date" msgstr "" @@ -3673,7 +3677,7 @@ msgstr "" #: order/models.py:983 order/models.py:1063 order/models.py:1104 #: order/models.py:1198 order/models.py:1330 -#: templates/js/translated/order.js:3178 +#: templates/js/translated/order.js:3217 msgid "Order" msgstr "" @@ -3683,7 +3687,7 @@ msgstr "" #: report/templates/report/inventree_po_report.html:76 #: stock/templates/stock/item_base.html:184 #: templates/email/overdue_purchase_order.html:15 -#: templates/js/translated/order.js:936 templates/js/translated/order.js:1691 +#: templates/js/translated/order.js:975 templates/js/translated/order.js:1730 #: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913 #: templates/js/translated/stock.js:2540 msgid "Purchase Order" @@ -3694,7 +3698,7 @@ msgid "Supplier part" msgstr "" #: order/models.py:1009 order/templates/order/order_base.html:169 -#: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073 +#: templates/js/translated/order.js:1429 templates/js/translated/order.js:2112 #: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091 #: templates/js/translated/table_filters.js:338 msgid "Received" @@ -3880,11 +3884,11 @@ msgstr "" msgid "Select destination location for received items" msgstr "" -#: order/serializers.py:448 templates/js/translated/order.js:1248 +#: order/serializers.py:448 templates/js/translated/order.js:1287 msgid "Enter batch code for incoming stock items" msgstr "Введите код партии для поступающих единиц хранения" -#: order/serializers.py:456 templates/js/translated/order.js:1259 +#: order/serializers.py:456 templates/js/translated/order.js:1298 msgid "Enter serial numbers for incoming stock items" msgstr "" @@ -4061,10 +4065,6 @@ msgstr "" msgid "Total cost could not be calculated" msgstr "" -#: order/templates/order/order_base.html:243 -msgid "Edit Purchase Order" -msgstr "Редактировать заказ на закупку" - #: order/templates/order/order_wizard/match_parts.html:12 #: part/templates/part/import_wizard/ajax_match_references.html:12 #: part/templates/part/import_wizard/match_references.html:12 @@ -4091,10 +4091,10 @@ msgstr "Выберите деталь поставщика" #: part/templates/part/import_wizard/ajax_match_fields.html:64 #: part/templates/part/import_wizard/ajax_match_references.html:42 #: part/templates/part/import_wizard/match_references.html:49 -#: templates/js/translated/bom.js:77 templates/js/translated/build.js:431 -#: templates/js/translated/build.js:583 templates/js/translated/build.js:1974 -#: templates/js/translated/order.js:884 templates/js/translated/order.js:1337 -#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625 +#: templates/js/translated/bom.js:77 templates/js/translated/build.js:463 +#: templates/js/translated/build.js:615 templates/js/translated/build.js:2007 +#: templates/js/translated/order.js:923 templates/js/translated/order.js:1376 +#: templates/js/translated/order.js:2836 templates/js/translated/stock.js:625 #: templates/js/translated/stock.js:793 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" @@ -4130,7 +4130,7 @@ msgstr "" #: order/templates/order/purchase_order_detail.html:26 #: order/templates/order/sales_order_detail.html:22 #: order/templates/order/sales_order_detail.html:255 -#: templates/js/translated/order.js:557 +#: templates/js/translated/order.js:596 msgid "Add Line Item" msgstr "" @@ -4176,7 +4176,7 @@ msgid "Print packing list" msgstr "" #: order/templates/order/sales_order_base.html:60 -#: templates/js/translated/order.js:229 +#: templates/js/translated/order.js:230 msgid "Complete Shipments" msgstr "" @@ -4190,7 +4190,7 @@ msgid "This Sales Order has not been fully allocated" msgstr "" #: order/templates/order/sales_order_base.html:123 -#: templates/js/translated/order.js:2526 +#: templates/js/translated/order.js:2565 msgid "Customer Reference" msgstr "" @@ -4214,8 +4214,8 @@ msgid "Pending Shipments" msgstr "" #: order/templates/order/sales_order_detail.html:72 -#: templates/attachment_table.html:6 templates/js/translated/bom.js:1110 -#: templates/js/translated/build.js:1882 +#: templates/attachment_table.html:6 templates/js/translated/bom.js:1108 +#: templates/js/translated/build.js:1915 msgid "Actions" msgstr "Действия" @@ -4257,35 +4257,35 @@ msgstr "" msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:584 +#: part/api.py:621 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:704 +#: part/api.py:758 msgid "Valid" msgstr "" -#: part/api.py:705 +#: part/api.py:759 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:711 +#: part/api.py:765 msgid "This option must be selected" msgstr "" -#: part/api.py:1134 +#: part/api.py:1188 msgid "Must be greater than zero" msgstr "" -#: part/api.py:1138 +#: part/api.py:1192 msgid "Must be a valid quantity" msgstr "" -#: part/api.py:1153 +#: part/api.py:1207 msgid "Specify location for initial part stock" msgstr "" -#: part/api.py:1184 part/api.py:1188 part/api.py:1203 part/api.py:1207 +#: part/api.py:1238 part/api.py:1242 part/api.py:1257 part/api.py:1261 msgid "This field is required" msgstr "" @@ -4299,14 +4299,14 @@ msgid "Total Stock" msgstr "" #: part/bom.py:129 part/templates/part/part_base.html:189 -#: templates/js/translated/order.js:3618 +#: templates/js/translated/order.js:3657 msgid "Available Stock" msgstr "Доступный запас" #: part/bom.py:130 part/templates/part/part_base.html:207 -#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590 +#: templates/js/translated/bom.js:945 templates/js/translated/part.js:590 #: templates/js/translated/part.js:610 templates/js/translated/part.js:1302 -#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490 +#: templates/js/translated/part.js:1483 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "" @@ -4335,7 +4335,7 @@ msgstr "" msgid "Icon (optional)" msgstr "" -#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16 +#: part/models.py:122 part/models.py:2509 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "Категория детали" @@ -4352,7 +4352,7 @@ msgstr "" #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82 #: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:1955 templates/js/translated/search.js:144 +#: templates/js/translated/part.js:1951 templates/js/translated/search.js:144 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "Детали" @@ -4382,7 +4382,7 @@ msgstr "" msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:745 part/models.py:2516 +#: part/models.py:745 part/models.py:2563 msgid "Part name" msgstr "Наименование детали" @@ -4415,11 +4415,11 @@ msgstr "Ключевые слова" msgid "Part keywords to improve visibility in search results" msgstr "Ключевые слова для улучшения видимости в результатах поиска" -#: part/models.py:783 part/models.py:2218 part/models.py:2461 +#: part/models.py:783 part/models.py:2265 part/models.py:2508 #: part/templates/part/part_base.html:257 #: templates/InvenTree/settings/settings.html:232 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1668 +#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1664 msgid "Category" msgstr "Категория" @@ -4530,245 +4530,245 @@ msgstr "" msgid "Creation User" msgstr "" -#: part/models.py:1744 +#: part/models.py:1791 msgid "Sell multiple" msgstr "" -#: part/models.py:2265 +#: part/models.py:2312 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:2282 +#: part/models.py:2329 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:2302 templates/js/translated/part.js:2006 +#: part/models.py:2349 templates/js/translated/part.js:2002 #: templates/js/translated/stock.js:1340 msgid "Test Name" msgstr "" -#: part/models.py:2303 +#: part/models.py:2350 msgid "Enter a name for the test" msgstr "" -#: part/models.py:2308 +#: part/models.py:2355 msgid "Test Description" msgstr "" -#: part/models.py:2309 +#: part/models.py:2356 msgid "Enter description for this test" msgstr "" -#: part/models.py:2314 templates/js/translated/part.js:2015 +#: part/models.py:2361 templates/js/translated/part.js:2011 #: templates/js/translated/table_filters.js:302 msgid "Required" msgstr "" -#: part/models.py:2315 +#: part/models.py:2362 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:2320 templates/js/translated/part.js:2023 +#: part/models.py:2367 templates/js/translated/part.js:2019 msgid "Requires Value" msgstr "" -#: part/models.py:2321 +#: part/models.py:2368 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:2326 templates/js/translated/part.js:2030 +#: part/models.py:2373 templates/js/translated/part.js:2026 msgid "Requires Attachment" msgstr "" -#: part/models.py:2327 +#: part/models.py:2374 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:2335 +#: part/models.py:2382 #, python-brace-format msgid "Illegal character in template name ({c})" msgstr "" -#: part/models.py:2371 +#: part/models.py:2418 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:2379 +#: part/models.py:2426 msgid "Parameter Name" msgstr "" -#: part/models.py:2386 +#: part/models.py:2433 msgid "Parameter Units" msgstr "" -#: part/models.py:2417 +#: part/models.py:2464 msgid "Parent Part" msgstr "Родительская деталь" -#: part/models.py:2419 part/models.py:2467 part/models.py:2468 +#: part/models.py:2466 part/models.py:2514 part/models.py:2515 #: templates/InvenTree/settings/settings.html:227 msgid "Parameter Template" msgstr "Шаблон параметра" -#: part/models.py:2421 +#: part/models.py:2468 msgid "Data" msgstr "" -#: part/models.py:2421 +#: part/models.py:2468 msgid "Parameter Value" msgstr "" -#: part/models.py:2472 templates/InvenTree/settings/settings.html:236 +#: part/models.py:2519 templates/InvenTree/settings/settings.html:236 msgid "Default Value" msgstr "" -#: part/models.py:2473 +#: part/models.py:2520 msgid "Default Parameter Value" msgstr "" -#: part/models.py:2508 +#: part/models.py:2555 msgid "Part ID or part name" msgstr "Артикул или наименование детали" -#: part/models.py:2511 templates/js/translated/model_renderers.js:212 +#: part/models.py:2558 templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "Артикул" -#: part/models.py:2512 +#: part/models.py:2559 msgid "Unique part ID value" msgstr "" -#: part/models.py:2515 +#: part/models.py:2562 msgid "Part Name" msgstr "Наименование детали" -#: part/models.py:2519 +#: part/models.py:2566 msgid "Part IPN" msgstr "IPN" -#: part/models.py:2520 +#: part/models.py:2567 msgid "Part IPN value" msgstr "Значение IPN" -#: part/models.py:2523 +#: part/models.py:2570 msgid "Level" msgstr "" -#: part/models.py:2524 +#: part/models.py:2571 msgid "BOM level" msgstr "" -#: part/models.py:2593 +#: part/models.py:2640 msgid "Select parent part" msgstr "Выберите родительскую деталь" -#: part/models.py:2601 +#: part/models.py:2648 msgid "Sub part" msgstr "" -#: part/models.py:2602 +#: part/models.py:2649 msgid "Select part to be used in BOM" msgstr "Выбрать деталь для использования в BOM" -#: part/models.py:2608 +#: part/models.py:2655 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:2610 part/templates/part/upload_bom.html:58 -#: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999 +#: part/models.py:2657 part/templates/part/upload_bom.html:58 +#: templates/js/translated/bom.js:872 templates/js/translated/bom.js:997 #: templates/js/translated/table_filters.js:100 msgid "Optional" msgstr "" -#: part/models.py:2610 +#: part/models.py:2657 msgid "This BOM item is optional" msgstr "" -#: part/models.py:2613 part/templates/part/upload_bom.html:55 +#: part/models.py:2660 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:2614 +#: part/models.py:2661 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:2617 +#: part/models.py:2664 msgid "BOM item reference" msgstr "" -#: part/models.py:2620 +#: part/models.py:2667 msgid "BOM item notes" msgstr "" -#: part/models.py:2622 +#: part/models.py:2669 msgid "Checksum" msgstr "" -#: part/models.py:2622 +#: part/models.py:2669 msgid "BOM line checksum" msgstr "" -#: part/models.py:2626 part/templates/part/upload_bom.html:57 -#: templates/js/translated/bom.js:1016 +#: part/models.py:2673 part/templates/part/upload_bom.html:57 +#: templates/js/translated/bom.js:1014 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:96 msgid "Inherited" msgstr "" -#: part/models.py:2627 +#: part/models.py:2674 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:2632 part/templates/part/upload_bom.html:56 -#: templates/js/translated/bom.js:1008 +#: part/models.py:2679 part/templates/part/upload_bom.html:56 +#: templates/js/translated/bom.js:1006 msgid "Allow Variants" msgstr "Разрешить разновидности" -#: part/models.py:2633 +#: part/models.py:2680 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:2711 stock/models.py:468 +#: part/models.py:2758 stock/models.py:468 msgid "Quantity must be integer value for trackable parts" msgstr "Для отслеживаемых деталей количество должно быть целым числом" -#: part/models.py:2720 part/models.py:2722 +#: part/models.py:2767 part/models.py:2769 msgid "Sub part must be specified" msgstr "" -#: part/models.py:2827 +#: part/models.py:2874 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:2848 +#: part/models.py:2895 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:2861 +#: part/models.py:2908 msgid "Parent BOM item" msgstr "" -#: part/models.py:2869 +#: part/models.py:2916 msgid "Substitute part" msgstr "" -#: part/models.py:2884 +#: part/models.py:2931 msgid "Part 1" msgstr "Часть 1" -#: part/models.py:2888 +#: part/models.py:2935 msgid "Part 2" msgstr "Часть 2" -#: part/models.py:2888 +#: part/models.py:2935 msgid "Select Related Part" msgstr "" -#: part/models.py:2906 +#: part/models.py:2953 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:2910 +#: part/models.py:2957 msgid "Duplicate relationship already exists" msgstr "" @@ -4876,7 +4876,7 @@ msgstr "" msgid "The BOM for %(part)s has not been validated." msgstr "" -#: part/templates/part/bom.html:30 part/templates/part/detail.html:264 +#: part/templates/part/bom.html:30 part/templates/part/detail.html:269 msgid "BOM actions" msgstr "Действия с BOM" @@ -4945,8 +4945,8 @@ msgstr "Создать новую деталь" msgid "New Part" msgstr "Новая деталь" -#: part/templates/part/category.html:174 part/templates/part/detail.html:363 -#: part/templates/part/detail.html:394 +#: part/templates/part/category.html:174 part/templates/part/detail.html:368 +#: part/templates/part/detail.html:399 msgid "Options" msgstr "Настройки" @@ -5014,138 +5014,146 @@ msgstr "" msgid "Part Stock" msgstr "Наличие на складе" -#: part/templates/part/detail.html:54 +#: part/templates/part/detail.html:44 +msgid "Refresh scheduling data" +msgstr "" + +#: part/templates/part/detail.html:45 templates/js/translated/tables.js:558 +msgid "Refresh" +msgstr "Обновить" + +#: part/templates/part/detail.html:59 msgid "Part Test Templates" msgstr "" -#: part/templates/part/detail.html:59 +#: part/templates/part/detail.html:64 msgid "Add Test Template" msgstr "" -#: part/templates/part/detail.html:116 stock/templates/stock/item.html:53 +#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53 msgid "Sales Order Allocations" msgstr "" -#: part/templates/part/detail.html:138 +#: part/templates/part/detail.html:143 msgid "Part Notes" msgstr "" -#: part/templates/part/detail.html:153 +#: part/templates/part/detail.html:158 msgid "Part Variants" msgstr "Разновидности детали" -#: part/templates/part/detail.html:157 +#: part/templates/part/detail.html:162 msgid "Create new variant" msgstr "Создать новую разновидность" -#: part/templates/part/detail.html:158 +#: part/templates/part/detail.html:163 msgid "New Variant" msgstr "Новая разновидность" -#: part/templates/part/detail.html:185 +#: part/templates/part/detail.html:190 msgid "Add new parameter" msgstr "" -#: part/templates/part/detail.html:222 part/templates/part/part_sidebar.html:54 +#: part/templates/part/detail.html:227 part/templates/part/part_sidebar.html:54 msgid "Related Parts" msgstr "" -#: part/templates/part/detail.html:226 part/templates/part/detail.html:227 +#: part/templates/part/detail.html:231 part/templates/part/detail.html:232 msgid "Add Related" msgstr "" -#: part/templates/part/detail.html:247 part/templates/part/part_sidebar.html:17 +#: part/templates/part/detail.html:252 part/templates/part/part_sidebar.html:17 msgid "Bill of Materials" msgstr "Спецификация" -#: part/templates/part/detail.html:252 +#: part/templates/part/detail.html:257 msgid "Export actions" msgstr "Экспорт" -#: part/templates/part/detail.html:256 templates/js/translated/bom.js:284 +#: part/templates/part/detail.html:261 templates/js/translated/bom.js:284 msgid "Export BOM" msgstr "Экспорт BOM" -#: part/templates/part/detail.html:258 +#: part/templates/part/detail.html:263 msgid "Print BOM Report" msgstr "" -#: part/templates/part/detail.html:268 +#: part/templates/part/detail.html:273 msgid "Upload BOM" msgstr "" -#: part/templates/part/detail.html:269 templates/js/translated/part.js:274 +#: part/templates/part/detail.html:274 templates/js/translated/part.js:274 msgid "Copy BOM" msgstr "" -#: part/templates/part/detail.html:270 +#: part/templates/part/detail.html:275 msgid "Validate BOM" msgstr "" -#: part/templates/part/detail.html:275 +#: part/templates/part/detail.html:280 msgid "New BOM Item" msgstr "" -#: part/templates/part/detail.html:276 +#: part/templates/part/detail.html:281 msgid "Add BOM Item" msgstr "" -#: part/templates/part/detail.html:289 +#: part/templates/part/detail.html:294 msgid "Assemblies" msgstr "Сборки" -#: part/templates/part/detail.html:307 +#: part/templates/part/detail.html:312 msgid "Part Builds" msgstr "" -#: part/templates/part/detail.html:334 stock/templates/stock/item.html:38 +#: part/templates/part/detail.html:339 stock/templates/stock/item.html:38 msgid "Build Order Allocations" msgstr "" -#: part/templates/part/detail.html:350 +#: part/templates/part/detail.html:355 msgid "Part Suppliers" msgstr "Поставщики" -#: part/templates/part/detail.html:380 +#: part/templates/part/detail.html:385 msgid "Part Manufacturers" msgstr "" -#: part/templates/part/detail.html:396 +#: part/templates/part/detail.html:401 msgid "Delete manufacturer parts" msgstr "" -#: part/templates/part/detail.html:612 +#: part/templates/part/detail.html:626 msgid "Create BOM Item" msgstr "" -#: part/templates/part/detail.html:656 +#: part/templates/part/detail.html:670 msgid "Related Part" msgstr "" -#: part/templates/part/detail.html:664 +#: part/templates/part/detail.html:678 msgid "Add Related Part" msgstr "" -#: part/templates/part/detail.html:756 +#: part/templates/part/detail.html:770 msgid "Add Test Result Template" msgstr "" -#: part/templates/part/detail.html:900 +#: part/templates/part/detail.html:914 #, python-format msgid "Purchase Unit Price - %(currency)s" msgstr "" -#: part/templates/part/detail.html:912 +#: part/templates/part/detail.html:926 #, python-format msgid "Unit Price-Cost Difference - %(currency)s" msgstr "" -#: part/templates/part/detail.html:924 +#: part/templates/part/detail.html:938 #, python-format msgid "Supplier Unit Cost - %(currency)s" msgstr "" -#: part/templates/part/detail.html:1013 +#: part/templates/part/detail.html:1027 #, python-format msgid "Unit Price - %(currency)s" msgstr "" @@ -5321,13 +5329,13 @@ msgstr "" msgid "Allocated to Sales Orders" msgstr "" -#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1037 +#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1035 msgid "Can Build" msgstr "" #: part/templates/part/part_base.html:238 templates/js/translated/part.js:593 #: templates/js/translated/part.js:613 templates/js/translated/part.js:1306 -#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1494 +#: templates/js/translated/part.js:1490 msgid "Building" msgstr "" @@ -5379,7 +5387,7 @@ msgid "Total Cost" msgstr "" #: part/templates/part/part_pricing.html:40 part/templates/part/prices.html:43 -#: templates/js/translated/bom.js:991 +#: templates/js/translated/bom.js:989 msgid "No supplier pricing available" msgstr "" @@ -5414,6 +5422,18 @@ msgstr "Внутренняя цена" msgid "No pricing information is available for this part." msgstr "" +#: part/templates/part/part_scheduling.html:13 +#: report/templates/report/inventree_test_report_base.html:97 +#: templates/InvenTree/settings/plugin.html:53 +#: templates/InvenTree/settings/plugin_settings.html:38 +#: templates/js/translated/order.js:1772 templates/js/translated/stock.js:2468 +msgid "Date" +msgstr "" + +#: part/templates/part/part_scheduling.html:14 +msgid "Scheduled Quantity" +msgstr "" + #: part/templates/part/part_sidebar.html:11 msgid "Variants" msgstr "Разновидности" @@ -5462,7 +5482,7 @@ msgstr "" msgid "Calculation parameters" msgstr "" -#: part/templates/part/prices.html:160 templates/js/translated/bom.js:985 +#: part/templates/part/prices.html:160 templates/js/translated/bom.js:983 msgid "Supplier Cost" msgstr "" @@ -5501,7 +5521,7 @@ msgid "No sale pice history available for this part." msgstr "" #: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616 -#: templates/js/translated/part.js:1294 templates/js/translated/part.js:1498 +#: templates/js/translated/part.js:1294 msgid "No Stock" msgstr "" @@ -5893,11 +5913,11 @@ msgstr "" #: report/templates/report/inventree_test_report_base.html:79 #: stock/models.py:648 stock/templates/stock/item_base.html:322 -#: templates/js/translated/build.js:424 templates/js/translated/build.js:576 -#: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673 +#: templates/js/translated/build.js:456 templates/js/translated/build.js:608 +#: templates/js/translated/build.js:1208 templates/js/translated/build.js:1705 #: templates/js/translated/model_renderers.js:118 -#: templates/js/translated/order.js:118 templates/js/translated/order.js:3297 -#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490 +#: templates/js/translated/order.js:119 templates/js/translated/order.js:3336 +#: templates/js/translated/order.js:3423 templates/js/translated/stock.js:490 msgid "Serial Number" msgstr "Серийный номер" @@ -5915,13 +5935,6 @@ msgstr "" msgid "Result" msgstr "" -#: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:53 -#: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468 -msgid "Date" -msgstr "" - #: report/templates/report/inventree_test_report_base.html:108 msgid "Pass" msgstr "" @@ -6519,7 +6532,7 @@ msgid "Available Quantity" msgstr "" #: stock/templates/stock/item_base.html:394 -#: templates/js/translated/build.js:1695 +#: templates/js/translated/build.js:1727 msgid "No location set" msgstr "" @@ -7702,7 +7715,7 @@ msgid "The following parts are low on required stock" msgstr "" #: templates/email/build_order_required_stock.html:18 -#: templates/js/translated/bom.js:1483 +#: templates/js/translated/bom.js:1481 msgid "Required Quantity" msgstr "" @@ -7716,6 +7729,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:19 +#: templates/js/translated/part.js:2498 msgid "Minimum Quantity" msgstr "Минимальное количество" @@ -7917,10 +7931,10 @@ msgstr "" msgid "Row Data" msgstr "" -#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:622 +#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:620 #: templates/js/translated/modals.js:56 templates/js/translated/modals.js:601 #: templates/js/translated/modals.js:695 templates/js/translated/modals.js:1003 -#: templates/js/translated/order.js:979 templates/modals.html:15 +#: templates/js/translated/order.js:1018 templates/modals.html:15 #: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50 msgid "Close" msgstr "" @@ -7930,12 +7944,12 @@ msgid "Download BOM Template" msgstr "Скачать шаблон BOM" #: templates/js/translated/bom.js:253 templates/js/translated/bom.js:287 -#: templates/js/translated/order.js:760 templates/js/translated/tables.js:145 +#: templates/js/translated/order.js:799 templates/js/translated/tables.js:145 msgid "Format" msgstr "" #: templates/js/translated/bom.js:254 templates/js/translated/bom.js:288 -#: templates/js/translated/order.js:761 +#: templates/js/translated/order.js:800 msgid "Select file format" msgstr "" @@ -7991,390 +8005,390 @@ msgstr "" msgid "Remove substitute part" msgstr "" -#: templates/js/translated/bom.js:567 +#: templates/js/translated/bom.js:565 msgid "Select and add a new substitute part using the input below" msgstr "" -#: templates/js/translated/bom.js:578 +#: templates/js/translated/bom.js:576 msgid "Are you sure you wish to remove this substitute part link?" msgstr "" -#: templates/js/translated/bom.js:584 +#: templates/js/translated/bom.js:582 msgid "Remove Substitute Part" msgstr "" -#: templates/js/translated/bom.js:623 +#: templates/js/translated/bom.js:621 msgid "Add Substitute" msgstr "" -#: templates/js/translated/bom.js:624 +#: templates/js/translated/bom.js:622 msgid "Edit BOM Item Substitutes" msgstr "" -#: templates/js/translated/bom.js:686 +#: templates/js/translated/bom.js:684 msgid "All selected BOM items will be deleted" msgstr "" -#: templates/js/translated/bom.js:702 +#: templates/js/translated/bom.js:700 msgid "Delete selected BOM items?" msgstr "" -#: templates/js/translated/bom.js:821 +#: templates/js/translated/bom.js:819 msgid "Load BOM for subassembly" msgstr "" -#: templates/js/translated/bom.js:831 +#: templates/js/translated/bom.js:829 msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:835 templates/js/translated/build.js:1771 +#: templates/js/translated/bom.js:833 templates/js/translated/build.js:1803 msgid "Variant stock allowed" msgstr "" -#: templates/js/translated/bom.js:929 templates/js/translated/build.js:1816 -#: templates/js/translated/order.js:3632 +#: templates/js/translated/bom.js:927 templates/js/translated/build.js:1849 +#: templates/js/translated/order.js:3671 msgid "No Stock Available" msgstr "" -#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1820 +#: templates/js/translated/bom.js:932 templates/js/translated/build.js:1853 msgid "Includes variant and substitute stock" msgstr "" -#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822 +#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1855 #: templates/js/translated/part.js:763 msgid "Includes variant stock" msgstr "" -#: templates/js/translated/bom.js:938 templates/js/translated/build.js:1824 +#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1857 msgid "Includes substitute stock" msgstr "" -#: templates/js/translated/bom.js:956 +#: templates/js/translated/bom.js:954 msgid "Substitutes" msgstr "" -#: templates/js/translated/bom.js:971 +#: templates/js/translated/bom.js:969 msgid "Purchase Price Range" msgstr "" -#: templates/js/translated/bom.js:978 +#: templates/js/translated/bom.js:976 msgid "Purchase Price Average" msgstr "" -#: templates/js/translated/bom.js:1027 templates/js/translated/bom.js:1147 +#: templates/js/translated/bom.js:1025 templates/js/translated/bom.js:1145 msgid "View BOM" msgstr "" -#: templates/js/translated/bom.js:1054 +#: templates/js/translated/bom.js:1052 msgid "Including On Order" msgstr "" -#: templates/js/translated/bom.js:1118 +#: templates/js/translated/bom.js:1116 msgid "Validate BOM Item" msgstr "" -#: templates/js/translated/bom.js:1120 +#: templates/js/translated/bom.js:1118 msgid "This line has been validated" msgstr "" -#: templates/js/translated/bom.js:1122 +#: templates/js/translated/bom.js:1120 msgid "Edit substitute parts" msgstr "" -#: templates/js/translated/bom.js:1124 templates/js/translated/bom.js:1286 +#: templates/js/translated/bom.js:1122 templates/js/translated/bom.js:1284 msgid "Edit BOM Item" msgstr "Редактировать элемент BOM" -#: templates/js/translated/bom.js:1126 +#: templates/js/translated/bom.js:1124 msgid "Delete BOM Item" msgstr "Удалить элемент BOM" -#: templates/js/translated/bom.js:1222 templates/js/translated/build.js:1617 +#: templates/js/translated/bom.js:1220 templates/js/translated/build.js:1649 msgid "No BOM items found" msgstr "Элементы BOM не найдены" -#: templates/js/translated/bom.js:1466 templates/js/translated/build.js:1755 +#: templates/js/translated/bom.js:1464 templates/js/translated/build.js:1787 msgid "Required Part" msgstr "" -#: templates/js/translated/bom.js:1488 +#: templates/js/translated/bom.js:1486 msgid "Inherited from parent BOM" msgstr "Унаследовано от родительского BOM" -#: templates/js/translated/build.js:86 +#: templates/js/translated/build.js:89 msgid "Edit Build Order" msgstr "Редактировать заказ на сборку" -#: templates/js/translated/build.js:120 +#: templates/js/translated/build.js:132 msgid "Create Build Order" msgstr "Создать заказ на сборку" -#: templates/js/translated/build.js:133 +#: templates/js/translated/build.js:165 msgid "Cancel Build Order" msgstr "" -#: templates/js/translated/build.js:142 +#: templates/js/translated/build.js:174 msgid "Are you sure you wish to cancel this build?" msgstr "Вы уверены, что хотите отменить эту сборку?" -#: templates/js/translated/build.js:148 +#: templates/js/translated/build.js:180 msgid "Stock items have been allocated to this build order" msgstr "" -#: templates/js/translated/build.js:155 +#: templates/js/translated/build.js:187 msgid "There are incomplete outputs remaining for this build order" msgstr "" -#: templates/js/translated/build.js:185 +#: templates/js/translated/build.js:217 msgid "Build order is ready to be completed" msgstr "" -#: templates/js/translated/build.js:190 +#: templates/js/translated/build.js:222 msgid "Build Order is incomplete" msgstr "" -#: templates/js/translated/build.js:222 +#: templates/js/translated/build.js:254 msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:263 templates/js/translated/stock.js:92 +#: templates/js/translated/build.js:295 templates/js/translated/stock.js:92 #: templates/js/translated/stock.js:214 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:265 templates/js/translated/stock.js:94 +#: templates/js/translated/build.js:297 templates/js/translated/stock.js:94 #: templates/js/translated/stock.js:216 msgid "Latest serial number" msgstr "" -#: templates/js/translated/build.js:274 +#: templates/js/translated/build.js:306 msgid "The Bill of Materials contains trackable parts" msgstr "Спецификация содержит отслеживаемые детали" -#: templates/js/translated/build.js:275 +#: templates/js/translated/build.js:307 msgid "Build outputs must be generated individually" msgstr "" -#: templates/js/translated/build.js:283 +#: templates/js/translated/build.js:315 msgid "Trackable parts can have serial numbers specified" msgstr "Отслеживаемые детали могут иметь серийные номера" -#: templates/js/translated/build.js:284 +#: templates/js/translated/build.js:316 msgid "Enter serial numbers to generate multiple single build outputs" msgstr "" -#: templates/js/translated/build.js:291 +#: templates/js/translated/build.js:323 msgid "Create Build Output" msgstr "" -#: templates/js/translated/build.js:322 +#: templates/js/translated/build.js:354 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:333 +#: templates/js/translated/build.js:365 msgid "Unallocate stock from build output" msgstr "" -#: templates/js/translated/build.js:342 +#: templates/js/translated/build.js:374 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:350 +#: templates/js/translated/build.js:382 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:373 +#: templates/js/translated/build.js:405 msgid "Are you sure you wish to unallocate stock items from this build?" msgstr "" -#: templates/js/translated/build.js:391 +#: templates/js/translated/build.js:423 msgid "Unallocate Stock Items" msgstr "" -#: templates/js/translated/build.js:411 templates/js/translated/build.js:563 +#: templates/js/translated/build.js:443 templates/js/translated/build.js:595 msgid "Select Build Outputs" msgstr "" -#: templates/js/translated/build.js:412 templates/js/translated/build.js:564 +#: templates/js/translated/build.js:444 templates/js/translated/build.js:596 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:466 templates/js/translated/build.js:618 +#: templates/js/translated/build.js:498 templates/js/translated/build.js:650 msgid "Output" msgstr "" -#: templates/js/translated/build.js:484 +#: templates/js/translated/build.js:516 msgid "Complete Build Outputs" msgstr "" -#: templates/js/translated/build.js:631 +#: templates/js/translated/build.js:663 msgid "Delete Build Outputs" msgstr "" -#: templates/js/translated/build.js:720 +#: templates/js/translated/build.js:752 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:757 +#: templates/js/translated/build.js:789 msgid "Location not specified" msgstr "" -#: templates/js/translated/build.js:1136 +#: templates/js/translated/build.js:1168 msgid "No active build outputs found" msgstr "" -#: templates/js/translated/build.js:1205 +#: templates/js/translated/build.js:1237 msgid "Allocated Stock" msgstr "" -#: templates/js/translated/build.js:1212 +#: templates/js/translated/build.js:1244 msgid "No tracked BOM items for this build" msgstr "" -#: templates/js/translated/build.js:1234 +#: templates/js/translated/build.js:1266 msgid "Completed Tests" msgstr "" -#: templates/js/translated/build.js:1239 +#: templates/js/translated/build.js:1271 msgid "No required tests for this build" msgstr "" -#: templates/js/translated/build.js:1712 templates/js/translated/build.js:2656 -#: templates/js/translated/order.js:3332 +#: templates/js/translated/build.js:1744 templates/js/translated/build.js:2689 +#: templates/js/translated/order.js:3371 msgid "Edit stock allocation" msgstr "" -#: templates/js/translated/build.js:1714 templates/js/translated/build.js:2657 -#: templates/js/translated/order.js:3333 +#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2690 +#: templates/js/translated/order.js:3372 msgid "Delete stock allocation" msgstr "" -#: templates/js/translated/build.js:1732 +#: templates/js/translated/build.js:1764 msgid "Edit Allocation" msgstr "" -#: templates/js/translated/build.js:1742 +#: templates/js/translated/build.js:1774 msgid "Remove Allocation" msgstr "" -#: templates/js/translated/build.js:1767 +#: templates/js/translated/build.js:1799 msgid "Substitute parts available" msgstr "" -#: templates/js/translated/build.js:1784 +#: templates/js/translated/build.js:1816 msgid "Quantity Per" msgstr "" -#: templates/js/translated/build.js:1810 templates/js/translated/order.js:3639 +#: templates/js/translated/build.js:1843 templates/js/translated/order.js:3678 msgid "Insufficient stock available" msgstr "" -#: templates/js/translated/build.js:1812 templates/js/translated/order.js:3637 +#: templates/js/translated/build.js:1845 templates/js/translated/order.js:3676 msgid "Sufficient stock available" msgstr "" -#: templates/js/translated/build.js:1841 templates/js/translated/build.js:2086 -#: templates/js/translated/build.js:2652 templates/js/translated/order.js:3651 +#: templates/js/translated/build.js:1874 templates/js/translated/build.js:2119 +#: templates/js/translated/build.js:2685 templates/js/translated/order.js:3690 msgid "Allocated" msgstr "" -#: templates/js/translated/build.js:1889 templates/js/translated/order.js:3731 +#: templates/js/translated/build.js:1922 templates/js/translated/order.js:3770 msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:1893 templates/stock_table.html:50 +#: templates/js/translated/build.js:1926 templates/stock_table.html:50 msgid "Order stock" msgstr "" -#: templates/js/translated/build.js:1896 templates/js/translated/order.js:3724 +#: templates/js/translated/build.js:1929 templates/js/translated/order.js:3763 msgid "Allocate stock" msgstr "" -#: templates/js/translated/build.js:1935 templates/js/translated/label.js:172 -#: templates/js/translated/order.js:807 templates/js/translated/order.js:2859 +#: templates/js/translated/build.js:1968 templates/js/translated/label.js:172 +#: templates/js/translated/order.js:846 templates/js/translated/order.js:2898 #: templates/js/translated/report.js:225 msgid "Select Parts" msgstr "" -#: templates/js/translated/build.js:1936 templates/js/translated/order.js:2860 +#: templates/js/translated/build.js:1969 templates/js/translated/order.js:2899 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1985 templates/js/translated/order.js:2808 +#: templates/js/translated/build.js:2018 templates/js/translated/order.js:2847 msgid "Specify stock allocation quantity" msgstr "" -#: templates/js/translated/build.js:2059 +#: templates/js/translated/build.js:2092 msgid "All Parts Allocated" msgstr "" -#: templates/js/translated/build.js:2060 +#: templates/js/translated/build.js:2093 msgid "All selected parts have been fully allocated" msgstr "" -#: templates/js/translated/build.js:2074 templates/js/translated/order.js:2874 +#: templates/js/translated/build.js:2107 templates/js/translated/order.js:2913 msgid "Select source location (leave blank to take from all locations)" msgstr "" -#: templates/js/translated/build.js:2102 +#: templates/js/translated/build.js:2135 msgid "Allocate Stock Items to Build Order" msgstr "" -#: templates/js/translated/build.js:2113 templates/js/translated/order.js:2971 +#: templates/js/translated/build.js:2146 templates/js/translated/order.js:3010 msgid "No matching stock locations" msgstr "" -#: templates/js/translated/build.js:2185 templates/js/translated/order.js:3048 +#: templates/js/translated/build.js:2218 templates/js/translated/order.js:3087 msgid "No matching stock items" msgstr "" -#: templates/js/translated/build.js:2282 +#: templates/js/translated/build.js:2315 msgid "Automatic Stock Allocation" msgstr "" -#: templates/js/translated/build.js:2283 +#: templates/js/translated/build.js:2316 msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines" msgstr "" -#: templates/js/translated/build.js:2285 +#: templates/js/translated/build.js:2318 msgid "If a location is specifed, stock will only be allocated from that location" msgstr "" -#: templates/js/translated/build.js:2286 +#: templates/js/translated/build.js:2319 msgid "If stock is considered interchangeable, it will be allocated from the first location it is found" msgstr "" -#: templates/js/translated/build.js:2287 +#: templates/js/translated/build.js:2320 msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found" msgstr "" -#: templates/js/translated/build.js:2308 +#: templates/js/translated/build.js:2341 msgid "Allocate Stock Items" msgstr "" -#: templates/js/translated/build.js:2414 +#: templates/js/translated/build.js:2447 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387 -#: templates/js/translated/part.js:1899 templates/js/translated/stock.js:1686 +#: templates/js/translated/build.js:2482 templates/js/translated/part.js:1387 +#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1686 #: templates/js/translated/stock.js:2386 msgid "Select" msgstr "" -#: templates/js/translated/build.js:2463 +#: templates/js/translated/build.js:2496 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:2491 +#: templates/js/translated/build.js:2524 msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647 +#: templates/js/translated/build.js:2560 templates/js/translated/stock.js:2647 msgid "No user information" msgstr "" -#: templates/js/translated/build.js:2633 +#: templates/js/translated/build.js:2666 msgid "No parts allocated for" msgstr "" @@ -8390,11 +8404,11 @@ msgstr "Добавить деталь производителя" msgid "Edit Manufacturer Part" msgstr "Редактировать деталь производителя" -#: templates/js/translated/company.js:167 templates/js/translated/order.js:509 +#: templates/js/translated/company.js:167 templates/js/translated/order.js:510 msgid "Add Supplier" msgstr "Добавить поставщика" -#: templates/js/translated/company.js:195 templates/js/translated/order.js:628 +#: templates/js/translated/company.js:195 templates/js/translated/order.js:667 msgid "Add Supplier Part" msgstr "Добавить деталь поставщика" @@ -8765,381 +8779,385 @@ msgstr "" msgid "Notifications will load here" msgstr "" -#: templates/js/translated/order.js:94 +#: templates/js/translated/order.js:95 msgid "No stock items have been allocated to this shipment" msgstr "" -#: templates/js/translated/order.js:99 +#: templates/js/translated/order.js:100 msgid "The following stock items will be shipped" msgstr "" -#: templates/js/translated/order.js:139 +#: templates/js/translated/order.js:140 msgid "Complete Shipment" msgstr "" -#: templates/js/translated/order.js:159 +#: templates/js/translated/order.js:160 msgid "Confirm Shipment" msgstr "" -#: templates/js/translated/order.js:215 +#: templates/js/translated/order.js:216 msgid "No pending shipments found" msgstr "" -#: templates/js/translated/order.js:219 +#: templates/js/translated/order.js:220 msgid "No stock items have been allocated to pending shipments" msgstr "" -#: templates/js/translated/order.js:251 +#: templates/js/translated/order.js:252 msgid "Skip" msgstr "" -#: templates/js/translated/order.js:281 +#: templates/js/translated/order.js:282 msgid "Complete Purchase Order" msgstr "" -#: templates/js/translated/order.js:287 +#: templates/js/translated/order.js:288 msgid "Mark this order as complete?" msgstr "" -#: templates/js/translated/order.js:293 +#: templates/js/translated/order.js:294 msgid "All line items have been received" msgstr "" -#: templates/js/translated/order.js:298 +#: templates/js/translated/order.js:299 msgid "This order has line items which have not been marked as received." msgstr "" -#: templates/js/translated/order.js:299 +#: templates/js/translated/order.js:300 msgid "Completing this order means that the order and line items will no longer be editable." msgstr "" -#: templates/js/translated/order.js:322 +#: templates/js/translated/order.js:323 msgid "Cancel Purchase Order" msgstr "" -#: templates/js/translated/order.js:327 +#: templates/js/translated/order.js:328 msgid "Are you sure you wish to cancel this purchase order?" msgstr "" -#: templates/js/translated/order.js:333 +#: templates/js/translated/order.js:334 msgid "This purchase order can not be cancelled" msgstr "" -#: templates/js/translated/order.js:356 +#: templates/js/translated/order.js:357 msgid "Issue Purchase Order" msgstr "" -#: templates/js/translated/order.js:361 +#: templates/js/translated/order.js:362 msgid "After placing this purchase order, line items will no longer be editable." msgstr "" -#: templates/js/translated/order.js:383 +#: templates/js/translated/order.js:384 msgid "Cancel Sales Order" msgstr "" -#: templates/js/translated/order.js:388 +#: templates/js/translated/order.js:389 msgid "Cancelling this order means that the order will no longer be editable." msgstr "Отмена этого заказа означает, что заказ нельзя будет редактировать." -#: templates/js/translated/order.js:442 +#: templates/js/translated/order.js:443 msgid "Create New Shipment" msgstr "" -#: templates/js/translated/order.js:467 +#: templates/js/translated/order.js:468 msgid "Add Customer" msgstr "" -#: templates/js/translated/order.js:492 +#: templates/js/translated/order.js:493 msgid "Create Sales Order" msgstr "" -#: templates/js/translated/order.js:757 +#: templates/js/translated/order.js:554 +msgid "Edit Purchase Order" +msgstr "Редактировать заказ на закупку" + +#: templates/js/translated/order.js:796 msgid "Export Order" msgstr "" -#: templates/js/translated/order.js:808 +#: templates/js/translated/order.js:847 msgid "At least one purchaseable part must be selected" msgstr "" -#: templates/js/translated/order.js:833 +#: templates/js/translated/order.js:872 msgid "Quantity to order" msgstr "" -#: templates/js/translated/order.js:842 +#: templates/js/translated/order.js:881 msgid "New supplier part" msgstr "" -#: templates/js/translated/order.js:860 +#: templates/js/translated/order.js:899 msgid "New purchase order" msgstr "" -#: templates/js/translated/order.js:893 +#: templates/js/translated/order.js:932 msgid "Add to purchase order" msgstr "" -#: templates/js/translated/order.js:1002 +#: templates/js/translated/order.js:1041 msgid "No matching supplier parts" msgstr "" -#: templates/js/translated/order.js:1017 +#: templates/js/translated/order.js:1056 msgid "No matching purchase orders" msgstr "" -#: templates/js/translated/order.js:1194 +#: templates/js/translated/order.js:1233 msgid "Select Line Items" msgstr "" -#: templates/js/translated/order.js:1195 +#: templates/js/translated/order.js:1234 msgid "At least one line item must be selected" msgstr "" -#: templates/js/translated/order.js:1215 templates/js/translated/order.js:1314 +#: templates/js/translated/order.js:1254 templates/js/translated/order.js:1353 msgid "Add batch code" msgstr "Добавить код партии" -#: templates/js/translated/order.js:1221 templates/js/translated/order.js:1325 +#: templates/js/translated/order.js:1260 templates/js/translated/order.js:1364 msgid "Add serial numbers" msgstr "" -#: templates/js/translated/order.js:1233 +#: templates/js/translated/order.js:1272 msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144 +#: templates/js/translated/order.js:1336 templates/js/translated/stock.js:2144 msgid "Stock Status" msgstr "" -#: templates/js/translated/order.js:1388 +#: templates/js/translated/order.js:1427 msgid "Order Code" msgstr "" -#: templates/js/translated/order.js:1389 +#: templates/js/translated/order.js:1428 msgid "Ordered" msgstr "" -#: templates/js/translated/order.js:1391 +#: templates/js/translated/order.js:1430 msgid "Quantity to Receive" msgstr "" -#: templates/js/translated/order.js:1410 +#: templates/js/translated/order.js:1449 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/order.js:1411 +#: templates/js/translated/order.js:1450 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943 +#: templates/js/translated/order.js:1711 templates/js/translated/part.js:943 msgid "No purchase orders found" msgstr "Заказов на закупку не найдено" -#: templates/js/translated/order.js:1699 templates/js/translated/order.js:2503 +#: templates/js/translated/order.js:1738 templates/js/translated/order.js:2542 msgid "Order is overdue" msgstr "" -#: templates/js/translated/order.js:1749 templates/js/translated/order.js:2568 -#: templates/js/translated/order.js:2709 +#: templates/js/translated/order.js:1788 templates/js/translated/order.js:2607 +#: templates/js/translated/order.js:2748 msgid "Items" msgstr "" -#: templates/js/translated/order.js:1847 templates/js/translated/order.js:3783 +#: templates/js/translated/order.js:1886 templates/js/translated/order.js:3822 msgid "Duplicate Line Item" msgstr "" -#: templates/js/translated/order.js:1864 templates/js/translated/order.js:3805 +#: templates/js/translated/order.js:1903 templates/js/translated/order.js:3844 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/order.js:1877 templates/js/translated/order.js:3816 +#: templates/js/translated/order.js:1916 templates/js/translated/order.js:3855 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/order.js:1920 +#: templates/js/translated/order.js:1959 msgid "No line items found" msgstr "" -#: templates/js/translated/order.js:1947 templates/js/translated/order.js:3517 +#: templates/js/translated/order.js:1986 templates/js/translated/order.js:3556 msgid "Total" msgstr "" -#: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203 -#: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050 -#: templates/js/translated/part.js:2135 templates/js/translated/part.js:2488 +#: templates/js/translated/order.js:2040 templates/js/translated/order.js:2242 +#: templates/js/translated/order.js:3581 templates/js/translated/order.js:4089 +#: templates/js/translated/part.js:2131 templates/js/translated/part.js:2703 msgid "Unit Price" msgstr "" -#: templates/js/translated/order.js:2016 templates/js/translated/order.js:2219 -#: templates/js/translated/order.js:3558 templates/js/translated/order.js:4066 +#: templates/js/translated/order.js:2055 templates/js/translated/order.js:2258 +#: templates/js/translated/order.js:3597 templates/js/translated/order.js:4105 msgid "Total Price" msgstr "Общая стоимость" -#: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600 +#: templates/js/translated/order.js:2096 templates/js/translated/order.js:3639 #: templates/js/translated/part.js:1050 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096 +#: templates/js/translated/order.js:2155 templates/js/translated/part.js:1096 msgid "Receive line item" msgstr "" -#: templates/js/translated/order.js:2120 templates/js/translated/order.js:3737 +#: templates/js/translated/order.js:2159 templates/js/translated/order.js:3776 msgid "Duplicate line item" msgstr "" -#: templates/js/translated/order.js:2121 templates/js/translated/order.js:3738 +#: templates/js/translated/order.js:2160 templates/js/translated/order.js:3777 msgid "Edit line item" msgstr "" -#: templates/js/translated/order.js:2122 templates/js/translated/order.js:3742 +#: templates/js/translated/order.js:2161 templates/js/translated/order.js:3781 msgid "Delete line item" msgstr "" -#: templates/js/translated/order.js:2268 templates/js/translated/order.js:4115 +#: templates/js/translated/order.js:2307 templates/js/translated/order.js:4154 msgid "Duplicate line" msgstr "" -#: templates/js/translated/order.js:2269 templates/js/translated/order.js:4116 +#: templates/js/translated/order.js:2308 templates/js/translated/order.js:4155 msgid "Edit line" msgstr "" -#: templates/js/translated/order.js:2270 templates/js/translated/order.js:4117 +#: templates/js/translated/order.js:2309 templates/js/translated/order.js:4156 msgid "Delete line" msgstr "" -#: templates/js/translated/order.js:2300 templates/js/translated/order.js:4147 +#: templates/js/translated/order.js:2339 templates/js/translated/order.js:4186 msgid "Duplicate Line" msgstr "" -#: templates/js/translated/order.js:2321 templates/js/translated/order.js:4168 +#: templates/js/translated/order.js:2360 templates/js/translated/order.js:4207 msgid "Edit Line" msgstr "" -#: templates/js/translated/order.js:2332 templates/js/translated/order.js:4179 +#: templates/js/translated/order.js:2371 templates/js/translated/order.js:4218 msgid "Delete Line" msgstr "" -#: templates/js/translated/order.js:2343 +#: templates/js/translated/order.js:2382 msgid "No matching line" msgstr "" -#: templates/js/translated/order.js:2454 +#: templates/js/translated/order.js:2493 msgid "No sales orders found" msgstr "Заказы на продажу не найдены" -#: templates/js/translated/order.js:2517 +#: templates/js/translated/order.js:2556 msgid "Invalid Customer" msgstr "" -#: templates/js/translated/order.js:2615 +#: templates/js/translated/order.js:2654 msgid "Edit shipment" msgstr "" -#: templates/js/translated/order.js:2618 +#: templates/js/translated/order.js:2657 msgid "Complete shipment" msgstr "" -#: templates/js/translated/order.js:2623 +#: templates/js/translated/order.js:2662 msgid "Delete shipment" msgstr "" -#: templates/js/translated/order.js:2643 +#: templates/js/translated/order.js:2682 msgid "Edit Shipment" msgstr "" -#: templates/js/translated/order.js:2660 +#: templates/js/translated/order.js:2699 msgid "Delete Shipment" msgstr "" -#: templates/js/translated/order.js:2694 +#: templates/js/translated/order.js:2733 msgid "No matching shipments found" msgstr "" -#: templates/js/translated/order.js:2704 +#: templates/js/translated/order.js:2743 msgid "Shipment Reference" msgstr "" -#: templates/js/translated/order.js:2728 +#: templates/js/translated/order.js:2767 msgid "Not shipped" msgstr "" -#: templates/js/translated/order.js:2734 +#: templates/js/translated/order.js:2773 msgid "Tracking" msgstr "" -#: templates/js/translated/order.js:2738 +#: templates/js/translated/order.js:2777 msgid "Invoice" msgstr "" -#: templates/js/translated/order.js:2907 +#: templates/js/translated/order.js:2946 msgid "Add Shipment" msgstr "" -#: templates/js/translated/order.js:2958 +#: templates/js/translated/order.js:2997 msgid "Confirm stock allocation" msgstr "Подтвердите выделение запасов" -#: templates/js/translated/order.js:2959 +#: templates/js/translated/order.js:2998 msgid "Allocate Stock Items to Sales Order" msgstr "" -#: templates/js/translated/order.js:3167 +#: templates/js/translated/order.js:3206 msgid "No sales order allocations found" msgstr "" -#: templates/js/translated/order.js:3246 +#: templates/js/translated/order.js:3285 msgid "Edit Stock Allocation" msgstr "" -#: templates/js/translated/order.js:3263 +#: templates/js/translated/order.js:3302 msgid "Confirm Delete Operation" msgstr "" -#: templates/js/translated/order.js:3264 +#: templates/js/translated/order.js:3303 msgid "Delete Stock Allocation" msgstr "" -#: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398 +#: templates/js/translated/order.js:3348 templates/js/translated/order.js:3437 #: templates/js/translated/stock.js:1602 msgid "Shipped to customer" msgstr "" -#: templates/js/translated/order.js:3317 templates/js/translated/order.js:3407 +#: templates/js/translated/order.js:3356 templates/js/translated/order.js:3446 msgid "Stock location not specified" msgstr "" -#: templates/js/translated/order.js:3721 +#: templates/js/translated/order.js:3760 msgid "Allocate serial numbers" msgstr "" -#: templates/js/translated/order.js:3727 +#: templates/js/translated/order.js:3766 msgid "Purchase stock" msgstr "" -#: templates/js/translated/order.js:3734 templates/js/translated/order.js:3932 +#: templates/js/translated/order.js:3773 templates/js/translated/order.js:3971 msgid "Calculate price" msgstr "" -#: templates/js/translated/order.js:3746 +#: templates/js/translated/order.js:3785 msgid "Cannot be deleted as items have been shipped" msgstr "" -#: templates/js/translated/order.js:3749 +#: templates/js/translated/order.js:3788 msgid "Cannot be deleted as items have been allocated" msgstr "" -#: templates/js/translated/order.js:3831 +#: templates/js/translated/order.js:3870 msgid "Allocate Serial Numbers" msgstr "" -#: templates/js/translated/order.js:3940 +#: templates/js/translated/order.js:3979 msgid "Update Unit Price" msgstr "" -#: templates/js/translated/order.js:3954 +#: templates/js/translated/order.js:3993 msgid "No matching line items" msgstr "" -#: templates/js/translated/order.js:4190 +#: templates/js/translated/order.js:4229 msgid "No matching lines" msgstr "" @@ -9319,12 +9337,12 @@ msgstr "" msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:586 templates/js/translated/part.js:1470 +#: templates/js/translated/part.js:586 templates/js/translated/part.js:1478 #: templates/js/translated/table_filters.js:468 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:596 templates/js/translated/part.js:1482 +#: templates/js/translated/part.js:596 msgid "No stock available" msgstr "" @@ -9356,7 +9374,7 @@ msgstr "" msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1553 +#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1549 msgid "No parts found" msgstr "Детали не найдены" @@ -9368,100 +9386,124 @@ msgstr "" msgid "No category" msgstr "Нет категории" -#: templates/js/translated/part.js:1577 templates/js/translated/part.js:1820 +#: templates/js/translated/part.js:1476 +msgid "No stock" +msgstr "" + +#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816 #: templates/js/translated/stock.js:2347 msgid "Display as list" msgstr "Список" -#: templates/js/translated/part.js:1593 +#: templates/js/translated/part.js:1589 msgid "Display as grid" msgstr "Таблица" -#: templates/js/translated/part.js:1659 +#: templates/js/translated/part.js:1655 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:1664 +#: templates/js/translated/part.js:1660 msgid "Set Part Category" msgstr "Укажите категорию" -#: templates/js/translated/part.js:1669 +#: templates/js/translated/part.js:1665 msgid "Select Part Category" msgstr "" -#: templates/js/translated/part.js:1682 +#: templates/js/translated/part.js:1678 msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1839 templates/js/translated/stock.js:2366 +#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2366 msgid "Display as tree" msgstr "Дерево" -#: templates/js/translated/part.js:1918 +#: templates/js/translated/part.js:1914 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:1934 +#: templates/js/translated/part.js:1930 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:1992 +#: templates/js/translated/part.js:1988 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2043 templates/js/translated/stock.js:1299 +#: templates/js/translated/part.js:2039 templates/js/translated/stock.js:1299 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:2044 templates/js/translated/stock.js:1300 +#: templates/js/translated/part.js:2040 templates/js/translated/stock.js:1300 #: templates/js/translated/stock.js:1560 msgid "Delete test result" msgstr "" -#: templates/js/translated/part.js:2050 +#: templates/js/translated/part.js:2046 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2072 +#: templates/js/translated/part.js:2068 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2086 +#: templates/js/translated/part.js:2082 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2111 +#: templates/js/translated/part.js:2107 #, python-brace-format msgid "No ${human_name} information found" msgstr "" -#: templates/js/translated/part.js:2168 +#: templates/js/translated/part.js:2164 #, python-brace-format msgid "Edit ${human_name}" msgstr "" -#: templates/js/translated/part.js:2169 +#: templates/js/translated/part.js:2165 #, python-brace-format msgid "Delete ${human_name}" msgstr "" -#: templates/js/translated/part.js:2283 -msgid "Current Stock" +#: templates/js/translated/part.js:2330 templates/js/translated/part.js:2331 +msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:2316 +#: templates/js/translated/part.js:2333 +msgid "Specified date is in the past" +msgstr "" + +#: templates/js/translated/part.js:2339 +msgid "Speculative" +msgstr "" + +#: templates/js/translated/part.js:2389 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2342 +#: templates/js/translated/part.js:2395 +msgid "Error fetching scheduling information for this part" +msgstr "" + +#: templates/js/translated/part.js:2491 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2412 +#: templates/js/translated/part.js:2507 +msgid "Maximum Quantity" +msgstr "" + +#: templates/js/translated/part.js:2533 +msgid "Minimum Stock Level" +msgstr "" + +#: templates/js/translated/part.js:2627 msgid "Single Price" msgstr "" -#: templates/js/translated/part.js:2431 +#: templates/js/translated/part.js:2646 msgid "Single Price Difference" msgstr "" @@ -10222,10 +10264,6 @@ msgstr "Ничего не найдено" msgid "Hide/Show pagination" msgstr "" -#: templates/js/translated/tables.js:558 -msgid "Refresh" -msgstr "Обновить" - #: templates/js/translated/tables.js:561 msgid "Toggle" msgstr "" diff --git a/InvenTree/locale/sv/LC_MESSAGES/django.po b/InvenTree/locale/sv/LC_MESSAGES/django.po index dd7fbfcfc6..8a17499c17 100644 --- a/InvenTree/locale/sv/LC_MESSAGES/django.po +++ b/InvenTree/locale/sv/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-16 11:53+0000\n" -"PO-Revision-Date: 2022-08-16 21:35\n" +"POT-Creation-Date: 2022-08-18 05:14+0000\n" +"PO-Revision-Date: 2022-08-18 21:39\n" "Last-Translator: \n" "Language-Team: Swedish\n" "Language: sv_SE\n" @@ -40,10 +40,10 @@ msgstr "Ange datum" #: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825 #: stock/serializers.py:924 stock/serializers.py:1056 #: stock/templates/stock/stock_sidebar.html:25 -#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101 -#: templates/js/translated/company.js:964 templates/js/translated/order.js:2104 -#: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753 -#: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102 +#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1099 +#: templates/js/translated/company.js:964 templates/js/translated/order.js:2143 +#: templates/js/translated/order.js:2294 templates/js/translated/order.js:2792 +#: templates/js/translated/order.js:3743 templates/js/translated/order.js:4141 #: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980 msgid "Notes" msgstr "Anteeckningar" @@ -211,11 +211,11 @@ msgstr "Välj fil att bifoga" #: InvenTree/models.py:402 company/models.py:124 company/models.py:276 #: company/models.py:510 order/models.py:84 order/models.py:1245 -#: part/models.py:802 +#: part/models.py:802 part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_base.html:164 #: templates/js/translated/company.js:656 -#: templates/js/translated/company.js:948 templates/js/translated/order.js:2742 -#: templates/js/translated/part.js:1514 +#: templates/js/translated/company.js:948 templates/js/translated/order.js:2781 +#: templates/js/translated/part.js:1510 msgid "Link" msgstr "Länk" @@ -235,8 +235,8 @@ msgstr "Fil kommentar" #: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665 #: common/models.py:1666 common/models.py:1889 common/models.py:1890 -#: common/models.py:2152 common/models.py:2153 part/models.py:2200 -#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257 +#: common/models.py:2152 common/models.py:2153 part/models.py:2247 +#: part/models.py:2267 plugin/models.py:256 plugin/models.py:257 #: report/templates/report/inventree_test_report_base.html:96 #: templates/js/translated/stock.js:2641 msgid "User" @@ -277,7 +277,7 @@ msgstr "Ogiltigt val" #: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875 #: company/models.py:358 label/models.py:101 part/models.py:746 -#: part/models.py:2378 plugin/models.py:94 report/models.py:152 +#: part/models.py:2425 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 #: templates/InvenTree/settings/plugin.html:51 #: templates/InvenTree/settings/plugin.html:134 @@ -287,7 +287,7 @@ msgstr "Ogiltigt val" #: templates/js/translated/company.js:758 #: templates/js/translated/notification.js:71 #: templates/js/translated/part.js:688 templates/js/translated/part.js:840 -#: templates/js/translated/part.js:1906 templates/js/translated/stock.js:2392 +#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2392 msgid "Name" msgstr "Namn" @@ -297,19 +297,20 @@ msgstr "Namn" #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:87 label/models.py:108 #: order/models.py:82 part/models.py:769 part/templates/part/category.html:80 -#: part/templates/part/part_base.html:167 report/models.py:165 +#: part/templates/part/part_base.html:167 +#: part/templates/part/part_scheduling.html:12 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 #: stock/templates/stock/location.html:108 #: templates/InvenTree/settings/plugin_settings.html:33 -#: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848 -#: templates/js/translated/build.js:2471 templates/js/translated/company.js:409 +#: templates/js/translated/bom.js:553 templates/js/translated/bom.js:846 +#: templates/js/translated/build.js:2504 templates/js/translated/company.js:409 #: templates/js/translated/company.js:667 -#: templates/js/translated/company.js:959 templates/js/translated/order.js:1720 -#: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531 +#: templates/js/translated/company.js:959 templates/js/translated/order.js:1759 +#: templates/js/translated/order.js:1991 templates/js/translated/order.js:2570 #: templates/js/translated/part.js:747 templates/js/translated/part.js:1153 -#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1942 -#: templates/js/translated/part.js:2011 templates/js/translated/stock.js:1743 +#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1938 +#: templates/js/translated/part.js:2007 templates/js/translated/stock.js:1743 #: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478 msgid "Description" msgstr "Beskrivning" @@ -323,7 +324,7 @@ msgid "parent" msgstr "överordnad" #: InvenTree/models.py:560 InvenTree/models.py:561 -#: templates/js/translated/part.js:1948 templates/js/translated/stock.js:2430 +#: templates/js/translated/part.js:1944 templates/js/translated/stock.js:2430 msgid "Path" msgstr "" @@ -335,7 +336,7 @@ msgstr "Serverfel" msgid "An error has been logged by the server." msgstr "Ett fel har loggats av servern." -#: InvenTree/serializers.py:55 part/models.py:2699 +#: InvenTree/serializers.py:55 part/models.py:2746 msgid "Must be a valid number" msgstr "Måste vara ett giltigt nummer" @@ -541,7 +542,7 @@ msgid "Returned" msgstr "Återlämnad" #: InvenTree/status_codes.py:141 order/models.py:1128 -#: templates/js/translated/order.js:3330 templates/js/translated/order.js:3679 +#: templates/js/translated/order.js:3369 templates/js/translated/order.js:3718 msgid "Shipped" msgstr "Skickad" @@ -728,7 +729,7 @@ msgstr "" #: report/templates/report/inventree_build_order_base.html:105 #: templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 -#: templates/js/translated/build.js:731 +#: templates/js/translated/build.js:763 msgid "Build Order" msgstr "Byggorder" @@ -747,14 +748,14 @@ msgid "Build Order Reference" msgstr "Byggorderreferens" #: build/models.py:166 order/models.py:240 order/models.py:623 -#: order/models.py:904 part/models.py:2617 +#: order/models.py:904 part/models.py:2664 #: part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 -#: templates/js/translated/bom.js:692 templates/js/translated/bom.js:855 -#: templates/js/translated/build.js:1779 templates/js/translated/order.js:1983 -#: templates/js/translated/order.js:2184 templates/js/translated/order.js:3523 -#: templates/js/translated/order.js:4031 +#: templates/js/translated/bom.js:690 templates/js/translated/bom.js:853 +#: templates/js/translated/build.js:1811 templates/js/translated/order.js:2022 +#: templates/js/translated/order.js:2223 templates/js/translated/order.js:3562 +#: templates/js/translated/order.js:4070 msgid "Reference" msgstr "Referens" @@ -762,7 +763,7 @@ msgstr "Referens" msgid "Brief description of the build" msgstr "Kort beskrivning av bygget" -#: build/models.py:185 build/templates/build/build_base.html:169 +#: build/models.py:185 build/templates/build/build_base.html:172 #: build/templates/build/detail.html:87 msgid "Parent Build" msgstr "Överordnat Bygge" @@ -771,13 +772,13 @@ msgstr "Överordnat Bygge" msgid "BuildOrder to which this build is allocated" msgstr "" -#: build/models.py:191 build/templates/build/build_base.html:77 +#: build/models.py:191 build/templates/build/build_base.html:80 #: build/templates/build/detail.html:29 company/models.py:670 #: order/models.py:1001 order/models.py:1112 order/models.py:1113 -#: part/models.py:343 part/models.py:2146 part/models.py:2161 -#: part/models.py:2180 part/models.py:2198 part/models.py:2297 -#: part/models.py:2417 part/models.py:2507 part/models.py:2592 -#: part/models.py:2868 part/serializers.py:813 +#: part/models.py:343 part/models.py:2193 part/models.py:2208 +#: part/models.py:2227 part/models.py:2245 part/models.py:2344 +#: part/models.py:2464 part/models.py:2554 part/models.py:2639 +#: part/models.py:2915 part/serializers.py:813 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -789,17 +790,17 @@ msgstr "" #: templates/email/build_order_required_stock.html:17 #: templates/email/low_stock_notification.html:16 #: templates/email/overdue_build_order.html:16 -#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:553 -#: templates/js/translated/bom.js:691 templates/js/translated/bom.js:802 -#: templates/js/translated/build.js:1156 templates/js/translated/build.js:1649 -#: templates/js/translated/build.js:2085 templates/js/translated/build.js:2476 +#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:552 +#: templates/js/translated/bom.js:689 templates/js/translated/bom.js:800 +#: templates/js/translated/build.js:1188 templates/js/translated/build.js:1681 +#: templates/js/translated/build.js:2118 templates/js/translated/build.js:2509 #: templates/js/translated/company.js:266 #: templates/js/translated/company.js:496 #: templates/js/translated/company.js:608 -#: templates/js/translated/company.js:868 templates/js/translated/order.js:103 -#: templates/js/translated/order.js:934 templates/js/translated/order.js:1387 -#: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885 -#: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507 +#: templates/js/translated/company.js:868 templates/js/translated/order.js:104 +#: templates/js/translated/order.js:973 templates/js/translated/order.js:1426 +#: templates/js/translated/order.js:1976 templates/js/translated/order.js:2924 +#: templates/js/translated/order.js:3320 templates/js/translated/order.js:3546 #: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210 #: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586 #: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958 @@ -821,7 +822,7 @@ msgid "SalesOrder to which this build is allocated" msgstr "" #: build/models.py:213 build/serializers.py:800 -#: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873 +#: templates/js/translated/build.js:2106 templates/js/translated/order.js:2912 msgid "Source Location" msgstr "" @@ -862,7 +863,7 @@ msgid "Build status code" msgstr "" #: build/models.py:251 build/serializers.py:225 order/serializers.py:447 -#: stock/models.py:662 templates/js/translated/order.js:1247 +#: stock/models.py:662 templates/js/translated/order.js:1286 msgid "Batch Code" msgstr "" @@ -871,7 +872,7 @@ msgid "Batch code for this build output" msgstr "" #: build/models.py:258 order/models.py:86 part/models.py:938 -#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544 +#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2583 msgid "Creation Date" msgstr "Skapad" @@ -884,7 +885,7 @@ msgid "Target date for build completion. Build will be overdue after this date." msgstr "" #: build/models.py:266 order/models.py:286 -#: templates/js/translated/build.js:2553 +#: templates/js/translated/build.js:2586 msgid "Completion Date" msgstr "" @@ -892,7 +893,7 @@ msgstr "" msgid "completed by" msgstr "" -#: build/models.py:280 templates/js/translated/build.js:2521 +#: build/models.py:280 templates/js/translated/build.js:2554 msgid "Issued by" msgstr "" @@ -900,12 +901,12 @@ msgstr "" msgid "User who issued this build order" msgstr "Användare som utfärdade denna byggorder" -#: build/models.py:289 build/templates/build/build_base.html:190 +#: build/models.py:289 build/templates/build/build_base.html:193 #: build/templates/build/detail.html:115 order/models.py:100 #: order/templates/order/order_base.html:176 #: order/templates/order/sales_order_base.html:183 part/models.py:942 #: report/templates/report/inventree_build_order_base.html:158 -#: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754 +#: templates/js/translated/build.js:2566 templates/js/translated/order.js:1793 msgid "Responsible" msgstr "Ansvarig" @@ -972,7 +973,7 @@ msgid "Selected stock item not found in BOM" msgstr "" #: build/models.py:1328 stock/templates/stock/item_base.html:177 -#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2455 +#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2488 #: templates/navbar.html:38 msgid "Build" msgstr "Bygg" @@ -986,11 +987,11 @@ msgstr "" #: stock/serializers.py:882 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:199 -#: templates/js/translated/build.js:741 templates/js/translated/build.js:746 -#: templates/js/translated/build.js:2087 templates/js/translated/build.js:2638 -#: templates/js/translated/order.js:104 templates/js/translated/order.js:2886 -#: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193 -#: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380 +#: templates/js/translated/build.js:773 templates/js/translated/build.js:778 +#: templates/js/translated/build.js:2120 templates/js/translated/build.js:2671 +#: templates/js/translated/order.js:105 templates/js/translated/order.js:2925 +#: templates/js/translated/order.js:3227 templates/js/translated/order.js:3232 +#: templates/js/translated/order.js:3327 templates/js/translated/order.js:3419 #: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752 #: templates/js/translated/stock.js:2577 msgid "Stock Item" @@ -1001,13 +1002,13 @@ msgid "Source stock item" msgstr "" #: build/models.py:1358 build/serializers.py:193 -#: build/templates/build/build_base.html:82 +#: build/templates/build/build_base.html:85 #: build/templates/build/detail.html:34 common/models.py:1697 #: company/templates/company/supplier_part.html:279 order/models.py:897 #: order/models.py:1423 order/serializers.py:1155 #: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40 -#: part/models.py:2608 part/templates/part/detail.html:937 -#: part/templates/part/detail.html:1023 +#: part/models.py:2655 part/templates/part/detail.html:951 +#: part/templates/part/detail.html:1037 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 #: report/templates/report/inventree_build_order_base.html:113 @@ -1018,20 +1019,20 @@ msgstr "" #: stock/serializers.py:293 stock/templates/stock/item_base.html:292 #: stock/templates/stock/item_base.html:300 #: templates/email/build_order_completed.html:18 -#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:693 -#: templates/js/translated/bom.js:863 templates/js/translated/build.js:426 -#: templates/js/translated/build.js:578 templates/js/translated/build.js:768 -#: templates/js/translated/build.js:1178 templates/js/translated/build.js:1675 -#: templates/js/translated/build.js:2088 +#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:691 +#: templates/js/translated/bom.js:861 templates/js/translated/build.js:458 +#: templates/js/translated/build.js:610 templates/js/translated/build.js:800 +#: templates/js/translated/build.js:1210 templates/js/translated/build.js:1707 +#: templates/js/translated/build.js:2121 #: templates/js/translated/model_renderers.js:120 -#: templates/js/translated/order.js:120 templates/js/translated/order.js:937 -#: templates/js/translated/order.js:1989 templates/js/translated/order.js:2190 -#: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207 -#: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386 -#: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037 -#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2156 -#: templates/js/translated/part.js:2387 templates/js/translated/part.js:2421 -#: templates/js/translated/part.js:2499 templates/js/translated/stock.js:458 +#: templates/js/translated/order.js:121 templates/js/translated/order.js:976 +#: templates/js/translated/order.js:2028 templates/js/translated/order.js:2229 +#: templates/js/translated/order.js:2926 templates/js/translated/order.js:3246 +#: templates/js/translated/order.js:3333 templates/js/translated/order.js:3425 +#: templates/js/translated/order.js:3568 templates/js/translated/order.js:4076 +#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2152 +#: templates/js/translated/part.js:2602 templates/js/translated/part.js:2636 +#: templates/js/translated/part.js:2714 templates/js/translated/stock.js:458 #: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782 #: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711 msgid "Quantity" @@ -1050,7 +1051,7 @@ msgid "Destination stock item" msgstr "" #: build/serializers.py:138 build/serializers.py:674 -#: templates/js/translated/build.js:1166 +#: templates/js/translated/build.js:1198 msgid "Build Output" msgstr "" @@ -1090,7 +1091,7 @@ msgid "Integer quantity required, as the bill of materials contains trackable pa msgstr "" #: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159 -#: stock/serializers.py:311 templates/js/translated/order.js:1258 +#: stock/serializers.py:311 templates/js/translated/order.js:1297 #: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459 msgid "Serial Numbers" msgstr "Serienummer" @@ -1120,10 +1121,10 @@ msgstr "" #: stock/serializers.py:917 stock/serializers.py:1150 #: stock/templates/stock/item_base.html:390 #: templates/js/translated/barcode.js:436 -#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753 -#: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285 -#: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305 -#: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394 +#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:785 +#: templates/js/translated/build.js:1719 templates/js/translated/order.js:1324 +#: templates/js/translated/order.js:3239 templates/js/translated/order.js:3344 +#: templates/js/translated/order.js:3352 templates/js/translated/order.js:3433 #: templates/js/translated/part.js:181 templates/js/translated/stock.js:588 #: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960 #: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518 @@ -1134,12 +1135,12 @@ msgstr "Plats" msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:373 build/templates/build/build_base.html:142 +#: build/serializers.py:373 build/templates/build/build_base.html:145 #: build/templates/build/detail.html:62 order/models.py:642 #: order/serializers.py:465 stock/templates/stock/item_base.html:423 -#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505 -#: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724 -#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829 +#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2538 +#: templates/js/translated/order.js:1431 templates/js/translated/order.js:1763 +#: templates/js/translated/order.js:2575 templates/js/translated/stock.js:1829 #: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727 msgid "Status" msgstr "Status" @@ -1196,7 +1197,7 @@ msgstr "" msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:522 templates/js/translated/build.js:195 +#: build/serializers.py:522 templates/js/translated/build.js:227 msgid "Required stock has not been fully allocated" msgstr "" @@ -1208,7 +1209,7 @@ msgstr "Acceptera ofullständig" msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:538 templates/js/translated/build.js:199 +#: build/serializers.py:538 templates/js/translated/build.js:231 msgid "Required build quantity has not been completed" msgstr "" @@ -1216,8 +1217,8 @@ msgstr "" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726 -#: part/models.py:2860 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2773 +#: part/models.py:2907 msgid "BOM Item" msgstr "" @@ -1322,66 +1323,70 @@ msgid "Cancel Build" msgstr "Avbryt bygge" #: build/templates/build/build_base.html:59 +msgid "Duplicate Build" +msgstr "" + +#: build/templates/build/build_base.html:62 msgid "Delete Build" msgstr "Ta bort bygge" -#: build/templates/build/build_base.html:64 -#: build/templates/build/build_base.html:65 +#: build/templates/build/build_base.html:67 +#: build/templates/build/build_base.html:68 msgid "Complete Build" msgstr "Färdigställ bygget" -#: build/templates/build/build_base.html:87 +#: build/templates/build/build_base.html:90 msgid "Build Description" msgstr "Byggbeskrivning" -#: build/templates/build/build_base.html:95 +#: build/templates/build/build_base.html:98 msgid "No build outputs have been created for this build order" msgstr "" -#: build/templates/build/build_base.html:101 +#: build/templates/build/build_base.html:104 #, python-format msgid "This Build Order is allocated to Sales Order %(link)s" msgstr "" -#: build/templates/build/build_base.html:108 +#: build/templates/build/build_base.html:111 #, python-format msgid "This Build Order is a child of Build Order %(link)s" msgstr "" -#: build/templates/build/build_base.html:115 +#: build/templates/build/build_base.html:118 msgid "Build Order is ready to mark as completed" msgstr "" -#: build/templates/build/build_base.html:120 +#: build/templates/build/build_base.html:123 msgid "Build Order cannot be completed as outstanding outputs remain" msgstr "" -#: build/templates/build/build_base.html:125 +#: build/templates/build/build_base.html:128 msgid "Required build quantity has not yet been completed" msgstr "" -#: build/templates/build/build_base.html:130 +#: build/templates/build/build_base.html:133 msgid "Stock has not been fully allocated to this Build Order" msgstr "" -#: build/templates/build/build_base.html:151 +#: build/templates/build/build_base.html:154 #: build/templates/build/detail.html:131 order/models.py:910 #: order/templates/order/order_base.html:162 #: order/templates/order/sales_order_base.html:164 #: report/templates/report/inventree_build_order_base.html:125 -#: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741 -#: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552 -#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042 +#: templates/js/translated/build.js:2578 templates/js/translated/order.js:1780 +#: templates/js/translated/order.js:2090 templates/js/translated/order.js:2591 +#: templates/js/translated/order.js:3631 templates/js/translated/part.js:1042 msgid "Target Date" msgstr "Måldatum" -#: build/templates/build/build_base.html:156 +#: build/templates/build/build_base.html:159 #, python-format msgid "This build was due on %(target)s" msgstr "" -#: build/templates/build/build_base.html:156 -#: build/templates/build/build_base.html:201 +#: build/templates/build/build_base.html:159 +#: build/templates/build/build_base.html:204 #: order/templates/order/order_base.html:98 #: order/templates/order/sales_order_base.html:94 #: templates/js/translated/table_filters.js:320 @@ -1390,14 +1395,14 @@ msgstr "" msgid "Overdue" msgstr "Försenad" -#: build/templates/build/build_base.html:163 +#: build/templates/build/build_base.html:166 #: build/templates/build/detail.html:67 build/templates/build/detail.html:142 #: order/templates/order/sales_order_base.html:171 #: templates/js/translated/table_filters.js:400 msgid "Completed" msgstr "Slutförd" -#: build/templates/build/build_base.html:176 +#: build/templates/build/build_base.html:179 #: build/templates/build/detail.html:94 order/models.py:1105 #: order/models.py:1199 order/models.py:1330 #: order/templates/order/sales_order_base.html:9 @@ -1406,17 +1411,17 @@ msgstr "Slutförd" #: report/templates/report/inventree_so_report.html:77 #: stock/templates/stock/item_base.html:370 #: templates/email/overdue_sales_order.html:15 -#: templates/js/translated/order.js:2498 +#: templates/js/translated/order.js:2537 msgid "Sales Order" msgstr "Försäljningsorder" -#: build/templates/build/build_base.html:183 +#: build/templates/build/build_base.html:186 #: build/templates/build/detail.html:108 #: report/templates/report/inventree_build_order_base.html:152 msgid "Issued By" msgstr "Utfärdad av" -#: build/templates/build/build_base.html:245 +#: build/templates/build/build_base.html:256 msgid "Delete Build Order" msgstr "" @@ -1433,7 +1438,7 @@ msgid "Stock can be taken from any available location." msgstr "" #: build/templates/build/detail.html:49 order/models.py:1023 -#: templates/js/translated/order.js:1393 templates/js/translated/order.js:2093 +#: templates/js/translated/order.js:1432 templates/js/translated/order.js:2132 msgid "Destination" msgstr "Mål" @@ -1447,7 +1452,7 @@ msgstr "" #: build/templates/build/detail.html:80 #: stock/templates/stock/item_base.html:170 -#: templates/js/translated/build.js:1182 +#: templates/js/translated/build.js:1214 #: templates/js/translated/model_renderers.js:124 #: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843 #: templates/js/translated/stock.js:2734 @@ -1459,7 +1464,7 @@ msgstr "" #: build/templates/build/detail.html:126 #: order/templates/order/order_base.html:149 #: order/templates/order/sales_order_base.html:158 -#: templates/js/translated/build.js:2513 +#: templates/js/translated/build.js:2546 msgid "Created" msgstr "Skapad" @@ -1479,7 +1484,7 @@ msgstr "" msgid "Allocate Stock to Build" msgstr "" -#: build/templates/build/detail.html:176 templates/js/translated/build.js:1901 +#: build/templates/build/detail.html:176 templates/js/translated/build.js:1934 msgid "Unallocate stock" msgstr "" @@ -1510,7 +1515,7 @@ msgstr "Beställ obligatoriska delar" #: build/templates/build/detail.html:187 #: company/templates/company/detail.html:37 #: company/templates/company/detail.html:85 -#: part/templates/part/category.html:183 templates/js/translated/order.js:977 +#: part/templates/part/category.html:183 templates/js/translated/order.js:1016 msgid "Order Parts" msgstr "Beställ delar" @@ -1582,7 +1587,7 @@ msgstr "" #: order/templates/order/po_sidebar.html:9 #: order/templates/order/purchase_order_detail.html:82 #: order/templates/order/sales_order_detail.html:135 -#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:207 +#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:212 #: part/templates/part/part_sidebar.html:57 stock/templates/stock/item.html:117 #: stock/templates/stock/stock_sidebar.html:23 msgid "Attachments" @@ -1600,7 +1605,7 @@ msgstr "" msgid "All untracked stock items have been allocated" msgstr "" -#: build/templates/build/index.html:18 part/templates/part/detail.html:313 +#: build/templates/build/index.html:18 part/templates/part/detail.html:318 msgid "New Build Order" msgstr "Ny byggorder" @@ -1845,7 +1850,7 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:951 part/models.py:2419 report/models.py:158 +#: common/models.py:951 part/models.py:2466 report/models.py:158 #: templates/js/translated/table_filters.js:38 #: templates/js/translated/table_filters.js:484 msgid "Template" @@ -1855,7 +1860,7 @@ msgstr "" msgid "Parts are templates by default" msgstr "" -#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448 +#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1446 #: templates/js/translated/table_filters.js:176 #: templates/js/translated/table_filters.js:447 msgid "Assembly" @@ -2591,7 +2596,7 @@ msgstr "" #: common/models.py:1705 company/serializers.py:366 #: company/templates/company/supplier_part.html:284 order/models.py:938 -#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2161 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2157 msgid "Price" msgstr "" @@ -2830,7 +2835,7 @@ msgstr "" #: company/models.py:248 company/models.py:481 stock/models.py:598 #: stock/serializers.py:87 stock/templates/stock/item_base.html:148 -#: templates/js/translated/bom.js:543 +#: templates/js/translated/bom.js:542 msgid "Base Part" msgstr "" @@ -2859,7 +2864,7 @@ msgstr "" #: templates/js/translated/company.js:269 #: templates/js/translated/company.js:497 #: templates/js/translated/company.js:649 -#: templates/js/translated/company.js:937 templates/js/translated/order.js:1971 +#: templates/js/translated/company.js:937 templates/js/translated/order.js:2010 #: templates/js/translated/part.js:247 templates/js/translated/part.js:1027 msgid "MPN" msgstr "" @@ -2899,7 +2904,7 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:372 part/models.py:888 part/models.py:2386 +#: company/models.py:372 part/models.py:888 part/models.py:2433 #: part/templates/part/part_base.html:280 #: templates/InvenTree/settings/settings.html:352 #: templates/js/translated/company.js:770 templates/js/translated/part.js:855 @@ -2921,7 +2926,7 @@ msgstr "" #: templates/email/overdue_purchase_order.html:16 #: templates/js/translated/company.js:268 #: templates/js/translated/company.js:401 -#: templates/js/translated/company.js:893 templates/js/translated/order.js:1707 +#: templates/js/translated/company.js:893 templates/js/translated/order.js:1746 #: templates/js/translated/part.js:217 templates/js/translated/part.js:995 #: templates/js/translated/table_filters.js:423 msgid "Supplier" @@ -2933,7 +2938,7 @@ msgstr "" #: company/models.py:497 company/templates/company/supplier_part.html:118 #: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267 -#: templates/js/translated/order.js:1958 templates/js/translated/part.js:228 +#: templates/js/translated/order.js:1997 templates/js/translated/part.js:228 #: templates/js/translated/part.js:1013 msgid "SKU" msgstr "" @@ -2955,17 +2960,17 @@ msgid "Supplier part description" msgstr "" #: company/models.py:522 company/templates/company/supplier_part.html:146 -#: part/models.py:2620 part/templates/part/upload_bom.html:59 +#: part/models.py:2667 part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401 msgid "Note" msgstr "" -#: company/models.py:526 part/models.py:1742 +#: company/models.py:526 part/models.py:1789 msgid "base cost" msgstr "" -#: company/models.py:526 part/models.py:1742 +#: company/models.py:526 part/models.py:1789 msgid "Minimum charge (e.g. stocking fee)" msgstr "" @@ -2979,7 +2984,7 @@ msgstr "" msgid "Part packaging" msgstr "" -#: company/models.py:530 part/models.py:1744 +#: company/models.py:530 part/models.py:1791 msgid "multiple" msgstr "" @@ -2990,8 +2995,8 @@ msgstr "" #: company/models.py:538 company/templates/company/supplier_part.html:94 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789 -#: templates/js/translated/build.js:2645 templates/js/translated/company.js:979 +#: templates/js/translated/bom.js:911 templates/js/translated/build.js:1821 +#: templates/js/translated/build.js:2678 templates/js/translated/company.js:979 #: templates/js/translated/part.js:600 templates/js/translated/part.js:603 #: templates/js/translated/table_filters.js:186 msgid "Available" @@ -3028,7 +3033,7 @@ msgid "Company" msgstr "" #: company/templates/company/company_base.html:22 -#: templates/js/translated/order.js:540 +#: templates/js/translated/order.js:579 msgid "Create Purchase Order" msgstr "" @@ -3069,7 +3074,7 @@ msgstr "" #: stock/models.py:644 stock/serializers.py:811 #: stock/templates/stock/item_base.html:401 #: templates/email/overdue_sales_order.html:16 -#: templates/js/translated/company.js:393 templates/js/translated/order.js:2513 +#: templates/js/translated/company.js:393 templates/js/translated/order.js:2552 #: templates/js/translated/stock.js:2559 #: templates/js/translated/table_filters.js:427 msgid "Customer" @@ -3105,7 +3110,7 @@ msgstr "" #: company/templates/company/detail.html:19 #: company/templates/company/manufacturer_part.html:123 -#: part/templates/part/detail.html:354 +#: part/templates/part/detail.html:359 msgid "New Supplier Part" msgstr "" @@ -3134,7 +3139,7 @@ msgstr "" msgid "Create new manufacturer part" msgstr "" -#: company/templates/company/detail.html:66 part/templates/part/detail.html:384 +#: company/templates/company/detail.html:66 part/templates/part/detail.html:389 msgid "New Manufacturer Part" msgstr "" @@ -3148,7 +3153,7 @@ msgstr "" #: order/templates/order/order_base.html:13 #: order/templates/order/purchase_orders.html:8 #: order/templates/order/purchase_orders.html:12 -#: part/templates/part/detail.html:79 part/templates/part/part_sidebar.html:37 +#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:37 #: templates/InvenTree/index.html:252 templates/InvenTree/search.html:198 #: templates/InvenTree/settings/sidebar.html:49 #: templates/js/translated/search.js:275 templates/navbar.html:50 @@ -3171,7 +3176,7 @@ msgstr "" #: order/templates/order/sales_order_base.html:13 #: order/templates/order/sales_orders.html:8 #: order/templates/order/sales_orders.html:15 -#: part/templates/part/detail.html:102 part/templates/part/part_sidebar.html:41 +#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:41 #: templates/InvenTree/index.html:283 templates/InvenTree/search.html:218 #: templates/InvenTree/settings/sidebar.html:51 #: templates/js/translated/search.js:299 templates/navbar.html:61 @@ -3190,7 +3195,7 @@ msgid "New Sales Order" msgstr "" #: company/templates/company/detail.html:168 -#: templates/js/translated/build.js:1660 +#: templates/js/translated/build.js:1692 msgid "Assigned Stock" msgstr "" @@ -3206,7 +3211,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:35 #: company/templates/company/supplier_part.html:186 -#: part/templates/part/detail.html:82 part/templates/part/part_base.html:80 +#: part/templates/part/detail.html:87 part/templates/part/part_base.html:80 msgid "Order part" msgstr "" @@ -3237,13 +3242,13 @@ msgid "Suppliers" msgstr "" #: company/templates/company/manufacturer_part.html:136 -#: part/templates/part/detail.html:365 +#: part/templates/part/detail.html:370 msgid "Delete supplier parts" msgstr "" #: company/templates/company/manufacturer_part.html:136 #: company/templates/company/manufacturer_part.html:183 -#: part/templates/part/detail.html:366 part/templates/part/detail.html:396 +#: part/templates/part/detail.html:371 part/templates/part/detail.html:401 #: templates/js/translated/forms.js:453 templates/js/translated/helpers.js:33 #: users/models.py:220 msgid "Delete" @@ -3252,12 +3257,12 @@ msgstr "" #: company/templates/company/manufacturer_part.html:166 #: company/templates/company/manufacturer_part_sidebar.html:5 #: part/templates/part/category_sidebar.html:19 -#: part/templates/part/detail.html:181 part/templates/part/part_sidebar.html:8 +#: part/templates/part/detail.html:186 part/templates/part/part_sidebar.html:8 msgid "Parameters" msgstr "" #: company/templates/company/manufacturer_part.html:170 -#: part/templates/part/detail.html:186 +#: part/templates/part/detail.html:191 #: templates/InvenTree/settings/category.html:12 #: templates/InvenTree/settings/part.html:68 msgid "New Parameter" @@ -3268,7 +3273,7 @@ msgid "Delete parameters" msgstr "" #: company/templates/company/manufacturer_part.html:245 -#: part/templates/part/detail.html:826 +#: part/templates/part/detail.html:840 msgid "Add Parameter" msgstr "" @@ -3291,7 +3296,7 @@ msgstr "" #: company/templates/company/supplier_part.html:7 #: company/templates/company/supplier_part.html:24 stock/models.py:607 #: stock/templates/stock/item_base.html:238 -#: templates/js/translated/company.js:909 templates/js/translated/order.js:935 +#: templates/js/translated/company.js:909 templates/js/translated/order.js:974 #: templates/js/translated/stock.js:1933 msgid "Supplier Part" msgstr "" @@ -3303,7 +3308,7 @@ msgstr "" #: company/templates/company/supplier_part.html:40 #: company/templates/company/supplier_part.html:41 #: company/templates/company/supplier_part.html:187 -#: part/templates/part/detail.html:83 +#: part/templates/part/detail.html:88 msgid "Order Part" msgstr "" @@ -3358,7 +3363,7 @@ msgstr "" #: company/templates/company/supplier_part.html:212 #: company/templates/company/supplier_part.html:326 -#: part/templates/part/prices.html:276 templates/js/translated/part.js:2233 +#: part/templates/part/prices.html:276 templates/js/translated/part.js:2229 msgid "Add Price Break" msgstr "" @@ -3367,12 +3372,12 @@ msgid "No price break information found" msgstr "" #: company/templates/company/supplier_part.html:252 -#: templates/js/translated/part.js:2243 +#: templates/js/translated/part.js:2239 msgid "Delete Price Break" msgstr "" #: company/templates/company/supplier_part.html:266 -#: templates/js/translated/part.js:2257 +#: templates/js/translated/part.js:2253 msgid "Edit Price Break" msgstr "" @@ -3398,10 +3403,9 @@ msgstr "" #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:151 #: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751 -#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460 -#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754 -#: templates/navbar.html:31 +#: templates/js/translated/part.js:751 templates/js/translated/part.js:1299 +#: templates/js/translated/part.js:1460 templates/js/translated/stock.js:959 +#: templates/js/translated/stock.js:1754 templates/navbar.html:31 msgid "Stock" msgstr "" @@ -3554,7 +3558,7 @@ msgid "Company from which the items are being ordered" msgstr "" #: order/models.py:262 order/templates/order/order_base.html:124 -#: templates/js/translated/order.js:1716 +#: templates/js/translated/order.js:1755 msgid "Supplier Reference" msgstr "" @@ -3611,7 +3615,7 @@ msgid "Target date for order completion. Order will be overdue after this date." msgstr "" #: order/models.py:652 order/models.py:1204 -#: templates/js/translated/order.js:2560 templates/js/translated/order.js:2722 +#: templates/js/translated/order.js:2599 templates/js/translated/order.js:2761 msgid "Shipment Date" msgstr "" @@ -3673,7 +3677,7 @@ msgstr "" #: order/models.py:983 order/models.py:1063 order/models.py:1104 #: order/models.py:1198 order/models.py:1330 -#: templates/js/translated/order.js:3178 +#: templates/js/translated/order.js:3217 msgid "Order" msgstr "" @@ -3683,7 +3687,7 @@ msgstr "" #: report/templates/report/inventree_po_report.html:76 #: stock/templates/stock/item_base.html:184 #: templates/email/overdue_purchase_order.html:15 -#: templates/js/translated/order.js:936 templates/js/translated/order.js:1691 +#: templates/js/translated/order.js:975 templates/js/translated/order.js:1730 #: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913 #: templates/js/translated/stock.js:2540 msgid "Purchase Order" @@ -3694,7 +3698,7 @@ msgid "Supplier part" msgstr "" #: order/models.py:1009 order/templates/order/order_base.html:169 -#: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073 +#: templates/js/translated/order.js:1429 templates/js/translated/order.js:2112 #: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091 #: templates/js/translated/table_filters.js:338 msgid "Received" @@ -3880,11 +3884,11 @@ msgstr "" msgid "Select destination location for received items" msgstr "" -#: order/serializers.py:448 templates/js/translated/order.js:1248 +#: order/serializers.py:448 templates/js/translated/order.js:1287 msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:456 templates/js/translated/order.js:1259 +#: order/serializers.py:456 templates/js/translated/order.js:1298 msgid "Enter serial numbers for incoming stock items" msgstr "" @@ -4061,10 +4065,6 @@ msgstr "" msgid "Total cost could not be calculated" msgstr "" -#: order/templates/order/order_base.html:243 -msgid "Edit Purchase Order" -msgstr "" - #: order/templates/order/order_wizard/match_parts.html:12 #: part/templates/part/import_wizard/ajax_match_references.html:12 #: part/templates/part/import_wizard/match_references.html:12 @@ -4091,10 +4091,10 @@ msgstr "" #: part/templates/part/import_wizard/ajax_match_fields.html:64 #: part/templates/part/import_wizard/ajax_match_references.html:42 #: part/templates/part/import_wizard/match_references.html:49 -#: templates/js/translated/bom.js:77 templates/js/translated/build.js:431 -#: templates/js/translated/build.js:583 templates/js/translated/build.js:1974 -#: templates/js/translated/order.js:884 templates/js/translated/order.js:1337 -#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625 +#: templates/js/translated/bom.js:77 templates/js/translated/build.js:463 +#: templates/js/translated/build.js:615 templates/js/translated/build.js:2007 +#: templates/js/translated/order.js:923 templates/js/translated/order.js:1376 +#: templates/js/translated/order.js:2836 templates/js/translated/stock.js:625 #: templates/js/translated/stock.js:793 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" @@ -4130,7 +4130,7 @@ msgstr "" #: order/templates/order/purchase_order_detail.html:26 #: order/templates/order/sales_order_detail.html:22 #: order/templates/order/sales_order_detail.html:255 -#: templates/js/translated/order.js:557 +#: templates/js/translated/order.js:596 msgid "Add Line Item" msgstr "" @@ -4176,7 +4176,7 @@ msgid "Print packing list" msgstr "" #: order/templates/order/sales_order_base.html:60 -#: templates/js/translated/order.js:229 +#: templates/js/translated/order.js:230 msgid "Complete Shipments" msgstr "" @@ -4190,7 +4190,7 @@ msgid "This Sales Order has not been fully allocated" msgstr "" #: order/templates/order/sales_order_base.html:123 -#: templates/js/translated/order.js:2526 +#: templates/js/translated/order.js:2565 msgid "Customer Reference" msgstr "" @@ -4214,8 +4214,8 @@ msgid "Pending Shipments" msgstr "" #: order/templates/order/sales_order_detail.html:72 -#: templates/attachment_table.html:6 templates/js/translated/bom.js:1110 -#: templates/js/translated/build.js:1882 +#: templates/attachment_table.html:6 templates/js/translated/bom.js:1108 +#: templates/js/translated/build.js:1915 msgid "Actions" msgstr "" @@ -4257,35 +4257,35 @@ msgstr "" msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:584 +#: part/api.py:621 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:704 +#: part/api.py:758 msgid "Valid" msgstr "" -#: part/api.py:705 +#: part/api.py:759 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:711 +#: part/api.py:765 msgid "This option must be selected" msgstr "" -#: part/api.py:1134 +#: part/api.py:1188 msgid "Must be greater than zero" msgstr "" -#: part/api.py:1138 +#: part/api.py:1192 msgid "Must be a valid quantity" msgstr "" -#: part/api.py:1153 +#: part/api.py:1207 msgid "Specify location for initial part stock" msgstr "" -#: part/api.py:1184 part/api.py:1188 part/api.py:1203 part/api.py:1207 +#: part/api.py:1238 part/api.py:1242 part/api.py:1257 part/api.py:1261 msgid "This field is required" msgstr "" @@ -4299,14 +4299,14 @@ msgid "Total Stock" msgstr "" #: part/bom.py:129 part/templates/part/part_base.html:189 -#: templates/js/translated/order.js:3618 +#: templates/js/translated/order.js:3657 msgid "Available Stock" msgstr "" #: part/bom.py:130 part/templates/part/part_base.html:207 -#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590 +#: templates/js/translated/bom.js:945 templates/js/translated/part.js:590 #: templates/js/translated/part.js:610 templates/js/translated/part.js:1302 -#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490 +#: templates/js/translated/part.js:1483 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "" @@ -4335,7 +4335,7 @@ msgstr "" msgid "Icon (optional)" msgstr "" -#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16 +#: part/models.py:122 part/models.py:2509 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" @@ -4352,7 +4352,7 @@ msgstr "" #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82 #: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:1955 templates/js/translated/search.js:144 +#: templates/js/translated/part.js:1951 templates/js/translated/search.js:144 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "" @@ -4382,7 +4382,7 @@ msgstr "" msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:745 part/models.py:2516 +#: part/models.py:745 part/models.py:2563 msgid "Part name" msgstr "" @@ -4415,11 +4415,11 @@ msgstr "" msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:783 part/models.py:2218 part/models.py:2461 +#: part/models.py:783 part/models.py:2265 part/models.py:2508 #: part/templates/part/part_base.html:257 #: templates/InvenTree/settings/settings.html:232 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1668 +#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1664 msgid "Category" msgstr "" @@ -4530,245 +4530,245 @@ msgstr "" msgid "Creation User" msgstr "" -#: part/models.py:1744 +#: part/models.py:1791 msgid "Sell multiple" msgstr "" -#: part/models.py:2265 +#: part/models.py:2312 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:2282 +#: part/models.py:2329 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:2302 templates/js/translated/part.js:2006 +#: part/models.py:2349 templates/js/translated/part.js:2002 #: templates/js/translated/stock.js:1340 msgid "Test Name" msgstr "" -#: part/models.py:2303 +#: part/models.py:2350 msgid "Enter a name for the test" msgstr "" -#: part/models.py:2308 +#: part/models.py:2355 msgid "Test Description" msgstr "" -#: part/models.py:2309 +#: part/models.py:2356 msgid "Enter description for this test" msgstr "" -#: part/models.py:2314 templates/js/translated/part.js:2015 +#: part/models.py:2361 templates/js/translated/part.js:2011 #: templates/js/translated/table_filters.js:302 msgid "Required" msgstr "" -#: part/models.py:2315 +#: part/models.py:2362 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:2320 templates/js/translated/part.js:2023 +#: part/models.py:2367 templates/js/translated/part.js:2019 msgid "Requires Value" msgstr "" -#: part/models.py:2321 +#: part/models.py:2368 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:2326 templates/js/translated/part.js:2030 +#: part/models.py:2373 templates/js/translated/part.js:2026 msgid "Requires Attachment" msgstr "" -#: part/models.py:2327 +#: part/models.py:2374 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:2335 +#: part/models.py:2382 #, python-brace-format msgid "Illegal character in template name ({c})" msgstr "" -#: part/models.py:2371 +#: part/models.py:2418 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:2379 +#: part/models.py:2426 msgid "Parameter Name" msgstr "" -#: part/models.py:2386 +#: part/models.py:2433 msgid "Parameter Units" msgstr "" -#: part/models.py:2417 +#: part/models.py:2464 msgid "Parent Part" msgstr "" -#: part/models.py:2419 part/models.py:2467 part/models.py:2468 +#: part/models.py:2466 part/models.py:2514 part/models.py:2515 #: templates/InvenTree/settings/settings.html:227 msgid "Parameter Template" msgstr "" -#: part/models.py:2421 +#: part/models.py:2468 msgid "Data" msgstr "" -#: part/models.py:2421 +#: part/models.py:2468 msgid "Parameter Value" msgstr "" -#: part/models.py:2472 templates/InvenTree/settings/settings.html:236 +#: part/models.py:2519 templates/InvenTree/settings/settings.html:236 msgid "Default Value" msgstr "" -#: part/models.py:2473 +#: part/models.py:2520 msgid "Default Parameter Value" msgstr "" -#: part/models.py:2508 +#: part/models.py:2555 msgid "Part ID or part name" msgstr "" -#: part/models.py:2511 templates/js/translated/model_renderers.js:212 +#: part/models.py:2558 templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "" -#: part/models.py:2512 +#: part/models.py:2559 msgid "Unique part ID value" msgstr "" -#: part/models.py:2515 +#: part/models.py:2562 msgid "Part Name" msgstr "" -#: part/models.py:2519 +#: part/models.py:2566 msgid "Part IPN" msgstr "" -#: part/models.py:2520 +#: part/models.py:2567 msgid "Part IPN value" msgstr "" -#: part/models.py:2523 +#: part/models.py:2570 msgid "Level" msgstr "" -#: part/models.py:2524 +#: part/models.py:2571 msgid "BOM level" msgstr "" -#: part/models.py:2593 +#: part/models.py:2640 msgid "Select parent part" msgstr "" -#: part/models.py:2601 +#: part/models.py:2648 msgid "Sub part" msgstr "" -#: part/models.py:2602 +#: part/models.py:2649 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:2608 +#: part/models.py:2655 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:2610 part/templates/part/upload_bom.html:58 -#: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999 +#: part/models.py:2657 part/templates/part/upload_bom.html:58 +#: templates/js/translated/bom.js:872 templates/js/translated/bom.js:997 #: templates/js/translated/table_filters.js:100 msgid "Optional" msgstr "" -#: part/models.py:2610 +#: part/models.py:2657 msgid "This BOM item is optional" msgstr "" -#: part/models.py:2613 part/templates/part/upload_bom.html:55 +#: part/models.py:2660 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:2614 +#: part/models.py:2661 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:2617 +#: part/models.py:2664 msgid "BOM item reference" msgstr "" -#: part/models.py:2620 +#: part/models.py:2667 msgid "BOM item notes" msgstr "" -#: part/models.py:2622 +#: part/models.py:2669 msgid "Checksum" msgstr "" -#: part/models.py:2622 +#: part/models.py:2669 msgid "BOM line checksum" msgstr "" -#: part/models.py:2626 part/templates/part/upload_bom.html:57 -#: templates/js/translated/bom.js:1016 +#: part/models.py:2673 part/templates/part/upload_bom.html:57 +#: templates/js/translated/bom.js:1014 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:96 msgid "Inherited" msgstr "" -#: part/models.py:2627 +#: part/models.py:2674 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:2632 part/templates/part/upload_bom.html:56 -#: templates/js/translated/bom.js:1008 +#: part/models.py:2679 part/templates/part/upload_bom.html:56 +#: templates/js/translated/bom.js:1006 msgid "Allow Variants" msgstr "" -#: part/models.py:2633 +#: part/models.py:2680 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:2711 stock/models.py:468 +#: part/models.py:2758 stock/models.py:468 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:2720 part/models.py:2722 +#: part/models.py:2767 part/models.py:2769 msgid "Sub part must be specified" msgstr "" -#: part/models.py:2827 +#: part/models.py:2874 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:2848 +#: part/models.py:2895 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:2861 +#: part/models.py:2908 msgid "Parent BOM item" msgstr "" -#: part/models.py:2869 +#: part/models.py:2916 msgid "Substitute part" msgstr "" -#: part/models.py:2884 +#: part/models.py:2931 msgid "Part 1" msgstr "" -#: part/models.py:2888 +#: part/models.py:2935 msgid "Part 2" msgstr "" -#: part/models.py:2888 +#: part/models.py:2935 msgid "Select Related Part" msgstr "" -#: part/models.py:2906 +#: part/models.py:2953 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:2910 +#: part/models.py:2957 msgid "Duplicate relationship already exists" msgstr "" @@ -4876,7 +4876,7 @@ msgstr "" msgid "The BOM for %(part)s has not been validated." msgstr "" -#: part/templates/part/bom.html:30 part/templates/part/detail.html:264 +#: part/templates/part/bom.html:30 part/templates/part/detail.html:269 msgid "BOM actions" msgstr "" @@ -4945,8 +4945,8 @@ msgstr "" msgid "New Part" msgstr "" -#: part/templates/part/category.html:174 part/templates/part/detail.html:363 -#: part/templates/part/detail.html:394 +#: part/templates/part/category.html:174 part/templates/part/detail.html:368 +#: part/templates/part/detail.html:399 msgid "Options" msgstr "" @@ -5014,138 +5014,146 @@ msgstr "" msgid "Part Stock" msgstr "" -#: part/templates/part/detail.html:54 -msgid "Part Test Templates" +#: part/templates/part/detail.html:44 +msgid "Refresh scheduling data" +msgstr "" + +#: part/templates/part/detail.html:45 templates/js/translated/tables.js:558 +msgid "Refresh" msgstr "" #: part/templates/part/detail.html:59 +msgid "Part Test Templates" +msgstr "" + +#: part/templates/part/detail.html:64 msgid "Add Test Template" msgstr "" -#: part/templates/part/detail.html:116 stock/templates/stock/item.html:53 +#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53 msgid "Sales Order Allocations" msgstr "" -#: part/templates/part/detail.html:138 +#: part/templates/part/detail.html:143 msgid "Part Notes" msgstr "" -#: part/templates/part/detail.html:153 +#: part/templates/part/detail.html:158 msgid "Part Variants" msgstr "" -#: part/templates/part/detail.html:157 +#: part/templates/part/detail.html:162 msgid "Create new variant" msgstr "" -#: part/templates/part/detail.html:158 +#: part/templates/part/detail.html:163 msgid "New Variant" msgstr "" -#: part/templates/part/detail.html:185 +#: part/templates/part/detail.html:190 msgid "Add new parameter" msgstr "" -#: part/templates/part/detail.html:222 part/templates/part/part_sidebar.html:54 +#: part/templates/part/detail.html:227 part/templates/part/part_sidebar.html:54 msgid "Related Parts" msgstr "" -#: part/templates/part/detail.html:226 part/templates/part/detail.html:227 +#: part/templates/part/detail.html:231 part/templates/part/detail.html:232 msgid "Add Related" msgstr "" -#: part/templates/part/detail.html:247 part/templates/part/part_sidebar.html:17 +#: part/templates/part/detail.html:252 part/templates/part/part_sidebar.html:17 msgid "Bill of Materials" msgstr "" -#: part/templates/part/detail.html:252 +#: part/templates/part/detail.html:257 msgid "Export actions" msgstr "" -#: part/templates/part/detail.html:256 templates/js/translated/bom.js:284 +#: part/templates/part/detail.html:261 templates/js/translated/bom.js:284 msgid "Export BOM" msgstr "" -#: part/templates/part/detail.html:258 +#: part/templates/part/detail.html:263 msgid "Print BOM Report" msgstr "" -#: part/templates/part/detail.html:268 +#: part/templates/part/detail.html:273 msgid "Upload BOM" msgstr "" -#: part/templates/part/detail.html:269 templates/js/translated/part.js:274 +#: part/templates/part/detail.html:274 templates/js/translated/part.js:274 msgid "Copy BOM" msgstr "" -#: part/templates/part/detail.html:270 +#: part/templates/part/detail.html:275 msgid "Validate BOM" msgstr "" -#: part/templates/part/detail.html:275 +#: part/templates/part/detail.html:280 msgid "New BOM Item" msgstr "" -#: part/templates/part/detail.html:276 +#: part/templates/part/detail.html:281 msgid "Add BOM Item" msgstr "" -#: part/templates/part/detail.html:289 +#: part/templates/part/detail.html:294 msgid "Assemblies" msgstr "" -#: part/templates/part/detail.html:307 +#: part/templates/part/detail.html:312 msgid "Part Builds" msgstr "" -#: part/templates/part/detail.html:334 stock/templates/stock/item.html:38 +#: part/templates/part/detail.html:339 stock/templates/stock/item.html:38 msgid "Build Order Allocations" msgstr "" -#: part/templates/part/detail.html:350 +#: part/templates/part/detail.html:355 msgid "Part Suppliers" msgstr "" -#: part/templates/part/detail.html:380 +#: part/templates/part/detail.html:385 msgid "Part Manufacturers" msgstr "" -#: part/templates/part/detail.html:396 +#: part/templates/part/detail.html:401 msgid "Delete manufacturer parts" msgstr "" -#: part/templates/part/detail.html:612 +#: part/templates/part/detail.html:626 msgid "Create BOM Item" msgstr "" -#: part/templates/part/detail.html:656 +#: part/templates/part/detail.html:670 msgid "Related Part" msgstr "" -#: part/templates/part/detail.html:664 +#: part/templates/part/detail.html:678 msgid "Add Related Part" msgstr "" -#: part/templates/part/detail.html:756 +#: part/templates/part/detail.html:770 msgid "Add Test Result Template" msgstr "" -#: part/templates/part/detail.html:900 +#: part/templates/part/detail.html:914 #, python-format msgid "Purchase Unit Price - %(currency)s" msgstr "" -#: part/templates/part/detail.html:912 +#: part/templates/part/detail.html:926 #, python-format msgid "Unit Price-Cost Difference - %(currency)s" msgstr "" -#: part/templates/part/detail.html:924 +#: part/templates/part/detail.html:938 #, python-format msgid "Supplier Unit Cost - %(currency)s" msgstr "" -#: part/templates/part/detail.html:1013 +#: part/templates/part/detail.html:1027 #, python-format msgid "Unit Price - %(currency)s" msgstr "" @@ -5321,13 +5329,13 @@ msgstr "" msgid "Allocated to Sales Orders" msgstr "" -#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1037 +#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1035 msgid "Can Build" msgstr "" #: part/templates/part/part_base.html:238 templates/js/translated/part.js:593 #: templates/js/translated/part.js:613 templates/js/translated/part.js:1306 -#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1494 +#: templates/js/translated/part.js:1490 msgid "Building" msgstr "" @@ -5379,7 +5387,7 @@ msgid "Total Cost" msgstr "" #: part/templates/part/part_pricing.html:40 part/templates/part/prices.html:43 -#: templates/js/translated/bom.js:991 +#: templates/js/translated/bom.js:989 msgid "No supplier pricing available" msgstr "" @@ -5414,6 +5422,18 @@ msgstr "" msgid "No pricing information is available for this part." msgstr "" +#: part/templates/part/part_scheduling.html:13 +#: report/templates/report/inventree_test_report_base.html:97 +#: templates/InvenTree/settings/plugin.html:53 +#: templates/InvenTree/settings/plugin_settings.html:38 +#: templates/js/translated/order.js:1772 templates/js/translated/stock.js:2468 +msgid "Date" +msgstr "" + +#: part/templates/part/part_scheduling.html:14 +msgid "Scheduled Quantity" +msgstr "" + #: part/templates/part/part_sidebar.html:11 msgid "Variants" msgstr "" @@ -5462,7 +5482,7 @@ msgstr "" msgid "Calculation parameters" msgstr "" -#: part/templates/part/prices.html:160 templates/js/translated/bom.js:985 +#: part/templates/part/prices.html:160 templates/js/translated/bom.js:983 msgid "Supplier Cost" msgstr "" @@ -5501,7 +5521,7 @@ msgid "No sale pice history available for this part." msgstr "" #: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616 -#: templates/js/translated/part.js:1294 templates/js/translated/part.js:1498 +#: templates/js/translated/part.js:1294 msgid "No Stock" msgstr "" @@ -5893,11 +5913,11 @@ msgstr "" #: report/templates/report/inventree_test_report_base.html:79 #: stock/models.py:648 stock/templates/stock/item_base.html:322 -#: templates/js/translated/build.js:424 templates/js/translated/build.js:576 -#: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673 +#: templates/js/translated/build.js:456 templates/js/translated/build.js:608 +#: templates/js/translated/build.js:1208 templates/js/translated/build.js:1705 #: templates/js/translated/model_renderers.js:118 -#: templates/js/translated/order.js:118 templates/js/translated/order.js:3297 -#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490 +#: templates/js/translated/order.js:119 templates/js/translated/order.js:3336 +#: templates/js/translated/order.js:3423 templates/js/translated/stock.js:490 msgid "Serial Number" msgstr "" @@ -5915,13 +5935,6 @@ msgstr "" msgid "Result" msgstr "" -#: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:53 -#: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468 -msgid "Date" -msgstr "" - #: report/templates/report/inventree_test_report_base.html:108 msgid "Pass" msgstr "" @@ -6519,7 +6532,7 @@ msgid "Available Quantity" msgstr "" #: stock/templates/stock/item_base.html:394 -#: templates/js/translated/build.js:1695 +#: templates/js/translated/build.js:1727 msgid "No location set" msgstr "" @@ -7702,7 +7715,7 @@ msgid "The following parts are low on required stock" msgstr "" #: templates/email/build_order_required_stock.html:18 -#: templates/js/translated/bom.js:1483 +#: templates/js/translated/bom.js:1481 msgid "Required Quantity" msgstr "" @@ -7716,6 +7729,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:19 +#: templates/js/translated/part.js:2498 msgid "Minimum Quantity" msgstr "" @@ -7917,10 +7931,10 @@ msgstr "" msgid "Row Data" msgstr "" -#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:622 +#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:620 #: templates/js/translated/modals.js:56 templates/js/translated/modals.js:601 #: templates/js/translated/modals.js:695 templates/js/translated/modals.js:1003 -#: templates/js/translated/order.js:979 templates/modals.html:15 +#: templates/js/translated/order.js:1018 templates/modals.html:15 #: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50 msgid "Close" msgstr "" @@ -7930,12 +7944,12 @@ msgid "Download BOM Template" msgstr "" #: templates/js/translated/bom.js:253 templates/js/translated/bom.js:287 -#: templates/js/translated/order.js:760 templates/js/translated/tables.js:145 +#: templates/js/translated/order.js:799 templates/js/translated/tables.js:145 msgid "Format" msgstr "" #: templates/js/translated/bom.js:254 templates/js/translated/bom.js:288 -#: templates/js/translated/order.js:761 +#: templates/js/translated/order.js:800 msgid "Select file format" msgstr "" @@ -7991,390 +8005,390 @@ msgstr "" msgid "Remove substitute part" msgstr "" -#: templates/js/translated/bom.js:567 +#: templates/js/translated/bom.js:565 msgid "Select and add a new substitute part using the input below" msgstr "" -#: templates/js/translated/bom.js:578 +#: templates/js/translated/bom.js:576 msgid "Are you sure you wish to remove this substitute part link?" msgstr "" -#: templates/js/translated/bom.js:584 +#: templates/js/translated/bom.js:582 msgid "Remove Substitute Part" msgstr "" -#: templates/js/translated/bom.js:623 +#: templates/js/translated/bom.js:621 msgid "Add Substitute" msgstr "" -#: templates/js/translated/bom.js:624 +#: templates/js/translated/bom.js:622 msgid "Edit BOM Item Substitutes" msgstr "" -#: templates/js/translated/bom.js:686 +#: templates/js/translated/bom.js:684 msgid "All selected BOM items will be deleted" msgstr "" -#: templates/js/translated/bom.js:702 +#: templates/js/translated/bom.js:700 msgid "Delete selected BOM items?" msgstr "" -#: templates/js/translated/bom.js:821 +#: templates/js/translated/bom.js:819 msgid "Load BOM for subassembly" msgstr "" -#: templates/js/translated/bom.js:831 +#: templates/js/translated/bom.js:829 msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:835 templates/js/translated/build.js:1771 +#: templates/js/translated/bom.js:833 templates/js/translated/build.js:1803 msgid "Variant stock allowed" msgstr "" -#: templates/js/translated/bom.js:929 templates/js/translated/build.js:1816 -#: templates/js/translated/order.js:3632 +#: templates/js/translated/bom.js:927 templates/js/translated/build.js:1849 +#: templates/js/translated/order.js:3671 msgid "No Stock Available" msgstr "" -#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1820 +#: templates/js/translated/bom.js:932 templates/js/translated/build.js:1853 msgid "Includes variant and substitute stock" msgstr "" -#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822 +#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1855 #: templates/js/translated/part.js:763 msgid "Includes variant stock" msgstr "" -#: templates/js/translated/bom.js:938 templates/js/translated/build.js:1824 +#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1857 msgid "Includes substitute stock" msgstr "" -#: templates/js/translated/bom.js:956 +#: templates/js/translated/bom.js:954 msgid "Substitutes" msgstr "" -#: templates/js/translated/bom.js:971 +#: templates/js/translated/bom.js:969 msgid "Purchase Price Range" msgstr "" -#: templates/js/translated/bom.js:978 +#: templates/js/translated/bom.js:976 msgid "Purchase Price Average" msgstr "" -#: templates/js/translated/bom.js:1027 templates/js/translated/bom.js:1147 +#: templates/js/translated/bom.js:1025 templates/js/translated/bom.js:1145 msgid "View BOM" msgstr "" -#: templates/js/translated/bom.js:1054 +#: templates/js/translated/bom.js:1052 msgid "Including On Order" msgstr "" -#: templates/js/translated/bom.js:1118 +#: templates/js/translated/bom.js:1116 msgid "Validate BOM Item" msgstr "" -#: templates/js/translated/bom.js:1120 +#: templates/js/translated/bom.js:1118 msgid "This line has been validated" msgstr "" -#: templates/js/translated/bom.js:1122 +#: templates/js/translated/bom.js:1120 msgid "Edit substitute parts" msgstr "" -#: templates/js/translated/bom.js:1124 templates/js/translated/bom.js:1286 +#: templates/js/translated/bom.js:1122 templates/js/translated/bom.js:1284 msgid "Edit BOM Item" msgstr "" -#: templates/js/translated/bom.js:1126 +#: templates/js/translated/bom.js:1124 msgid "Delete BOM Item" msgstr "" -#: templates/js/translated/bom.js:1222 templates/js/translated/build.js:1617 +#: templates/js/translated/bom.js:1220 templates/js/translated/build.js:1649 msgid "No BOM items found" msgstr "" -#: templates/js/translated/bom.js:1466 templates/js/translated/build.js:1755 +#: templates/js/translated/bom.js:1464 templates/js/translated/build.js:1787 msgid "Required Part" msgstr "" -#: templates/js/translated/bom.js:1488 +#: templates/js/translated/bom.js:1486 msgid "Inherited from parent BOM" msgstr "" -#: templates/js/translated/build.js:86 +#: templates/js/translated/build.js:89 msgid "Edit Build Order" msgstr "" -#: templates/js/translated/build.js:120 +#: templates/js/translated/build.js:132 msgid "Create Build Order" msgstr "" -#: templates/js/translated/build.js:133 +#: templates/js/translated/build.js:165 msgid "Cancel Build Order" msgstr "" -#: templates/js/translated/build.js:142 +#: templates/js/translated/build.js:174 msgid "Are you sure you wish to cancel this build?" msgstr "" -#: templates/js/translated/build.js:148 +#: templates/js/translated/build.js:180 msgid "Stock items have been allocated to this build order" msgstr "" -#: templates/js/translated/build.js:155 +#: templates/js/translated/build.js:187 msgid "There are incomplete outputs remaining for this build order" msgstr "" -#: templates/js/translated/build.js:185 +#: templates/js/translated/build.js:217 msgid "Build order is ready to be completed" msgstr "" -#: templates/js/translated/build.js:190 +#: templates/js/translated/build.js:222 msgid "Build Order is incomplete" msgstr "" -#: templates/js/translated/build.js:222 +#: templates/js/translated/build.js:254 msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:263 templates/js/translated/stock.js:92 +#: templates/js/translated/build.js:295 templates/js/translated/stock.js:92 #: templates/js/translated/stock.js:214 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:265 templates/js/translated/stock.js:94 +#: templates/js/translated/build.js:297 templates/js/translated/stock.js:94 #: templates/js/translated/stock.js:216 msgid "Latest serial number" msgstr "" -#: templates/js/translated/build.js:274 +#: templates/js/translated/build.js:306 msgid "The Bill of Materials contains trackable parts" msgstr "" -#: templates/js/translated/build.js:275 +#: templates/js/translated/build.js:307 msgid "Build outputs must be generated individually" msgstr "" -#: templates/js/translated/build.js:283 +#: templates/js/translated/build.js:315 msgid "Trackable parts can have serial numbers specified" msgstr "" -#: templates/js/translated/build.js:284 +#: templates/js/translated/build.js:316 msgid "Enter serial numbers to generate multiple single build outputs" msgstr "" -#: templates/js/translated/build.js:291 +#: templates/js/translated/build.js:323 msgid "Create Build Output" msgstr "" -#: templates/js/translated/build.js:322 +#: templates/js/translated/build.js:354 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:333 +#: templates/js/translated/build.js:365 msgid "Unallocate stock from build output" msgstr "" -#: templates/js/translated/build.js:342 +#: templates/js/translated/build.js:374 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:350 +#: templates/js/translated/build.js:382 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:373 +#: templates/js/translated/build.js:405 msgid "Are you sure you wish to unallocate stock items from this build?" msgstr "" -#: templates/js/translated/build.js:391 +#: templates/js/translated/build.js:423 msgid "Unallocate Stock Items" msgstr "" -#: templates/js/translated/build.js:411 templates/js/translated/build.js:563 +#: templates/js/translated/build.js:443 templates/js/translated/build.js:595 msgid "Select Build Outputs" msgstr "" -#: templates/js/translated/build.js:412 templates/js/translated/build.js:564 +#: templates/js/translated/build.js:444 templates/js/translated/build.js:596 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:466 templates/js/translated/build.js:618 +#: templates/js/translated/build.js:498 templates/js/translated/build.js:650 msgid "Output" msgstr "" -#: templates/js/translated/build.js:484 +#: templates/js/translated/build.js:516 msgid "Complete Build Outputs" msgstr "" -#: templates/js/translated/build.js:631 +#: templates/js/translated/build.js:663 msgid "Delete Build Outputs" msgstr "" -#: templates/js/translated/build.js:720 +#: templates/js/translated/build.js:752 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:757 +#: templates/js/translated/build.js:789 msgid "Location not specified" msgstr "" -#: templates/js/translated/build.js:1136 +#: templates/js/translated/build.js:1168 msgid "No active build outputs found" msgstr "" -#: templates/js/translated/build.js:1205 +#: templates/js/translated/build.js:1237 msgid "Allocated Stock" msgstr "" -#: templates/js/translated/build.js:1212 +#: templates/js/translated/build.js:1244 msgid "No tracked BOM items for this build" msgstr "" -#: templates/js/translated/build.js:1234 +#: templates/js/translated/build.js:1266 msgid "Completed Tests" msgstr "" -#: templates/js/translated/build.js:1239 +#: templates/js/translated/build.js:1271 msgid "No required tests for this build" msgstr "" -#: templates/js/translated/build.js:1712 templates/js/translated/build.js:2656 -#: templates/js/translated/order.js:3332 +#: templates/js/translated/build.js:1744 templates/js/translated/build.js:2689 +#: templates/js/translated/order.js:3371 msgid "Edit stock allocation" msgstr "" -#: templates/js/translated/build.js:1714 templates/js/translated/build.js:2657 -#: templates/js/translated/order.js:3333 +#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2690 +#: templates/js/translated/order.js:3372 msgid "Delete stock allocation" msgstr "" -#: templates/js/translated/build.js:1732 +#: templates/js/translated/build.js:1764 msgid "Edit Allocation" msgstr "" -#: templates/js/translated/build.js:1742 +#: templates/js/translated/build.js:1774 msgid "Remove Allocation" msgstr "" -#: templates/js/translated/build.js:1767 +#: templates/js/translated/build.js:1799 msgid "Substitute parts available" msgstr "" -#: templates/js/translated/build.js:1784 +#: templates/js/translated/build.js:1816 msgid "Quantity Per" msgstr "" -#: templates/js/translated/build.js:1810 templates/js/translated/order.js:3639 +#: templates/js/translated/build.js:1843 templates/js/translated/order.js:3678 msgid "Insufficient stock available" msgstr "" -#: templates/js/translated/build.js:1812 templates/js/translated/order.js:3637 +#: templates/js/translated/build.js:1845 templates/js/translated/order.js:3676 msgid "Sufficient stock available" msgstr "" -#: templates/js/translated/build.js:1841 templates/js/translated/build.js:2086 -#: templates/js/translated/build.js:2652 templates/js/translated/order.js:3651 +#: templates/js/translated/build.js:1874 templates/js/translated/build.js:2119 +#: templates/js/translated/build.js:2685 templates/js/translated/order.js:3690 msgid "Allocated" msgstr "" -#: templates/js/translated/build.js:1889 templates/js/translated/order.js:3731 +#: templates/js/translated/build.js:1922 templates/js/translated/order.js:3770 msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:1893 templates/stock_table.html:50 +#: templates/js/translated/build.js:1926 templates/stock_table.html:50 msgid "Order stock" msgstr "" -#: templates/js/translated/build.js:1896 templates/js/translated/order.js:3724 +#: templates/js/translated/build.js:1929 templates/js/translated/order.js:3763 msgid "Allocate stock" msgstr "" -#: templates/js/translated/build.js:1935 templates/js/translated/label.js:172 -#: templates/js/translated/order.js:807 templates/js/translated/order.js:2859 +#: templates/js/translated/build.js:1968 templates/js/translated/label.js:172 +#: templates/js/translated/order.js:846 templates/js/translated/order.js:2898 #: templates/js/translated/report.js:225 msgid "Select Parts" msgstr "" -#: templates/js/translated/build.js:1936 templates/js/translated/order.js:2860 +#: templates/js/translated/build.js:1969 templates/js/translated/order.js:2899 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1985 templates/js/translated/order.js:2808 +#: templates/js/translated/build.js:2018 templates/js/translated/order.js:2847 msgid "Specify stock allocation quantity" msgstr "" -#: templates/js/translated/build.js:2059 +#: templates/js/translated/build.js:2092 msgid "All Parts Allocated" msgstr "" -#: templates/js/translated/build.js:2060 +#: templates/js/translated/build.js:2093 msgid "All selected parts have been fully allocated" msgstr "" -#: templates/js/translated/build.js:2074 templates/js/translated/order.js:2874 +#: templates/js/translated/build.js:2107 templates/js/translated/order.js:2913 msgid "Select source location (leave blank to take from all locations)" msgstr "" -#: templates/js/translated/build.js:2102 +#: templates/js/translated/build.js:2135 msgid "Allocate Stock Items to Build Order" msgstr "" -#: templates/js/translated/build.js:2113 templates/js/translated/order.js:2971 +#: templates/js/translated/build.js:2146 templates/js/translated/order.js:3010 msgid "No matching stock locations" msgstr "" -#: templates/js/translated/build.js:2185 templates/js/translated/order.js:3048 +#: templates/js/translated/build.js:2218 templates/js/translated/order.js:3087 msgid "No matching stock items" msgstr "" -#: templates/js/translated/build.js:2282 +#: templates/js/translated/build.js:2315 msgid "Automatic Stock Allocation" msgstr "" -#: templates/js/translated/build.js:2283 +#: templates/js/translated/build.js:2316 msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines" msgstr "" -#: templates/js/translated/build.js:2285 +#: templates/js/translated/build.js:2318 msgid "If a location is specifed, stock will only be allocated from that location" msgstr "" -#: templates/js/translated/build.js:2286 +#: templates/js/translated/build.js:2319 msgid "If stock is considered interchangeable, it will be allocated from the first location it is found" msgstr "" -#: templates/js/translated/build.js:2287 +#: templates/js/translated/build.js:2320 msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found" msgstr "" -#: templates/js/translated/build.js:2308 +#: templates/js/translated/build.js:2341 msgid "Allocate Stock Items" msgstr "" -#: templates/js/translated/build.js:2414 +#: templates/js/translated/build.js:2447 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387 -#: templates/js/translated/part.js:1899 templates/js/translated/stock.js:1686 +#: templates/js/translated/build.js:2482 templates/js/translated/part.js:1387 +#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1686 #: templates/js/translated/stock.js:2386 msgid "Select" msgstr "" -#: templates/js/translated/build.js:2463 +#: templates/js/translated/build.js:2496 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:2491 +#: templates/js/translated/build.js:2524 msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647 +#: templates/js/translated/build.js:2560 templates/js/translated/stock.js:2647 msgid "No user information" msgstr "" -#: templates/js/translated/build.js:2633 +#: templates/js/translated/build.js:2666 msgid "No parts allocated for" msgstr "" @@ -8390,11 +8404,11 @@ msgstr "" msgid "Edit Manufacturer Part" msgstr "" -#: templates/js/translated/company.js:167 templates/js/translated/order.js:509 +#: templates/js/translated/company.js:167 templates/js/translated/order.js:510 msgid "Add Supplier" msgstr "" -#: templates/js/translated/company.js:195 templates/js/translated/order.js:628 +#: templates/js/translated/company.js:195 templates/js/translated/order.js:667 msgid "Add Supplier Part" msgstr "" @@ -8765,381 +8779,385 @@ msgstr "" msgid "Notifications will load here" msgstr "" -#: templates/js/translated/order.js:94 +#: templates/js/translated/order.js:95 msgid "No stock items have been allocated to this shipment" msgstr "" -#: templates/js/translated/order.js:99 +#: templates/js/translated/order.js:100 msgid "The following stock items will be shipped" msgstr "" -#: templates/js/translated/order.js:139 +#: templates/js/translated/order.js:140 msgid "Complete Shipment" msgstr "" -#: templates/js/translated/order.js:159 +#: templates/js/translated/order.js:160 msgid "Confirm Shipment" msgstr "" -#: templates/js/translated/order.js:215 +#: templates/js/translated/order.js:216 msgid "No pending shipments found" msgstr "" -#: templates/js/translated/order.js:219 +#: templates/js/translated/order.js:220 msgid "No stock items have been allocated to pending shipments" msgstr "" -#: templates/js/translated/order.js:251 +#: templates/js/translated/order.js:252 msgid "Skip" msgstr "" -#: templates/js/translated/order.js:281 +#: templates/js/translated/order.js:282 msgid "Complete Purchase Order" msgstr "" -#: templates/js/translated/order.js:287 +#: templates/js/translated/order.js:288 msgid "Mark this order as complete?" msgstr "" -#: templates/js/translated/order.js:293 +#: templates/js/translated/order.js:294 msgid "All line items have been received" msgstr "" -#: templates/js/translated/order.js:298 +#: templates/js/translated/order.js:299 msgid "This order has line items which have not been marked as received." msgstr "" -#: templates/js/translated/order.js:299 +#: templates/js/translated/order.js:300 msgid "Completing this order means that the order and line items will no longer be editable." msgstr "" -#: templates/js/translated/order.js:322 +#: templates/js/translated/order.js:323 msgid "Cancel Purchase Order" msgstr "" -#: templates/js/translated/order.js:327 +#: templates/js/translated/order.js:328 msgid "Are you sure you wish to cancel this purchase order?" msgstr "" -#: templates/js/translated/order.js:333 +#: templates/js/translated/order.js:334 msgid "This purchase order can not be cancelled" msgstr "" -#: templates/js/translated/order.js:356 +#: templates/js/translated/order.js:357 msgid "Issue Purchase Order" msgstr "" -#: templates/js/translated/order.js:361 +#: templates/js/translated/order.js:362 msgid "After placing this purchase order, line items will no longer be editable." msgstr "" -#: templates/js/translated/order.js:383 +#: templates/js/translated/order.js:384 msgid "Cancel Sales Order" msgstr "" -#: templates/js/translated/order.js:388 +#: templates/js/translated/order.js:389 msgid "Cancelling this order means that the order will no longer be editable." msgstr "" -#: templates/js/translated/order.js:442 +#: templates/js/translated/order.js:443 msgid "Create New Shipment" msgstr "" -#: templates/js/translated/order.js:467 +#: templates/js/translated/order.js:468 msgid "Add Customer" msgstr "" -#: templates/js/translated/order.js:492 +#: templates/js/translated/order.js:493 msgid "Create Sales Order" msgstr "" -#: templates/js/translated/order.js:757 +#: templates/js/translated/order.js:554 +msgid "Edit Purchase Order" +msgstr "" + +#: templates/js/translated/order.js:796 msgid "Export Order" msgstr "" -#: templates/js/translated/order.js:808 +#: templates/js/translated/order.js:847 msgid "At least one purchaseable part must be selected" msgstr "" -#: templates/js/translated/order.js:833 +#: templates/js/translated/order.js:872 msgid "Quantity to order" msgstr "" -#: templates/js/translated/order.js:842 +#: templates/js/translated/order.js:881 msgid "New supplier part" msgstr "" -#: templates/js/translated/order.js:860 +#: templates/js/translated/order.js:899 msgid "New purchase order" msgstr "" -#: templates/js/translated/order.js:893 +#: templates/js/translated/order.js:932 msgid "Add to purchase order" msgstr "" -#: templates/js/translated/order.js:1002 +#: templates/js/translated/order.js:1041 msgid "No matching supplier parts" msgstr "" -#: templates/js/translated/order.js:1017 +#: templates/js/translated/order.js:1056 msgid "No matching purchase orders" msgstr "" -#: templates/js/translated/order.js:1194 +#: templates/js/translated/order.js:1233 msgid "Select Line Items" msgstr "" -#: templates/js/translated/order.js:1195 +#: templates/js/translated/order.js:1234 msgid "At least one line item must be selected" msgstr "" -#: templates/js/translated/order.js:1215 templates/js/translated/order.js:1314 +#: templates/js/translated/order.js:1254 templates/js/translated/order.js:1353 msgid "Add batch code" msgstr "" -#: templates/js/translated/order.js:1221 templates/js/translated/order.js:1325 +#: templates/js/translated/order.js:1260 templates/js/translated/order.js:1364 msgid "Add serial numbers" msgstr "" -#: templates/js/translated/order.js:1233 +#: templates/js/translated/order.js:1272 msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144 +#: templates/js/translated/order.js:1336 templates/js/translated/stock.js:2144 msgid "Stock Status" msgstr "" -#: templates/js/translated/order.js:1388 +#: templates/js/translated/order.js:1427 msgid "Order Code" msgstr "" -#: templates/js/translated/order.js:1389 +#: templates/js/translated/order.js:1428 msgid "Ordered" msgstr "" -#: templates/js/translated/order.js:1391 +#: templates/js/translated/order.js:1430 msgid "Quantity to Receive" msgstr "" -#: templates/js/translated/order.js:1410 +#: templates/js/translated/order.js:1449 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/order.js:1411 +#: templates/js/translated/order.js:1450 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943 +#: templates/js/translated/order.js:1711 templates/js/translated/part.js:943 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/order.js:1699 templates/js/translated/order.js:2503 +#: templates/js/translated/order.js:1738 templates/js/translated/order.js:2542 msgid "Order is overdue" msgstr "" -#: templates/js/translated/order.js:1749 templates/js/translated/order.js:2568 -#: templates/js/translated/order.js:2709 +#: templates/js/translated/order.js:1788 templates/js/translated/order.js:2607 +#: templates/js/translated/order.js:2748 msgid "Items" msgstr "" -#: templates/js/translated/order.js:1847 templates/js/translated/order.js:3783 +#: templates/js/translated/order.js:1886 templates/js/translated/order.js:3822 msgid "Duplicate Line Item" msgstr "" -#: templates/js/translated/order.js:1864 templates/js/translated/order.js:3805 +#: templates/js/translated/order.js:1903 templates/js/translated/order.js:3844 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/order.js:1877 templates/js/translated/order.js:3816 +#: templates/js/translated/order.js:1916 templates/js/translated/order.js:3855 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/order.js:1920 +#: templates/js/translated/order.js:1959 msgid "No line items found" msgstr "" -#: templates/js/translated/order.js:1947 templates/js/translated/order.js:3517 +#: templates/js/translated/order.js:1986 templates/js/translated/order.js:3556 msgid "Total" msgstr "" -#: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203 -#: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050 -#: templates/js/translated/part.js:2135 templates/js/translated/part.js:2488 +#: templates/js/translated/order.js:2040 templates/js/translated/order.js:2242 +#: templates/js/translated/order.js:3581 templates/js/translated/order.js:4089 +#: templates/js/translated/part.js:2131 templates/js/translated/part.js:2703 msgid "Unit Price" msgstr "" -#: templates/js/translated/order.js:2016 templates/js/translated/order.js:2219 -#: templates/js/translated/order.js:3558 templates/js/translated/order.js:4066 +#: templates/js/translated/order.js:2055 templates/js/translated/order.js:2258 +#: templates/js/translated/order.js:3597 templates/js/translated/order.js:4105 msgid "Total Price" msgstr "" -#: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600 +#: templates/js/translated/order.js:2096 templates/js/translated/order.js:3639 #: templates/js/translated/part.js:1050 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096 +#: templates/js/translated/order.js:2155 templates/js/translated/part.js:1096 msgid "Receive line item" msgstr "" -#: templates/js/translated/order.js:2120 templates/js/translated/order.js:3737 +#: templates/js/translated/order.js:2159 templates/js/translated/order.js:3776 msgid "Duplicate line item" msgstr "" -#: templates/js/translated/order.js:2121 templates/js/translated/order.js:3738 +#: templates/js/translated/order.js:2160 templates/js/translated/order.js:3777 msgid "Edit line item" msgstr "" -#: templates/js/translated/order.js:2122 templates/js/translated/order.js:3742 +#: templates/js/translated/order.js:2161 templates/js/translated/order.js:3781 msgid "Delete line item" msgstr "" -#: templates/js/translated/order.js:2268 templates/js/translated/order.js:4115 +#: templates/js/translated/order.js:2307 templates/js/translated/order.js:4154 msgid "Duplicate line" msgstr "" -#: templates/js/translated/order.js:2269 templates/js/translated/order.js:4116 +#: templates/js/translated/order.js:2308 templates/js/translated/order.js:4155 msgid "Edit line" msgstr "" -#: templates/js/translated/order.js:2270 templates/js/translated/order.js:4117 +#: templates/js/translated/order.js:2309 templates/js/translated/order.js:4156 msgid "Delete line" msgstr "" -#: templates/js/translated/order.js:2300 templates/js/translated/order.js:4147 +#: templates/js/translated/order.js:2339 templates/js/translated/order.js:4186 msgid "Duplicate Line" msgstr "" -#: templates/js/translated/order.js:2321 templates/js/translated/order.js:4168 +#: templates/js/translated/order.js:2360 templates/js/translated/order.js:4207 msgid "Edit Line" msgstr "" -#: templates/js/translated/order.js:2332 templates/js/translated/order.js:4179 +#: templates/js/translated/order.js:2371 templates/js/translated/order.js:4218 msgid "Delete Line" msgstr "" -#: templates/js/translated/order.js:2343 +#: templates/js/translated/order.js:2382 msgid "No matching line" msgstr "" -#: templates/js/translated/order.js:2454 +#: templates/js/translated/order.js:2493 msgid "No sales orders found" msgstr "" -#: templates/js/translated/order.js:2517 +#: templates/js/translated/order.js:2556 msgid "Invalid Customer" msgstr "" -#: templates/js/translated/order.js:2615 +#: templates/js/translated/order.js:2654 msgid "Edit shipment" msgstr "" -#: templates/js/translated/order.js:2618 +#: templates/js/translated/order.js:2657 msgid "Complete shipment" msgstr "" -#: templates/js/translated/order.js:2623 +#: templates/js/translated/order.js:2662 msgid "Delete shipment" msgstr "" -#: templates/js/translated/order.js:2643 +#: templates/js/translated/order.js:2682 msgid "Edit Shipment" msgstr "" -#: templates/js/translated/order.js:2660 +#: templates/js/translated/order.js:2699 msgid "Delete Shipment" msgstr "" -#: templates/js/translated/order.js:2694 +#: templates/js/translated/order.js:2733 msgid "No matching shipments found" msgstr "" -#: templates/js/translated/order.js:2704 +#: templates/js/translated/order.js:2743 msgid "Shipment Reference" msgstr "" -#: templates/js/translated/order.js:2728 +#: templates/js/translated/order.js:2767 msgid "Not shipped" msgstr "" -#: templates/js/translated/order.js:2734 +#: templates/js/translated/order.js:2773 msgid "Tracking" msgstr "" -#: templates/js/translated/order.js:2738 +#: templates/js/translated/order.js:2777 msgid "Invoice" msgstr "" -#: templates/js/translated/order.js:2907 +#: templates/js/translated/order.js:2946 msgid "Add Shipment" msgstr "" -#: templates/js/translated/order.js:2958 +#: templates/js/translated/order.js:2997 msgid "Confirm stock allocation" msgstr "" -#: templates/js/translated/order.js:2959 +#: templates/js/translated/order.js:2998 msgid "Allocate Stock Items to Sales Order" msgstr "" -#: templates/js/translated/order.js:3167 +#: templates/js/translated/order.js:3206 msgid "No sales order allocations found" msgstr "" -#: templates/js/translated/order.js:3246 +#: templates/js/translated/order.js:3285 msgid "Edit Stock Allocation" msgstr "" -#: templates/js/translated/order.js:3263 +#: templates/js/translated/order.js:3302 msgid "Confirm Delete Operation" msgstr "" -#: templates/js/translated/order.js:3264 +#: templates/js/translated/order.js:3303 msgid "Delete Stock Allocation" msgstr "" -#: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398 +#: templates/js/translated/order.js:3348 templates/js/translated/order.js:3437 #: templates/js/translated/stock.js:1602 msgid "Shipped to customer" msgstr "" -#: templates/js/translated/order.js:3317 templates/js/translated/order.js:3407 +#: templates/js/translated/order.js:3356 templates/js/translated/order.js:3446 msgid "Stock location not specified" msgstr "" -#: templates/js/translated/order.js:3721 +#: templates/js/translated/order.js:3760 msgid "Allocate serial numbers" msgstr "" -#: templates/js/translated/order.js:3727 +#: templates/js/translated/order.js:3766 msgid "Purchase stock" msgstr "" -#: templates/js/translated/order.js:3734 templates/js/translated/order.js:3932 +#: templates/js/translated/order.js:3773 templates/js/translated/order.js:3971 msgid "Calculate price" msgstr "" -#: templates/js/translated/order.js:3746 +#: templates/js/translated/order.js:3785 msgid "Cannot be deleted as items have been shipped" msgstr "" -#: templates/js/translated/order.js:3749 +#: templates/js/translated/order.js:3788 msgid "Cannot be deleted as items have been allocated" msgstr "" -#: templates/js/translated/order.js:3831 +#: templates/js/translated/order.js:3870 msgid "Allocate Serial Numbers" msgstr "" -#: templates/js/translated/order.js:3940 +#: templates/js/translated/order.js:3979 msgid "Update Unit Price" msgstr "" -#: templates/js/translated/order.js:3954 +#: templates/js/translated/order.js:3993 msgid "No matching line items" msgstr "" -#: templates/js/translated/order.js:4190 +#: templates/js/translated/order.js:4229 msgid "No matching lines" msgstr "" @@ -9319,12 +9337,12 @@ msgstr "" msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:586 templates/js/translated/part.js:1470 +#: templates/js/translated/part.js:586 templates/js/translated/part.js:1478 #: templates/js/translated/table_filters.js:468 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:596 templates/js/translated/part.js:1482 +#: templates/js/translated/part.js:596 msgid "No stock available" msgstr "" @@ -9356,7 +9374,7 @@ msgstr "" msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1553 +#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1549 msgid "No parts found" msgstr "" @@ -9368,100 +9386,124 @@ msgstr "" msgid "No category" msgstr "" -#: templates/js/translated/part.js:1577 templates/js/translated/part.js:1820 +#: templates/js/translated/part.js:1476 +msgid "No stock" +msgstr "" + +#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816 #: templates/js/translated/stock.js:2347 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:1593 +#: templates/js/translated/part.js:1589 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:1659 +#: templates/js/translated/part.js:1655 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:1664 +#: templates/js/translated/part.js:1660 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:1669 +#: templates/js/translated/part.js:1665 msgid "Select Part Category" msgstr "" -#: templates/js/translated/part.js:1682 +#: templates/js/translated/part.js:1678 msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1839 templates/js/translated/stock.js:2366 +#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2366 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:1918 +#: templates/js/translated/part.js:1914 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:1934 +#: templates/js/translated/part.js:1930 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:1992 +#: templates/js/translated/part.js:1988 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2043 templates/js/translated/stock.js:1299 +#: templates/js/translated/part.js:2039 templates/js/translated/stock.js:1299 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:2044 templates/js/translated/stock.js:1300 +#: templates/js/translated/part.js:2040 templates/js/translated/stock.js:1300 #: templates/js/translated/stock.js:1560 msgid "Delete test result" msgstr "" -#: templates/js/translated/part.js:2050 +#: templates/js/translated/part.js:2046 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2072 +#: templates/js/translated/part.js:2068 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2086 +#: templates/js/translated/part.js:2082 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2111 +#: templates/js/translated/part.js:2107 #, python-brace-format msgid "No ${human_name} information found" msgstr "" -#: templates/js/translated/part.js:2168 +#: templates/js/translated/part.js:2164 #, python-brace-format msgid "Edit ${human_name}" msgstr "" -#: templates/js/translated/part.js:2169 +#: templates/js/translated/part.js:2165 #, python-brace-format msgid "Delete ${human_name}" msgstr "" -#: templates/js/translated/part.js:2283 -msgid "Current Stock" +#: templates/js/translated/part.js:2330 templates/js/translated/part.js:2331 +msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:2316 +#: templates/js/translated/part.js:2333 +msgid "Specified date is in the past" +msgstr "" + +#: templates/js/translated/part.js:2339 +msgid "Speculative" +msgstr "" + +#: templates/js/translated/part.js:2389 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2342 +#: templates/js/translated/part.js:2395 +msgid "Error fetching scheduling information for this part" +msgstr "" + +#: templates/js/translated/part.js:2491 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2412 +#: templates/js/translated/part.js:2507 +msgid "Maximum Quantity" +msgstr "" + +#: templates/js/translated/part.js:2533 +msgid "Minimum Stock Level" +msgstr "" + +#: templates/js/translated/part.js:2627 msgid "Single Price" msgstr "" -#: templates/js/translated/part.js:2431 +#: templates/js/translated/part.js:2646 msgid "Single Price Difference" msgstr "" @@ -10222,10 +10264,6 @@ msgstr "" msgid "Hide/Show pagination" msgstr "" -#: templates/js/translated/tables.js:558 -msgid "Refresh" -msgstr "" - #: templates/js/translated/tables.js:561 msgid "Toggle" msgstr "" diff --git a/InvenTree/locale/th/LC_MESSAGES/django.po b/InvenTree/locale/th/LC_MESSAGES/django.po index 888242433d..21e1cf8b66 100644 --- a/InvenTree/locale/th/LC_MESSAGES/django.po +++ b/InvenTree/locale/th/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-16 11:53+0000\n" -"PO-Revision-Date: 2022-08-16 21:36\n" +"POT-Creation-Date: 2022-08-18 05:14+0000\n" +"PO-Revision-Date: 2022-08-18 21:39\n" "Last-Translator: \n" "Language-Team: Thai\n" "Language: th_TH\n" @@ -40,10 +40,10 @@ msgstr "" #: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825 #: stock/serializers.py:924 stock/serializers.py:1056 #: stock/templates/stock/stock_sidebar.html:25 -#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101 -#: templates/js/translated/company.js:964 templates/js/translated/order.js:2104 -#: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753 -#: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102 +#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1099 +#: templates/js/translated/company.js:964 templates/js/translated/order.js:2143 +#: templates/js/translated/order.js:2294 templates/js/translated/order.js:2792 +#: templates/js/translated/order.js:3743 templates/js/translated/order.js:4141 #: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980 msgid "Notes" msgstr "" @@ -211,11 +211,11 @@ msgstr "" #: InvenTree/models.py:402 company/models.py:124 company/models.py:276 #: company/models.py:510 order/models.py:84 order/models.py:1245 -#: part/models.py:802 +#: part/models.py:802 part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_base.html:164 #: templates/js/translated/company.js:656 -#: templates/js/translated/company.js:948 templates/js/translated/order.js:2742 -#: templates/js/translated/part.js:1514 +#: templates/js/translated/company.js:948 templates/js/translated/order.js:2781 +#: templates/js/translated/part.js:1510 msgid "Link" msgstr "" @@ -235,8 +235,8 @@ msgstr "" #: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665 #: common/models.py:1666 common/models.py:1889 common/models.py:1890 -#: common/models.py:2152 common/models.py:2153 part/models.py:2200 -#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257 +#: common/models.py:2152 common/models.py:2153 part/models.py:2247 +#: part/models.py:2267 plugin/models.py:256 plugin/models.py:257 #: report/templates/report/inventree_test_report_base.html:96 #: templates/js/translated/stock.js:2641 msgid "User" @@ -277,7 +277,7 @@ msgstr "" #: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875 #: company/models.py:358 label/models.py:101 part/models.py:746 -#: part/models.py:2378 plugin/models.py:94 report/models.py:152 +#: part/models.py:2425 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 #: templates/InvenTree/settings/plugin.html:51 #: templates/InvenTree/settings/plugin.html:134 @@ -287,7 +287,7 @@ msgstr "" #: templates/js/translated/company.js:758 #: templates/js/translated/notification.js:71 #: templates/js/translated/part.js:688 templates/js/translated/part.js:840 -#: templates/js/translated/part.js:1906 templates/js/translated/stock.js:2392 +#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2392 msgid "Name" msgstr "" @@ -297,19 +297,20 @@ msgstr "" #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:87 label/models.py:108 #: order/models.py:82 part/models.py:769 part/templates/part/category.html:80 -#: part/templates/part/part_base.html:167 report/models.py:165 +#: part/templates/part/part_base.html:167 +#: part/templates/part/part_scheduling.html:12 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 #: stock/templates/stock/location.html:108 #: templates/InvenTree/settings/plugin_settings.html:33 -#: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848 -#: templates/js/translated/build.js:2471 templates/js/translated/company.js:409 +#: templates/js/translated/bom.js:553 templates/js/translated/bom.js:846 +#: templates/js/translated/build.js:2504 templates/js/translated/company.js:409 #: templates/js/translated/company.js:667 -#: templates/js/translated/company.js:959 templates/js/translated/order.js:1720 -#: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531 +#: templates/js/translated/company.js:959 templates/js/translated/order.js:1759 +#: templates/js/translated/order.js:1991 templates/js/translated/order.js:2570 #: templates/js/translated/part.js:747 templates/js/translated/part.js:1153 -#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1942 -#: templates/js/translated/part.js:2011 templates/js/translated/stock.js:1743 +#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1938 +#: templates/js/translated/part.js:2007 templates/js/translated/stock.js:1743 #: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478 msgid "Description" msgstr "" @@ -323,7 +324,7 @@ msgid "parent" msgstr "" #: InvenTree/models.py:560 InvenTree/models.py:561 -#: templates/js/translated/part.js:1948 templates/js/translated/stock.js:2430 +#: templates/js/translated/part.js:1944 templates/js/translated/stock.js:2430 msgid "Path" msgstr "" @@ -335,7 +336,7 @@ msgstr "" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:55 part/models.py:2699 +#: InvenTree/serializers.py:55 part/models.py:2746 msgid "Must be a valid number" msgstr "" @@ -541,7 +542,7 @@ msgid "Returned" msgstr "" #: InvenTree/status_codes.py:141 order/models.py:1128 -#: templates/js/translated/order.js:3330 templates/js/translated/order.js:3679 +#: templates/js/translated/order.js:3369 templates/js/translated/order.js:3718 msgid "Shipped" msgstr "" @@ -728,7 +729,7 @@ msgstr "" #: report/templates/report/inventree_build_order_base.html:105 #: templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 -#: templates/js/translated/build.js:731 +#: templates/js/translated/build.js:763 msgid "Build Order" msgstr "" @@ -747,14 +748,14 @@ msgid "Build Order Reference" msgstr "" #: build/models.py:166 order/models.py:240 order/models.py:623 -#: order/models.py:904 part/models.py:2617 +#: order/models.py:904 part/models.py:2664 #: part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 -#: templates/js/translated/bom.js:692 templates/js/translated/bom.js:855 -#: templates/js/translated/build.js:1779 templates/js/translated/order.js:1983 -#: templates/js/translated/order.js:2184 templates/js/translated/order.js:3523 -#: templates/js/translated/order.js:4031 +#: templates/js/translated/bom.js:690 templates/js/translated/bom.js:853 +#: templates/js/translated/build.js:1811 templates/js/translated/order.js:2022 +#: templates/js/translated/order.js:2223 templates/js/translated/order.js:3562 +#: templates/js/translated/order.js:4070 msgid "Reference" msgstr "" @@ -762,7 +763,7 @@ msgstr "" msgid "Brief description of the build" msgstr "" -#: build/models.py:185 build/templates/build/build_base.html:169 +#: build/models.py:185 build/templates/build/build_base.html:172 #: build/templates/build/detail.html:87 msgid "Parent Build" msgstr "" @@ -771,13 +772,13 @@ msgstr "" msgid "BuildOrder to which this build is allocated" msgstr "" -#: build/models.py:191 build/templates/build/build_base.html:77 +#: build/models.py:191 build/templates/build/build_base.html:80 #: build/templates/build/detail.html:29 company/models.py:670 #: order/models.py:1001 order/models.py:1112 order/models.py:1113 -#: part/models.py:343 part/models.py:2146 part/models.py:2161 -#: part/models.py:2180 part/models.py:2198 part/models.py:2297 -#: part/models.py:2417 part/models.py:2507 part/models.py:2592 -#: part/models.py:2868 part/serializers.py:813 +#: part/models.py:343 part/models.py:2193 part/models.py:2208 +#: part/models.py:2227 part/models.py:2245 part/models.py:2344 +#: part/models.py:2464 part/models.py:2554 part/models.py:2639 +#: part/models.py:2915 part/serializers.py:813 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -789,17 +790,17 @@ msgstr "" #: templates/email/build_order_required_stock.html:17 #: templates/email/low_stock_notification.html:16 #: templates/email/overdue_build_order.html:16 -#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:553 -#: templates/js/translated/bom.js:691 templates/js/translated/bom.js:802 -#: templates/js/translated/build.js:1156 templates/js/translated/build.js:1649 -#: templates/js/translated/build.js:2085 templates/js/translated/build.js:2476 +#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:552 +#: templates/js/translated/bom.js:689 templates/js/translated/bom.js:800 +#: templates/js/translated/build.js:1188 templates/js/translated/build.js:1681 +#: templates/js/translated/build.js:2118 templates/js/translated/build.js:2509 #: templates/js/translated/company.js:266 #: templates/js/translated/company.js:496 #: templates/js/translated/company.js:608 -#: templates/js/translated/company.js:868 templates/js/translated/order.js:103 -#: templates/js/translated/order.js:934 templates/js/translated/order.js:1387 -#: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885 -#: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507 +#: templates/js/translated/company.js:868 templates/js/translated/order.js:104 +#: templates/js/translated/order.js:973 templates/js/translated/order.js:1426 +#: templates/js/translated/order.js:1976 templates/js/translated/order.js:2924 +#: templates/js/translated/order.js:3320 templates/js/translated/order.js:3546 #: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210 #: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586 #: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958 @@ -821,7 +822,7 @@ msgid "SalesOrder to which this build is allocated" msgstr "" #: build/models.py:213 build/serializers.py:800 -#: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873 +#: templates/js/translated/build.js:2106 templates/js/translated/order.js:2912 msgid "Source Location" msgstr "" @@ -862,7 +863,7 @@ msgid "Build status code" msgstr "" #: build/models.py:251 build/serializers.py:225 order/serializers.py:447 -#: stock/models.py:662 templates/js/translated/order.js:1247 +#: stock/models.py:662 templates/js/translated/order.js:1286 msgid "Batch Code" msgstr "" @@ -871,7 +872,7 @@ msgid "Batch code for this build output" msgstr "" #: build/models.py:258 order/models.py:86 part/models.py:938 -#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544 +#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2583 msgid "Creation Date" msgstr "" @@ -884,7 +885,7 @@ msgid "Target date for build completion. Build will be overdue after this date." msgstr "" #: build/models.py:266 order/models.py:286 -#: templates/js/translated/build.js:2553 +#: templates/js/translated/build.js:2586 msgid "Completion Date" msgstr "" @@ -892,7 +893,7 @@ msgstr "" msgid "completed by" msgstr "" -#: build/models.py:280 templates/js/translated/build.js:2521 +#: build/models.py:280 templates/js/translated/build.js:2554 msgid "Issued by" msgstr "" @@ -900,12 +901,12 @@ msgstr "" msgid "User who issued this build order" msgstr "" -#: build/models.py:289 build/templates/build/build_base.html:190 +#: build/models.py:289 build/templates/build/build_base.html:193 #: build/templates/build/detail.html:115 order/models.py:100 #: order/templates/order/order_base.html:176 #: order/templates/order/sales_order_base.html:183 part/models.py:942 #: report/templates/report/inventree_build_order_base.html:158 -#: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754 +#: templates/js/translated/build.js:2566 templates/js/translated/order.js:1793 msgid "Responsible" msgstr "" @@ -972,7 +973,7 @@ msgid "Selected stock item not found in BOM" msgstr "" #: build/models.py:1328 stock/templates/stock/item_base.html:177 -#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2455 +#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2488 #: templates/navbar.html:38 msgid "Build" msgstr "" @@ -986,11 +987,11 @@ msgstr "" #: stock/serializers.py:882 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:199 -#: templates/js/translated/build.js:741 templates/js/translated/build.js:746 -#: templates/js/translated/build.js:2087 templates/js/translated/build.js:2638 -#: templates/js/translated/order.js:104 templates/js/translated/order.js:2886 -#: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193 -#: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380 +#: templates/js/translated/build.js:773 templates/js/translated/build.js:778 +#: templates/js/translated/build.js:2120 templates/js/translated/build.js:2671 +#: templates/js/translated/order.js:105 templates/js/translated/order.js:2925 +#: templates/js/translated/order.js:3227 templates/js/translated/order.js:3232 +#: templates/js/translated/order.js:3327 templates/js/translated/order.js:3419 #: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752 #: templates/js/translated/stock.js:2577 msgid "Stock Item" @@ -1001,13 +1002,13 @@ msgid "Source stock item" msgstr "" #: build/models.py:1358 build/serializers.py:193 -#: build/templates/build/build_base.html:82 +#: build/templates/build/build_base.html:85 #: build/templates/build/detail.html:34 common/models.py:1697 #: company/templates/company/supplier_part.html:279 order/models.py:897 #: order/models.py:1423 order/serializers.py:1155 #: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40 -#: part/models.py:2608 part/templates/part/detail.html:937 -#: part/templates/part/detail.html:1023 +#: part/models.py:2655 part/templates/part/detail.html:951 +#: part/templates/part/detail.html:1037 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 #: report/templates/report/inventree_build_order_base.html:113 @@ -1018,20 +1019,20 @@ msgstr "" #: stock/serializers.py:293 stock/templates/stock/item_base.html:292 #: stock/templates/stock/item_base.html:300 #: templates/email/build_order_completed.html:18 -#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:693 -#: templates/js/translated/bom.js:863 templates/js/translated/build.js:426 -#: templates/js/translated/build.js:578 templates/js/translated/build.js:768 -#: templates/js/translated/build.js:1178 templates/js/translated/build.js:1675 -#: templates/js/translated/build.js:2088 +#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:691 +#: templates/js/translated/bom.js:861 templates/js/translated/build.js:458 +#: templates/js/translated/build.js:610 templates/js/translated/build.js:800 +#: templates/js/translated/build.js:1210 templates/js/translated/build.js:1707 +#: templates/js/translated/build.js:2121 #: templates/js/translated/model_renderers.js:120 -#: templates/js/translated/order.js:120 templates/js/translated/order.js:937 -#: templates/js/translated/order.js:1989 templates/js/translated/order.js:2190 -#: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207 -#: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386 -#: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037 -#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2156 -#: templates/js/translated/part.js:2387 templates/js/translated/part.js:2421 -#: templates/js/translated/part.js:2499 templates/js/translated/stock.js:458 +#: templates/js/translated/order.js:121 templates/js/translated/order.js:976 +#: templates/js/translated/order.js:2028 templates/js/translated/order.js:2229 +#: templates/js/translated/order.js:2926 templates/js/translated/order.js:3246 +#: templates/js/translated/order.js:3333 templates/js/translated/order.js:3425 +#: templates/js/translated/order.js:3568 templates/js/translated/order.js:4076 +#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2152 +#: templates/js/translated/part.js:2602 templates/js/translated/part.js:2636 +#: templates/js/translated/part.js:2714 templates/js/translated/stock.js:458 #: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782 #: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711 msgid "Quantity" @@ -1050,7 +1051,7 @@ msgid "Destination stock item" msgstr "" #: build/serializers.py:138 build/serializers.py:674 -#: templates/js/translated/build.js:1166 +#: templates/js/translated/build.js:1198 msgid "Build Output" msgstr "" @@ -1090,7 +1091,7 @@ msgid "Integer quantity required, as the bill of materials contains trackable pa msgstr "" #: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159 -#: stock/serializers.py:311 templates/js/translated/order.js:1258 +#: stock/serializers.py:311 templates/js/translated/order.js:1297 #: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459 msgid "Serial Numbers" msgstr "" @@ -1120,10 +1121,10 @@ msgstr "" #: stock/serializers.py:917 stock/serializers.py:1150 #: stock/templates/stock/item_base.html:390 #: templates/js/translated/barcode.js:436 -#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753 -#: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285 -#: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305 -#: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394 +#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:785 +#: templates/js/translated/build.js:1719 templates/js/translated/order.js:1324 +#: templates/js/translated/order.js:3239 templates/js/translated/order.js:3344 +#: templates/js/translated/order.js:3352 templates/js/translated/order.js:3433 #: templates/js/translated/part.js:181 templates/js/translated/stock.js:588 #: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960 #: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518 @@ -1134,12 +1135,12 @@ msgstr "" msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:373 build/templates/build/build_base.html:142 +#: build/serializers.py:373 build/templates/build/build_base.html:145 #: build/templates/build/detail.html:62 order/models.py:642 #: order/serializers.py:465 stock/templates/stock/item_base.html:423 -#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505 -#: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724 -#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829 +#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2538 +#: templates/js/translated/order.js:1431 templates/js/translated/order.js:1763 +#: templates/js/translated/order.js:2575 templates/js/translated/stock.js:1829 #: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727 msgid "Status" msgstr "" @@ -1196,7 +1197,7 @@ msgstr "" msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:522 templates/js/translated/build.js:195 +#: build/serializers.py:522 templates/js/translated/build.js:227 msgid "Required stock has not been fully allocated" msgstr "" @@ -1208,7 +1209,7 @@ msgstr "" msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:538 templates/js/translated/build.js:199 +#: build/serializers.py:538 templates/js/translated/build.js:231 msgid "Required build quantity has not been completed" msgstr "" @@ -1216,8 +1217,8 @@ msgstr "" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726 -#: part/models.py:2860 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2773 +#: part/models.py:2907 msgid "BOM Item" msgstr "" @@ -1322,66 +1323,70 @@ msgid "Cancel Build" msgstr "" #: build/templates/build/build_base.html:59 +msgid "Duplicate Build" +msgstr "" + +#: build/templates/build/build_base.html:62 msgid "Delete Build" msgstr "" -#: build/templates/build/build_base.html:64 -#: build/templates/build/build_base.html:65 +#: build/templates/build/build_base.html:67 +#: build/templates/build/build_base.html:68 msgid "Complete Build" msgstr "" -#: build/templates/build/build_base.html:87 +#: build/templates/build/build_base.html:90 msgid "Build Description" msgstr "" -#: build/templates/build/build_base.html:95 +#: build/templates/build/build_base.html:98 msgid "No build outputs have been created for this build order" msgstr "" -#: build/templates/build/build_base.html:101 +#: build/templates/build/build_base.html:104 #, python-format msgid "This Build Order is allocated to Sales Order %(link)s" msgstr "" -#: build/templates/build/build_base.html:108 +#: build/templates/build/build_base.html:111 #, python-format msgid "This Build Order is a child of Build Order %(link)s" msgstr "" -#: build/templates/build/build_base.html:115 +#: build/templates/build/build_base.html:118 msgid "Build Order is ready to mark as completed" msgstr "" -#: build/templates/build/build_base.html:120 +#: build/templates/build/build_base.html:123 msgid "Build Order cannot be completed as outstanding outputs remain" msgstr "" -#: build/templates/build/build_base.html:125 +#: build/templates/build/build_base.html:128 msgid "Required build quantity has not yet been completed" msgstr "" -#: build/templates/build/build_base.html:130 +#: build/templates/build/build_base.html:133 msgid "Stock has not been fully allocated to this Build Order" msgstr "" -#: build/templates/build/build_base.html:151 +#: build/templates/build/build_base.html:154 #: build/templates/build/detail.html:131 order/models.py:910 #: order/templates/order/order_base.html:162 #: order/templates/order/sales_order_base.html:164 #: report/templates/report/inventree_build_order_base.html:125 -#: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741 -#: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552 -#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042 +#: templates/js/translated/build.js:2578 templates/js/translated/order.js:1780 +#: templates/js/translated/order.js:2090 templates/js/translated/order.js:2591 +#: templates/js/translated/order.js:3631 templates/js/translated/part.js:1042 msgid "Target Date" msgstr "" -#: build/templates/build/build_base.html:156 +#: build/templates/build/build_base.html:159 #, python-format msgid "This build was due on %(target)s" msgstr "" -#: build/templates/build/build_base.html:156 -#: build/templates/build/build_base.html:201 +#: build/templates/build/build_base.html:159 +#: build/templates/build/build_base.html:204 #: order/templates/order/order_base.html:98 #: order/templates/order/sales_order_base.html:94 #: templates/js/translated/table_filters.js:320 @@ -1390,14 +1395,14 @@ msgstr "" msgid "Overdue" msgstr "" -#: build/templates/build/build_base.html:163 +#: build/templates/build/build_base.html:166 #: build/templates/build/detail.html:67 build/templates/build/detail.html:142 #: order/templates/order/sales_order_base.html:171 #: templates/js/translated/table_filters.js:400 msgid "Completed" msgstr "" -#: build/templates/build/build_base.html:176 +#: build/templates/build/build_base.html:179 #: build/templates/build/detail.html:94 order/models.py:1105 #: order/models.py:1199 order/models.py:1330 #: order/templates/order/sales_order_base.html:9 @@ -1406,17 +1411,17 @@ msgstr "" #: report/templates/report/inventree_so_report.html:77 #: stock/templates/stock/item_base.html:370 #: templates/email/overdue_sales_order.html:15 -#: templates/js/translated/order.js:2498 +#: templates/js/translated/order.js:2537 msgid "Sales Order" msgstr "" -#: build/templates/build/build_base.html:183 +#: build/templates/build/build_base.html:186 #: build/templates/build/detail.html:108 #: report/templates/report/inventree_build_order_base.html:152 msgid "Issued By" msgstr "" -#: build/templates/build/build_base.html:245 +#: build/templates/build/build_base.html:256 msgid "Delete Build Order" msgstr "" @@ -1433,7 +1438,7 @@ msgid "Stock can be taken from any available location." msgstr "" #: build/templates/build/detail.html:49 order/models.py:1023 -#: templates/js/translated/order.js:1393 templates/js/translated/order.js:2093 +#: templates/js/translated/order.js:1432 templates/js/translated/order.js:2132 msgid "Destination" msgstr "" @@ -1447,7 +1452,7 @@ msgstr "" #: build/templates/build/detail.html:80 #: stock/templates/stock/item_base.html:170 -#: templates/js/translated/build.js:1182 +#: templates/js/translated/build.js:1214 #: templates/js/translated/model_renderers.js:124 #: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843 #: templates/js/translated/stock.js:2734 @@ -1459,7 +1464,7 @@ msgstr "" #: build/templates/build/detail.html:126 #: order/templates/order/order_base.html:149 #: order/templates/order/sales_order_base.html:158 -#: templates/js/translated/build.js:2513 +#: templates/js/translated/build.js:2546 msgid "Created" msgstr "" @@ -1479,7 +1484,7 @@ msgstr "" msgid "Allocate Stock to Build" msgstr "" -#: build/templates/build/detail.html:176 templates/js/translated/build.js:1901 +#: build/templates/build/detail.html:176 templates/js/translated/build.js:1934 msgid "Unallocate stock" msgstr "" @@ -1510,7 +1515,7 @@ msgstr "" #: build/templates/build/detail.html:187 #: company/templates/company/detail.html:37 #: company/templates/company/detail.html:85 -#: part/templates/part/category.html:183 templates/js/translated/order.js:977 +#: part/templates/part/category.html:183 templates/js/translated/order.js:1016 msgid "Order Parts" msgstr "" @@ -1582,7 +1587,7 @@ msgstr "" #: order/templates/order/po_sidebar.html:9 #: order/templates/order/purchase_order_detail.html:82 #: order/templates/order/sales_order_detail.html:135 -#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:207 +#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:212 #: part/templates/part/part_sidebar.html:57 stock/templates/stock/item.html:117 #: stock/templates/stock/stock_sidebar.html:23 msgid "Attachments" @@ -1600,7 +1605,7 @@ msgstr "" msgid "All untracked stock items have been allocated" msgstr "" -#: build/templates/build/index.html:18 part/templates/part/detail.html:313 +#: build/templates/build/index.html:18 part/templates/part/detail.html:318 msgid "New Build Order" msgstr "" @@ -1845,7 +1850,7 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:951 part/models.py:2419 report/models.py:158 +#: common/models.py:951 part/models.py:2466 report/models.py:158 #: templates/js/translated/table_filters.js:38 #: templates/js/translated/table_filters.js:484 msgid "Template" @@ -1855,7 +1860,7 @@ msgstr "" msgid "Parts are templates by default" msgstr "" -#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448 +#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1446 #: templates/js/translated/table_filters.js:176 #: templates/js/translated/table_filters.js:447 msgid "Assembly" @@ -2591,7 +2596,7 @@ msgstr "" #: common/models.py:1705 company/serializers.py:366 #: company/templates/company/supplier_part.html:284 order/models.py:938 -#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2161 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2157 msgid "Price" msgstr "" @@ -2830,7 +2835,7 @@ msgstr "" #: company/models.py:248 company/models.py:481 stock/models.py:598 #: stock/serializers.py:87 stock/templates/stock/item_base.html:148 -#: templates/js/translated/bom.js:543 +#: templates/js/translated/bom.js:542 msgid "Base Part" msgstr "" @@ -2859,7 +2864,7 @@ msgstr "" #: templates/js/translated/company.js:269 #: templates/js/translated/company.js:497 #: templates/js/translated/company.js:649 -#: templates/js/translated/company.js:937 templates/js/translated/order.js:1971 +#: templates/js/translated/company.js:937 templates/js/translated/order.js:2010 #: templates/js/translated/part.js:247 templates/js/translated/part.js:1027 msgid "MPN" msgstr "" @@ -2899,7 +2904,7 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:372 part/models.py:888 part/models.py:2386 +#: company/models.py:372 part/models.py:888 part/models.py:2433 #: part/templates/part/part_base.html:280 #: templates/InvenTree/settings/settings.html:352 #: templates/js/translated/company.js:770 templates/js/translated/part.js:855 @@ -2921,7 +2926,7 @@ msgstr "" #: templates/email/overdue_purchase_order.html:16 #: templates/js/translated/company.js:268 #: templates/js/translated/company.js:401 -#: templates/js/translated/company.js:893 templates/js/translated/order.js:1707 +#: templates/js/translated/company.js:893 templates/js/translated/order.js:1746 #: templates/js/translated/part.js:217 templates/js/translated/part.js:995 #: templates/js/translated/table_filters.js:423 msgid "Supplier" @@ -2933,7 +2938,7 @@ msgstr "" #: company/models.py:497 company/templates/company/supplier_part.html:118 #: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267 -#: templates/js/translated/order.js:1958 templates/js/translated/part.js:228 +#: templates/js/translated/order.js:1997 templates/js/translated/part.js:228 #: templates/js/translated/part.js:1013 msgid "SKU" msgstr "" @@ -2955,17 +2960,17 @@ msgid "Supplier part description" msgstr "" #: company/models.py:522 company/templates/company/supplier_part.html:146 -#: part/models.py:2620 part/templates/part/upload_bom.html:59 +#: part/models.py:2667 part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401 msgid "Note" msgstr "" -#: company/models.py:526 part/models.py:1742 +#: company/models.py:526 part/models.py:1789 msgid "base cost" msgstr "" -#: company/models.py:526 part/models.py:1742 +#: company/models.py:526 part/models.py:1789 msgid "Minimum charge (e.g. stocking fee)" msgstr "" @@ -2979,7 +2984,7 @@ msgstr "" msgid "Part packaging" msgstr "" -#: company/models.py:530 part/models.py:1744 +#: company/models.py:530 part/models.py:1791 msgid "multiple" msgstr "" @@ -2990,8 +2995,8 @@ msgstr "" #: company/models.py:538 company/templates/company/supplier_part.html:94 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789 -#: templates/js/translated/build.js:2645 templates/js/translated/company.js:979 +#: templates/js/translated/bom.js:911 templates/js/translated/build.js:1821 +#: templates/js/translated/build.js:2678 templates/js/translated/company.js:979 #: templates/js/translated/part.js:600 templates/js/translated/part.js:603 #: templates/js/translated/table_filters.js:186 msgid "Available" @@ -3028,7 +3033,7 @@ msgid "Company" msgstr "" #: company/templates/company/company_base.html:22 -#: templates/js/translated/order.js:540 +#: templates/js/translated/order.js:579 msgid "Create Purchase Order" msgstr "" @@ -3069,7 +3074,7 @@ msgstr "" #: stock/models.py:644 stock/serializers.py:811 #: stock/templates/stock/item_base.html:401 #: templates/email/overdue_sales_order.html:16 -#: templates/js/translated/company.js:393 templates/js/translated/order.js:2513 +#: templates/js/translated/company.js:393 templates/js/translated/order.js:2552 #: templates/js/translated/stock.js:2559 #: templates/js/translated/table_filters.js:427 msgid "Customer" @@ -3105,7 +3110,7 @@ msgstr "" #: company/templates/company/detail.html:19 #: company/templates/company/manufacturer_part.html:123 -#: part/templates/part/detail.html:354 +#: part/templates/part/detail.html:359 msgid "New Supplier Part" msgstr "" @@ -3134,7 +3139,7 @@ msgstr "" msgid "Create new manufacturer part" msgstr "" -#: company/templates/company/detail.html:66 part/templates/part/detail.html:384 +#: company/templates/company/detail.html:66 part/templates/part/detail.html:389 msgid "New Manufacturer Part" msgstr "" @@ -3148,7 +3153,7 @@ msgstr "" #: order/templates/order/order_base.html:13 #: order/templates/order/purchase_orders.html:8 #: order/templates/order/purchase_orders.html:12 -#: part/templates/part/detail.html:79 part/templates/part/part_sidebar.html:37 +#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:37 #: templates/InvenTree/index.html:252 templates/InvenTree/search.html:198 #: templates/InvenTree/settings/sidebar.html:49 #: templates/js/translated/search.js:275 templates/navbar.html:50 @@ -3171,7 +3176,7 @@ msgstr "" #: order/templates/order/sales_order_base.html:13 #: order/templates/order/sales_orders.html:8 #: order/templates/order/sales_orders.html:15 -#: part/templates/part/detail.html:102 part/templates/part/part_sidebar.html:41 +#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:41 #: templates/InvenTree/index.html:283 templates/InvenTree/search.html:218 #: templates/InvenTree/settings/sidebar.html:51 #: templates/js/translated/search.js:299 templates/navbar.html:61 @@ -3190,7 +3195,7 @@ msgid "New Sales Order" msgstr "" #: company/templates/company/detail.html:168 -#: templates/js/translated/build.js:1660 +#: templates/js/translated/build.js:1692 msgid "Assigned Stock" msgstr "" @@ -3206,7 +3211,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:35 #: company/templates/company/supplier_part.html:186 -#: part/templates/part/detail.html:82 part/templates/part/part_base.html:80 +#: part/templates/part/detail.html:87 part/templates/part/part_base.html:80 msgid "Order part" msgstr "" @@ -3237,13 +3242,13 @@ msgid "Suppliers" msgstr "" #: company/templates/company/manufacturer_part.html:136 -#: part/templates/part/detail.html:365 +#: part/templates/part/detail.html:370 msgid "Delete supplier parts" msgstr "" #: company/templates/company/manufacturer_part.html:136 #: company/templates/company/manufacturer_part.html:183 -#: part/templates/part/detail.html:366 part/templates/part/detail.html:396 +#: part/templates/part/detail.html:371 part/templates/part/detail.html:401 #: templates/js/translated/forms.js:453 templates/js/translated/helpers.js:33 #: users/models.py:220 msgid "Delete" @@ -3252,12 +3257,12 @@ msgstr "" #: company/templates/company/manufacturer_part.html:166 #: company/templates/company/manufacturer_part_sidebar.html:5 #: part/templates/part/category_sidebar.html:19 -#: part/templates/part/detail.html:181 part/templates/part/part_sidebar.html:8 +#: part/templates/part/detail.html:186 part/templates/part/part_sidebar.html:8 msgid "Parameters" msgstr "" #: company/templates/company/manufacturer_part.html:170 -#: part/templates/part/detail.html:186 +#: part/templates/part/detail.html:191 #: templates/InvenTree/settings/category.html:12 #: templates/InvenTree/settings/part.html:68 msgid "New Parameter" @@ -3268,7 +3273,7 @@ msgid "Delete parameters" msgstr "" #: company/templates/company/manufacturer_part.html:245 -#: part/templates/part/detail.html:826 +#: part/templates/part/detail.html:840 msgid "Add Parameter" msgstr "" @@ -3291,7 +3296,7 @@ msgstr "" #: company/templates/company/supplier_part.html:7 #: company/templates/company/supplier_part.html:24 stock/models.py:607 #: stock/templates/stock/item_base.html:238 -#: templates/js/translated/company.js:909 templates/js/translated/order.js:935 +#: templates/js/translated/company.js:909 templates/js/translated/order.js:974 #: templates/js/translated/stock.js:1933 msgid "Supplier Part" msgstr "" @@ -3303,7 +3308,7 @@ msgstr "" #: company/templates/company/supplier_part.html:40 #: company/templates/company/supplier_part.html:41 #: company/templates/company/supplier_part.html:187 -#: part/templates/part/detail.html:83 +#: part/templates/part/detail.html:88 msgid "Order Part" msgstr "" @@ -3358,7 +3363,7 @@ msgstr "" #: company/templates/company/supplier_part.html:212 #: company/templates/company/supplier_part.html:326 -#: part/templates/part/prices.html:276 templates/js/translated/part.js:2233 +#: part/templates/part/prices.html:276 templates/js/translated/part.js:2229 msgid "Add Price Break" msgstr "" @@ -3367,12 +3372,12 @@ msgid "No price break information found" msgstr "" #: company/templates/company/supplier_part.html:252 -#: templates/js/translated/part.js:2243 +#: templates/js/translated/part.js:2239 msgid "Delete Price Break" msgstr "" #: company/templates/company/supplier_part.html:266 -#: templates/js/translated/part.js:2257 +#: templates/js/translated/part.js:2253 msgid "Edit Price Break" msgstr "" @@ -3398,10 +3403,9 @@ msgstr "" #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:151 #: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751 -#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460 -#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754 -#: templates/navbar.html:31 +#: templates/js/translated/part.js:751 templates/js/translated/part.js:1299 +#: templates/js/translated/part.js:1460 templates/js/translated/stock.js:959 +#: templates/js/translated/stock.js:1754 templates/navbar.html:31 msgid "Stock" msgstr "" @@ -3554,7 +3558,7 @@ msgid "Company from which the items are being ordered" msgstr "" #: order/models.py:262 order/templates/order/order_base.html:124 -#: templates/js/translated/order.js:1716 +#: templates/js/translated/order.js:1755 msgid "Supplier Reference" msgstr "" @@ -3611,7 +3615,7 @@ msgid "Target date for order completion. Order will be overdue after this date." msgstr "" #: order/models.py:652 order/models.py:1204 -#: templates/js/translated/order.js:2560 templates/js/translated/order.js:2722 +#: templates/js/translated/order.js:2599 templates/js/translated/order.js:2761 msgid "Shipment Date" msgstr "" @@ -3673,7 +3677,7 @@ msgstr "" #: order/models.py:983 order/models.py:1063 order/models.py:1104 #: order/models.py:1198 order/models.py:1330 -#: templates/js/translated/order.js:3178 +#: templates/js/translated/order.js:3217 msgid "Order" msgstr "" @@ -3683,7 +3687,7 @@ msgstr "" #: report/templates/report/inventree_po_report.html:76 #: stock/templates/stock/item_base.html:184 #: templates/email/overdue_purchase_order.html:15 -#: templates/js/translated/order.js:936 templates/js/translated/order.js:1691 +#: templates/js/translated/order.js:975 templates/js/translated/order.js:1730 #: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913 #: templates/js/translated/stock.js:2540 msgid "Purchase Order" @@ -3694,7 +3698,7 @@ msgid "Supplier part" msgstr "" #: order/models.py:1009 order/templates/order/order_base.html:169 -#: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073 +#: templates/js/translated/order.js:1429 templates/js/translated/order.js:2112 #: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091 #: templates/js/translated/table_filters.js:338 msgid "Received" @@ -3880,11 +3884,11 @@ msgstr "" msgid "Select destination location for received items" msgstr "" -#: order/serializers.py:448 templates/js/translated/order.js:1248 +#: order/serializers.py:448 templates/js/translated/order.js:1287 msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:456 templates/js/translated/order.js:1259 +#: order/serializers.py:456 templates/js/translated/order.js:1298 msgid "Enter serial numbers for incoming stock items" msgstr "" @@ -4061,10 +4065,6 @@ msgstr "" msgid "Total cost could not be calculated" msgstr "" -#: order/templates/order/order_base.html:243 -msgid "Edit Purchase Order" -msgstr "" - #: order/templates/order/order_wizard/match_parts.html:12 #: part/templates/part/import_wizard/ajax_match_references.html:12 #: part/templates/part/import_wizard/match_references.html:12 @@ -4091,10 +4091,10 @@ msgstr "" #: part/templates/part/import_wizard/ajax_match_fields.html:64 #: part/templates/part/import_wizard/ajax_match_references.html:42 #: part/templates/part/import_wizard/match_references.html:49 -#: templates/js/translated/bom.js:77 templates/js/translated/build.js:431 -#: templates/js/translated/build.js:583 templates/js/translated/build.js:1974 -#: templates/js/translated/order.js:884 templates/js/translated/order.js:1337 -#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625 +#: templates/js/translated/bom.js:77 templates/js/translated/build.js:463 +#: templates/js/translated/build.js:615 templates/js/translated/build.js:2007 +#: templates/js/translated/order.js:923 templates/js/translated/order.js:1376 +#: templates/js/translated/order.js:2836 templates/js/translated/stock.js:625 #: templates/js/translated/stock.js:793 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" @@ -4130,7 +4130,7 @@ msgstr "" #: order/templates/order/purchase_order_detail.html:26 #: order/templates/order/sales_order_detail.html:22 #: order/templates/order/sales_order_detail.html:255 -#: templates/js/translated/order.js:557 +#: templates/js/translated/order.js:596 msgid "Add Line Item" msgstr "" @@ -4176,7 +4176,7 @@ msgid "Print packing list" msgstr "" #: order/templates/order/sales_order_base.html:60 -#: templates/js/translated/order.js:229 +#: templates/js/translated/order.js:230 msgid "Complete Shipments" msgstr "" @@ -4190,7 +4190,7 @@ msgid "This Sales Order has not been fully allocated" msgstr "" #: order/templates/order/sales_order_base.html:123 -#: templates/js/translated/order.js:2526 +#: templates/js/translated/order.js:2565 msgid "Customer Reference" msgstr "" @@ -4214,8 +4214,8 @@ msgid "Pending Shipments" msgstr "" #: order/templates/order/sales_order_detail.html:72 -#: templates/attachment_table.html:6 templates/js/translated/bom.js:1110 -#: templates/js/translated/build.js:1882 +#: templates/attachment_table.html:6 templates/js/translated/bom.js:1108 +#: templates/js/translated/build.js:1915 msgid "Actions" msgstr "" @@ -4257,35 +4257,35 @@ msgstr "" msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:584 +#: part/api.py:621 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:704 +#: part/api.py:758 msgid "Valid" msgstr "" -#: part/api.py:705 +#: part/api.py:759 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:711 +#: part/api.py:765 msgid "This option must be selected" msgstr "" -#: part/api.py:1134 +#: part/api.py:1188 msgid "Must be greater than zero" msgstr "" -#: part/api.py:1138 +#: part/api.py:1192 msgid "Must be a valid quantity" msgstr "" -#: part/api.py:1153 +#: part/api.py:1207 msgid "Specify location for initial part stock" msgstr "" -#: part/api.py:1184 part/api.py:1188 part/api.py:1203 part/api.py:1207 +#: part/api.py:1238 part/api.py:1242 part/api.py:1257 part/api.py:1261 msgid "This field is required" msgstr "" @@ -4299,14 +4299,14 @@ msgid "Total Stock" msgstr "" #: part/bom.py:129 part/templates/part/part_base.html:189 -#: templates/js/translated/order.js:3618 +#: templates/js/translated/order.js:3657 msgid "Available Stock" msgstr "" #: part/bom.py:130 part/templates/part/part_base.html:207 -#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590 +#: templates/js/translated/bom.js:945 templates/js/translated/part.js:590 #: templates/js/translated/part.js:610 templates/js/translated/part.js:1302 -#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490 +#: templates/js/translated/part.js:1483 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "" @@ -4335,7 +4335,7 @@ msgstr "" msgid "Icon (optional)" msgstr "" -#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16 +#: part/models.py:122 part/models.py:2509 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" @@ -4352,7 +4352,7 @@ msgstr "" #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82 #: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:1955 templates/js/translated/search.js:144 +#: templates/js/translated/part.js:1951 templates/js/translated/search.js:144 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "" @@ -4382,7 +4382,7 @@ msgstr "" msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:745 part/models.py:2516 +#: part/models.py:745 part/models.py:2563 msgid "Part name" msgstr "" @@ -4415,11 +4415,11 @@ msgstr "" msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:783 part/models.py:2218 part/models.py:2461 +#: part/models.py:783 part/models.py:2265 part/models.py:2508 #: part/templates/part/part_base.html:257 #: templates/InvenTree/settings/settings.html:232 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1668 +#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1664 msgid "Category" msgstr "" @@ -4530,245 +4530,245 @@ msgstr "" msgid "Creation User" msgstr "" -#: part/models.py:1744 +#: part/models.py:1791 msgid "Sell multiple" msgstr "" -#: part/models.py:2265 +#: part/models.py:2312 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:2282 +#: part/models.py:2329 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:2302 templates/js/translated/part.js:2006 +#: part/models.py:2349 templates/js/translated/part.js:2002 #: templates/js/translated/stock.js:1340 msgid "Test Name" msgstr "" -#: part/models.py:2303 +#: part/models.py:2350 msgid "Enter a name for the test" msgstr "" -#: part/models.py:2308 +#: part/models.py:2355 msgid "Test Description" msgstr "" -#: part/models.py:2309 +#: part/models.py:2356 msgid "Enter description for this test" msgstr "" -#: part/models.py:2314 templates/js/translated/part.js:2015 +#: part/models.py:2361 templates/js/translated/part.js:2011 #: templates/js/translated/table_filters.js:302 msgid "Required" msgstr "" -#: part/models.py:2315 +#: part/models.py:2362 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:2320 templates/js/translated/part.js:2023 +#: part/models.py:2367 templates/js/translated/part.js:2019 msgid "Requires Value" msgstr "" -#: part/models.py:2321 +#: part/models.py:2368 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:2326 templates/js/translated/part.js:2030 +#: part/models.py:2373 templates/js/translated/part.js:2026 msgid "Requires Attachment" msgstr "" -#: part/models.py:2327 +#: part/models.py:2374 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:2335 +#: part/models.py:2382 #, python-brace-format msgid "Illegal character in template name ({c})" msgstr "" -#: part/models.py:2371 +#: part/models.py:2418 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:2379 +#: part/models.py:2426 msgid "Parameter Name" msgstr "" -#: part/models.py:2386 +#: part/models.py:2433 msgid "Parameter Units" msgstr "" -#: part/models.py:2417 +#: part/models.py:2464 msgid "Parent Part" msgstr "" -#: part/models.py:2419 part/models.py:2467 part/models.py:2468 +#: part/models.py:2466 part/models.py:2514 part/models.py:2515 #: templates/InvenTree/settings/settings.html:227 msgid "Parameter Template" msgstr "" -#: part/models.py:2421 +#: part/models.py:2468 msgid "Data" msgstr "" -#: part/models.py:2421 +#: part/models.py:2468 msgid "Parameter Value" msgstr "" -#: part/models.py:2472 templates/InvenTree/settings/settings.html:236 +#: part/models.py:2519 templates/InvenTree/settings/settings.html:236 msgid "Default Value" msgstr "" -#: part/models.py:2473 +#: part/models.py:2520 msgid "Default Parameter Value" msgstr "" -#: part/models.py:2508 +#: part/models.py:2555 msgid "Part ID or part name" msgstr "" -#: part/models.py:2511 templates/js/translated/model_renderers.js:212 +#: part/models.py:2558 templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "" -#: part/models.py:2512 +#: part/models.py:2559 msgid "Unique part ID value" msgstr "" -#: part/models.py:2515 +#: part/models.py:2562 msgid "Part Name" msgstr "" -#: part/models.py:2519 +#: part/models.py:2566 msgid "Part IPN" msgstr "" -#: part/models.py:2520 +#: part/models.py:2567 msgid "Part IPN value" msgstr "" -#: part/models.py:2523 +#: part/models.py:2570 msgid "Level" msgstr "" -#: part/models.py:2524 +#: part/models.py:2571 msgid "BOM level" msgstr "" -#: part/models.py:2593 +#: part/models.py:2640 msgid "Select parent part" msgstr "" -#: part/models.py:2601 +#: part/models.py:2648 msgid "Sub part" msgstr "" -#: part/models.py:2602 +#: part/models.py:2649 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:2608 +#: part/models.py:2655 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:2610 part/templates/part/upload_bom.html:58 -#: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999 +#: part/models.py:2657 part/templates/part/upload_bom.html:58 +#: templates/js/translated/bom.js:872 templates/js/translated/bom.js:997 #: templates/js/translated/table_filters.js:100 msgid "Optional" msgstr "" -#: part/models.py:2610 +#: part/models.py:2657 msgid "This BOM item is optional" msgstr "" -#: part/models.py:2613 part/templates/part/upload_bom.html:55 +#: part/models.py:2660 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:2614 +#: part/models.py:2661 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:2617 +#: part/models.py:2664 msgid "BOM item reference" msgstr "" -#: part/models.py:2620 +#: part/models.py:2667 msgid "BOM item notes" msgstr "" -#: part/models.py:2622 +#: part/models.py:2669 msgid "Checksum" msgstr "" -#: part/models.py:2622 +#: part/models.py:2669 msgid "BOM line checksum" msgstr "" -#: part/models.py:2626 part/templates/part/upload_bom.html:57 -#: templates/js/translated/bom.js:1016 +#: part/models.py:2673 part/templates/part/upload_bom.html:57 +#: templates/js/translated/bom.js:1014 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:96 msgid "Inherited" msgstr "" -#: part/models.py:2627 +#: part/models.py:2674 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:2632 part/templates/part/upload_bom.html:56 -#: templates/js/translated/bom.js:1008 +#: part/models.py:2679 part/templates/part/upload_bom.html:56 +#: templates/js/translated/bom.js:1006 msgid "Allow Variants" msgstr "" -#: part/models.py:2633 +#: part/models.py:2680 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:2711 stock/models.py:468 +#: part/models.py:2758 stock/models.py:468 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:2720 part/models.py:2722 +#: part/models.py:2767 part/models.py:2769 msgid "Sub part must be specified" msgstr "" -#: part/models.py:2827 +#: part/models.py:2874 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:2848 +#: part/models.py:2895 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:2861 +#: part/models.py:2908 msgid "Parent BOM item" msgstr "" -#: part/models.py:2869 +#: part/models.py:2916 msgid "Substitute part" msgstr "" -#: part/models.py:2884 +#: part/models.py:2931 msgid "Part 1" msgstr "" -#: part/models.py:2888 +#: part/models.py:2935 msgid "Part 2" msgstr "" -#: part/models.py:2888 +#: part/models.py:2935 msgid "Select Related Part" msgstr "" -#: part/models.py:2906 +#: part/models.py:2953 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:2910 +#: part/models.py:2957 msgid "Duplicate relationship already exists" msgstr "" @@ -4876,7 +4876,7 @@ msgstr "" msgid "The BOM for %(part)s has not been validated." msgstr "" -#: part/templates/part/bom.html:30 part/templates/part/detail.html:264 +#: part/templates/part/bom.html:30 part/templates/part/detail.html:269 msgid "BOM actions" msgstr "" @@ -4945,8 +4945,8 @@ msgstr "" msgid "New Part" msgstr "" -#: part/templates/part/category.html:174 part/templates/part/detail.html:363 -#: part/templates/part/detail.html:394 +#: part/templates/part/category.html:174 part/templates/part/detail.html:368 +#: part/templates/part/detail.html:399 msgid "Options" msgstr "" @@ -5014,138 +5014,146 @@ msgstr "" msgid "Part Stock" msgstr "" -#: part/templates/part/detail.html:54 -msgid "Part Test Templates" +#: part/templates/part/detail.html:44 +msgid "Refresh scheduling data" +msgstr "" + +#: part/templates/part/detail.html:45 templates/js/translated/tables.js:558 +msgid "Refresh" msgstr "" #: part/templates/part/detail.html:59 +msgid "Part Test Templates" +msgstr "" + +#: part/templates/part/detail.html:64 msgid "Add Test Template" msgstr "" -#: part/templates/part/detail.html:116 stock/templates/stock/item.html:53 +#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53 msgid "Sales Order Allocations" msgstr "" -#: part/templates/part/detail.html:138 +#: part/templates/part/detail.html:143 msgid "Part Notes" msgstr "" -#: part/templates/part/detail.html:153 +#: part/templates/part/detail.html:158 msgid "Part Variants" msgstr "" -#: part/templates/part/detail.html:157 +#: part/templates/part/detail.html:162 msgid "Create new variant" msgstr "" -#: part/templates/part/detail.html:158 +#: part/templates/part/detail.html:163 msgid "New Variant" msgstr "" -#: part/templates/part/detail.html:185 +#: part/templates/part/detail.html:190 msgid "Add new parameter" msgstr "" -#: part/templates/part/detail.html:222 part/templates/part/part_sidebar.html:54 +#: part/templates/part/detail.html:227 part/templates/part/part_sidebar.html:54 msgid "Related Parts" msgstr "" -#: part/templates/part/detail.html:226 part/templates/part/detail.html:227 +#: part/templates/part/detail.html:231 part/templates/part/detail.html:232 msgid "Add Related" msgstr "" -#: part/templates/part/detail.html:247 part/templates/part/part_sidebar.html:17 +#: part/templates/part/detail.html:252 part/templates/part/part_sidebar.html:17 msgid "Bill of Materials" msgstr "" -#: part/templates/part/detail.html:252 +#: part/templates/part/detail.html:257 msgid "Export actions" msgstr "" -#: part/templates/part/detail.html:256 templates/js/translated/bom.js:284 +#: part/templates/part/detail.html:261 templates/js/translated/bom.js:284 msgid "Export BOM" msgstr "" -#: part/templates/part/detail.html:258 +#: part/templates/part/detail.html:263 msgid "Print BOM Report" msgstr "" -#: part/templates/part/detail.html:268 +#: part/templates/part/detail.html:273 msgid "Upload BOM" msgstr "" -#: part/templates/part/detail.html:269 templates/js/translated/part.js:274 +#: part/templates/part/detail.html:274 templates/js/translated/part.js:274 msgid "Copy BOM" msgstr "" -#: part/templates/part/detail.html:270 +#: part/templates/part/detail.html:275 msgid "Validate BOM" msgstr "" -#: part/templates/part/detail.html:275 +#: part/templates/part/detail.html:280 msgid "New BOM Item" msgstr "" -#: part/templates/part/detail.html:276 +#: part/templates/part/detail.html:281 msgid "Add BOM Item" msgstr "" -#: part/templates/part/detail.html:289 +#: part/templates/part/detail.html:294 msgid "Assemblies" msgstr "" -#: part/templates/part/detail.html:307 +#: part/templates/part/detail.html:312 msgid "Part Builds" msgstr "" -#: part/templates/part/detail.html:334 stock/templates/stock/item.html:38 +#: part/templates/part/detail.html:339 stock/templates/stock/item.html:38 msgid "Build Order Allocations" msgstr "" -#: part/templates/part/detail.html:350 +#: part/templates/part/detail.html:355 msgid "Part Suppliers" msgstr "" -#: part/templates/part/detail.html:380 +#: part/templates/part/detail.html:385 msgid "Part Manufacturers" msgstr "" -#: part/templates/part/detail.html:396 +#: part/templates/part/detail.html:401 msgid "Delete manufacturer parts" msgstr "" -#: part/templates/part/detail.html:612 +#: part/templates/part/detail.html:626 msgid "Create BOM Item" msgstr "" -#: part/templates/part/detail.html:656 +#: part/templates/part/detail.html:670 msgid "Related Part" msgstr "" -#: part/templates/part/detail.html:664 +#: part/templates/part/detail.html:678 msgid "Add Related Part" msgstr "" -#: part/templates/part/detail.html:756 +#: part/templates/part/detail.html:770 msgid "Add Test Result Template" msgstr "" -#: part/templates/part/detail.html:900 +#: part/templates/part/detail.html:914 #, python-format msgid "Purchase Unit Price - %(currency)s" msgstr "" -#: part/templates/part/detail.html:912 +#: part/templates/part/detail.html:926 #, python-format msgid "Unit Price-Cost Difference - %(currency)s" msgstr "" -#: part/templates/part/detail.html:924 +#: part/templates/part/detail.html:938 #, python-format msgid "Supplier Unit Cost - %(currency)s" msgstr "" -#: part/templates/part/detail.html:1013 +#: part/templates/part/detail.html:1027 #, python-format msgid "Unit Price - %(currency)s" msgstr "" @@ -5321,13 +5329,13 @@ msgstr "" msgid "Allocated to Sales Orders" msgstr "" -#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1037 +#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1035 msgid "Can Build" msgstr "" #: part/templates/part/part_base.html:238 templates/js/translated/part.js:593 #: templates/js/translated/part.js:613 templates/js/translated/part.js:1306 -#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1494 +#: templates/js/translated/part.js:1490 msgid "Building" msgstr "" @@ -5379,7 +5387,7 @@ msgid "Total Cost" msgstr "" #: part/templates/part/part_pricing.html:40 part/templates/part/prices.html:43 -#: templates/js/translated/bom.js:991 +#: templates/js/translated/bom.js:989 msgid "No supplier pricing available" msgstr "" @@ -5414,6 +5422,18 @@ msgstr "" msgid "No pricing information is available for this part." msgstr "" +#: part/templates/part/part_scheduling.html:13 +#: report/templates/report/inventree_test_report_base.html:97 +#: templates/InvenTree/settings/plugin.html:53 +#: templates/InvenTree/settings/plugin_settings.html:38 +#: templates/js/translated/order.js:1772 templates/js/translated/stock.js:2468 +msgid "Date" +msgstr "" + +#: part/templates/part/part_scheduling.html:14 +msgid "Scheduled Quantity" +msgstr "" + #: part/templates/part/part_sidebar.html:11 msgid "Variants" msgstr "" @@ -5462,7 +5482,7 @@ msgstr "" msgid "Calculation parameters" msgstr "" -#: part/templates/part/prices.html:160 templates/js/translated/bom.js:985 +#: part/templates/part/prices.html:160 templates/js/translated/bom.js:983 msgid "Supplier Cost" msgstr "" @@ -5501,7 +5521,7 @@ msgid "No sale pice history available for this part." msgstr "" #: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616 -#: templates/js/translated/part.js:1294 templates/js/translated/part.js:1498 +#: templates/js/translated/part.js:1294 msgid "No Stock" msgstr "" @@ -5893,11 +5913,11 @@ msgstr "" #: report/templates/report/inventree_test_report_base.html:79 #: stock/models.py:648 stock/templates/stock/item_base.html:322 -#: templates/js/translated/build.js:424 templates/js/translated/build.js:576 -#: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673 +#: templates/js/translated/build.js:456 templates/js/translated/build.js:608 +#: templates/js/translated/build.js:1208 templates/js/translated/build.js:1705 #: templates/js/translated/model_renderers.js:118 -#: templates/js/translated/order.js:118 templates/js/translated/order.js:3297 -#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490 +#: templates/js/translated/order.js:119 templates/js/translated/order.js:3336 +#: templates/js/translated/order.js:3423 templates/js/translated/stock.js:490 msgid "Serial Number" msgstr "" @@ -5915,13 +5935,6 @@ msgstr "" msgid "Result" msgstr "" -#: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:53 -#: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468 -msgid "Date" -msgstr "" - #: report/templates/report/inventree_test_report_base.html:108 msgid "Pass" msgstr "" @@ -6519,7 +6532,7 @@ msgid "Available Quantity" msgstr "" #: stock/templates/stock/item_base.html:394 -#: templates/js/translated/build.js:1695 +#: templates/js/translated/build.js:1727 msgid "No location set" msgstr "" @@ -7702,7 +7715,7 @@ msgid "The following parts are low on required stock" msgstr "" #: templates/email/build_order_required_stock.html:18 -#: templates/js/translated/bom.js:1483 +#: templates/js/translated/bom.js:1481 msgid "Required Quantity" msgstr "" @@ -7716,6 +7729,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:19 +#: templates/js/translated/part.js:2498 msgid "Minimum Quantity" msgstr "" @@ -7917,10 +7931,10 @@ msgstr "" msgid "Row Data" msgstr "" -#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:622 +#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:620 #: templates/js/translated/modals.js:56 templates/js/translated/modals.js:601 #: templates/js/translated/modals.js:695 templates/js/translated/modals.js:1003 -#: templates/js/translated/order.js:979 templates/modals.html:15 +#: templates/js/translated/order.js:1018 templates/modals.html:15 #: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50 msgid "Close" msgstr "" @@ -7930,12 +7944,12 @@ msgid "Download BOM Template" msgstr "" #: templates/js/translated/bom.js:253 templates/js/translated/bom.js:287 -#: templates/js/translated/order.js:760 templates/js/translated/tables.js:145 +#: templates/js/translated/order.js:799 templates/js/translated/tables.js:145 msgid "Format" msgstr "" #: templates/js/translated/bom.js:254 templates/js/translated/bom.js:288 -#: templates/js/translated/order.js:761 +#: templates/js/translated/order.js:800 msgid "Select file format" msgstr "" @@ -7991,390 +8005,390 @@ msgstr "" msgid "Remove substitute part" msgstr "" -#: templates/js/translated/bom.js:567 +#: templates/js/translated/bom.js:565 msgid "Select and add a new substitute part using the input below" msgstr "" -#: templates/js/translated/bom.js:578 +#: templates/js/translated/bom.js:576 msgid "Are you sure you wish to remove this substitute part link?" msgstr "" -#: templates/js/translated/bom.js:584 +#: templates/js/translated/bom.js:582 msgid "Remove Substitute Part" msgstr "" -#: templates/js/translated/bom.js:623 +#: templates/js/translated/bom.js:621 msgid "Add Substitute" msgstr "" -#: templates/js/translated/bom.js:624 +#: templates/js/translated/bom.js:622 msgid "Edit BOM Item Substitutes" msgstr "" -#: templates/js/translated/bom.js:686 +#: templates/js/translated/bom.js:684 msgid "All selected BOM items will be deleted" msgstr "" -#: templates/js/translated/bom.js:702 +#: templates/js/translated/bom.js:700 msgid "Delete selected BOM items?" msgstr "" -#: templates/js/translated/bom.js:821 +#: templates/js/translated/bom.js:819 msgid "Load BOM for subassembly" msgstr "" -#: templates/js/translated/bom.js:831 +#: templates/js/translated/bom.js:829 msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:835 templates/js/translated/build.js:1771 +#: templates/js/translated/bom.js:833 templates/js/translated/build.js:1803 msgid "Variant stock allowed" msgstr "" -#: templates/js/translated/bom.js:929 templates/js/translated/build.js:1816 -#: templates/js/translated/order.js:3632 +#: templates/js/translated/bom.js:927 templates/js/translated/build.js:1849 +#: templates/js/translated/order.js:3671 msgid "No Stock Available" msgstr "" -#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1820 +#: templates/js/translated/bom.js:932 templates/js/translated/build.js:1853 msgid "Includes variant and substitute stock" msgstr "" -#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822 +#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1855 #: templates/js/translated/part.js:763 msgid "Includes variant stock" msgstr "" -#: templates/js/translated/bom.js:938 templates/js/translated/build.js:1824 +#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1857 msgid "Includes substitute stock" msgstr "" -#: templates/js/translated/bom.js:956 +#: templates/js/translated/bom.js:954 msgid "Substitutes" msgstr "" -#: templates/js/translated/bom.js:971 +#: templates/js/translated/bom.js:969 msgid "Purchase Price Range" msgstr "" -#: templates/js/translated/bom.js:978 +#: templates/js/translated/bom.js:976 msgid "Purchase Price Average" msgstr "" -#: templates/js/translated/bom.js:1027 templates/js/translated/bom.js:1147 +#: templates/js/translated/bom.js:1025 templates/js/translated/bom.js:1145 msgid "View BOM" msgstr "" -#: templates/js/translated/bom.js:1054 +#: templates/js/translated/bom.js:1052 msgid "Including On Order" msgstr "" -#: templates/js/translated/bom.js:1118 +#: templates/js/translated/bom.js:1116 msgid "Validate BOM Item" msgstr "" -#: templates/js/translated/bom.js:1120 +#: templates/js/translated/bom.js:1118 msgid "This line has been validated" msgstr "" -#: templates/js/translated/bom.js:1122 +#: templates/js/translated/bom.js:1120 msgid "Edit substitute parts" msgstr "" -#: templates/js/translated/bom.js:1124 templates/js/translated/bom.js:1286 +#: templates/js/translated/bom.js:1122 templates/js/translated/bom.js:1284 msgid "Edit BOM Item" msgstr "" -#: templates/js/translated/bom.js:1126 +#: templates/js/translated/bom.js:1124 msgid "Delete BOM Item" msgstr "" -#: templates/js/translated/bom.js:1222 templates/js/translated/build.js:1617 +#: templates/js/translated/bom.js:1220 templates/js/translated/build.js:1649 msgid "No BOM items found" msgstr "" -#: templates/js/translated/bom.js:1466 templates/js/translated/build.js:1755 +#: templates/js/translated/bom.js:1464 templates/js/translated/build.js:1787 msgid "Required Part" msgstr "" -#: templates/js/translated/bom.js:1488 +#: templates/js/translated/bom.js:1486 msgid "Inherited from parent BOM" msgstr "" -#: templates/js/translated/build.js:86 +#: templates/js/translated/build.js:89 msgid "Edit Build Order" msgstr "" -#: templates/js/translated/build.js:120 +#: templates/js/translated/build.js:132 msgid "Create Build Order" msgstr "" -#: templates/js/translated/build.js:133 +#: templates/js/translated/build.js:165 msgid "Cancel Build Order" msgstr "" -#: templates/js/translated/build.js:142 +#: templates/js/translated/build.js:174 msgid "Are you sure you wish to cancel this build?" msgstr "" -#: templates/js/translated/build.js:148 +#: templates/js/translated/build.js:180 msgid "Stock items have been allocated to this build order" msgstr "" -#: templates/js/translated/build.js:155 +#: templates/js/translated/build.js:187 msgid "There are incomplete outputs remaining for this build order" msgstr "" -#: templates/js/translated/build.js:185 +#: templates/js/translated/build.js:217 msgid "Build order is ready to be completed" msgstr "" -#: templates/js/translated/build.js:190 +#: templates/js/translated/build.js:222 msgid "Build Order is incomplete" msgstr "" -#: templates/js/translated/build.js:222 +#: templates/js/translated/build.js:254 msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:263 templates/js/translated/stock.js:92 +#: templates/js/translated/build.js:295 templates/js/translated/stock.js:92 #: templates/js/translated/stock.js:214 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:265 templates/js/translated/stock.js:94 +#: templates/js/translated/build.js:297 templates/js/translated/stock.js:94 #: templates/js/translated/stock.js:216 msgid "Latest serial number" msgstr "" -#: templates/js/translated/build.js:274 +#: templates/js/translated/build.js:306 msgid "The Bill of Materials contains trackable parts" msgstr "" -#: templates/js/translated/build.js:275 +#: templates/js/translated/build.js:307 msgid "Build outputs must be generated individually" msgstr "" -#: templates/js/translated/build.js:283 +#: templates/js/translated/build.js:315 msgid "Trackable parts can have serial numbers specified" msgstr "" -#: templates/js/translated/build.js:284 +#: templates/js/translated/build.js:316 msgid "Enter serial numbers to generate multiple single build outputs" msgstr "" -#: templates/js/translated/build.js:291 +#: templates/js/translated/build.js:323 msgid "Create Build Output" msgstr "" -#: templates/js/translated/build.js:322 +#: templates/js/translated/build.js:354 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:333 +#: templates/js/translated/build.js:365 msgid "Unallocate stock from build output" msgstr "" -#: templates/js/translated/build.js:342 +#: templates/js/translated/build.js:374 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:350 +#: templates/js/translated/build.js:382 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:373 +#: templates/js/translated/build.js:405 msgid "Are you sure you wish to unallocate stock items from this build?" msgstr "" -#: templates/js/translated/build.js:391 +#: templates/js/translated/build.js:423 msgid "Unallocate Stock Items" msgstr "" -#: templates/js/translated/build.js:411 templates/js/translated/build.js:563 +#: templates/js/translated/build.js:443 templates/js/translated/build.js:595 msgid "Select Build Outputs" msgstr "" -#: templates/js/translated/build.js:412 templates/js/translated/build.js:564 +#: templates/js/translated/build.js:444 templates/js/translated/build.js:596 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:466 templates/js/translated/build.js:618 +#: templates/js/translated/build.js:498 templates/js/translated/build.js:650 msgid "Output" msgstr "" -#: templates/js/translated/build.js:484 +#: templates/js/translated/build.js:516 msgid "Complete Build Outputs" msgstr "" -#: templates/js/translated/build.js:631 +#: templates/js/translated/build.js:663 msgid "Delete Build Outputs" msgstr "" -#: templates/js/translated/build.js:720 +#: templates/js/translated/build.js:752 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:757 +#: templates/js/translated/build.js:789 msgid "Location not specified" msgstr "" -#: templates/js/translated/build.js:1136 +#: templates/js/translated/build.js:1168 msgid "No active build outputs found" msgstr "" -#: templates/js/translated/build.js:1205 +#: templates/js/translated/build.js:1237 msgid "Allocated Stock" msgstr "" -#: templates/js/translated/build.js:1212 +#: templates/js/translated/build.js:1244 msgid "No tracked BOM items for this build" msgstr "" -#: templates/js/translated/build.js:1234 +#: templates/js/translated/build.js:1266 msgid "Completed Tests" msgstr "" -#: templates/js/translated/build.js:1239 +#: templates/js/translated/build.js:1271 msgid "No required tests for this build" msgstr "" -#: templates/js/translated/build.js:1712 templates/js/translated/build.js:2656 -#: templates/js/translated/order.js:3332 +#: templates/js/translated/build.js:1744 templates/js/translated/build.js:2689 +#: templates/js/translated/order.js:3371 msgid "Edit stock allocation" msgstr "" -#: templates/js/translated/build.js:1714 templates/js/translated/build.js:2657 -#: templates/js/translated/order.js:3333 +#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2690 +#: templates/js/translated/order.js:3372 msgid "Delete stock allocation" msgstr "" -#: templates/js/translated/build.js:1732 +#: templates/js/translated/build.js:1764 msgid "Edit Allocation" msgstr "" -#: templates/js/translated/build.js:1742 +#: templates/js/translated/build.js:1774 msgid "Remove Allocation" msgstr "" -#: templates/js/translated/build.js:1767 +#: templates/js/translated/build.js:1799 msgid "Substitute parts available" msgstr "" -#: templates/js/translated/build.js:1784 +#: templates/js/translated/build.js:1816 msgid "Quantity Per" msgstr "" -#: templates/js/translated/build.js:1810 templates/js/translated/order.js:3639 +#: templates/js/translated/build.js:1843 templates/js/translated/order.js:3678 msgid "Insufficient stock available" msgstr "" -#: templates/js/translated/build.js:1812 templates/js/translated/order.js:3637 +#: templates/js/translated/build.js:1845 templates/js/translated/order.js:3676 msgid "Sufficient stock available" msgstr "" -#: templates/js/translated/build.js:1841 templates/js/translated/build.js:2086 -#: templates/js/translated/build.js:2652 templates/js/translated/order.js:3651 +#: templates/js/translated/build.js:1874 templates/js/translated/build.js:2119 +#: templates/js/translated/build.js:2685 templates/js/translated/order.js:3690 msgid "Allocated" msgstr "" -#: templates/js/translated/build.js:1889 templates/js/translated/order.js:3731 +#: templates/js/translated/build.js:1922 templates/js/translated/order.js:3770 msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:1893 templates/stock_table.html:50 +#: templates/js/translated/build.js:1926 templates/stock_table.html:50 msgid "Order stock" msgstr "" -#: templates/js/translated/build.js:1896 templates/js/translated/order.js:3724 +#: templates/js/translated/build.js:1929 templates/js/translated/order.js:3763 msgid "Allocate stock" msgstr "" -#: templates/js/translated/build.js:1935 templates/js/translated/label.js:172 -#: templates/js/translated/order.js:807 templates/js/translated/order.js:2859 +#: templates/js/translated/build.js:1968 templates/js/translated/label.js:172 +#: templates/js/translated/order.js:846 templates/js/translated/order.js:2898 #: templates/js/translated/report.js:225 msgid "Select Parts" msgstr "" -#: templates/js/translated/build.js:1936 templates/js/translated/order.js:2860 +#: templates/js/translated/build.js:1969 templates/js/translated/order.js:2899 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1985 templates/js/translated/order.js:2808 +#: templates/js/translated/build.js:2018 templates/js/translated/order.js:2847 msgid "Specify stock allocation quantity" msgstr "" -#: templates/js/translated/build.js:2059 +#: templates/js/translated/build.js:2092 msgid "All Parts Allocated" msgstr "" -#: templates/js/translated/build.js:2060 +#: templates/js/translated/build.js:2093 msgid "All selected parts have been fully allocated" msgstr "" -#: templates/js/translated/build.js:2074 templates/js/translated/order.js:2874 +#: templates/js/translated/build.js:2107 templates/js/translated/order.js:2913 msgid "Select source location (leave blank to take from all locations)" msgstr "" -#: templates/js/translated/build.js:2102 +#: templates/js/translated/build.js:2135 msgid "Allocate Stock Items to Build Order" msgstr "" -#: templates/js/translated/build.js:2113 templates/js/translated/order.js:2971 +#: templates/js/translated/build.js:2146 templates/js/translated/order.js:3010 msgid "No matching stock locations" msgstr "" -#: templates/js/translated/build.js:2185 templates/js/translated/order.js:3048 +#: templates/js/translated/build.js:2218 templates/js/translated/order.js:3087 msgid "No matching stock items" msgstr "" -#: templates/js/translated/build.js:2282 +#: templates/js/translated/build.js:2315 msgid "Automatic Stock Allocation" msgstr "" -#: templates/js/translated/build.js:2283 +#: templates/js/translated/build.js:2316 msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines" msgstr "" -#: templates/js/translated/build.js:2285 +#: templates/js/translated/build.js:2318 msgid "If a location is specifed, stock will only be allocated from that location" msgstr "" -#: templates/js/translated/build.js:2286 +#: templates/js/translated/build.js:2319 msgid "If stock is considered interchangeable, it will be allocated from the first location it is found" msgstr "" -#: templates/js/translated/build.js:2287 +#: templates/js/translated/build.js:2320 msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found" msgstr "" -#: templates/js/translated/build.js:2308 +#: templates/js/translated/build.js:2341 msgid "Allocate Stock Items" msgstr "" -#: templates/js/translated/build.js:2414 +#: templates/js/translated/build.js:2447 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387 -#: templates/js/translated/part.js:1899 templates/js/translated/stock.js:1686 +#: templates/js/translated/build.js:2482 templates/js/translated/part.js:1387 +#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1686 #: templates/js/translated/stock.js:2386 msgid "Select" msgstr "" -#: templates/js/translated/build.js:2463 +#: templates/js/translated/build.js:2496 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:2491 +#: templates/js/translated/build.js:2524 msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647 +#: templates/js/translated/build.js:2560 templates/js/translated/stock.js:2647 msgid "No user information" msgstr "" -#: templates/js/translated/build.js:2633 +#: templates/js/translated/build.js:2666 msgid "No parts allocated for" msgstr "" @@ -8390,11 +8404,11 @@ msgstr "" msgid "Edit Manufacturer Part" msgstr "" -#: templates/js/translated/company.js:167 templates/js/translated/order.js:509 +#: templates/js/translated/company.js:167 templates/js/translated/order.js:510 msgid "Add Supplier" msgstr "" -#: templates/js/translated/company.js:195 templates/js/translated/order.js:628 +#: templates/js/translated/company.js:195 templates/js/translated/order.js:667 msgid "Add Supplier Part" msgstr "" @@ -8765,381 +8779,385 @@ msgstr "" msgid "Notifications will load here" msgstr "" -#: templates/js/translated/order.js:94 +#: templates/js/translated/order.js:95 msgid "No stock items have been allocated to this shipment" msgstr "" -#: templates/js/translated/order.js:99 +#: templates/js/translated/order.js:100 msgid "The following stock items will be shipped" msgstr "" -#: templates/js/translated/order.js:139 +#: templates/js/translated/order.js:140 msgid "Complete Shipment" msgstr "" -#: templates/js/translated/order.js:159 +#: templates/js/translated/order.js:160 msgid "Confirm Shipment" msgstr "" -#: templates/js/translated/order.js:215 +#: templates/js/translated/order.js:216 msgid "No pending shipments found" msgstr "" -#: templates/js/translated/order.js:219 +#: templates/js/translated/order.js:220 msgid "No stock items have been allocated to pending shipments" msgstr "" -#: templates/js/translated/order.js:251 +#: templates/js/translated/order.js:252 msgid "Skip" msgstr "" -#: templates/js/translated/order.js:281 +#: templates/js/translated/order.js:282 msgid "Complete Purchase Order" msgstr "" -#: templates/js/translated/order.js:287 +#: templates/js/translated/order.js:288 msgid "Mark this order as complete?" msgstr "" -#: templates/js/translated/order.js:293 +#: templates/js/translated/order.js:294 msgid "All line items have been received" msgstr "" -#: templates/js/translated/order.js:298 +#: templates/js/translated/order.js:299 msgid "This order has line items which have not been marked as received." msgstr "" -#: templates/js/translated/order.js:299 +#: templates/js/translated/order.js:300 msgid "Completing this order means that the order and line items will no longer be editable." msgstr "" -#: templates/js/translated/order.js:322 +#: templates/js/translated/order.js:323 msgid "Cancel Purchase Order" msgstr "" -#: templates/js/translated/order.js:327 +#: templates/js/translated/order.js:328 msgid "Are you sure you wish to cancel this purchase order?" msgstr "" -#: templates/js/translated/order.js:333 +#: templates/js/translated/order.js:334 msgid "This purchase order can not be cancelled" msgstr "" -#: templates/js/translated/order.js:356 +#: templates/js/translated/order.js:357 msgid "Issue Purchase Order" msgstr "" -#: templates/js/translated/order.js:361 +#: templates/js/translated/order.js:362 msgid "After placing this purchase order, line items will no longer be editable." msgstr "" -#: templates/js/translated/order.js:383 +#: templates/js/translated/order.js:384 msgid "Cancel Sales Order" msgstr "" -#: templates/js/translated/order.js:388 +#: templates/js/translated/order.js:389 msgid "Cancelling this order means that the order will no longer be editable." msgstr "" -#: templates/js/translated/order.js:442 +#: templates/js/translated/order.js:443 msgid "Create New Shipment" msgstr "" -#: templates/js/translated/order.js:467 +#: templates/js/translated/order.js:468 msgid "Add Customer" msgstr "" -#: templates/js/translated/order.js:492 +#: templates/js/translated/order.js:493 msgid "Create Sales Order" msgstr "" -#: templates/js/translated/order.js:757 +#: templates/js/translated/order.js:554 +msgid "Edit Purchase Order" +msgstr "" + +#: templates/js/translated/order.js:796 msgid "Export Order" msgstr "" -#: templates/js/translated/order.js:808 +#: templates/js/translated/order.js:847 msgid "At least one purchaseable part must be selected" msgstr "" -#: templates/js/translated/order.js:833 +#: templates/js/translated/order.js:872 msgid "Quantity to order" msgstr "" -#: templates/js/translated/order.js:842 +#: templates/js/translated/order.js:881 msgid "New supplier part" msgstr "" -#: templates/js/translated/order.js:860 +#: templates/js/translated/order.js:899 msgid "New purchase order" msgstr "" -#: templates/js/translated/order.js:893 +#: templates/js/translated/order.js:932 msgid "Add to purchase order" msgstr "" -#: templates/js/translated/order.js:1002 +#: templates/js/translated/order.js:1041 msgid "No matching supplier parts" msgstr "" -#: templates/js/translated/order.js:1017 +#: templates/js/translated/order.js:1056 msgid "No matching purchase orders" msgstr "" -#: templates/js/translated/order.js:1194 +#: templates/js/translated/order.js:1233 msgid "Select Line Items" msgstr "" -#: templates/js/translated/order.js:1195 +#: templates/js/translated/order.js:1234 msgid "At least one line item must be selected" msgstr "" -#: templates/js/translated/order.js:1215 templates/js/translated/order.js:1314 +#: templates/js/translated/order.js:1254 templates/js/translated/order.js:1353 msgid "Add batch code" msgstr "" -#: templates/js/translated/order.js:1221 templates/js/translated/order.js:1325 +#: templates/js/translated/order.js:1260 templates/js/translated/order.js:1364 msgid "Add serial numbers" msgstr "" -#: templates/js/translated/order.js:1233 +#: templates/js/translated/order.js:1272 msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144 +#: templates/js/translated/order.js:1336 templates/js/translated/stock.js:2144 msgid "Stock Status" msgstr "" -#: templates/js/translated/order.js:1388 +#: templates/js/translated/order.js:1427 msgid "Order Code" msgstr "" -#: templates/js/translated/order.js:1389 +#: templates/js/translated/order.js:1428 msgid "Ordered" msgstr "" -#: templates/js/translated/order.js:1391 +#: templates/js/translated/order.js:1430 msgid "Quantity to Receive" msgstr "" -#: templates/js/translated/order.js:1410 +#: templates/js/translated/order.js:1449 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/order.js:1411 +#: templates/js/translated/order.js:1450 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943 +#: templates/js/translated/order.js:1711 templates/js/translated/part.js:943 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/order.js:1699 templates/js/translated/order.js:2503 +#: templates/js/translated/order.js:1738 templates/js/translated/order.js:2542 msgid "Order is overdue" msgstr "" -#: templates/js/translated/order.js:1749 templates/js/translated/order.js:2568 -#: templates/js/translated/order.js:2709 +#: templates/js/translated/order.js:1788 templates/js/translated/order.js:2607 +#: templates/js/translated/order.js:2748 msgid "Items" msgstr "" -#: templates/js/translated/order.js:1847 templates/js/translated/order.js:3783 +#: templates/js/translated/order.js:1886 templates/js/translated/order.js:3822 msgid "Duplicate Line Item" msgstr "" -#: templates/js/translated/order.js:1864 templates/js/translated/order.js:3805 +#: templates/js/translated/order.js:1903 templates/js/translated/order.js:3844 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/order.js:1877 templates/js/translated/order.js:3816 +#: templates/js/translated/order.js:1916 templates/js/translated/order.js:3855 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/order.js:1920 +#: templates/js/translated/order.js:1959 msgid "No line items found" msgstr "" -#: templates/js/translated/order.js:1947 templates/js/translated/order.js:3517 +#: templates/js/translated/order.js:1986 templates/js/translated/order.js:3556 msgid "Total" msgstr "" -#: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203 -#: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050 -#: templates/js/translated/part.js:2135 templates/js/translated/part.js:2488 +#: templates/js/translated/order.js:2040 templates/js/translated/order.js:2242 +#: templates/js/translated/order.js:3581 templates/js/translated/order.js:4089 +#: templates/js/translated/part.js:2131 templates/js/translated/part.js:2703 msgid "Unit Price" msgstr "" -#: templates/js/translated/order.js:2016 templates/js/translated/order.js:2219 -#: templates/js/translated/order.js:3558 templates/js/translated/order.js:4066 +#: templates/js/translated/order.js:2055 templates/js/translated/order.js:2258 +#: templates/js/translated/order.js:3597 templates/js/translated/order.js:4105 msgid "Total Price" msgstr "" -#: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600 +#: templates/js/translated/order.js:2096 templates/js/translated/order.js:3639 #: templates/js/translated/part.js:1050 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096 +#: templates/js/translated/order.js:2155 templates/js/translated/part.js:1096 msgid "Receive line item" msgstr "" -#: templates/js/translated/order.js:2120 templates/js/translated/order.js:3737 +#: templates/js/translated/order.js:2159 templates/js/translated/order.js:3776 msgid "Duplicate line item" msgstr "" -#: templates/js/translated/order.js:2121 templates/js/translated/order.js:3738 +#: templates/js/translated/order.js:2160 templates/js/translated/order.js:3777 msgid "Edit line item" msgstr "" -#: templates/js/translated/order.js:2122 templates/js/translated/order.js:3742 +#: templates/js/translated/order.js:2161 templates/js/translated/order.js:3781 msgid "Delete line item" msgstr "" -#: templates/js/translated/order.js:2268 templates/js/translated/order.js:4115 +#: templates/js/translated/order.js:2307 templates/js/translated/order.js:4154 msgid "Duplicate line" msgstr "" -#: templates/js/translated/order.js:2269 templates/js/translated/order.js:4116 +#: templates/js/translated/order.js:2308 templates/js/translated/order.js:4155 msgid "Edit line" msgstr "" -#: templates/js/translated/order.js:2270 templates/js/translated/order.js:4117 +#: templates/js/translated/order.js:2309 templates/js/translated/order.js:4156 msgid "Delete line" msgstr "" -#: templates/js/translated/order.js:2300 templates/js/translated/order.js:4147 +#: templates/js/translated/order.js:2339 templates/js/translated/order.js:4186 msgid "Duplicate Line" msgstr "" -#: templates/js/translated/order.js:2321 templates/js/translated/order.js:4168 +#: templates/js/translated/order.js:2360 templates/js/translated/order.js:4207 msgid "Edit Line" msgstr "" -#: templates/js/translated/order.js:2332 templates/js/translated/order.js:4179 +#: templates/js/translated/order.js:2371 templates/js/translated/order.js:4218 msgid "Delete Line" msgstr "" -#: templates/js/translated/order.js:2343 +#: templates/js/translated/order.js:2382 msgid "No matching line" msgstr "" -#: templates/js/translated/order.js:2454 +#: templates/js/translated/order.js:2493 msgid "No sales orders found" msgstr "" -#: templates/js/translated/order.js:2517 +#: templates/js/translated/order.js:2556 msgid "Invalid Customer" msgstr "" -#: templates/js/translated/order.js:2615 +#: templates/js/translated/order.js:2654 msgid "Edit shipment" msgstr "" -#: templates/js/translated/order.js:2618 +#: templates/js/translated/order.js:2657 msgid "Complete shipment" msgstr "" -#: templates/js/translated/order.js:2623 +#: templates/js/translated/order.js:2662 msgid "Delete shipment" msgstr "" -#: templates/js/translated/order.js:2643 +#: templates/js/translated/order.js:2682 msgid "Edit Shipment" msgstr "" -#: templates/js/translated/order.js:2660 +#: templates/js/translated/order.js:2699 msgid "Delete Shipment" msgstr "" -#: templates/js/translated/order.js:2694 +#: templates/js/translated/order.js:2733 msgid "No matching shipments found" msgstr "" -#: templates/js/translated/order.js:2704 +#: templates/js/translated/order.js:2743 msgid "Shipment Reference" msgstr "" -#: templates/js/translated/order.js:2728 +#: templates/js/translated/order.js:2767 msgid "Not shipped" msgstr "" -#: templates/js/translated/order.js:2734 +#: templates/js/translated/order.js:2773 msgid "Tracking" msgstr "" -#: templates/js/translated/order.js:2738 +#: templates/js/translated/order.js:2777 msgid "Invoice" msgstr "" -#: templates/js/translated/order.js:2907 +#: templates/js/translated/order.js:2946 msgid "Add Shipment" msgstr "" -#: templates/js/translated/order.js:2958 +#: templates/js/translated/order.js:2997 msgid "Confirm stock allocation" msgstr "" -#: templates/js/translated/order.js:2959 +#: templates/js/translated/order.js:2998 msgid "Allocate Stock Items to Sales Order" msgstr "" -#: templates/js/translated/order.js:3167 +#: templates/js/translated/order.js:3206 msgid "No sales order allocations found" msgstr "" -#: templates/js/translated/order.js:3246 +#: templates/js/translated/order.js:3285 msgid "Edit Stock Allocation" msgstr "" -#: templates/js/translated/order.js:3263 +#: templates/js/translated/order.js:3302 msgid "Confirm Delete Operation" msgstr "" -#: templates/js/translated/order.js:3264 +#: templates/js/translated/order.js:3303 msgid "Delete Stock Allocation" msgstr "" -#: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398 +#: templates/js/translated/order.js:3348 templates/js/translated/order.js:3437 #: templates/js/translated/stock.js:1602 msgid "Shipped to customer" msgstr "" -#: templates/js/translated/order.js:3317 templates/js/translated/order.js:3407 +#: templates/js/translated/order.js:3356 templates/js/translated/order.js:3446 msgid "Stock location not specified" msgstr "" -#: templates/js/translated/order.js:3721 +#: templates/js/translated/order.js:3760 msgid "Allocate serial numbers" msgstr "" -#: templates/js/translated/order.js:3727 +#: templates/js/translated/order.js:3766 msgid "Purchase stock" msgstr "" -#: templates/js/translated/order.js:3734 templates/js/translated/order.js:3932 +#: templates/js/translated/order.js:3773 templates/js/translated/order.js:3971 msgid "Calculate price" msgstr "" -#: templates/js/translated/order.js:3746 +#: templates/js/translated/order.js:3785 msgid "Cannot be deleted as items have been shipped" msgstr "" -#: templates/js/translated/order.js:3749 +#: templates/js/translated/order.js:3788 msgid "Cannot be deleted as items have been allocated" msgstr "" -#: templates/js/translated/order.js:3831 +#: templates/js/translated/order.js:3870 msgid "Allocate Serial Numbers" msgstr "" -#: templates/js/translated/order.js:3940 +#: templates/js/translated/order.js:3979 msgid "Update Unit Price" msgstr "" -#: templates/js/translated/order.js:3954 +#: templates/js/translated/order.js:3993 msgid "No matching line items" msgstr "" -#: templates/js/translated/order.js:4190 +#: templates/js/translated/order.js:4229 msgid "No matching lines" msgstr "" @@ -9319,12 +9337,12 @@ msgstr "" msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:586 templates/js/translated/part.js:1470 +#: templates/js/translated/part.js:586 templates/js/translated/part.js:1478 #: templates/js/translated/table_filters.js:468 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:596 templates/js/translated/part.js:1482 +#: templates/js/translated/part.js:596 msgid "No stock available" msgstr "" @@ -9356,7 +9374,7 @@ msgstr "" msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1553 +#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1549 msgid "No parts found" msgstr "" @@ -9368,100 +9386,124 @@ msgstr "" msgid "No category" msgstr "" -#: templates/js/translated/part.js:1577 templates/js/translated/part.js:1820 +#: templates/js/translated/part.js:1476 +msgid "No stock" +msgstr "" + +#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816 #: templates/js/translated/stock.js:2347 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:1593 +#: templates/js/translated/part.js:1589 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:1659 +#: templates/js/translated/part.js:1655 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:1664 +#: templates/js/translated/part.js:1660 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:1669 +#: templates/js/translated/part.js:1665 msgid "Select Part Category" msgstr "" -#: templates/js/translated/part.js:1682 +#: templates/js/translated/part.js:1678 msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1839 templates/js/translated/stock.js:2366 +#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2366 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:1918 +#: templates/js/translated/part.js:1914 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:1934 +#: templates/js/translated/part.js:1930 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:1992 +#: templates/js/translated/part.js:1988 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2043 templates/js/translated/stock.js:1299 +#: templates/js/translated/part.js:2039 templates/js/translated/stock.js:1299 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:2044 templates/js/translated/stock.js:1300 +#: templates/js/translated/part.js:2040 templates/js/translated/stock.js:1300 #: templates/js/translated/stock.js:1560 msgid "Delete test result" msgstr "" -#: templates/js/translated/part.js:2050 +#: templates/js/translated/part.js:2046 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2072 +#: templates/js/translated/part.js:2068 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2086 +#: templates/js/translated/part.js:2082 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2111 +#: templates/js/translated/part.js:2107 #, python-brace-format msgid "No ${human_name} information found" msgstr "" -#: templates/js/translated/part.js:2168 +#: templates/js/translated/part.js:2164 #, python-brace-format msgid "Edit ${human_name}" msgstr "" -#: templates/js/translated/part.js:2169 +#: templates/js/translated/part.js:2165 #, python-brace-format msgid "Delete ${human_name}" msgstr "" -#: templates/js/translated/part.js:2283 -msgid "Current Stock" +#: templates/js/translated/part.js:2330 templates/js/translated/part.js:2331 +msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:2316 +#: templates/js/translated/part.js:2333 +msgid "Specified date is in the past" +msgstr "" + +#: templates/js/translated/part.js:2339 +msgid "Speculative" +msgstr "" + +#: templates/js/translated/part.js:2389 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2342 +#: templates/js/translated/part.js:2395 +msgid "Error fetching scheduling information for this part" +msgstr "" + +#: templates/js/translated/part.js:2491 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2412 +#: templates/js/translated/part.js:2507 +msgid "Maximum Quantity" +msgstr "" + +#: templates/js/translated/part.js:2533 +msgid "Minimum Stock Level" +msgstr "" + +#: templates/js/translated/part.js:2627 msgid "Single Price" msgstr "" -#: templates/js/translated/part.js:2431 +#: templates/js/translated/part.js:2646 msgid "Single Price Difference" msgstr "" @@ -10222,10 +10264,6 @@ msgstr "" msgid "Hide/Show pagination" msgstr "" -#: templates/js/translated/tables.js:558 -msgid "Refresh" -msgstr "" - #: templates/js/translated/tables.js:561 msgid "Toggle" msgstr "" diff --git a/InvenTree/locale/tr/LC_MESSAGES/django.po b/InvenTree/locale/tr/LC_MESSAGES/django.po index cd48c0460a..4abcce7682 100644 --- a/InvenTree/locale/tr/LC_MESSAGES/django.po +++ b/InvenTree/locale/tr/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-16 11:53+0000\n" -"PO-Revision-Date: 2022-08-16 21:35\n" +"POT-Creation-Date: 2022-08-18 05:14+0000\n" +"PO-Revision-Date: 2022-08-18 21:39\n" "Last-Translator: \n" "Language-Team: Turkish\n" "Language: tr_TR\n" @@ -40,10 +40,10 @@ msgstr "Tarih giriniz" #: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825 #: stock/serializers.py:924 stock/serializers.py:1056 #: stock/templates/stock/stock_sidebar.html:25 -#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101 -#: templates/js/translated/company.js:964 templates/js/translated/order.js:2104 -#: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753 -#: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102 +#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1099 +#: templates/js/translated/company.js:964 templates/js/translated/order.js:2143 +#: templates/js/translated/order.js:2294 templates/js/translated/order.js:2792 +#: templates/js/translated/order.js:3743 templates/js/translated/order.js:4141 #: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980 msgid "Notes" msgstr "Notlar" @@ -211,11 +211,11 @@ msgstr "Eklenecek dosyayı seç" #: InvenTree/models.py:402 company/models.py:124 company/models.py:276 #: company/models.py:510 order/models.py:84 order/models.py:1245 -#: part/models.py:802 +#: part/models.py:802 part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_base.html:164 #: templates/js/translated/company.js:656 -#: templates/js/translated/company.js:948 templates/js/translated/order.js:2742 -#: templates/js/translated/part.js:1514 +#: templates/js/translated/company.js:948 templates/js/translated/order.js:2781 +#: templates/js/translated/part.js:1510 msgid "Link" msgstr "Bağlantı" @@ -235,8 +235,8 @@ msgstr "Dosya yorumu" #: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665 #: common/models.py:1666 common/models.py:1889 common/models.py:1890 -#: common/models.py:2152 common/models.py:2153 part/models.py:2200 -#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257 +#: common/models.py:2152 common/models.py:2153 part/models.py:2247 +#: part/models.py:2267 plugin/models.py:256 plugin/models.py:257 #: report/templates/report/inventree_test_report_base.html:96 #: templates/js/translated/stock.js:2641 msgid "User" @@ -277,7 +277,7 @@ msgstr "Geçersiz seçim" #: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875 #: company/models.py:358 label/models.py:101 part/models.py:746 -#: part/models.py:2378 plugin/models.py:94 report/models.py:152 +#: part/models.py:2425 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 #: templates/InvenTree/settings/plugin.html:51 #: templates/InvenTree/settings/plugin.html:134 @@ -287,7 +287,7 @@ msgstr "Geçersiz seçim" #: templates/js/translated/company.js:758 #: templates/js/translated/notification.js:71 #: templates/js/translated/part.js:688 templates/js/translated/part.js:840 -#: templates/js/translated/part.js:1906 templates/js/translated/stock.js:2392 +#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2392 msgid "Name" msgstr "Adı" @@ -297,19 +297,20 @@ msgstr "Adı" #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:87 label/models.py:108 #: order/models.py:82 part/models.py:769 part/templates/part/category.html:80 -#: part/templates/part/part_base.html:167 report/models.py:165 +#: part/templates/part/part_base.html:167 +#: part/templates/part/part_scheduling.html:12 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 #: stock/templates/stock/location.html:108 #: templates/InvenTree/settings/plugin_settings.html:33 -#: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848 -#: templates/js/translated/build.js:2471 templates/js/translated/company.js:409 +#: templates/js/translated/bom.js:553 templates/js/translated/bom.js:846 +#: templates/js/translated/build.js:2504 templates/js/translated/company.js:409 #: templates/js/translated/company.js:667 -#: templates/js/translated/company.js:959 templates/js/translated/order.js:1720 -#: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531 +#: templates/js/translated/company.js:959 templates/js/translated/order.js:1759 +#: templates/js/translated/order.js:1991 templates/js/translated/order.js:2570 #: templates/js/translated/part.js:747 templates/js/translated/part.js:1153 -#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1942 -#: templates/js/translated/part.js:2011 templates/js/translated/stock.js:1743 +#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1938 +#: templates/js/translated/part.js:2007 templates/js/translated/stock.js:1743 #: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478 msgid "Description" msgstr "Açıklama" @@ -323,7 +324,7 @@ msgid "parent" msgstr "üst" #: InvenTree/models.py:560 InvenTree/models.py:561 -#: templates/js/translated/part.js:1948 templates/js/translated/stock.js:2430 +#: templates/js/translated/part.js:1944 templates/js/translated/stock.js:2430 msgid "Path" msgstr "" @@ -335,7 +336,7 @@ msgstr "" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:55 part/models.py:2699 +#: InvenTree/serializers.py:55 part/models.py:2746 msgid "Must be a valid number" msgstr "Geçerli bir numara olmalı" @@ -541,7 +542,7 @@ msgid "Returned" msgstr "İade" #: InvenTree/status_codes.py:141 order/models.py:1128 -#: templates/js/translated/order.js:3330 templates/js/translated/order.js:3679 +#: templates/js/translated/order.js:3369 templates/js/translated/order.js:3718 msgid "Shipped" msgstr "Sevk edildi" @@ -728,7 +729,7 @@ msgstr "" #: report/templates/report/inventree_build_order_base.html:105 #: templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 -#: templates/js/translated/build.js:731 +#: templates/js/translated/build.js:763 msgid "Build Order" msgstr "Yapım İşi Emri" @@ -747,14 +748,14 @@ msgid "Build Order Reference" msgstr "Yapım İşi Emri Referansı" #: build/models.py:166 order/models.py:240 order/models.py:623 -#: order/models.py:904 part/models.py:2617 +#: order/models.py:904 part/models.py:2664 #: part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 -#: templates/js/translated/bom.js:692 templates/js/translated/bom.js:855 -#: templates/js/translated/build.js:1779 templates/js/translated/order.js:1983 -#: templates/js/translated/order.js:2184 templates/js/translated/order.js:3523 -#: templates/js/translated/order.js:4031 +#: templates/js/translated/bom.js:690 templates/js/translated/bom.js:853 +#: templates/js/translated/build.js:1811 templates/js/translated/order.js:2022 +#: templates/js/translated/order.js:2223 templates/js/translated/order.js:3562 +#: templates/js/translated/order.js:4070 msgid "Reference" msgstr "Referans" @@ -762,7 +763,7 @@ msgstr "Referans" msgid "Brief description of the build" msgstr "Yapım işinin kısa açıklaması" -#: build/models.py:185 build/templates/build/build_base.html:169 +#: build/models.py:185 build/templates/build/build_base.html:172 #: build/templates/build/detail.html:87 msgid "Parent Build" msgstr "Üst Yapım İşi" @@ -771,13 +772,13 @@ msgstr "Üst Yapım İşi" msgid "BuildOrder to which this build is allocated" msgstr "Bu yapım işinin tahsis edildiği yapım işi emri" -#: build/models.py:191 build/templates/build/build_base.html:77 +#: build/models.py:191 build/templates/build/build_base.html:80 #: build/templates/build/detail.html:29 company/models.py:670 #: order/models.py:1001 order/models.py:1112 order/models.py:1113 -#: part/models.py:343 part/models.py:2146 part/models.py:2161 -#: part/models.py:2180 part/models.py:2198 part/models.py:2297 -#: part/models.py:2417 part/models.py:2507 part/models.py:2592 -#: part/models.py:2868 part/serializers.py:813 +#: part/models.py:343 part/models.py:2193 part/models.py:2208 +#: part/models.py:2227 part/models.py:2245 part/models.py:2344 +#: part/models.py:2464 part/models.py:2554 part/models.py:2639 +#: part/models.py:2915 part/serializers.py:813 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -789,17 +790,17 @@ msgstr "Bu yapım işinin tahsis edildiği yapım işi emri" #: templates/email/build_order_required_stock.html:17 #: templates/email/low_stock_notification.html:16 #: templates/email/overdue_build_order.html:16 -#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:553 -#: templates/js/translated/bom.js:691 templates/js/translated/bom.js:802 -#: templates/js/translated/build.js:1156 templates/js/translated/build.js:1649 -#: templates/js/translated/build.js:2085 templates/js/translated/build.js:2476 +#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:552 +#: templates/js/translated/bom.js:689 templates/js/translated/bom.js:800 +#: templates/js/translated/build.js:1188 templates/js/translated/build.js:1681 +#: templates/js/translated/build.js:2118 templates/js/translated/build.js:2509 #: templates/js/translated/company.js:266 #: templates/js/translated/company.js:496 #: templates/js/translated/company.js:608 -#: templates/js/translated/company.js:868 templates/js/translated/order.js:103 -#: templates/js/translated/order.js:934 templates/js/translated/order.js:1387 -#: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885 -#: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507 +#: templates/js/translated/company.js:868 templates/js/translated/order.js:104 +#: templates/js/translated/order.js:973 templates/js/translated/order.js:1426 +#: templates/js/translated/order.js:1976 templates/js/translated/order.js:2924 +#: templates/js/translated/order.js:3320 templates/js/translated/order.js:3546 #: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210 #: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586 #: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958 @@ -821,7 +822,7 @@ msgid "SalesOrder to which this build is allocated" msgstr "Bu yapım işinin tahsis edildiği satış emri" #: build/models.py:213 build/serializers.py:800 -#: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873 +#: templates/js/translated/build.js:2106 templates/js/translated/order.js:2912 msgid "Source Location" msgstr "Kaynak Konum" @@ -862,7 +863,7 @@ msgid "Build status code" msgstr "Yapım işi durum kodu" #: build/models.py:251 build/serializers.py:225 order/serializers.py:447 -#: stock/models.py:662 templates/js/translated/order.js:1247 +#: stock/models.py:662 templates/js/translated/order.js:1286 msgid "Batch Code" msgstr "Sıra numarası" @@ -871,7 +872,7 @@ msgid "Batch code for this build output" msgstr "Yapım işi çıktısı için sıra numarası" #: build/models.py:258 order/models.py:86 part/models.py:938 -#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544 +#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2583 msgid "Creation Date" msgstr "Oluşturulma tarihi" @@ -884,7 +885,7 @@ msgid "Target date for build completion. Build will be overdue after this date." msgstr "Yapım işinin tamamlanması için hedef tarih. Bu tarihten sonra yapım işi gecikmiş olacak." #: build/models.py:266 order/models.py:286 -#: templates/js/translated/build.js:2553 +#: templates/js/translated/build.js:2586 msgid "Completion Date" msgstr "Tamamlama tarihi" @@ -892,7 +893,7 @@ msgstr "Tamamlama tarihi" msgid "completed by" msgstr "tamamlayan" -#: build/models.py:280 templates/js/translated/build.js:2521 +#: build/models.py:280 templates/js/translated/build.js:2554 msgid "Issued by" msgstr "Veren" @@ -900,12 +901,12 @@ msgstr "Veren" msgid "User who issued this build order" msgstr "Bu yapım işi emrini veren kullanıcı" -#: build/models.py:289 build/templates/build/build_base.html:190 +#: build/models.py:289 build/templates/build/build_base.html:193 #: build/templates/build/detail.html:115 order/models.py:100 #: order/templates/order/order_base.html:176 #: order/templates/order/sales_order_base.html:183 part/models.py:942 #: report/templates/report/inventree_build_order_base.html:158 -#: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754 +#: templates/js/translated/build.js:2566 templates/js/translated/order.js:1793 msgid "Responsible" msgstr "Sorumlu" @@ -972,7 +973,7 @@ msgid "Selected stock item not found in BOM" msgstr "" #: build/models.py:1328 stock/templates/stock/item_base.html:177 -#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2455 +#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2488 #: templates/navbar.html:38 msgid "Build" msgstr "Yapım İşi" @@ -986,11 +987,11 @@ msgstr "Yapım işi için tahsis edilen parçalar" #: stock/serializers.py:882 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:199 -#: templates/js/translated/build.js:741 templates/js/translated/build.js:746 -#: templates/js/translated/build.js:2087 templates/js/translated/build.js:2638 -#: templates/js/translated/order.js:104 templates/js/translated/order.js:2886 -#: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193 -#: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380 +#: templates/js/translated/build.js:773 templates/js/translated/build.js:778 +#: templates/js/translated/build.js:2120 templates/js/translated/build.js:2671 +#: templates/js/translated/order.js:105 templates/js/translated/order.js:2925 +#: templates/js/translated/order.js:3227 templates/js/translated/order.js:3232 +#: templates/js/translated/order.js:3327 templates/js/translated/order.js:3419 #: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752 #: templates/js/translated/stock.js:2577 msgid "Stock Item" @@ -1001,13 +1002,13 @@ msgid "Source stock item" msgstr "Kaynak stok kalemi" #: build/models.py:1358 build/serializers.py:193 -#: build/templates/build/build_base.html:82 +#: build/templates/build/build_base.html:85 #: build/templates/build/detail.html:34 common/models.py:1697 #: company/templates/company/supplier_part.html:279 order/models.py:897 #: order/models.py:1423 order/serializers.py:1155 #: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40 -#: part/models.py:2608 part/templates/part/detail.html:937 -#: part/templates/part/detail.html:1023 +#: part/models.py:2655 part/templates/part/detail.html:951 +#: part/templates/part/detail.html:1037 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 #: report/templates/report/inventree_build_order_base.html:113 @@ -1018,20 +1019,20 @@ msgstr "Kaynak stok kalemi" #: stock/serializers.py:293 stock/templates/stock/item_base.html:292 #: stock/templates/stock/item_base.html:300 #: templates/email/build_order_completed.html:18 -#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:693 -#: templates/js/translated/bom.js:863 templates/js/translated/build.js:426 -#: templates/js/translated/build.js:578 templates/js/translated/build.js:768 -#: templates/js/translated/build.js:1178 templates/js/translated/build.js:1675 -#: templates/js/translated/build.js:2088 +#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:691 +#: templates/js/translated/bom.js:861 templates/js/translated/build.js:458 +#: templates/js/translated/build.js:610 templates/js/translated/build.js:800 +#: templates/js/translated/build.js:1210 templates/js/translated/build.js:1707 +#: templates/js/translated/build.js:2121 #: templates/js/translated/model_renderers.js:120 -#: templates/js/translated/order.js:120 templates/js/translated/order.js:937 -#: templates/js/translated/order.js:1989 templates/js/translated/order.js:2190 -#: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207 -#: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386 -#: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037 -#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2156 -#: templates/js/translated/part.js:2387 templates/js/translated/part.js:2421 -#: templates/js/translated/part.js:2499 templates/js/translated/stock.js:458 +#: templates/js/translated/order.js:121 templates/js/translated/order.js:976 +#: templates/js/translated/order.js:2028 templates/js/translated/order.js:2229 +#: templates/js/translated/order.js:2926 templates/js/translated/order.js:3246 +#: templates/js/translated/order.js:3333 templates/js/translated/order.js:3425 +#: templates/js/translated/order.js:3568 templates/js/translated/order.js:4076 +#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2152 +#: templates/js/translated/part.js:2602 templates/js/translated/part.js:2636 +#: templates/js/translated/part.js:2714 templates/js/translated/stock.js:458 #: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782 #: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711 msgid "Quantity" @@ -1050,7 +1051,7 @@ msgid "Destination stock item" msgstr "Hedef stok kalemi" #: build/serializers.py:138 build/serializers.py:674 -#: templates/js/translated/build.js:1166 +#: templates/js/translated/build.js:1198 msgid "Build Output" msgstr "" @@ -1090,7 +1091,7 @@ msgid "Integer quantity required, as the bill of materials contains trackable pa msgstr "" #: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159 -#: stock/serializers.py:311 templates/js/translated/order.js:1258 +#: stock/serializers.py:311 templates/js/translated/order.js:1297 #: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459 msgid "Serial Numbers" msgstr "Seri Numaraları" @@ -1120,10 +1121,10 @@ msgstr "" #: stock/serializers.py:917 stock/serializers.py:1150 #: stock/templates/stock/item_base.html:390 #: templates/js/translated/barcode.js:436 -#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753 -#: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285 -#: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305 -#: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394 +#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:785 +#: templates/js/translated/build.js:1719 templates/js/translated/order.js:1324 +#: templates/js/translated/order.js:3239 templates/js/translated/order.js:3344 +#: templates/js/translated/order.js:3352 templates/js/translated/order.js:3433 #: templates/js/translated/part.js:181 templates/js/translated/stock.js:588 #: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960 #: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518 @@ -1134,12 +1135,12 @@ msgstr "Konum" msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:373 build/templates/build/build_base.html:142 +#: build/serializers.py:373 build/templates/build/build_base.html:145 #: build/templates/build/detail.html:62 order/models.py:642 #: order/serializers.py:465 stock/templates/stock/item_base.html:423 -#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505 -#: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724 -#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829 +#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2538 +#: templates/js/translated/order.js:1431 templates/js/translated/order.js:1763 +#: templates/js/translated/order.js:2575 templates/js/translated/stock.js:1829 #: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727 msgid "Status" msgstr "Durum" @@ -1196,7 +1197,7 @@ msgstr "" msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:522 templates/js/translated/build.js:195 +#: build/serializers.py:522 templates/js/translated/build.js:227 msgid "Required stock has not been fully allocated" msgstr "Gerekli stok tamamen tahsis edilemedi" @@ -1208,7 +1209,7 @@ msgstr "" msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:538 templates/js/translated/build.js:199 +#: build/serializers.py:538 templates/js/translated/build.js:231 msgid "Required build quantity has not been completed" msgstr "Gerekli yapım işi miktarı tamamlanmadı" @@ -1216,8 +1217,8 @@ msgstr "Gerekli yapım işi miktarı tamamlanmadı" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726 -#: part/models.py:2860 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2773 +#: part/models.py:2907 msgid "BOM Item" msgstr "" @@ -1322,66 +1323,70 @@ msgid "Cancel Build" msgstr "Yapım İşini İptal Et" #: build/templates/build/build_base.html:59 +msgid "Duplicate Build" +msgstr "" + +#: build/templates/build/build_base.html:62 msgid "Delete Build" msgstr "" -#: build/templates/build/build_base.html:64 -#: build/templates/build/build_base.html:65 +#: build/templates/build/build_base.html:67 +#: build/templates/build/build_base.html:68 msgid "Complete Build" msgstr "Tamamlanmış Yapım İşi" -#: build/templates/build/build_base.html:87 +#: build/templates/build/build_base.html:90 msgid "Build Description" msgstr "" -#: build/templates/build/build_base.html:95 +#: build/templates/build/build_base.html:98 msgid "No build outputs have been created for this build order" msgstr "" -#: build/templates/build/build_base.html:101 +#: build/templates/build/build_base.html:104 #, python-format msgid "This Build Order is allocated to Sales Order %(link)s" msgstr "Bu yapım işi emri, %(link)s sipariş emrine tahsis edilmiştir" -#: build/templates/build/build_base.html:108 +#: build/templates/build/build_base.html:111 #, python-format msgid "This Build Order is a child of Build Order %(link)s" msgstr "Bu yapım işi emri, %(link)s yapım iş emrinin altıdır" -#: build/templates/build/build_base.html:115 +#: build/templates/build/build_base.html:118 msgid "Build Order is ready to mark as completed" msgstr "Yapım işi tamamlandı olarak işaretlenmeye hazır" -#: build/templates/build/build_base.html:120 +#: build/templates/build/build_base.html:123 msgid "Build Order cannot be completed as outstanding outputs remain" msgstr "Bekleyen çıktılar kaldığı için yapım işi emri tamamlanamıyor" -#: build/templates/build/build_base.html:125 +#: build/templates/build/build_base.html:128 msgid "Required build quantity has not yet been completed" msgstr "Gerekli yapım işi miktarı henüz tamamlanmadı" -#: build/templates/build/build_base.html:130 +#: build/templates/build/build_base.html:133 msgid "Stock has not been fully allocated to this Build Order" msgstr "Stok, yapım işi emri için tamamen tahsis edilemedi" -#: build/templates/build/build_base.html:151 +#: build/templates/build/build_base.html:154 #: build/templates/build/detail.html:131 order/models.py:910 #: order/templates/order/order_base.html:162 #: order/templates/order/sales_order_base.html:164 #: report/templates/report/inventree_build_order_base.html:125 -#: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741 -#: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552 -#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042 +#: templates/js/translated/build.js:2578 templates/js/translated/order.js:1780 +#: templates/js/translated/order.js:2090 templates/js/translated/order.js:2591 +#: templates/js/translated/order.js:3631 templates/js/translated/part.js:1042 msgid "Target Date" msgstr "Hedeflenen tarih" -#: build/templates/build/build_base.html:156 +#: build/templates/build/build_base.html:159 #, python-format msgid "This build was due on %(target)s" msgstr "Bu yapım işinin %(target)s tarihinde süresi doluyor" -#: build/templates/build/build_base.html:156 -#: build/templates/build/build_base.html:201 +#: build/templates/build/build_base.html:159 +#: build/templates/build/build_base.html:204 #: order/templates/order/order_base.html:98 #: order/templates/order/sales_order_base.html:94 #: templates/js/translated/table_filters.js:320 @@ -1390,14 +1395,14 @@ msgstr "Bu yapım işinin %(target)s tarihinde süresi doluyor" msgid "Overdue" msgstr "Vadesi geçmiş" -#: build/templates/build/build_base.html:163 +#: build/templates/build/build_base.html:166 #: build/templates/build/detail.html:67 build/templates/build/detail.html:142 #: order/templates/order/sales_order_base.html:171 #: templates/js/translated/table_filters.js:400 msgid "Completed" msgstr "Tamamlandı" -#: build/templates/build/build_base.html:176 +#: build/templates/build/build_base.html:179 #: build/templates/build/detail.html:94 order/models.py:1105 #: order/models.py:1199 order/models.py:1330 #: order/templates/order/sales_order_base.html:9 @@ -1406,17 +1411,17 @@ msgstr "Tamamlandı" #: report/templates/report/inventree_so_report.html:77 #: stock/templates/stock/item_base.html:370 #: templates/email/overdue_sales_order.html:15 -#: templates/js/translated/order.js:2498 +#: templates/js/translated/order.js:2537 msgid "Sales Order" msgstr "Sipariş Emri" -#: build/templates/build/build_base.html:183 +#: build/templates/build/build_base.html:186 #: build/templates/build/detail.html:108 #: report/templates/report/inventree_build_order_base.html:152 msgid "Issued By" msgstr "Veren" -#: build/templates/build/build_base.html:245 +#: build/templates/build/build_base.html:256 msgid "Delete Build Order" msgstr "Yapım İşi Emrini Sil" @@ -1433,7 +1438,7 @@ msgid "Stock can be taken from any available location." msgstr "Stok herhangi bir konumdan alınabilir." #: build/templates/build/detail.html:49 order/models.py:1023 -#: templates/js/translated/order.js:1393 templates/js/translated/order.js:2093 +#: templates/js/translated/order.js:1432 templates/js/translated/order.js:2132 msgid "Destination" msgstr "Hedef" @@ -1447,7 +1452,7 @@ msgstr "" #: build/templates/build/detail.html:80 #: stock/templates/stock/item_base.html:170 -#: templates/js/translated/build.js:1182 +#: templates/js/translated/build.js:1214 #: templates/js/translated/model_renderers.js:124 #: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843 #: templates/js/translated/stock.js:2734 @@ -1459,7 +1464,7 @@ msgstr "Toplu" #: build/templates/build/detail.html:126 #: order/templates/order/order_base.html:149 #: order/templates/order/sales_order_base.html:158 -#: templates/js/translated/build.js:2513 +#: templates/js/translated/build.js:2546 msgid "Created" msgstr "Oluşturuldu" @@ -1479,7 +1484,7 @@ msgstr "Alt Yapım İşi Emrileri" msgid "Allocate Stock to Build" msgstr "Yapım İşi için Stok Tahsis Et" -#: build/templates/build/detail.html:176 templates/js/translated/build.js:1901 +#: build/templates/build/detail.html:176 templates/js/translated/build.js:1934 msgid "Unallocate stock" msgstr "Stok tahsisini kaldır" @@ -1510,7 +1515,7 @@ msgstr "Gerekli parçaları sipariş edin" #: build/templates/build/detail.html:187 #: company/templates/company/detail.html:37 #: company/templates/company/detail.html:85 -#: part/templates/part/category.html:183 templates/js/translated/order.js:977 +#: part/templates/part/category.html:183 templates/js/translated/order.js:1016 msgid "Order Parts" msgstr "Parça Siparişi" @@ -1582,7 +1587,7 @@ msgstr "Tamamlanmış Yapım İşi Çıktıları" #: order/templates/order/po_sidebar.html:9 #: order/templates/order/purchase_order_detail.html:82 #: order/templates/order/sales_order_detail.html:135 -#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:207 +#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:212 #: part/templates/part/part_sidebar.html:57 stock/templates/stock/item.html:117 #: stock/templates/stock/stock_sidebar.html:23 msgid "Attachments" @@ -1600,7 +1605,7 @@ msgstr "" msgid "All untracked stock items have been allocated" msgstr "" -#: build/templates/build/index.html:18 part/templates/part/detail.html:313 +#: build/templates/build/index.html:18 part/templates/part/detail.html:318 msgid "New Build Order" msgstr "Yeni Yapım İşi Emri" @@ -1845,7 +1850,7 @@ msgstr "Kategori Paremetre Sablonu Kopyala" msgid "Copy category parameter templates when creating a part" msgstr "Parça oluştururken kategori parametre şablonlarını kopyala" -#: common/models.py:951 part/models.py:2419 report/models.py:158 +#: common/models.py:951 part/models.py:2466 report/models.py:158 #: templates/js/translated/table_filters.js:38 #: templates/js/translated/table_filters.js:484 msgid "Template" @@ -1855,7 +1860,7 @@ msgstr "Şablon" msgid "Parts are templates by default" msgstr "Parçaları varsayılan olan şablondur" -#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448 +#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1446 #: templates/js/translated/table_filters.js:176 #: templates/js/translated/table_filters.js:447 msgid "Assembly" @@ -2591,7 +2596,7 @@ msgstr "" #: common/models.py:1705 company/serializers.py:366 #: company/templates/company/supplier_part.html:284 order/models.py:938 -#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2161 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2157 msgid "Price" msgstr "Fiyat" @@ -2830,7 +2835,7 @@ msgstr "Bu şirket için varsayılan para birimi" #: company/models.py:248 company/models.py:481 stock/models.py:598 #: stock/serializers.py:87 stock/templates/stock/item_base.html:148 -#: templates/js/translated/bom.js:543 +#: templates/js/translated/bom.js:542 msgid "Base Part" msgstr "Temel Parça" @@ -2859,7 +2864,7 @@ msgstr "Üretici seçin" #: templates/js/translated/company.js:269 #: templates/js/translated/company.js:497 #: templates/js/translated/company.js:649 -#: templates/js/translated/company.js:937 templates/js/translated/order.js:1971 +#: templates/js/translated/company.js:937 templates/js/translated/order.js:2010 #: templates/js/translated/part.js:247 templates/js/translated/part.js:1027 msgid "MPN" msgstr "ÜPN" @@ -2899,7 +2904,7 @@ msgstr "Değer" msgid "Parameter value" msgstr "Parametre değeri" -#: company/models.py:372 part/models.py:888 part/models.py:2386 +#: company/models.py:372 part/models.py:888 part/models.py:2433 #: part/templates/part/part_base.html:280 #: templates/InvenTree/settings/settings.html:352 #: templates/js/translated/company.js:770 templates/js/translated/part.js:855 @@ -2921,7 +2926,7 @@ msgstr "" #: templates/email/overdue_purchase_order.html:16 #: templates/js/translated/company.js:268 #: templates/js/translated/company.js:401 -#: templates/js/translated/company.js:893 templates/js/translated/order.js:1707 +#: templates/js/translated/company.js:893 templates/js/translated/order.js:1746 #: templates/js/translated/part.js:217 templates/js/translated/part.js:995 #: templates/js/translated/table_filters.js:423 msgid "Supplier" @@ -2933,7 +2938,7 @@ msgstr "Tedarikçi seçin" #: company/models.py:497 company/templates/company/supplier_part.html:118 #: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267 -#: templates/js/translated/order.js:1958 templates/js/translated/part.js:228 +#: templates/js/translated/order.js:1997 templates/js/translated/part.js:228 #: templates/js/translated/part.js:1013 msgid "SKU" msgstr "" @@ -2955,17 +2960,17 @@ msgid "Supplier part description" msgstr "" #: company/models.py:522 company/templates/company/supplier_part.html:146 -#: part/models.py:2620 part/templates/part/upload_bom.html:59 +#: part/models.py:2667 part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401 msgid "Note" msgstr "Not" -#: company/models.py:526 part/models.py:1742 +#: company/models.py:526 part/models.py:1789 msgid "base cost" msgstr "temel maliyet" -#: company/models.py:526 part/models.py:1742 +#: company/models.py:526 part/models.py:1789 msgid "Minimum charge (e.g. stocking fee)" msgstr "" @@ -2979,7 +2984,7 @@ msgstr "Paketleme" msgid "Part packaging" msgstr "" -#: company/models.py:530 part/models.py:1744 +#: company/models.py:530 part/models.py:1791 msgid "multiple" msgstr "çoklu" @@ -2990,8 +2995,8 @@ msgstr "" #: company/models.py:538 company/templates/company/supplier_part.html:94 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789 -#: templates/js/translated/build.js:2645 templates/js/translated/company.js:979 +#: templates/js/translated/bom.js:911 templates/js/translated/build.js:1821 +#: templates/js/translated/build.js:2678 templates/js/translated/company.js:979 #: templates/js/translated/part.js:600 templates/js/translated/part.js:603 #: templates/js/translated/table_filters.js:186 msgid "Available" @@ -3028,7 +3033,7 @@ msgid "Company" msgstr "" #: company/templates/company/company_base.html:22 -#: templates/js/translated/order.js:540 +#: templates/js/translated/order.js:579 msgid "Create Purchase Order" msgstr "Satın Alma Emri Oluştur" @@ -3069,7 +3074,7 @@ msgstr "" #: stock/models.py:644 stock/serializers.py:811 #: stock/templates/stock/item_base.html:401 #: templates/email/overdue_sales_order.html:16 -#: templates/js/translated/company.js:393 templates/js/translated/order.js:2513 +#: templates/js/translated/company.js:393 templates/js/translated/order.js:2552 #: templates/js/translated/stock.js:2559 #: templates/js/translated/table_filters.js:427 msgid "Customer" @@ -3105,7 +3110,7 @@ msgstr "Yeni tedarikçi parçası oluştur" #: company/templates/company/detail.html:19 #: company/templates/company/manufacturer_part.html:123 -#: part/templates/part/detail.html:354 +#: part/templates/part/detail.html:359 msgid "New Supplier Part" msgstr "Yeni Tedarikçi Parçası" @@ -3134,7 +3139,7 @@ msgstr "" msgid "Create new manufacturer part" msgstr "" -#: company/templates/company/detail.html:66 part/templates/part/detail.html:384 +#: company/templates/company/detail.html:66 part/templates/part/detail.html:389 msgid "New Manufacturer Part" msgstr "" @@ -3148,7 +3153,7 @@ msgstr "Tedarikçi Stoku" #: order/templates/order/order_base.html:13 #: order/templates/order/purchase_orders.html:8 #: order/templates/order/purchase_orders.html:12 -#: part/templates/part/detail.html:79 part/templates/part/part_sidebar.html:37 +#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:37 #: templates/InvenTree/index.html:252 templates/InvenTree/search.html:198 #: templates/InvenTree/settings/sidebar.html:49 #: templates/js/translated/search.js:275 templates/navbar.html:50 @@ -3171,7 +3176,7 @@ msgstr "Yeni Satın Alma Emri" #: order/templates/order/sales_order_base.html:13 #: order/templates/order/sales_orders.html:8 #: order/templates/order/sales_orders.html:15 -#: part/templates/part/detail.html:102 part/templates/part/part_sidebar.html:41 +#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:41 #: templates/InvenTree/index.html:283 templates/InvenTree/search.html:218 #: templates/InvenTree/settings/sidebar.html:51 #: templates/js/translated/search.js:299 templates/navbar.html:61 @@ -3190,7 +3195,7 @@ msgid "New Sales Order" msgstr "Yeni Satış Emri" #: company/templates/company/detail.html:168 -#: templates/js/translated/build.js:1660 +#: templates/js/translated/build.js:1692 msgid "Assigned Stock" msgstr "Atanan Stok" @@ -3206,7 +3211,7 @@ msgstr "Üreticiler" #: company/templates/company/manufacturer_part.html:35 #: company/templates/company/supplier_part.html:186 -#: part/templates/part/detail.html:82 part/templates/part/part_base.html:80 +#: part/templates/part/detail.html:87 part/templates/part/part_base.html:80 msgid "Order part" msgstr "Parça siparişi" @@ -3237,13 +3242,13 @@ msgid "Suppliers" msgstr "" #: company/templates/company/manufacturer_part.html:136 -#: part/templates/part/detail.html:365 +#: part/templates/part/detail.html:370 msgid "Delete supplier parts" msgstr "Tedarikçi parçalarını sil" #: company/templates/company/manufacturer_part.html:136 #: company/templates/company/manufacturer_part.html:183 -#: part/templates/part/detail.html:366 part/templates/part/detail.html:396 +#: part/templates/part/detail.html:371 part/templates/part/detail.html:401 #: templates/js/translated/forms.js:453 templates/js/translated/helpers.js:33 #: users/models.py:220 msgid "Delete" @@ -3252,12 +3257,12 @@ msgstr "" #: company/templates/company/manufacturer_part.html:166 #: company/templates/company/manufacturer_part_sidebar.html:5 #: part/templates/part/category_sidebar.html:19 -#: part/templates/part/detail.html:181 part/templates/part/part_sidebar.html:8 +#: part/templates/part/detail.html:186 part/templates/part/part_sidebar.html:8 msgid "Parameters" msgstr "" #: company/templates/company/manufacturer_part.html:170 -#: part/templates/part/detail.html:186 +#: part/templates/part/detail.html:191 #: templates/InvenTree/settings/category.html:12 #: templates/InvenTree/settings/part.html:68 msgid "New Parameter" @@ -3268,7 +3273,7 @@ msgid "Delete parameters" msgstr "" #: company/templates/company/manufacturer_part.html:245 -#: part/templates/part/detail.html:826 +#: part/templates/part/detail.html:840 msgid "Add Parameter" msgstr "" @@ -3291,7 +3296,7 @@ msgstr "" #: company/templates/company/supplier_part.html:7 #: company/templates/company/supplier_part.html:24 stock/models.py:607 #: stock/templates/stock/item_base.html:238 -#: templates/js/translated/company.js:909 templates/js/translated/order.js:935 +#: templates/js/translated/company.js:909 templates/js/translated/order.js:974 #: templates/js/translated/stock.js:1933 msgid "Supplier Part" msgstr "Tedarikçi Parçası" @@ -3303,7 +3308,7 @@ msgstr "" #: company/templates/company/supplier_part.html:40 #: company/templates/company/supplier_part.html:41 #: company/templates/company/supplier_part.html:187 -#: part/templates/part/detail.html:83 +#: part/templates/part/detail.html:88 msgid "Order Part" msgstr "" @@ -3358,7 +3363,7 @@ msgstr "Fiyat Bilgisi" #: company/templates/company/supplier_part.html:212 #: company/templates/company/supplier_part.html:326 -#: part/templates/part/prices.html:276 templates/js/translated/part.js:2233 +#: part/templates/part/prices.html:276 templates/js/translated/part.js:2229 msgid "Add Price Break" msgstr "" @@ -3367,12 +3372,12 @@ msgid "No price break information found" msgstr "" #: company/templates/company/supplier_part.html:252 -#: templates/js/translated/part.js:2243 +#: templates/js/translated/part.js:2239 msgid "Delete Price Break" msgstr "" #: company/templates/company/supplier_part.html:266 -#: templates/js/translated/part.js:2257 +#: templates/js/translated/part.js:2253 msgid "Edit Price Break" msgstr "" @@ -3398,10 +3403,9 @@ msgstr "" #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:151 #: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751 -#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460 -#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754 -#: templates/navbar.html:31 +#: templates/js/translated/part.js:751 templates/js/translated/part.js:1299 +#: templates/js/translated/part.js:1460 templates/js/translated/stock.js:959 +#: templates/js/translated/stock.js:1754 templates/navbar.html:31 msgid "Stock" msgstr "Stok" @@ -3554,7 +3558,7 @@ msgid "Company from which the items are being ordered" msgstr "" #: order/models.py:262 order/templates/order/order_base.html:124 -#: templates/js/translated/order.js:1716 +#: templates/js/translated/order.js:1755 msgid "Supplier Reference" msgstr "" @@ -3611,7 +3615,7 @@ msgid "Target date for order completion. Order will be overdue after this date." msgstr "" #: order/models.py:652 order/models.py:1204 -#: templates/js/translated/order.js:2560 templates/js/translated/order.js:2722 +#: templates/js/translated/order.js:2599 templates/js/translated/order.js:2761 msgid "Shipment Date" msgstr "" @@ -3673,7 +3677,7 @@ msgstr "" #: order/models.py:983 order/models.py:1063 order/models.py:1104 #: order/models.py:1198 order/models.py:1330 -#: templates/js/translated/order.js:3178 +#: templates/js/translated/order.js:3217 msgid "Order" msgstr "" @@ -3683,7 +3687,7 @@ msgstr "" #: report/templates/report/inventree_po_report.html:76 #: stock/templates/stock/item_base.html:184 #: templates/email/overdue_purchase_order.html:15 -#: templates/js/translated/order.js:936 templates/js/translated/order.js:1691 +#: templates/js/translated/order.js:975 templates/js/translated/order.js:1730 #: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913 #: templates/js/translated/stock.js:2540 msgid "Purchase Order" @@ -3694,7 +3698,7 @@ msgid "Supplier part" msgstr "" #: order/models.py:1009 order/templates/order/order_base.html:169 -#: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073 +#: templates/js/translated/order.js:1429 templates/js/translated/order.js:2112 #: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091 #: templates/js/translated/table_filters.js:338 msgid "Received" @@ -3880,11 +3884,11 @@ msgstr "" msgid "Select destination location for received items" msgstr "" -#: order/serializers.py:448 templates/js/translated/order.js:1248 +#: order/serializers.py:448 templates/js/translated/order.js:1287 msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:456 templates/js/translated/order.js:1259 +#: order/serializers.py:456 templates/js/translated/order.js:1298 msgid "Enter serial numbers for incoming stock items" msgstr "" @@ -4061,10 +4065,6 @@ msgstr "" msgid "Total cost could not be calculated" msgstr "" -#: order/templates/order/order_base.html:243 -msgid "Edit Purchase Order" -msgstr "" - #: order/templates/order/order_wizard/match_parts.html:12 #: part/templates/part/import_wizard/ajax_match_references.html:12 #: part/templates/part/import_wizard/match_references.html:12 @@ -4091,10 +4091,10 @@ msgstr "Tedarikçi Parçası Seçin" #: part/templates/part/import_wizard/ajax_match_fields.html:64 #: part/templates/part/import_wizard/ajax_match_references.html:42 #: part/templates/part/import_wizard/match_references.html:49 -#: templates/js/translated/bom.js:77 templates/js/translated/build.js:431 -#: templates/js/translated/build.js:583 templates/js/translated/build.js:1974 -#: templates/js/translated/order.js:884 templates/js/translated/order.js:1337 -#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625 +#: templates/js/translated/bom.js:77 templates/js/translated/build.js:463 +#: templates/js/translated/build.js:615 templates/js/translated/build.js:2007 +#: templates/js/translated/order.js:923 templates/js/translated/order.js:1376 +#: templates/js/translated/order.js:2836 templates/js/translated/stock.js:625 #: templates/js/translated/stock.js:793 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" @@ -4130,7 +4130,7 @@ msgstr "" #: order/templates/order/purchase_order_detail.html:26 #: order/templates/order/sales_order_detail.html:22 #: order/templates/order/sales_order_detail.html:255 -#: templates/js/translated/order.js:557 +#: templates/js/translated/order.js:596 msgid "Add Line Item" msgstr "" @@ -4176,7 +4176,7 @@ msgid "Print packing list" msgstr "" #: order/templates/order/sales_order_base.html:60 -#: templates/js/translated/order.js:229 +#: templates/js/translated/order.js:230 msgid "Complete Shipments" msgstr "" @@ -4190,7 +4190,7 @@ msgid "This Sales Order has not been fully allocated" msgstr "" #: order/templates/order/sales_order_base.html:123 -#: templates/js/translated/order.js:2526 +#: templates/js/translated/order.js:2565 msgid "Customer Reference" msgstr "" @@ -4214,8 +4214,8 @@ msgid "Pending Shipments" msgstr "" #: order/templates/order/sales_order_detail.html:72 -#: templates/attachment_table.html:6 templates/js/translated/bom.js:1110 -#: templates/js/translated/build.js:1882 +#: templates/attachment_table.html:6 templates/js/translated/bom.js:1108 +#: templates/js/translated/build.js:1915 msgid "Actions" msgstr "İşlemler" @@ -4257,35 +4257,35 @@ msgstr "" msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:584 +#: part/api.py:621 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:704 +#: part/api.py:758 msgid "Valid" msgstr "" -#: part/api.py:705 +#: part/api.py:759 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:711 +#: part/api.py:765 msgid "This option must be selected" msgstr "" -#: part/api.py:1134 +#: part/api.py:1188 msgid "Must be greater than zero" msgstr "" -#: part/api.py:1138 +#: part/api.py:1192 msgid "Must be a valid quantity" msgstr "" -#: part/api.py:1153 +#: part/api.py:1207 msgid "Specify location for initial part stock" msgstr "" -#: part/api.py:1184 part/api.py:1188 part/api.py:1203 part/api.py:1207 +#: part/api.py:1238 part/api.py:1242 part/api.py:1257 part/api.py:1261 msgid "This field is required" msgstr "" @@ -4299,14 +4299,14 @@ msgid "Total Stock" msgstr "" #: part/bom.py:129 part/templates/part/part_base.html:189 -#: templates/js/translated/order.js:3618 +#: templates/js/translated/order.js:3657 msgid "Available Stock" msgstr "" #: part/bom.py:130 part/templates/part/part_base.html:207 -#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590 +#: templates/js/translated/bom.js:945 templates/js/translated/part.js:590 #: templates/js/translated/part.js:610 templates/js/translated/part.js:1302 -#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490 +#: templates/js/translated/part.js:1483 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "" @@ -4335,7 +4335,7 @@ msgstr "" msgid "Icon (optional)" msgstr "" -#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16 +#: part/models.py:122 part/models.py:2509 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" @@ -4352,7 +4352,7 @@ msgstr "Parça Kategorileri" #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82 #: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:1955 templates/js/translated/search.js:144 +#: templates/js/translated/part.js:1951 templates/js/translated/search.js:144 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "Parçalar" @@ -4382,7 +4382,7 @@ msgstr "En son seri numarası" msgid "Duplicate IPN not allowed in part settings" msgstr "Yinelenen DPN'ye parça ayarlarında izin verilmiyor" -#: part/models.py:745 part/models.py:2516 +#: part/models.py:745 part/models.py:2563 msgid "Part name" msgstr "Parça adı" @@ -4415,11 +4415,11 @@ msgstr "Anahtar kelimeler" msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:783 part/models.py:2218 part/models.py:2461 +#: part/models.py:783 part/models.py:2265 part/models.py:2508 #: part/templates/part/part_base.html:257 #: templates/InvenTree/settings/settings.html:232 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1668 +#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1664 msgid "Category" msgstr "" @@ -4530,245 +4530,245 @@ msgstr "" msgid "Creation User" msgstr "Oluşturan Kullanıcı" -#: part/models.py:1744 +#: part/models.py:1791 msgid "Sell multiple" msgstr "" -#: part/models.py:2265 +#: part/models.py:2312 msgid "Test templates can only be created for trackable parts" msgstr "Test şablonları sadece takip edilebilir paçalar için oluşturulabilir" -#: part/models.py:2282 +#: part/models.py:2329 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:2302 templates/js/translated/part.js:2006 +#: part/models.py:2349 templates/js/translated/part.js:2002 #: templates/js/translated/stock.js:1340 msgid "Test Name" msgstr "Test Adı" -#: part/models.py:2303 +#: part/models.py:2350 msgid "Enter a name for the test" msgstr "" -#: part/models.py:2308 +#: part/models.py:2355 msgid "Test Description" msgstr "Test Açıklaması" -#: part/models.py:2309 +#: part/models.py:2356 msgid "Enter description for this test" msgstr "" -#: part/models.py:2314 templates/js/translated/part.js:2015 +#: part/models.py:2361 templates/js/translated/part.js:2011 #: templates/js/translated/table_filters.js:302 msgid "Required" msgstr "Gerekli" -#: part/models.py:2315 +#: part/models.py:2362 msgid "Is this test required to pass?" msgstr "Testi geçmesi için bu gerekli mi?" -#: part/models.py:2320 templates/js/translated/part.js:2023 +#: part/models.py:2367 templates/js/translated/part.js:2019 msgid "Requires Value" msgstr "" -#: part/models.py:2321 +#: part/models.py:2368 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:2326 templates/js/translated/part.js:2030 +#: part/models.py:2373 templates/js/translated/part.js:2026 msgid "Requires Attachment" msgstr "" -#: part/models.py:2327 +#: part/models.py:2374 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:2335 +#: part/models.py:2382 #, python-brace-format msgid "Illegal character in template name ({c})" msgstr "" -#: part/models.py:2371 +#: part/models.py:2418 msgid "Parameter template name must be unique" msgstr "Parametre şablon adı benzersiz olmalıdır" -#: part/models.py:2379 +#: part/models.py:2426 msgid "Parameter Name" msgstr "" -#: part/models.py:2386 +#: part/models.py:2433 msgid "Parameter Units" msgstr "" -#: part/models.py:2417 +#: part/models.py:2464 msgid "Parent Part" msgstr "" -#: part/models.py:2419 part/models.py:2467 part/models.py:2468 +#: part/models.py:2466 part/models.py:2514 part/models.py:2515 #: templates/InvenTree/settings/settings.html:227 msgid "Parameter Template" msgstr "Parametre Şablonu" -#: part/models.py:2421 +#: part/models.py:2468 msgid "Data" msgstr "" -#: part/models.py:2421 +#: part/models.py:2468 msgid "Parameter Value" msgstr "" -#: part/models.py:2472 templates/InvenTree/settings/settings.html:236 +#: part/models.py:2519 templates/InvenTree/settings/settings.html:236 msgid "Default Value" msgstr "" -#: part/models.py:2473 +#: part/models.py:2520 msgid "Default Parameter Value" msgstr "" -#: part/models.py:2508 +#: part/models.py:2555 msgid "Part ID or part name" msgstr "" -#: part/models.py:2511 templates/js/translated/model_renderers.js:212 +#: part/models.py:2558 templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "" -#: part/models.py:2512 +#: part/models.py:2559 msgid "Unique part ID value" msgstr "" -#: part/models.py:2515 +#: part/models.py:2562 msgid "Part Name" msgstr "" -#: part/models.py:2519 +#: part/models.py:2566 msgid "Part IPN" msgstr "" -#: part/models.py:2520 +#: part/models.py:2567 msgid "Part IPN value" msgstr "" -#: part/models.py:2523 +#: part/models.py:2570 msgid "Level" msgstr "" -#: part/models.py:2524 +#: part/models.py:2571 msgid "BOM level" msgstr "" -#: part/models.py:2593 +#: part/models.py:2640 msgid "Select parent part" msgstr "" -#: part/models.py:2601 +#: part/models.py:2648 msgid "Sub part" msgstr "" -#: part/models.py:2602 +#: part/models.py:2649 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:2608 +#: part/models.py:2655 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:2610 part/templates/part/upload_bom.html:58 -#: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999 +#: part/models.py:2657 part/templates/part/upload_bom.html:58 +#: templates/js/translated/bom.js:872 templates/js/translated/bom.js:997 #: templates/js/translated/table_filters.js:100 msgid "Optional" msgstr "" -#: part/models.py:2610 +#: part/models.py:2657 msgid "This BOM item is optional" msgstr "" -#: part/models.py:2613 part/templates/part/upload_bom.html:55 +#: part/models.py:2660 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:2614 +#: part/models.py:2661 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:2617 +#: part/models.py:2664 msgid "BOM item reference" msgstr "" -#: part/models.py:2620 +#: part/models.py:2667 msgid "BOM item notes" msgstr "" -#: part/models.py:2622 +#: part/models.py:2669 msgid "Checksum" msgstr "" -#: part/models.py:2622 +#: part/models.py:2669 msgid "BOM line checksum" msgstr "" -#: part/models.py:2626 part/templates/part/upload_bom.html:57 -#: templates/js/translated/bom.js:1016 +#: part/models.py:2673 part/templates/part/upload_bom.html:57 +#: templates/js/translated/bom.js:1014 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:96 msgid "Inherited" msgstr "" -#: part/models.py:2627 +#: part/models.py:2674 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "Bu malzeme listesi, çeşit parçalar listesini kalıtsalıdır" -#: part/models.py:2632 part/templates/part/upload_bom.html:56 -#: templates/js/translated/bom.js:1008 +#: part/models.py:2679 part/templates/part/upload_bom.html:56 +#: templates/js/translated/bom.js:1006 msgid "Allow Variants" msgstr "Çeşide İzin Ver" -#: part/models.py:2633 +#: part/models.py:2680 msgid "Stock items for variant parts can be used for this BOM item" msgstr "Çeşit parçaların stok kalemleri bu malzeme listesinde kullanılabilir" -#: part/models.py:2711 stock/models.py:468 +#: part/models.py:2758 stock/models.py:468 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:2720 part/models.py:2722 +#: part/models.py:2767 part/models.py:2769 msgid "Sub part must be specified" msgstr "" -#: part/models.py:2827 +#: part/models.py:2874 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:2848 +#: part/models.py:2895 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:2861 +#: part/models.py:2908 msgid "Parent BOM item" msgstr "" -#: part/models.py:2869 +#: part/models.py:2916 msgid "Substitute part" msgstr "" -#: part/models.py:2884 +#: part/models.py:2931 msgid "Part 1" msgstr "" -#: part/models.py:2888 +#: part/models.py:2935 msgid "Part 2" msgstr "" -#: part/models.py:2888 +#: part/models.py:2935 msgid "Select Related Part" msgstr "" -#: part/models.py:2906 +#: part/models.py:2953 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:2910 +#: part/models.py:2957 msgid "Duplicate relationship already exists" msgstr "" @@ -4876,7 +4876,7 @@ msgstr "" msgid "The BOM for %(part)s has not been validated." msgstr "" -#: part/templates/part/bom.html:30 part/templates/part/detail.html:264 +#: part/templates/part/bom.html:30 part/templates/part/detail.html:269 msgid "BOM actions" msgstr "" @@ -4945,8 +4945,8 @@ msgstr "" msgid "New Part" msgstr "" -#: part/templates/part/category.html:174 part/templates/part/detail.html:363 -#: part/templates/part/detail.html:394 +#: part/templates/part/category.html:174 part/templates/part/detail.html:368 +#: part/templates/part/detail.html:399 msgid "Options" msgstr "" @@ -5014,138 +5014,146 @@ msgstr "" msgid "Part Stock" msgstr "Parça Stoku" -#: part/templates/part/detail.html:54 +#: part/templates/part/detail.html:44 +msgid "Refresh scheduling data" +msgstr "" + +#: part/templates/part/detail.html:45 templates/js/translated/tables.js:558 +msgid "Refresh" +msgstr "Yenile" + +#: part/templates/part/detail.html:59 msgid "Part Test Templates" msgstr "Parça Test Şablonları" -#: part/templates/part/detail.html:59 +#: part/templates/part/detail.html:64 msgid "Add Test Template" msgstr "Test Şablonu Ekle" -#: part/templates/part/detail.html:116 stock/templates/stock/item.html:53 +#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53 msgid "Sales Order Allocations" msgstr "" -#: part/templates/part/detail.html:138 +#: part/templates/part/detail.html:143 msgid "Part Notes" msgstr "" -#: part/templates/part/detail.html:153 +#: part/templates/part/detail.html:158 msgid "Part Variants" msgstr "Parça Çeşitleri" -#: part/templates/part/detail.html:157 +#: part/templates/part/detail.html:162 msgid "Create new variant" msgstr "Yeni çeşit oluştur" -#: part/templates/part/detail.html:158 +#: part/templates/part/detail.html:163 msgid "New Variant" msgstr "Yeni Çeşit" -#: part/templates/part/detail.html:185 +#: part/templates/part/detail.html:190 msgid "Add new parameter" msgstr "" -#: part/templates/part/detail.html:222 part/templates/part/part_sidebar.html:54 +#: part/templates/part/detail.html:227 part/templates/part/part_sidebar.html:54 msgid "Related Parts" msgstr "" -#: part/templates/part/detail.html:226 part/templates/part/detail.html:227 +#: part/templates/part/detail.html:231 part/templates/part/detail.html:232 msgid "Add Related" msgstr "" -#: part/templates/part/detail.html:247 part/templates/part/part_sidebar.html:17 +#: part/templates/part/detail.html:252 part/templates/part/part_sidebar.html:17 msgid "Bill of Materials" msgstr "" -#: part/templates/part/detail.html:252 +#: part/templates/part/detail.html:257 msgid "Export actions" msgstr "" -#: part/templates/part/detail.html:256 templates/js/translated/bom.js:284 +#: part/templates/part/detail.html:261 templates/js/translated/bom.js:284 msgid "Export BOM" msgstr "" -#: part/templates/part/detail.html:258 +#: part/templates/part/detail.html:263 msgid "Print BOM Report" msgstr "" -#: part/templates/part/detail.html:268 +#: part/templates/part/detail.html:273 msgid "Upload BOM" msgstr "" -#: part/templates/part/detail.html:269 templates/js/translated/part.js:274 +#: part/templates/part/detail.html:274 templates/js/translated/part.js:274 msgid "Copy BOM" msgstr "" -#: part/templates/part/detail.html:270 +#: part/templates/part/detail.html:275 msgid "Validate BOM" msgstr "" -#: part/templates/part/detail.html:275 +#: part/templates/part/detail.html:280 msgid "New BOM Item" msgstr "" -#: part/templates/part/detail.html:276 +#: part/templates/part/detail.html:281 msgid "Add BOM Item" msgstr "" -#: part/templates/part/detail.html:289 +#: part/templates/part/detail.html:294 msgid "Assemblies" msgstr "" -#: part/templates/part/detail.html:307 +#: part/templates/part/detail.html:312 msgid "Part Builds" msgstr "" -#: part/templates/part/detail.html:334 stock/templates/stock/item.html:38 +#: part/templates/part/detail.html:339 stock/templates/stock/item.html:38 msgid "Build Order Allocations" msgstr "" -#: part/templates/part/detail.html:350 +#: part/templates/part/detail.html:355 msgid "Part Suppliers" msgstr "Parça Tedarikçileri" -#: part/templates/part/detail.html:380 +#: part/templates/part/detail.html:385 msgid "Part Manufacturers" msgstr "" -#: part/templates/part/detail.html:396 +#: part/templates/part/detail.html:401 msgid "Delete manufacturer parts" msgstr "" -#: part/templates/part/detail.html:612 +#: part/templates/part/detail.html:626 msgid "Create BOM Item" msgstr "" -#: part/templates/part/detail.html:656 +#: part/templates/part/detail.html:670 msgid "Related Part" msgstr "" -#: part/templates/part/detail.html:664 +#: part/templates/part/detail.html:678 msgid "Add Related Part" msgstr "" -#: part/templates/part/detail.html:756 +#: part/templates/part/detail.html:770 msgid "Add Test Result Template" msgstr "" -#: part/templates/part/detail.html:900 +#: part/templates/part/detail.html:914 #, python-format msgid "Purchase Unit Price - %(currency)s" msgstr "" -#: part/templates/part/detail.html:912 +#: part/templates/part/detail.html:926 #, python-format msgid "Unit Price-Cost Difference - %(currency)s" msgstr "" -#: part/templates/part/detail.html:924 +#: part/templates/part/detail.html:938 #, python-format msgid "Supplier Unit Cost - %(currency)s" msgstr "" -#: part/templates/part/detail.html:1013 +#: part/templates/part/detail.html:1027 #, python-format msgid "Unit Price - %(currency)s" msgstr "" @@ -5321,13 +5329,13 @@ msgstr "" msgid "Allocated to Sales Orders" msgstr "" -#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1037 +#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1035 msgid "Can Build" msgstr "" #: part/templates/part/part_base.html:238 templates/js/translated/part.js:593 #: templates/js/translated/part.js:613 templates/js/translated/part.js:1306 -#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1494 +#: templates/js/translated/part.js:1490 msgid "Building" msgstr "" @@ -5379,7 +5387,7 @@ msgid "Total Cost" msgstr "Toplam Maliyet" #: part/templates/part/part_pricing.html:40 part/templates/part/prices.html:43 -#: templates/js/translated/bom.js:991 +#: templates/js/translated/bom.js:989 msgid "No supplier pricing available" msgstr "" @@ -5414,6 +5422,18 @@ msgstr "" msgid "No pricing information is available for this part." msgstr "" +#: part/templates/part/part_scheduling.html:13 +#: report/templates/report/inventree_test_report_base.html:97 +#: templates/InvenTree/settings/plugin.html:53 +#: templates/InvenTree/settings/plugin_settings.html:38 +#: templates/js/translated/order.js:1772 templates/js/translated/stock.js:2468 +msgid "Date" +msgstr "" + +#: part/templates/part/part_scheduling.html:14 +msgid "Scheduled Quantity" +msgstr "" + #: part/templates/part/part_sidebar.html:11 msgid "Variants" msgstr "" @@ -5462,7 +5482,7 @@ msgstr "" msgid "Calculation parameters" msgstr "" -#: part/templates/part/prices.html:160 templates/js/translated/bom.js:985 +#: part/templates/part/prices.html:160 templates/js/translated/bom.js:983 msgid "Supplier Cost" msgstr "" @@ -5501,7 +5521,7 @@ msgid "No sale pice history available for this part." msgstr "" #: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616 -#: templates/js/translated/part.js:1294 templates/js/translated/part.js:1498 +#: templates/js/translated/part.js:1294 msgid "No Stock" msgstr "Stok Yok" @@ -5893,11 +5913,11 @@ msgstr "" #: report/templates/report/inventree_test_report_base.html:79 #: stock/models.py:648 stock/templates/stock/item_base.html:322 -#: templates/js/translated/build.js:424 templates/js/translated/build.js:576 -#: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673 +#: templates/js/translated/build.js:456 templates/js/translated/build.js:608 +#: templates/js/translated/build.js:1208 templates/js/translated/build.js:1705 #: templates/js/translated/model_renderers.js:118 -#: templates/js/translated/order.js:118 templates/js/translated/order.js:3297 -#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490 +#: templates/js/translated/order.js:119 templates/js/translated/order.js:3336 +#: templates/js/translated/order.js:3423 templates/js/translated/stock.js:490 msgid "Serial Number" msgstr "Seri Numara" @@ -5915,13 +5935,6 @@ msgstr "" msgid "Result" msgstr "" -#: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:53 -#: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468 -msgid "Date" -msgstr "" - #: report/templates/report/inventree_test_report_base.html:108 msgid "Pass" msgstr "" @@ -6519,7 +6532,7 @@ msgid "Available Quantity" msgstr "" #: stock/templates/stock/item_base.html:394 -#: templates/js/translated/build.js:1695 +#: templates/js/translated/build.js:1727 msgid "No location set" msgstr "Konum ayarlanmadı" @@ -7702,7 +7715,7 @@ msgid "The following parts are low on required stock" msgstr "" #: templates/email/build_order_required_stock.html:18 -#: templates/js/translated/bom.js:1483 +#: templates/js/translated/bom.js:1481 msgid "Required Quantity" msgstr "" @@ -7716,6 +7729,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:19 +#: templates/js/translated/part.js:2498 msgid "Minimum Quantity" msgstr "" @@ -7917,10 +7931,10 @@ msgstr "" msgid "Row Data" msgstr "" -#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:622 +#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:620 #: templates/js/translated/modals.js:56 templates/js/translated/modals.js:601 #: templates/js/translated/modals.js:695 templates/js/translated/modals.js:1003 -#: templates/js/translated/order.js:979 templates/modals.html:15 +#: templates/js/translated/order.js:1018 templates/modals.html:15 #: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50 msgid "Close" msgstr "Kapat" @@ -7930,12 +7944,12 @@ msgid "Download BOM Template" msgstr "" #: templates/js/translated/bom.js:253 templates/js/translated/bom.js:287 -#: templates/js/translated/order.js:760 templates/js/translated/tables.js:145 +#: templates/js/translated/order.js:799 templates/js/translated/tables.js:145 msgid "Format" msgstr "" #: templates/js/translated/bom.js:254 templates/js/translated/bom.js:288 -#: templates/js/translated/order.js:761 +#: templates/js/translated/order.js:800 msgid "Select file format" msgstr "" @@ -7991,390 +8005,390 @@ msgstr "Dışa aktarılan malzeme listesine parça tedarikçisi verilerini dahil msgid "Remove substitute part" msgstr "" -#: templates/js/translated/bom.js:567 +#: templates/js/translated/bom.js:565 msgid "Select and add a new substitute part using the input below" msgstr "" -#: templates/js/translated/bom.js:578 +#: templates/js/translated/bom.js:576 msgid "Are you sure you wish to remove this substitute part link?" msgstr "" -#: templates/js/translated/bom.js:584 +#: templates/js/translated/bom.js:582 msgid "Remove Substitute Part" msgstr "" -#: templates/js/translated/bom.js:623 +#: templates/js/translated/bom.js:621 msgid "Add Substitute" msgstr "" -#: templates/js/translated/bom.js:624 +#: templates/js/translated/bom.js:622 msgid "Edit BOM Item Substitutes" msgstr "" -#: templates/js/translated/bom.js:686 +#: templates/js/translated/bom.js:684 msgid "All selected BOM items will be deleted" msgstr "" -#: templates/js/translated/bom.js:702 +#: templates/js/translated/bom.js:700 msgid "Delete selected BOM items?" msgstr "" -#: templates/js/translated/bom.js:821 +#: templates/js/translated/bom.js:819 msgid "Load BOM for subassembly" msgstr "" -#: templates/js/translated/bom.js:831 +#: templates/js/translated/bom.js:829 msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:835 templates/js/translated/build.js:1771 +#: templates/js/translated/bom.js:833 templates/js/translated/build.js:1803 msgid "Variant stock allowed" msgstr "" -#: templates/js/translated/bom.js:929 templates/js/translated/build.js:1816 -#: templates/js/translated/order.js:3632 +#: templates/js/translated/bom.js:927 templates/js/translated/build.js:1849 +#: templates/js/translated/order.js:3671 msgid "No Stock Available" msgstr "" -#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1820 +#: templates/js/translated/bom.js:932 templates/js/translated/build.js:1853 msgid "Includes variant and substitute stock" msgstr "" -#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822 +#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1855 #: templates/js/translated/part.js:763 msgid "Includes variant stock" msgstr "" -#: templates/js/translated/bom.js:938 templates/js/translated/build.js:1824 +#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1857 msgid "Includes substitute stock" msgstr "" -#: templates/js/translated/bom.js:956 +#: templates/js/translated/bom.js:954 msgid "Substitutes" msgstr "" -#: templates/js/translated/bom.js:971 +#: templates/js/translated/bom.js:969 msgid "Purchase Price Range" msgstr "" -#: templates/js/translated/bom.js:978 +#: templates/js/translated/bom.js:976 msgid "Purchase Price Average" msgstr "" -#: templates/js/translated/bom.js:1027 templates/js/translated/bom.js:1147 +#: templates/js/translated/bom.js:1025 templates/js/translated/bom.js:1145 msgid "View BOM" msgstr "" -#: templates/js/translated/bom.js:1054 +#: templates/js/translated/bom.js:1052 msgid "Including On Order" msgstr "" -#: templates/js/translated/bom.js:1118 +#: templates/js/translated/bom.js:1116 msgid "Validate BOM Item" msgstr "" -#: templates/js/translated/bom.js:1120 +#: templates/js/translated/bom.js:1118 msgid "This line has been validated" msgstr "" -#: templates/js/translated/bom.js:1122 +#: templates/js/translated/bom.js:1120 msgid "Edit substitute parts" msgstr "" -#: templates/js/translated/bom.js:1124 templates/js/translated/bom.js:1286 +#: templates/js/translated/bom.js:1122 templates/js/translated/bom.js:1284 msgid "Edit BOM Item" msgstr "" -#: templates/js/translated/bom.js:1126 +#: templates/js/translated/bom.js:1124 msgid "Delete BOM Item" msgstr "" -#: templates/js/translated/bom.js:1222 templates/js/translated/build.js:1617 +#: templates/js/translated/bom.js:1220 templates/js/translated/build.js:1649 msgid "No BOM items found" msgstr "" -#: templates/js/translated/bom.js:1466 templates/js/translated/build.js:1755 +#: templates/js/translated/bom.js:1464 templates/js/translated/build.js:1787 msgid "Required Part" msgstr "Gerekli Parça" -#: templates/js/translated/bom.js:1488 +#: templates/js/translated/bom.js:1486 msgid "Inherited from parent BOM" msgstr "" -#: templates/js/translated/build.js:86 +#: templates/js/translated/build.js:89 msgid "Edit Build Order" msgstr "" -#: templates/js/translated/build.js:120 +#: templates/js/translated/build.js:132 msgid "Create Build Order" msgstr "" -#: templates/js/translated/build.js:133 +#: templates/js/translated/build.js:165 msgid "Cancel Build Order" msgstr "" -#: templates/js/translated/build.js:142 +#: templates/js/translated/build.js:174 msgid "Are you sure you wish to cancel this build?" msgstr "" -#: templates/js/translated/build.js:148 +#: templates/js/translated/build.js:180 msgid "Stock items have been allocated to this build order" msgstr "" -#: templates/js/translated/build.js:155 +#: templates/js/translated/build.js:187 msgid "There are incomplete outputs remaining for this build order" msgstr "" -#: templates/js/translated/build.js:185 +#: templates/js/translated/build.js:217 msgid "Build order is ready to be completed" msgstr "" -#: templates/js/translated/build.js:190 +#: templates/js/translated/build.js:222 msgid "Build Order is incomplete" msgstr "Yapım işi emri eksik" -#: templates/js/translated/build.js:222 +#: templates/js/translated/build.js:254 msgid "Complete Build Order" msgstr "Tamamlanmış Yapım İşi Emri" -#: templates/js/translated/build.js:263 templates/js/translated/stock.js:92 +#: templates/js/translated/build.js:295 templates/js/translated/stock.js:92 #: templates/js/translated/stock.js:214 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:265 templates/js/translated/stock.js:94 +#: templates/js/translated/build.js:297 templates/js/translated/stock.js:94 #: templates/js/translated/stock.js:216 msgid "Latest serial number" msgstr "" -#: templates/js/translated/build.js:274 +#: templates/js/translated/build.js:306 msgid "The Bill of Materials contains trackable parts" msgstr "Bu Malzeme Listesi takip edilebilir parçalar içeriyor" -#: templates/js/translated/build.js:275 +#: templates/js/translated/build.js:307 msgid "Build outputs must be generated individually" msgstr "" -#: templates/js/translated/build.js:283 +#: templates/js/translated/build.js:315 msgid "Trackable parts can have serial numbers specified" msgstr "Takip edilebilir parçaların seri numaraları belirtilmiş olmalı" -#: templates/js/translated/build.js:284 +#: templates/js/translated/build.js:316 msgid "Enter serial numbers to generate multiple single build outputs" msgstr "Birden çok tek yapım işi çıktısı oluşturmak için seri numaraları girin" -#: templates/js/translated/build.js:291 +#: templates/js/translated/build.js:323 msgid "Create Build Output" msgstr "Yapım İşi Çıktısı Oluştur" -#: templates/js/translated/build.js:322 +#: templates/js/translated/build.js:354 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:333 +#: templates/js/translated/build.js:365 msgid "Unallocate stock from build output" msgstr "" -#: templates/js/translated/build.js:342 +#: templates/js/translated/build.js:374 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:350 +#: templates/js/translated/build.js:382 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:373 +#: templates/js/translated/build.js:405 msgid "Are you sure you wish to unallocate stock items from this build?" msgstr "" -#: templates/js/translated/build.js:391 +#: templates/js/translated/build.js:423 msgid "Unallocate Stock Items" msgstr "" -#: templates/js/translated/build.js:411 templates/js/translated/build.js:563 +#: templates/js/translated/build.js:443 templates/js/translated/build.js:595 msgid "Select Build Outputs" msgstr "" -#: templates/js/translated/build.js:412 templates/js/translated/build.js:564 +#: templates/js/translated/build.js:444 templates/js/translated/build.js:596 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:466 templates/js/translated/build.js:618 +#: templates/js/translated/build.js:498 templates/js/translated/build.js:650 msgid "Output" msgstr "" -#: templates/js/translated/build.js:484 +#: templates/js/translated/build.js:516 msgid "Complete Build Outputs" msgstr "" -#: templates/js/translated/build.js:631 +#: templates/js/translated/build.js:663 msgid "Delete Build Outputs" msgstr "" -#: templates/js/translated/build.js:720 +#: templates/js/translated/build.js:752 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:757 +#: templates/js/translated/build.js:789 msgid "Location not specified" msgstr "" -#: templates/js/translated/build.js:1136 +#: templates/js/translated/build.js:1168 msgid "No active build outputs found" msgstr "" -#: templates/js/translated/build.js:1205 +#: templates/js/translated/build.js:1237 msgid "Allocated Stock" msgstr "" -#: templates/js/translated/build.js:1212 +#: templates/js/translated/build.js:1244 msgid "No tracked BOM items for this build" msgstr "" -#: templates/js/translated/build.js:1234 +#: templates/js/translated/build.js:1266 msgid "Completed Tests" msgstr "" -#: templates/js/translated/build.js:1239 +#: templates/js/translated/build.js:1271 msgid "No required tests for this build" msgstr "" -#: templates/js/translated/build.js:1712 templates/js/translated/build.js:2656 -#: templates/js/translated/order.js:3332 +#: templates/js/translated/build.js:1744 templates/js/translated/build.js:2689 +#: templates/js/translated/order.js:3371 msgid "Edit stock allocation" msgstr "Stok tahsisini düzenle" -#: templates/js/translated/build.js:1714 templates/js/translated/build.js:2657 -#: templates/js/translated/order.js:3333 +#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2690 +#: templates/js/translated/order.js:3372 msgid "Delete stock allocation" msgstr "Stok tahsisini sil" -#: templates/js/translated/build.js:1732 +#: templates/js/translated/build.js:1764 msgid "Edit Allocation" msgstr "" -#: templates/js/translated/build.js:1742 +#: templates/js/translated/build.js:1774 msgid "Remove Allocation" msgstr "" -#: templates/js/translated/build.js:1767 +#: templates/js/translated/build.js:1799 msgid "Substitute parts available" msgstr "" -#: templates/js/translated/build.js:1784 +#: templates/js/translated/build.js:1816 msgid "Quantity Per" msgstr "" -#: templates/js/translated/build.js:1810 templates/js/translated/order.js:3639 +#: templates/js/translated/build.js:1843 templates/js/translated/order.js:3678 msgid "Insufficient stock available" msgstr "" -#: templates/js/translated/build.js:1812 templates/js/translated/order.js:3637 +#: templates/js/translated/build.js:1845 templates/js/translated/order.js:3676 msgid "Sufficient stock available" msgstr "" -#: templates/js/translated/build.js:1841 templates/js/translated/build.js:2086 -#: templates/js/translated/build.js:2652 templates/js/translated/order.js:3651 +#: templates/js/translated/build.js:1874 templates/js/translated/build.js:2119 +#: templates/js/translated/build.js:2685 templates/js/translated/order.js:3690 msgid "Allocated" msgstr "" -#: templates/js/translated/build.js:1889 templates/js/translated/order.js:3731 +#: templates/js/translated/build.js:1922 templates/js/translated/order.js:3770 msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:1893 templates/stock_table.html:50 +#: templates/js/translated/build.js:1926 templates/stock_table.html:50 msgid "Order stock" msgstr "" -#: templates/js/translated/build.js:1896 templates/js/translated/order.js:3724 +#: templates/js/translated/build.js:1929 templates/js/translated/order.js:3763 msgid "Allocate stock" msgstr "" -#: templates/js/translated/build.js:1935 templates/js/translated/label.js:172 -#: templates/js/translated/order.js:807 templates/js/translated/order.js:2859 +#: templates/js/translated/build.js:1968 templates/js/translated/label.js:172 +#: templates/js/translated/order.js:846 templates/js/translated/order.js:2898 #: templates/js/translated/report.js:225 msgid "Select Parts" msgstr "Parçaları Seçin" -#: templates/js/translated/build.js:1936 templates/js/translated/order.js:2860 +#: templates/js/translated/build.js:1969 templates/js/translated/order.js:2899 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1985 templates/js/translated/order.js:2808 +#: templates/js/translated/build.js:2018 templates/js/translated/order.js:2847 msgid "Specify stock allocation quantity" msgstr "" -#: templates/js/translated/build.js:2059 +#: templates/js/translated/build.js:2092 msgid "All Parts Allocated" msgstr "" -#: templates/js/translated/build.js:2060 +#: templates/js/translated/build.js:2093 msgid "All selected parts have been fully allocated" msgstr "" -#: templates/js/translated/build.js:2074 templates/js/translated/order.js:2874 +#: templates/js/translated/build.js:2107 templates/js/translated/order.js:2913 msgid "Select source location (leave blank to take from all locations)" msgstr "" -#: templates/js/translated/build.js:2102 +#: templates/js/translated/build.js:2135 msgid "Allocate Stock Items to Build Order" msgstr "" -#: templates/js/translated/build.js:2113 templates/js/translated/order.js:2971 +#: templates/js/translated/build.js:2146 templates/js/translated/order.js:3010 msgid "No matching stock locations" msgstr "" -#: templates/js/translated/build.js:2185 templates/js/translated/order.js:3048 +#: templates/js/translated/build.js:2218 templates/js/translated/order.js:3087 msgid "No matching stock items" msgstr "" -#: templates/js/translated/build.js:2282 +#: templates/js/translated/build.js:2315 msgid "Automatic Stock Allocation" msgstr "" -#: templates/js/translated/build.js:2283 +#: templates/js/translated/build.js:2316 msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines" msgstr "" -#: templates/js/translated/build.js:2285 +#: templates/js/translated/build.js:2318 msgid "If a location is specifed, stock will only be allocated from that location" msgstr "" -#: templates/js/translated/build.js:2286 +#: templates/js/translated/build.js:2319 msgid "If stock is considered interchangeable, it will be allocated from the first location it is found" msgstr "" -#: templates/js/translated/build.js:2287 +#: templates/js/translated/build.js:2320 msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found" msgstr "" -#: templates/js/translated/build.js:2308 +#: templates/js/translated/build.js:2341 msgid "Allocate Stock Items" msgstr "" -#: templates/js/translated/build.js:2414 +#: templates/js/translated/build.js:2447 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387 -#: templates/js/translated/part.js:1899 templates/js/translated/stock.js:1686 +#: templates/js/translated/build.js:2482 templates/js/translated/part.js:1387 +#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1686 #: templates/js/translated/stock.js:2386 msgid "Select" msgstr "" -#: templates/js/translated/build.js:2463 +#: templates/js/translated/build.js:2496 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:2491 +#: templates/js/translated/build.js:2524 msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647 +#: templates/js/translated/build.js:2560 templates/js/translated/stock.js:2647 msgid "No user information" msgstr "" -#: templates/js/translated/build.js:2633 +#: templates/js/translated/build.js:2666 msgid "No parts allocated for" msgstr "" @@ -8390,11 +8404,11 @@ msgstr "" msgid "Edit Manufacturer Part" msgstr "" -#: templates/js/translated/company.js:167 templates/js/translated/order.js:509 +#: templates/js/translated/company.js:167 templates/js/translated/order.js:510 msgid "Add Supplier" msgstr "" -#: templates/js/translated/company.js:195 templates/js/translated/order.js:628 +#: templates/js/translated/company.js:195 templates/js/translated/order.js:667 msgid "Add Supplier Part" msgstr "" @@ -8765,381 +8779,385 @@ msgstr "" msgid "Notifications will load here" msgstr "" -#: templates/js/translated/order.js:94 +#: templates/js/translated/order.js:95 msgid "No stock items have been allocated to this shipment" msgstr "" -#: templates/js/translated/order.js:99 +#: templates/js/translated/order.js:100 msgid "The following stock items will be shipped" msgstr "" -#: templates/js/translated/order.js:139 +#: templates/js/translated/order.js:140 msgid "Complete Shipment" msgstr "" -#: templates/js/translated/order.js:159 +#: templates/js/translated/order.js:160 msgid "Confirm Shipment" msgstr "" -#: templates/js/translated/order.js:215 +#: templates/js/translated/order.js:216 msgid "No pending shipments found" msgstr "" -#: templates/js/translated/order.js:219 +#: templates/js/translated/order.js:220 msgid "No stock items have been allocated to pending shipments" msgstr "" -#: templates/js/translated/order.js:251 +#: templates/js/translated/order.js:252 msgid "Skip" msgstr "" -#: templates/js/translated/order.js:281 +#: templates/js/translated/order.js:282 msgid "Complete Purchase Order" msgstr "" -#: templates/js/translated/order.js:287 +#: templates/js/translated/order.js:288 msgid "Mark this order as complete?" msgstr "" -#: templates/js/translated/order.js:293 +#: templates/js/translated/order.js:294 msgid "All line items have been received" msgstr "" -#: templates/js/translated/order.js:298 +#: templates/js/translated/order.js:299 msgid "This order has line items which have not been marked as received." msgstr "" -#: templates/js/translated/order.js:299 +#: templates/js/translated/order.js:300 msgid "Completing this order means that the order and line items will no longer be editable." msgstr "" -#: templates/js/translated/order.js:322 +#: templates/js/translated/order.js:323 msgid "Cancel Purchase Order" msgstr "" -#: templates/js/translated/order.js:327 +#: templates/js/translated/order.js:328 msgid "Are you sure you wish to cancel this purchase order?" msgstr "" -#: templates/js/translated/order.js:333 +#: templates/js/translated/order.js:334 msgid "This purchase order can not be cancelled" msgstr "" -#: templates/js/translated/order.js:356 +#: templates/js/translated/order.js:357 msgid "Issue Purchase Order" msgstr "" -#: templates/js/translated/order.js:361 +#: templates/js/translated/order.js:362 msgid "After placing this purchase order, line items will no longer be editable." msgstr "" -#: templates/js/translated/order.js:383 +#: templates/js/translated/order.js:384 msgid "Cancel Sales Order" msgstr "" -#: templates/js/translated/order.js:388 +#: templates/js/translated/order.js:389 msgid "Cancelling this order means that the order will no longer be editable." msgstr "" -#: templates/js/translated/order.js:442 +#: templates/js/translated/order.js:443 msgid "Create New Shipment" msgstr "" -#: templates/js/translated/order.js:467 +#: templates/js/translated/order.js:468 msgid "Add Customer" msgstr "" -#: templates/js/translated/order.js:492 +#: templates/js/translated/order.js:493 msgid "Create Sales Order" msgstr "" -#: templates/js/translated/order.js:757 +#: templates/js/translated/order.js:554 +msgid "Edit Purchase Order" +msgstr "" + +#: templates/js/translated/order.js:796 msgid "Export Order" msgstr "" -#: templates/js/translated/order.js:808 +#: templates/js/translated/order.js:847 msgid "At least one purchaseable part must be selected" msgstr "" -#: templates/js/translated/order.js:833 +#: templates/js/translated/order.js:872 msgid "Quantity to order" msgstr "" -#: templates/js/translated/order.js:842 +#: templates/js/translated/order.js:881 msgid "New supplier part" msgstr "" -#: templates/js/translated/order.js:860 +#: templates/js/translated/order.js:899 msgid "New purchase order" msgstr "" -#: templates/js/translated/order.js:893 +#: templates/js/translated/order.js:932 msgid "Add to purchase order" msgstr "" -#: templates/js/translated/order.js:1002 +#: templates/js/translated/order.js:1041 msgid "No matching supplier parts" msgstr "" -#: templates/js/translated/order.js:1017 +#: templates/js/translated/order.js:1056 msgid "No matching purchase orders" msgstr "" -#: templates/js/translated/order.js:1194 +#: templates/js/translated/order.js:1233 msgid "Select Line Items" msgstr "" -#: templates/js/translated/order.js:1195 +#: templates/js/translated/order.js:1234 msgid "At least one line item must be selected" msgstr "" -#: templates/js/translated/order.js:1215 templates/js/translated/order.js:1314 +#: templates/js/translated/order.js:1254 templates/js/translated/order.js:1353 msgid "Add batch code" msgstr "" -#: templates/js/translated/order.js:1221 templates/js/translated/order.js:1325 +#: templates/js/translated/order.js:1260 templates/js/translated/order.js:1364 msgid "Add serial numbers" msgstr "" -#: templates/js/translated/order.js:1233 +#: templates/js/translated/order.js:1272 msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144 +#: templates/js/translated/order.js:1336 templates/js/translated/stock.js:2144 msgid "Stock Status" msgstr "" -#: templates/js/translated/order.js:1388 +#: templates/js/translated/order.js:1427 msgid "Order Code" msgstr "" -#: templates/js/translated/order.js:1389 +#: templates/js/translated/order.js:1428 msgid "Ordered" msgstr "" -#: templates/js/translated/order.js:1391 +#: templates/js/translated/order.js:1430 msgid "Quantity to Receive" msgstr "" -#: templates/js/translated/order.js:1410 +#: templates/js/translated/order.js:1449 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/order.js:1411 +#: templates/js/translated/order.js:1450 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943 +#: templates/js/translated/order.js:1711 templates/js/translated/part.js:943 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/order.js:1699 templates/js/translated/order.js:2503 +#: templates/js/translated/order.js:1738 templates/js/translated/order.js:2542 msgid "Order is overdue" msgstr "" -#: templates/js/translated/order.js:1749 templates/js/translated/order.js:2568 -#: templates/js/translated/order.js:2709 +#: templates/js/translated/order.js:1788 templates/js/translated/order.js:2607 +#: templates/js/translated/order.js:2748 msgid "Items" msgstr "Ürünler" -#: templates/js/translated/order.js:1847 templates/js/translated/order.js:3783 +#: templates/js/translated/order.js:1886 templates/js/translated/order.js:3822 msgid "Duplicate Line Item" msgstr "" -#: templates/js/translated/order.js:1864 templates/js/translated/order.js:3805 +#: templates/js/translated/order.js:1903 templates/js/translated/order.js:3844 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/order.js:1877 templates/js/translated/order.js:3816 +#: templates/js/translated/order.js:1916 templates/js/translated/order.js:3855 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/order.js:1920 +#: templates/js/translated/order.js:1959 msgid "No line items found" msgstr "" -#: templates/js/translated/order.js:1947 templates/js/translated/order.js:3517 +#: templates/js/translated/order.js:1986 templates/js/translated/order.js:3556 msgid "Total" msgstr "" -#: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203 -#: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050 -#: templates/js/translated/part.js:2135 templates/js/translated/part.js:2488 +#: templates/js/translated/order.js:2040 templates/js/translated/order.js:2242 +#: templates/js/translated/order.js:3581 templates/js/translated/order.js:4089 +#: templates/js/translated/part.js:2131 templates/js/translated/part.js:2703 msgid "Unit Price" msgstr "" -#: templates/js/translated/order.js:2016 templates/js/translated/order.js:2219 -#: templates/js/translated/order.js:3558 templates/js/translated/order.js:4066 +#: templates/js/translated/order.js:2055 templates/js/translated/order.js:2258 +#: templates/js/translated/order.js:3597 templates/js/translated/order.js:4105 msgid "Total Price" msgstr "" -#: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600 +#: templates/js/translated/order.js:2096 templates/js/translated/order.js:3639 #: templates/js/translated/part.js:1050 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096 +#: templates/js/translated/order.js:2155 templates/js/translated/part.js:1096 msgid "Receive line item" msgstr "" -#: templates/js/translated/order.js:2120 templates/js/translated/order.js:3737 +#: templates/js/translated/order.js:2159 templates/js/translated/order.js:3776 msgid "Duplicate line item" msgstr "" -#: templates/js/translated/order.js:2121 templates/js/translated/order.js:3738 +#: templates/js/translated/order.js:2160 templates/js/translated/order.js:3777 msgid "Edit line item" msgstr "" -#: templates/js/translated/order.js:2122 templates/js/translated/order.js:3742 +#: templates/js/translated/order.js:2161 templates/js/translated/order.js:3781 msgid "Delete line item" msgstr "" -#: templates/js/translated/order.js:2268 templates/js/translated/order.js:4115 +#: templates/js/translated/order.js:2307 templates/js/translated/order.js:4154 msgid "Duplicate line" msgstr "" -#: templates/js/translated/order.js:2269 templates/js/translated/order.js:4116 +#: templates/js/translated/order.js:2308 templates/js/translated/order.js:4155 msgid "Edit line" msgstr "" -#: templates/js/translated/order.js:2270 templates/js/translated/order.js:4117 +#: templates/js/translated/order.js:2309 templates/js/translated/order.js:4156 msgid "Delete line" msgstr "" -#: templates/js/translated/order.js:2300 templates/js/translated/order.js:4147 +#: templates/js/translated/order.js:2339 templates/js/translated/order.js:4186 msgid "Duplicate Line" msgstr "" -#: templates/js/translated/order.js:2321 templates/js/translated/order.js:4168 +#: templates/js/translated/order.js:2360 templates/js/translated/order.js:4207 msgid "Edit Line" msgstr "" -#: templates/js/translated/order.js:2332 templates/js/translated/order.js:4179 +#: templates/js/translated/order.js:2371 templates/js/translated/order.js:4218 msgid "Delete Line" msgstr "" -#: templates/js/translated/order.js:2343 +#: templates/js/translated/order.js:2382 msgid "No matching line" msgstr "" -#: templates/js/translated/order.js:2454 +#: templates/js/translated/order.js:2493 msgid "No sales orders found" msgstr "" -#: templates/js/translated/order.js:2517 +#: templates/js/translated/order.js:2556 msgid "Invalid Customer" msgstr "" -#: templates/js/translated/order.js:2615 +#: templates/js/translated/order.js:2654 msgid "Edit shipment" msgstr "" -#: templates/js/translated/order.js:2618 +#: templates/js/translated/order.js:2657 msgid "Complete shipment" msgstr "" -#: templates/js/translated/order.js:2623 +#: templates/js/translated/order.js:2662 msgid "Delete shipment" msgstr "" -#: templates/js/translated/order.js:2643 +#: templates/js/translated/order.js:2682 msgid "Edit Shipment" msgstr "" -#: templates/js/translated/order.js:2660 +#: templates/js/translated/order.js:2699 msgid "Delete Shipment" msgstr "" -#: templates/js/translated/order.js:2694 +#: templates/js/translated/order.js:2733 msgid "No matching shipments found" msgstr "" -#: templates/js/translated/order.js:2704 +#: templates/js/translated/order.js:2743 msgid "Shipment Reference" msgstr "" -#: templates/js/translated/order.js:2728 +#: templates/js/translated/order.js:2767 msgid "Not shipped" msgstr "" -#: templates/js/translated/order.js:2734 +#: templates/js/translated/order.js:2773 msgid "Tracking" msgstr "" -#: templates/js/translated/order.js:2738 +#: templates/js/translated/order.js:2777 msgid "Invoice" msgstr "" -#: templates/js/translated/order.js:2907 +#: templates/js/translated/order.js:2946 msgid "Add Shipment" msgstr "" -#: templates/js/translated/order.js:2958 +#: templates/js/translated/order.js:2997 msgid "Confirm stock allocation" msgstr "Stok tahsisini onayla" -#: templates/js/translated/order.js:2959 +#: templates/js/translated/order.js:2998 msgid "Allocate Stock Items to Sales Order" msgstr "" -#: templates/js/translated/order.js:3167 +#: templates/js/translated/order.js:3206 msgid "No sales order allocations found" msgstr "" -#: templates/js/translated/order.js:3246 +#: templates/js/translated/order.js:3285 msgid "Edit Stock Allocation" msgstr "" -#: templates/js/translated/order.js:3263 +#: templates/js/translated/order.js:3302 msgid "Confirm Delete Operation" msgstr "Silme İşlemini Onayla" -#: templates/js/translated/order.js:3264 +#: templates/js/translated/order.js:3303 msgid "Delete Stock Allocation" msgstr "" -#: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398 +#: templates/js/translated/order.js:3348 templates/js/translated/order.js:3437 #: templates/js/translated/stock.js:1602 msgid "Shipped to customer" msgstr "" -#: templates/js/translated/order.js:3317 templates/js/translated/order.js:3407 +#: templates/js/translated/order.js:3356 templates/js/translated/order.js:3446 msgid "Stock location not specified" msgstr "" -#: templates/js/translated/order.js:3721 +#: templates/js/translated/order.js:3760 msgid "Allocate serial numbers" msgstr "Seri numaralarını tahsis et" -#: templates/js/translated/order.js:3727 +#: templates/js/translated/order.js:3766 msgid "Purchase stock" msgstr "" -#: templates/js/translated/order.js:3734 templates/js/translated/order.js:3932 +#: templates/js/translated/order.js:3773 templates/js/translated/order.js:3971 msgid "Calculate price" msgstr "" -#: templates/js/translated/order.js:3746 +#: templates/js/translated/order.js:3785 msgid "Cannot be deleted as items have been shipped" msgstr "" -#: templates/js/translated/order.js:3749 +#: templates/js/translated/order.js:3788 msgid "Cannot be deleted as items have been allocated" msgstr "" -#: templates/js/translated/order.js:3831 +#: templates/js/translated/order.js:3870 msgid "Allocate Serial Numbers" msgstr "Seri Numaralarını Tahsis Et" -#: templates/js/translated/order.js:3940 +#: templates/js/translated/order.js:3979 msgid "Update Unit Price" msgstr "" -#: templates/js/translated/order.js:3954 +#: templates/js/translated/order.js:3993 msgid "No matching line items" msgstr "" -#: templates/js/translated/order.js:4190 +#: templates/js/translated/order.js:4229 msgid "No matching lines" msgstr "" @@ -9319,12 +9337,12 @@ msgstr "" msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:586 templates/js/translated/part.js:1470 +#: templates/js/translated/part.js:586 templates/js/translated/part.js:1478 #: templates/js/translated/table_filters.js:468 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:596 templates/js/translated/part.js:1482 +#: templates/js/translated/part.js:596 msgid "No stock available" msgstr "" @@ -9356,7 +9374,7 @@ msgstr "" msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1553 +#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1549 msgid "No parts found" msgstr "" @@ -9368,100 +9386,124 @@ msgstr "" msgid "No category" msgstr "Katagori Yok" -#: templates/js/translated/part.js:1577 templates/js/translated/part.js:1820 +#: templates/js/translated/part.js:1476 +msgid "No stock" +msgstr "" + +#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816 #: templates/js/translated/stock.js:2347 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:1593 +#: templates/js/translated/part.js:1589 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:1659 +#: templates/js/translated/part.js:1655 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:1664 +#: templates/js/translated/part.js:1660 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:1669 +#: templates/js/translated/part.js:1665 msgid "Select Part Category" msgstr "" -#: templates/js/translated/part.js:1682 +#: templates/js/translated/part.js:1678 msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1839 templates/js/translated/stock.js:2366 +#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2366 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:1918 +#: templates/js/translated/part.js:1914 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:1934 +#: templates/js/translated/part.js:1930 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:1992 +#: templates/js/translated/part.js:1988 msgid "No test templates matching query" msgstr "Sorgu ile eşleşen test şablonu bulunamadı" -#: templates/js/translated/part.js:2043 templates/js/translated/stock.js:1299 +#: templates/js/translated/part.js:2039 templates/js/translated/stock.js:1299 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:2044 templates/js/translated/stock.js:1300 +#: templates/js/translated/part.js:2040 templates/js/translated/stock.js:1300 #: templates/js/translated/stock.js:1560 msgid "Delete test result" msgstr "" -#: templates/js/translated/part.js:2050 +#: templates/js/translated/part.js:2046 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2072 +#: templates/js/translated/part.js:2068 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2086 +#: templates/js/translated/part.js:2082 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2111 +#: templates/js/translated/part.js:2107 #, python-brace-format msgid "No ${human_name} information found" msgstr "" -#: templates/js/translated/part.js:2168 +#: templates/js/translated/part.js:2164 #, python-brace-format msgid "Edit ${human_name}" msgstr "" -#: templates/js/translated/part.js:2169 +#: templates/js/translated/part.js:2165 #, python-brace-format msgid "Delete ${human_name}" msgstr "" -#: templates/js/translated/part.js:2283 -msgid "Current Stock" +#: templates/js/translated/part.js:2330 templates/js/translated/part.js:2331 +msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:2316 +#: templates/js/translated/part.js:2333 +msgid "Specified date is in the past" +msgstr "" + +#: templates/js/translated/part.js:2339 +msgid "Speculative" +msgstr "" + +#: templates/js/translated/part.js:2389 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2342 +#: templates/js/translated/part.js:2395 +msgid "Error fetching scheduling information for this part" +msgstr "" + +#: templates/js/translated/part.js:2491 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2412 +#: templates/js/translated/part.js:2507 +msgid "Maximum Quantity" +msgstr "" + +#: templates/js/translated/part.js:2533 +msgid "Minimum Stock Level" +msgstr "" + +#: templates/js/translated/part.js:2627 msgid "Single Price" msgstr "" -#: templates/js/translated/part.js:2431 +#: templates/js/translated/part.js:2646 msgid "Single Price Difference" msgstr "" @@ -10222,10 +10264,6 @@ msgstr "Sonuç bulunamadı" msgid "Hide/Show pagination" msgstr "Sayfalandırmayı Göster" -#: templates/js/translated/tables.js:558 -msgid "Refresh" -msgstr "Yenile" - #: templates/js/translated/tables.js:561 msgid "Toggle" msgstr "Değiştir" diff --git a/InvenTree/locale/vi/LC_MESSAGES/django.po b/InvenTree/locale/vi/LC_MESSAGES/django.po index eff9f866a0..8576e41445 100644 --- a/InvenTree/locale/vi/LC_MESSAGES/django.po +++ b/InvenTree/locale/vi/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-16 11:53+0000\n" -"PO-Revision-Date: 2022-08-16 21:35\n" +"POT-Creation-Date: 2022-08-18 05:14+0000\n" +"PO-Revision-Date: 2022-08-18 21:38\n" "Last-Translator: \n" "Language-Team: Vietnamese\n" "Language: vi_VN\n" @@ -40,10 +40,10 @@ msgstr "" #: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825 #: stock/serializers.py:924 stock/serializers.py:1056 #: stock/templates/stock/stock_sidebar.html:25 -#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101 -#: templates/js/translated/company.js:964 templates/js/translated/order.js:2104 -#: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753 -#: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102 +#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1099 +#: templates/js/translated/company.js:964 templates/js/translated/order.js:2143 +#: templates/js/translated/order.js:2294 templates/js/translated/order.js:2792 +#: templates/js/translated/order.js:3743 templates/js/translated/order.js:4141 #: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980 msgid "Notes" msgstr "" @@ -211,11 +211,11 @@ msgstr "" #: InvenTree/models.py:402 company/models.py:124 company/models.py:276 #: company/models.py:510 order/models.py:84 order/models.py:1245 -#: part/models.py:802 +#: part/models.py:802 part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_base.html:164 #: templates/js/translated/company.js:656 -#: templates/js/translated/company.js:948 templates/js/translated/order.js:2742 -#: templates/js/translated/part.js:1514 +#: templates/js/translated/company.js:948 templates/js/translated/order.js:2781 +#: templates/js/translated/part.js:1510 msgid "Link" msgstr "" @@ -235,8 +235,8 @@ msgstr "" #: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665 #: common/models.py:1666 common/models.py:1889 common/models.py:1890 -#: common/models.py:2152 common/models.py:2153 part/models.py:2200 -#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257 +#: common/models.py:2152 common/models.py:2153 part/models.py:2247 +#: part/models.py:2267 plugin/models.py:256 plugin/models.py:257 #: report/templates/report/inventree_test_report_base.html:96 #: templates/js/translated/stock.js:2641 msgid "User" @@ -277,7 +277,7 @@ msgstr "" #: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875 #: company/models.py:358 label/models.py:101 part/models.py:746 -#: part/models.py:2378 plugin/models.py:94 report/models.py:152 +#: part/models.py:2425 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 #: templates/InvenTree/settings/plugin.html:51 #: templates/InvenTree/settings/plugin.html:134 @@ -287,7 +287,7 @@ msgstr "" #: templates/js/translated/company.js:758 #: templates/js/translated/notification.js:71 #: templates/js/translated/part.js:688 templates/js/translated/part.js:840 -#: templates/js/translated/part.js:1906 templates/js/translated/stock.js:2392 +#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2392 msgid "Name" msgstr "" @@ -297,19 +297,20 @@ msgstr "" #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:87 label/models.py:108 #: order/models.py:82 part/models.py:769 part/templates/part/category.html:80 -#: part/templates/part/part_base.html:167 report/models.py:165 +#: part/templates/part/part_base.html:167 +#: part/templates/part/part_scheduling.html:12 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 #: stock/templates/stock/location.html:108 #: templates/InvenTree/settings/plugin_settings.html:33 -#: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848 -#: templates/js/translated/build.js:2471 templates/js/translated/company.js:409 +#: templates/js/translated/bom.js:553 templates/js/translated/bom.js:846 +#: templates/js/translated/build.js:2504 templates/js/translated/company.js:409 #: templates/js/translated/company.js:667 -#: templates/js/translated/company.js:959 templates/js/translated/order.js:1720 -#: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531 +#: templates/js/translated/company.js:959 templates/js/translated/order.js:1759 +#: templates/js/translated/order.js:1991 templates/js/translated/order.js:2570 #: templates/js/translated/part.js:747 templates/js/translated/part.js:1153 -#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1942 -#: templates/js/translated/part.js:2011 templates/js/translated/stock.js:1743 +#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1938 +#: templates/js/translated/part.js:2007 templates/js/translated/stock.js:1743 #: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478 msgid "Description" msgstr "Mô tả" @@ -323,7 +324,7 @@ msgid "parent" msgstr "" #: InvenTree/models.py:560 InvenTree/models.py:561 -#: templates/js/translated/part.js:1948 templates/js/translated/stock.js:2430 +#: templates/js/translated/part.js:1944 templates/js/translated/stock.js:2430 msgid "Path" msgstr "" @@ -335,7 +336,7 @@ msgstr "" msgid "An error has been logged by the server." msgstr "" -#: InvenTree/serializers.py:55 part/models.py:2699 +#: InvenTree/serializers.py:55 part/models.py:2746 msgid "Must be a valid number" msgstr "" @@ -541,7 +542,7 @@ msgid "Returned" msgstr "" #: InvenTree/status_codes.py:141 order/models.py:1128 -#: templates/js/translated/order.js:3330 templates/js/translated/order.js:3679 +#: templates/js/translated/order.js:3369 templates/js/translated/order.js:3718 msgid "Shipped" msgstr "" @@ -728,7 +729,7 @@ msgstr "" #: report/templates/report/inventree_build_order_base.html:105 #: templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 -#: templates/js/translated/build.js:731 +#: templates/js/translated/build.js:763 msgid "Build Order" msgstr "Tạo đơn hàng" @@ -747,14 +748,14 @@ msgid "Build Order Reference" msgstr "" #: build/models.py:166 order/models.py:240 order/models.py:623 -#: order/models.py:904 part/models.py:2617 +#: order/models.py:904 part/models.py:2664 #: part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 -#: templates/js/translated/bom.js:692 templates/js/translated/bom.js:855 -#: templates/js/translated/build.js:1779 templates/js/translated/order.js:1983 -#: templates/js/translated/order.js:2184 templates/js/translated/order.js:3523 -#: templates/js/translated/order.js:4031 +#: templates/js/translated/bom.js:690 templates/js/translated/bom.js:853 +#: templates/js/translated/build.js:1811 templates/js/translated/order.js:2022 +#: templates/js/translated/order.js:2223 templates/js/translated/order.js:3562 +#: templates/js/translated/order.js:4070 msgid "Reference" msgstr "" @@ -762,7 +763,7 @@ msgstr "" msgid "Brief description of the build" msgstr "" -#: build/models.py:185 build/templates/build/build_base.html:169 +#: build/models.py:185 build/templates/build/build_base.html:172 #: build/templates/build/detail.html:87 msgid "Parent Build" msgstr "" @@ -771,13 +772,13 @@ msgstr "" msgid "BuildOrder to which this build is allocated" msgstr "" -#: build/models.py:191 build/templates/build/build_base.html:77 +#: build/models.py:191 build/templates/build/build_base.html:80 #: build/templates/build/detail.html:29 company/models.py:670 #: order/models.py:1001 order/models.py:1112 order/models.py:1113 -#: part/models.py:343 part/models.py:2146 part/models.py:2161 -#: part/models.py:2180 part/models.py:2198 part/models.py:2297 -#: part/models.py:2417 part/models.py:2507 part/models.py:2592 -#: part/models.py:2868 part/serializers.py:813 +#: part/models.py:343 part/models.py:2193 part/models.py:2208 +#: part/models.py:2227 part/models.py:2245 part/models.py:2344 +#: part/models.py:2464 part/models.py:2554 part/models.py:2639 +#: part/models.py:2915 part/serializers.py:813 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -789,17 +790,17 @@ msgstr "" #: templates/email/build_order_required_stock.html:17 #: templates/email/low_stock_notification.html:16 #: templates/email/overdue_build_order.html:16 -#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:553 -#: templates/js/translated/bom.js:691 templates/js/translated/bom.js:802 -#: templates/js/translated/build.js:1156 templates/js/translated/build.js:1649 -#: templates/js/translated/build.js:2085 templates/js/translated/build.js:2476 +#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:552 +#: templates/js/translated/bom.js:689 templates/js/translated/bom.js:800 +#: templates/js/translated/build.js:1188 templates/js/translated/build.js:1681 +#: templates/js/translated/build.js:2118 templates/js/translated/build.js:2509 #: templates/js/translated/company.js:266 #: templates/js/translated/company.js:496 #: templates/js/translated/company.js:608 -#: templates/js/translated/company.js:868 templates/js/translated/order.js:103 -#: templates/js/translated/order.js:934 templates/js/translated/order.js:1387 -#: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885 -#: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507 +#: templates/js/translated/company.js:868 templates/js/translated/order.js:104 +#: templates/js/translated/order.js:973 templates/js/translated/order.js:1426 +#: templates/js/translated/order.js:1976 templates/js/translated/order.js:2924 +#: templates/js/translated/order.js:3320 templates/js/translated/order.js:3546 #: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210 #: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586 #: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958 @@ -821,7 +822,7 @@ msgid "SalesOrder to which this build is allocated" msgstr "" #: build/models.py:213 build/serializers.py:800 -#: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873 +#: templates/js/translated/build.js:2106 templates/js/translated/order.js:2912 msgid "Source Location" msgstr "" @@ -862,7 +863,7 @@ msgid "Build status code" msgstr "" #: build/models.py:251 build/serializers.py:225 order/serializers.py:447 -#: stock/models.py:662 templates/js/translated/order.js:1247 +#: stock/models.py:662 templates/js/translated/order.js:1286 msgid "Batch Code" msgstr "" @@ -871,7 +872,7 @@ msgid "Batch code for this build output" msgstr "" #: build/models.py:258 order/models.py:86 part/models.py:938 -#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544 +#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2583 msgid "Creation Date" msgstr "" @@ -884,7 +885,7 @@ msgid "Target date for build completion. Build will be overdue after this date." msgstr "" #: build/models.py:266 order/models.py:286 -#: templates/js/translated/build.js:2553 +#: templates/js/translated/build.js:2586 msgid "Completion Date" msgstr "Ngày hoàn thành" @@ -892,7 +893,7 @@ msgstr "Ngày hoàn thành" msgid "completed by" msgstr "" -#: build/models.py:280 templates/js/translated/build.js:2521 +#: build/models.py:280 templates/js/translated/build.js:2554 msgid "Issued by" msgstr "" @@ -900,12 +901,12 @@ msgstr "" msgid "User who issued this build order" msgstr "" -#: build/models.py:289 build/templates/build/build_base.html:190 +#: build/models.py:289 build/templates/build/build_base.html:193 #: build/templates/build/detail.html:115 order/models.py:100 #: order/templates/order/order_base.html:176 #: order/templates/order/sales_order_base.html:183 part/models.py:942 #: report/templates/report/inventree_build_order_base.html:158 -#: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754 +#: templates/js/translated/build.js:2566 templates/js/translated/order.js:1793 msgid "Responsible" msgstr "" @@ -972,7 +973,7 @@ msgid "Selected stock item not found in BOM" msgstr "" #: build/models.py:1328 stock/templates/stock/item_base.html:177 -#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2455 +#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2488 #: templates/navbar.html:38 msgid "Build" msgstr "" @@ -986,11 +987,11 @@ msgstr "" #: stock/serializers.py:882 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:199 -#: templates/js/translated/build.js:741 templates/js/translated/build.js:746 -#: templates/js/translated/build.js:2087 templates/js/translated/build.js:2638 -#: templates/js/translated/order.js:104 templates/js/translated/order.js:2886 -#: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193 -#: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380 +#: templates/js/translated/build.js:773 templates/js/translated/build.js:778 +#: templates/js/translated/build.js:2120 templates/js/translated/build.js:2671 +#: templates/js/translated/order.js:105 templates/js/translated/order.js:2925 +#: templates/js/translated/order.js:3227 templates/js/translated/order.js:3232 +#: templates/js/translated/order.js:3327 templates/js/translated/order.js:3419 #: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752 #: templates/js/translated/stock.js:2577 msgid "Stock Item" @@ -1001,13 +1002,13 @@ msgid "Source stock item" msgstr "" #: build/models.py:1358 build/serializers.py:193 -#: build/templates/build/build_base.html:82 +#: build/templates/build/build_base.html:85 #: build/templates/build/detail.html:34 common/models.py:1697 #: company/templates/company/supplier_part.html:279 order/models.py:897 #: order/models.py:1423 order/serializers.py:1155 #: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40 -#: part/models.py:2608 part/templates/part/detail.html:937 -#: part/templates/part/detail.html:1023 +#: part/models.py:2655 part/templates/part/detail.html:951 +#: part/templates/part/detail.html:1037 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 #: report/templates/report/inventree_build_order_base.html:113 @@ -1018,20 +1019,20 @@ msgstr "" #: stock/serializers.py:293 stock/templates/stock/item_base.html:292 #: stock/templates/stock/item_base.html:300 #: templates/email/build_order_completed.html:18 -#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:693 -#: templates/js/translated/bom.js:863 templates/js/translated/build.js:426 -#: templates/js/translated/build.js:578 templates/js/translated/build.js:768 -#: templates/js/translated/build.js:1178 templates/js/translated/build.js:1675 -#: templates/js/translated/build.js:2088 +#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:691 +#: templates/js/translated/bom.js:861 templates/js/translated/build.js:458 +#: templates/js/translated/build.js:610 templates/js/translated/build.js:800 +#: templates/js/translated/build.js:1210 templates/js/translated/build.js:1707 +#: templates/js/translated/build.js:2121 #: templates/js/translated/model_renderers.js:120 -#: templates/js/translated/order.js:120 templates/js/translated/order.js:937 -#: templates/js/translated/order.js:1989 templates/js/translated/order.js:2190 -#: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207 -#: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386 -#: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037 -#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2156 -#: templates/js/translated/part.js:2387 templates/js/translated/part.js:2421 -#: templates/js/translated/part.js:2499 templates/js/translated/stock.js:458 +#: templates/js/translated/order.js:121 templates/js/translated/order.js:976 +#: templates/js/translated/order.js:2028 templates/js/translated/order.js:2229 +#: templates/js/translated/order.js:2926 templates/js/translated/order.js:3246 +#: templates/js/translated/order.js:3333 templates/js/translated/order.js:3425 +#: templates/js/translated/order.js:3568 templates/js/translated/order.js:4076 +#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2152 +#: templates/js/translated/part.js:2602 templates/js/translated/part.js:2636 +#: templates/js/translated/part.js:2714 templates/js/translated/stock.js:458 #: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782 #: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711 msgid "Quantity" @@ -1050,7 +1051,7 @@ msgid "Destination stock item" msgstr "" #: build/serializers.py:138 build/serializers.py:674 -#: templates/js/translated/build.js:1166 +#: templates/js/translated/build.js:1198 msgid "Build Output" msgstr "" @@ -1090,7 +1091,7 @@ msgid "Integer quantity required, as the bill of materials contains trackable pa msgstr "" #: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159 -#: stock/serializers.py:311 templates/js/translated/order.js:1258 +#: stock/serializers.py:311 templates/js/translated/order.js:1297 #: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459 msgid "Serial Numbers" msgstr "" @@ -1120,10 +1121,10 @@ msgstr "" #: stock/serializers.py:917 stock/serializers.py:1150 #: stock/templates/stock/item_base.html:390 #: templates/js/translated/barcode.js:436 -#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753 -#: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285 -#: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305 -#: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394 +#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:785 +#: templates/js/translated/build.js:1719 templates/js/translated/order.js:1324 +#: templates/js/translated/order.js:3239 templates/js/translated/order.js:3344 +#: templates/js/translated/order.js:3352 templates/js/translated/order.js:3433 #: templates/js/translated/part.js:181 templates/js/translated/stock.js:588 #: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960 #: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518 @@ -1134,12 +1135,12 @@ msgstr "" msgid "Location for completed build outputs" msgstr "" -#: build/serializers.py:373 build/templates/build/build_base.html:142 +#: build/serializers.py:373 build/templates/build/build_base.html:145 #: build/templates/build/detail.html:62 order/models.py:642 #: order/serializers.py:465 stock/templates/stock/item_base.html:423 -#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505 -#: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724 -#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829 +#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2538 +#: templates/js/translated/order.js:1431 templates/js/translated/order.js:1763 +#: templates/js/translated/order.js:2575 templates/js/translated/stock.js:1829 #: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727 msgid "Status" msgstr "Trạng thái" @@ -1196,7 +1197,7 @@ msgstr "" msgid "Accept that stock items have not been fully allocated to this build order" msgstr "" -#: build/serializers.py:522 templates/js/translated/build.js:195 +#: build/serializers.py:522 templates/js/translated/build.js:227 msgid "Required stock has not been fully allocated" msgstr "" @@ -1208,7 +1209,7 @@ msgstr "" msgid "Accept that the required number of build outputs have not been completed" msgstr "" -#: build/serializers.py:538 templates/js/translated/build.js:199 +#: build/serializers.py:538 templates/js/translated/build.js:231 msgid "Required build quantity has not been completed" msgstr "" @@ -1216,8 +1217,8 @@ msgstr "" msgid "Build order has incomplete outputs" msgstr "" -#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726 -#: part/models.py:2860 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2773 +#: part/models.py:2907 msgid "BOM Item" msgstr "" @@ -1322,66 +1323,70 @@ msgid "Cancel Build" msgstr "" #: build/templates/build/build_base.html:59 +msgid "Duplicate Build" +msgstr "" + +#: build/templates/build/build_base.html:62 msgid "Delete Build" msgstr "" -#: build/templates/build/build_base.html:64 -#: build/templates/build/build_base.html:65 +#: build/templates/build/build_base.html:67 +#: build/templates/build/build_base.html:68 msgid "Complete Build" msgstr "" -#: build/templates/build/build_base.html:87 +#: build/templates/build/build_base.html:90 msgid "Build Description" msgstr "" -#: build/templates/build/build_base.html:95 +#: build/templates/build/build_base.html:98 msgid "No build outputs have been created for this build order" msgstr "" -#: build/templates/build/build_base.html:101 +#: build/templates/build/build_base.html:104 #, python-format msgid "This Build Order is allocated to Sales Order %(link)s" msgstr "" -#: build/templates/build/build_base.html:108 +#: build/templates/build/build_base.html:111 #, python-format msgid "This Build Order is a child of Build Order %(link)s" msgstr "" -#: build/templates/build/build_base.html:115 +#: build/templates/build/build_base.html:118 msgid "Build Order is ready to mark as completed" msgstr "" -#: build/templates/build/build_base.html:120 +#: build/templates/build/build_base.html:123 msgid "Build Order cannot be completed as outstanding outputs remain" msgstr "" -#: build/templates/build/build_base.html:125 +#: build/templates/build/build_base.html:128 msgid "Required build quantity has not yet been completed" msgstr "" -#: build/templates/build/build_base.html:130 +#: build/templates/build/build_base.html:133 msgid "Stock has not been fully allocated to this Build Order" msgstr "" -#: build/templates/build/build_base.html:151 +#: build/templates/build/build_base.html:154 #: build/templates/build/detail.html:131 order/models.py:910 #: order/templates/order/order_base.html:162 #: order/templates/order/sales_order_base.html:164 #: report/templates/report/inventree_build_order_base.html:125 -#: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741 -#: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552 -#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042 +#: templates/js/translated/build.js:2578 templates/js/translated/order.js:1780 +#: templates/js/translated/order.js:2090 templates/js/translated/order.js:2591 +#: templates/js/translated/order.js:3631 templates/js/translated/part.js:1042 msgid "Target Date" msgstr "" -#: build/templates/build/build_base.html:156 +#: build/templates/build/build_base.html:159 #, python-format msgid "This build was due on %(target)s" msgstr "" -#: build/templates/build/build_base.html:156 -#: build/templates/build/build_base.html:201 +#: build/templates/build/build_base.html:159 +#: build/templates/build/build_base.html:204 #: order/templates/order/order_base.html:98 #: order/templates/order/sales_order_base.html:94 #: templates/js/translated/table_filters.js:320 @@ -1390,14 +1395,14 @@ msgstr "" msgid "Overdue" msgstr "" -#: build/templates/build/build_base.html:163 +#: build/templates/build/build_base.html:166 #: build/templates/build/detail.html:67 build/templates/build/detail.html:142 #: order/templates/order/sales_order_base.html:171 #: templates/js/translated/table_filters.js:400 msgid "Completed" msgstr "Đã hoàn thành" -#: build/templates/build/build_base.html:176 +#: build/templates/build/build_base.html:179 #: build/templates/build/detail.html:94 order/models.py:1105 #: order/models.py:1199 order/models.py:1330 #: order/templates/order/sales_order_base.html:9 @@ -1406,17 +1411,17 @@ msgstr "Đã hoàn thành" #: report/templates/report/inventree_so_report.html:77 #: stock/templates/stock/item_base.html:370 #: templates/email/overdue_sales_order.html:15 -#: templates/js/translated/order.js:2498 +#: templates/js/translated/order.js:2537 msgid "Sales Order" msgstr "" -#: build/templates/build/build_base.html:183 +#: build/templates/build/build_base.html:186 #: build/templates/build/detail.html:108 #: report/templates/report/inventree_build_order_base.html:152 msgid "Issued By" msgstr "" -#: build/templates/build/build_base.html:245 +#: build/templates/build/build_base.html:256 msgid "Delete Build Order" msgstr "" @@ -1433,7 +1438,7 @@ msgid "Stock can be taken from any available location." msgstr "" #: build/templates/build/detail.html:49 order/models.py:1023 -#: templates/js/translated/order.js:1393 templates/js/translated/order.js:2093 +#: templates/js/translated/order.js:1432 templates/js/translated/order.js:2132 msgid "Destination" msgstr "" @@ -1447,7 +1452,7 @@ msgstr "" #: build/templates/build/detail.html:80 #: stock/templates/stock/item_base.html:170 -#: templates/js/translated/build.js:1182 +#: templates/js/translated/build.js:1214 #: templates/js/translated/model_renderers.js:124 #: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843 #: templates/js/translated/stock.js:2734 @@ -1459,7 +1464,7 @@ msgstr "" #: build/templates/build/detail.html:126 #: order/templates/order/order_base.html:149 #: order/templates/order/sales_order_base.html:158 -#: templates/js/translated/build.js:2513 +#: templates/js/translated/build.js:2546 msgid "Created" msgstr "" @@ -1479,7 +1484,7 @@ msgstr "" msgid "Allocate Stock to Build" msgstr "" -#: build/templates/build/detail.html:176 templates/js/translated/build.js:1901 +#: build/templates/build/detail.html:176 templates/js/translated/build.js:1934 msgid "Unallocate stock" msgstr "" @@ -1510,7 +1515,7 @@ msgstr "" #: build/templates/build/detail.html:187 #: company/templates/company/detail.html:37 #: company/templates/company/detail.html:85 -#: part/templates/part/category.html:183 templates/js/translated/order.js:977 +#: part/templates/part/category.html:183 templates/js/translated/order.js:1016 msgid "Order Parts" msgstr "" @@ -1582,7 +1587,7 @@ msgstr "" #: order/templates/order/po_sidebar.html:9 #: order/templates/order/purchase_order_detail.html:82 #: order/templates/order/sales_order_detail.html:135 -#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:207 +#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:212 #: part/templates/part/part_sidebar.html:57 stock/templates/stock/item.html:117 #: stock/templates/stock/stock_sidebar.html:23 msgid "Attachments" @@ -1600,7 +1605,7 @@ msgstr "" msgid "All untracked stock items have been allocated" msgstr "" -#: build/templates/build/index.html:18 part/templates/part/detail.html:313 +#: build/templates/build/index.html:18 part/templates/part/detail.html:318 msgid "New Build Order" msgstr "" @@ -1845,7 +1850,7 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:951 part/models.py:2419 report/models.py:158 +#: common/models.py:951 part/models.py:2466 report/models.py:158 #: templates/js/translated/table_filters.js:38 #: templates/js/translated/table_filters.js:484 msgid "Template" @@ -1855,7 +1860,7 @@ msgstr "" msgid "Parts are templates by default" msgstr "" -#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448 +#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1446 #: templates/js/translated/table_filters.js:176 #: templates/js/translated/table_filters.js:447 msgid "Assembly" @@ -2591,7 +2596,7 @@ msgstr "" #: common/models.py:1705 company/serializers.py:366 #: company/templates/company/supplier_part.html:284 order/models.py:938 -#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2161 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2157 msgid "Price" msgstr "" @@ -2830,7 +2835,7 @@ msgstr "" #: company/models.py:248 company/models.py:481 stock/models.py:598 #: stock/serializers.py:87 stock/templates/stock/item_base.html:148 -#: templates/js/translated/bom.js:543 +#: templates/js/translated/bom.js:542 msgid "Base Part" msgstr "" @@ -2859,7 +2864,7 @@ msgstr "" #: templates/js/translated/company.js:269 #: templates/js/translated/company.js:497 #: templates/js/translated/company.js:649 -#: templates/js/translated/company.js:937 templates/js/translated/order.js:1971 +#: templates/js/translated/company.js:937 templates/js/translated/order.js:2010 #: templates/js/translated/part.js:247 templates/js/translated/part.js:1027 msgid "MPN" msgstr "" @@ -2899,7 +2904,7 @@ msgstr "" msgid "Parameter value" msgstr "" -#: company/models.py:372 part/models.py:888 part/models.py:2386 +#: company/models.py:372 part/models.py:888 part/models.py:2433 #: part/templates/part/part_base.html:280 #: templates/InvenTree/settings/settings.html:352 #: templates/js/translated/company.js:770 templates/js/translated/part.js:855 @@ -2921,7 +2926,7 @@ msgstr "" #: templates/email/overdue_purchase_order.html:16 #: templates/js/translated/company.js:268 #: templates/js/translated/company.js:401 -#: templates/js/translated/company.js:893 templates/js/translated/order.js:1707 +#: templates/js/translated/company.js:893 templates/js/translated/order.js:1746 #: templates/js/translated/part.js:217 templates/js/translated/part.js:995 #: templates/js/translated/table_filters.js:423 msgid "Supplier" @@ -2933,7 +2938,7 @@ msgstr "" #: company/models.py:497 company/templates/company/supplier_part.html:118 #: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267 -#: templates/js/translated/order.js:1958 templates/js/translated/part.js:228 +#: templates/js/translated/order.js:1997 templates/js/translated/part.js:228 #: templates/js/translated/part.js:1013 msgid "SKU" msgstr "" @@ -2955,17 +2960,17 @@ msgid "Supplier part description" msgstr "" #: company/models.py:522 company/templates/company/supplier_part.html:146 -#: part/models.py:2620 part/templates/part/upload_bom.html:59 +#: part/models.py:2667 part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401 msgid "Note" msgstr "" -#: company/models.py:526 part/models.py:1742 +#: company/models.py:526 part/models.py:1789 msgid "base cost" msgstr "" -#: company/models.py:526 part/models.py:1742 +#: company/models.py:526 part/models.py:1789 msgid "Minimum charge (e.g. stocking fee)" msgstr "" @@ -2979,7 +2984,7 @@ msgstr "" msgid "Part packaging" msgstr "" -#: company/models.py:530 part/models.py:1744 +#: company/models.py:530 part/models.py:1791 msgid "multiple" msgstr "" @@ -2990,8 +2995,8 @@ msgstr "" #: company/models.py:538 company/templates/company/supplier_part.html:94 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789 -#: templates/js/translated/build.js:2645 templates/js/translated/company.js:979 +#: templates/js/translated/bom.js:911 templates/js/translated/build.js:1821 +#: templates/js/translated/build.js:2678 templates/js/translated/company.js:979 #: templates/js/translated/part.js:600 templates/js/translated/part.js:603 #: templates/js/translated/table_filters.js:186 msgid "Available" @@ -3028,7 +3033,7 @@ msgid "Company" msgstr "" #: company/templates/company/company_base.html:22 -#: templates/js/translated/order.js:540 +#: templates/js/translated/order.js:579 msgid "Create Purchase Order" msgstr "" @@ -3069,7 +3074,7 @@ msgstr "" #: stock/models.py:644 stock/serializers.py:811 #: stock/templates/stock/item_base.html:401 #: templates/email/overdue_sales_order.html:16 -#: templates/js/translated/company.js:393 templates/js/translated/order.js:2513 +#: templates/js/translated/company.js:393 templates/js/translated/order.js:2552 #: templates/js/translated/stock.js:2559 #: templates/js/translated/table_filters.js:427 msgid "Customer" @@ -3105,7 +3110,7 @@ msgstr "" #: company/templates/company/detail.html:19 #: company/templates/company/manufacturer_part.html:123 -#: part/templates/part/detail.html:354 +#: part/templates/part/detail.html:359 msgid "New Supplier Part" msgstr "" @@ -3134,7 +3139,7 @@ msgstr "" msgid "Create new manufacturer part" msgstr "" -#: company/templates/company/detail.html:66 part/templates/part/detail.html:384 +#: company/templates/company/detail.html:66 part/templates/part/detail.html:389 msgid "New Manufacturer Part" msgstr "" @@ -3148,7 +3153,7 @@ msgstr "" #: order/templates/order/order_base.html:13 #: order/templates/order/purchase_orders.html:8 #: order/templates/order/purchase_orders.html:12 -#: part/templates/part/detail.html:79 part/templates/part/part_sidebar.html:37 +#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:37 #: templates/InvenTree/index.html:252 templates/InvenTree/search.html:198 #: templates/InvenTree/settings/sidebar.html:49 #: templates/js/translated/search.js:275 templates/navbar.html:50 @@ -3171,7 +3176,7 @@ msgstr "" #: order/templates/order/sales_order_base.html:13 #: order/templates/order/sales_orders.html:8 #: order/templates/order/sales_orders.html:15 -#: part/templates/part/detail.html:102 part/templates/part/part_sidebar.html:41 +#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:41 #: templates/InvenTree/index.html:283 templates/InvenTree/search.html:218 #: templates/InvenTree/settings/sidebar.html:51 #: templates/js/translated/search.js:299 templates/navbar.html:61 @@ -3190,7 +3195,7 @@ msgid "New Sales Order" msgstr "" #: company/templates/company/detail.html:168 -#: templates/js/translated/build.js:1660 +#: templates/js/translated/build.js:1692 msgid "Assigned Stock" msgstr "" @@ -3206,7 +3211,7 @@ msgstr "" #: company/templates/company/manufacturer_part.html:35 #: company/templates/company/supplier_part.html:186 -#: part/templates/part/detail.html:82 part/templates/part/part_base.html:80 +#: part/templates/part/detail.html:87 part/templates/part/part_base.html:80 msgid "Order part" msgstr "" @@ -3237,13 +3242,13 @@ msgid "Suppliers" msgstr "" #: company/templates/company/manufacturer_part.html:136 -#: part/templates/part/detail.html:365 +#: part/templates/part/detail.html:370 msgid "Delete supplier parts" msgstr "" #: company/templates/company/manufacturer_part.html:136 #: company/templates/company/manufacturer_part.html:183 -#: part/templates/part/detail.html:366 part/templates/part/detail.html:396 +#: part/templates/part/detail.html:371 part/templates/part/detail.html:401 #: templates/js/translated/forms.js:453 templates/js/translated/helpers.js:33 #: users/models.py:220 msgid "Delete" @@ -3252,12 +3257,12 @@ msgstr "" #: company/templates/company/manufacturer_part.html:166 #: company/templates/company/manufacturer_part_sidebar.html:5 #: part/templates/part/category_sidebar.html:19 -#: part/templates/part/detail.html:181 part/templates/part/part_sidebar.html:8 +#: part/templates/part/detail.html:186 part/templates/part/part_sidebar.html:8 msgid "Parameters" msgstr "" #: company/templates/company/manufacturer_part.html:170 -#: part/templates/part/detail.html:186 +#: part/templates/part/detail.html:191 #: templates/InvenTree/settings/category.html:12 #: templates/InvenTree/settings/part.html:68 msgid "New Parameter" @@ -3268,7 +3273,7 @@ msgid "Delete parameters" msgstr "" #: company/templates/company/manufacturer_part.html:245 -#: part/templates/part/detail.html:826 +#: part/templates/part/detail.html:840 msgid "Add Parameter" msgstr "" @@ -3291,7 +3296,7 @@ msgstr "" #: company/templates/company/supplier_part.html:7 #: company/templates/company/supplier_part.html:24 stock/models.py:607 #: stock/templates/stock/item_base.html:238 -#: templates/js/translated/company.js:909 templates/js/translated/order.js:935 +#: templates/js/translated/company.js:909 templates/js/translated/order.js:974 #: templates/js/translated/stock.js:1933 msgid "Supplier Part" msgstr "" @@ -3303,7 +3308,7 @@ msgstr "" #: company/templates/company/supplier_part.html:40 #: company/templates/company/supplier_part.html:41 #: company/templates/company/supplier_part.html:187 -#: part/templates/part/detail.html:83 +#: part/templates/part/detail.html:88 msgid "Order Part" msgstr "" @@ -3358,7 +3363,7 @@ msgstr "" #: company/templates/company/supplier_part.html:212 #: company/templates/company/supplier_part.html:326 -#: part/templates/part/prices.html:276 templates/js/translated/part.js:2233 +#: part/templates/part/prices.html:276 templates/js/translated/part.js:2229 msgid "Add Price Break" msgstr "" @@ -3367,12 +3372,12 @@ msgid "No price break information found" msgstr "" #: company/templates/company/supplier_part.html:252 -#: templates/js/translated/part.js:2243 +#: templates/js/translated/part.js:2239 msgid "Delete Price Break" msgstr "" #: company/templates/company/supplier_part.html:266 -#: templates/js/translated/part.js:2257 +#: templates/js/translated/part.js:2253 msgid "Edit Price Break" msgstr "" @@ -3398,10 +3403,9 @@ msgstr "" #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:151 #: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751 -#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460 -#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754 -#: templates/navbar.html:31 +#: templates/js/translated/part.js:751 templates/js/translated/part.js:1299 +#: templates/js/translated/part.js:1460 templates/js/translated/stock.js:959 +#: templates/js/translated/stock.js:1754 templates/navbar.html:31 msgid "Stock" msgstr "Kiện hàng" @@ -3554,7 +3558,7 @@ msgid "Company from which the items are being ordered" msgstr "" #: order/models.py:262 order/templates/order/order_base.html:124 -#: templates/js/translated/order.js:1716 +#: templates/js/translated/order.js:1755 msgid "Supplier Reference" msgstr "" @@ -3611,7 +3615,7 @@ msgid "Target date for order completion. Order will be overdue after this date." msgstr "" #: order/models.py:652 order/models.py:1204 -#: templates/js/translated/order.js:2560 templates/js/translated/order.js:2722 +#: templates/js/translated/order.js:2599 templates/js/translated/order.js:2761 msgid "Shipment Date" msgstr "" @@ -3673,7 +3677,7 @@ msgstr "" #: order/models.py:983 order/models.py:1063 order/models.py:1104 #: order/models.py:1198 order/models.py:1330 -#: templates/js/translated/order.js:3178 +#: templates/js/translated/order.js:3217 msgid "Order" msgstr "" @@ -3683,7 +3687,7 @@ msgstr "" #: report/templates/report/inventree_po_report.html:76 #: stock/templates/stock/item_base.html:184 #: templates/email/overdue_purchase_order.html:15 -#: templates/js/translated/order.js:936 templates/js/translated/order.js:1691 +#: templates/js/translated/order.js:975 templates/js/translated/order.js:1730 #: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913 #: templates/js/translated/stock.js:2540 msgid "Purchase Order" @@ -3694,7 +3698,7 @@ msgid "Supplier part" msgstr "" #: order/models.py:1009 order/templates/order/order_base.html:169 -#: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073 +#: templates/js/translated/order.js:1429 templates/js/translated/order.js:2112 #: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091 #: templates/js/translated/table_filters.js:338 msgid "Received" @@ -3880,11 +3884,11 @@ msgstr "" msgid "Select destination location for received items" msgstr "" -#: order/serializers.py:448 templates/js/translated/order.js:1248 +#: order/serializers.py:448 templates/js/translated/order.js:1287 msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:456 templates/js/translated/order.js:1259 +#: order/serializers.py:456 templates/js/translated/order.js:1298 msgid "Enter serial numbers for incoming stock items" msgstr "" @@ -4061,10 +4065,6 @@ msgstr "" msgid "Total cost could not be calculated" msgstr "" -#: order/templates/order/order_base.html:243 -msgid "Edit Purchase Order" -msgstr "" - #: order/templates/order/order_wizard/match_parts.html:12 #: part/templates/part/import_wizard/ajax_match_references.html:12 #: part/templates/part/import_wizard/match_references.html:12 @@ -4091,10 +4091,10 @@ msgstr "" #: part/templates/part/import_wizard/ajax_match_fields.html:64 #: part/templates/part/import_wizard/ajax_match_references.html:42 #: part/templates/part/import_wizard/match_references.html:49 -#: templates/js/translated/bom.js:77 templates/js/translated/build.js:431 -#: templates/js/translated/build.js:583 templates/js/translated/build.js:1974 -#: templates/js/translated/order.js:884 templates/js/translated/order.js:1337 -#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625 +#: templates/js/translated/bom.js:77 templates/js/translated/build.js:463 +#: templates/js/translated/build.js:615 templates/js/translated/build.js:2007 +#: templates/js/translated/order.js:923 templates/js/translated/order.js:1376 +#: templates/js/translated/order.js:2836 templates/js/translated/stock.js:625 #: templates/js/translated/stock.js:793 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" @@ -4130,7 +4130,7 @@ msgstr "" #: order/templates/order/purchase_order_detail.html:26 #: order/templates/order/sales_order_detail.html:22 #: order/templates/order/sales_order_detail.html:255 -#: templates/js/translated/order.js:557 +#: templates/js/translated/order.js:596 msgid "Add Line Item" msgstr "" @@ -4176,7 +4176,7 @@ msgid "Print packing list" msgstr "" #: order/templates/order/sales_order_base.html:60 -#: templates/js/translated/order.js:229 +#: templates/js/translated/order.js:230 msgid "Complete Shipments" msgstr "" @@ -4190,7 +4190,7 @@ msgid "This Sales Order has not been fully allocated" msgstr "" #: order/templates/order/sales_order_base.html:123 -#: templates/js/translated/order.js:2526 +#: templates/js/translated/order.js:2565 msgid "Customer Reference" msgstr "" @@ -4214,8 +4214,8 @@ msgid "Pending Shipments" msgstr "" #: order/templates/order/sales_order_detail.html:72 -#: templates/attachment_table.html:6 templates/js/translated/bom.js:1110 -#: templates/js/translated/build.js:1882 +#: templates/attachment_table.html:6 templates/js/translated/bom.js:1108 +#: templates/js/translated/build.js:1915 msgid "Actions" msgstr "" @@ -4257,35 +4257,35 @@ msgstr "" msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:584 +#: part/api.py:621 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:704 +#: part/api.py:758 msgid "Valid" msgstr "" -#: part/api.py:705 +#: part/api.py:759 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:711 +#: part/api.py:765 msgid "This option must be selected" msgstr "" -#: part/api.py:1134 +#: part/api.py:1188 msgid "Must be greater than zero" msgstr "" -#: part/api.py:1138 +#: part/api.py:1192 msgid "Must be a valid quantity" msgstr "" -#: part/api.py:1153 +#: part/api.py:1207 msgid "Specify location for initial part stock" msgstr "" -#: part/api.py:1184 part/api.py:1188 part/api.py:1203 part/api.py:1207 +#: part/api.py:1238 part/api.py:1242 part/api.py:1257 part/api.py:1261 msgid "This field is required" msgstr "" @@ -4299,14 +4299,14 @@ msgid "Total Stock" msgstr "" #: part/bom.py:129 part/templates/part/part_base.html:189 -#: templates/js/translated/order.js:3618 +#: templates/js/translated/order.js:3657 msgid "Available Stock" msgstr "" #: part/bom.py:130 part/templates/part/part_base.html:207 -#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590 +#: templates/js/translated/bom.js:945 templates/js/translated/part.js:590 #: templates/js/translated/part.js:610 templates/js/translated/part.js:1302 -#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490 +#: templates/js/translated/part.js:1483 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "" @@ -4335,7 +4335,7 @@ msgstr "" msgid "Icon (optional)" msgstr "" -#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16 +#: part/models.py:122 part/models.py:2509 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "" @@ -4352,7 +4352,7 @@ msgstr "" #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82 #: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:1955 templates/js/translated/search.js:144 +#: templates/js/translated/part.js:1951 templates/js/translated/search.js:144 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "Nguyên liệu" @@ -4382,7 +4382,7 @@ msgstr "" msgid "Duplicate IPN not allowed in part settings" msgstr "" -#: part/models.py:745 part/models.py:2516 +#: part/models.py:745 part/models.py:2563 msgid "Part name" msgstr "" @@ -4415,11 +4415,11 @@ msgstr "" msgid "Part keywords to improve visibility in search results" msgstr "" -#: part/models.py:783 part/models.py:2218 part/models.py:2461 +#: part/models.py:783 part/models.py:2265 part/models.py:2508 #: part/templates/part/part_base.html:257 #: templates/InvenTree/settings/settings.html:232 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1668 +#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1664 msgid "Category" msgstr "" @@ -4530,245 +4530,245 @@ msgstr "" msgid "Creation User" msgstr "" -#: part/models.py:1744 +#: part/models.py:1791 msgid "Sell multiple" msgstr "" -#: part/models.py:2265 +#: part/models.py:2312 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:2282 +#: part/models.py:2329 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:2302 templates/js/translated/part.js:2006 +#: part/models.py:2349 templates/js/translated/part.js:2002 #: templates/js/translated/stock.js:1340 msgid "Test Name" msgstr "" -#: part/models.py:2303 +#: part/models.py:2350 msgid "Enter a name for the test" msgstr "" -#: part/models.py:2308 +#: part/models.py:2355 msgid "Test Description" msgstr "" -#: part/models.py:2309 +#: part/models.py:2356 msgid "Enter description for this test" msgstr "" -#: part/models.py:2314 templates/js/translated/part.js:2015 +#: part/models.py:2361 templates/js/translated/part.js:2011 #: templates/js/translated/table_filters.js:302 msgid "Required" msgstr "" -#: part/models.py:2315 +#: part/models.py:2362 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:2320 templates/js/translated/part.js:2023 +#: part/models.py:2367 templates/js/translated/part.js:2019 msgid "Requires Value" msgstr "" -#: part/models.py:2321 +#: part/models.py:2368 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:2326 templates/js/translated/part.js:2030 +#: part/models.py:2373 templates/js/translated/part.js:2026 msgid "Requires Attachment" msgstr "" -#: part/models.py:2327 +#: part/models.py:2374 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:2335 +#: part/models.py:2382 #, python-brace-format msgid "Illegal character in template name ({c})" msgstr "" -#: part/models.py:2371 +#: part/models.py:2418 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:2379 +#: part/models.py:2426 msgid "Parameter Name" msgstr "" -#: part/models.py:2386 +#: part/models.py:2433 msgid "Parameter Units" msgstr "" -#: part/models.py:2417 +#: part/models.py:2464 msgid "Parent Part" msgstr "" -#: part/models.py:2419 part/models.py:2467 part/models.py:2468 +#: part/models.py:2466 part/models.py:2514 part/models.py:2515 #: templates/InvenTree/settings/settings.html:227 msgid "Parameter Template" msgstr "" -#: part/models.py:2421 +#: part/models.py:2468 msgid "Data" msgstr "" -#: part/models.py:2421 +#: part/models.py:2468 msgid "Parameter Value" msgstr "" -#: part/models.py:2472 templates/InvenTree/settings/settings.html:236 +#: part/models.py:2519 templates/InvenTree/settings/settings.html:236 msgid "Default Value" msgstr "" -#: part/models.py:2473 +#: part/models.py:2520 msgid "Default Parameter Value" msgstr "" -#: part/models.py:2508 +#: part/models.py:2555 msgid "Part ID or part name" msgstr "" -#: part/models.py:2511 templates/js/translated/model_renderers.js:212 +#: part/models.py:2558 templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "" -#: part/models.py:2512 +#: part/models.py:2559 msgid "Unique part ID value" msgstr "" -#: part/models.py:2515 +#: part/models.py:2562 msgid "Part Name" msgstr "" -#: part/models.py:2519 +#: part/models.py:2566 msgid "Part IPN" msgstr "" -#: part/models.py:2520 +#: part/models.py:2567 msgid "Part IPN value" msgstr "" -#: part/models.py:2523 +#: part/models.py:2570 msgid "Level" msgstr "" -#: part/models.py:2524 +#: part/models.py:2571 msgid "BOM level" msgstr "" -#: part/models.py:2593 +#: part/models.py:2640 msgid "Select parent part" msgstr "" -#: part/models.py:2601 +#: part/models.py:2648 msgid "Sub part" msgstr "" -#: part/models.py:2602 +#: part/models.py:2649 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:2608 +#: part/models.py:2655 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:2610 part/templates/part/upload_bom.html:58 -#: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999 +#: part/models.py:2657 part/templates/part/upload_bom.html:58 +#: templates/js/translated/bom.js:872 templates/js/translated/bom.js:997 #: templates/js/translated/table_filters.js:100 msgid "Optional" msgstr "" -#: part/models.py:2610 +#: part/models.py:2657 msgid "This BOM item is optional" msgstr "" -#: part/models.py:2613 part/templates/part/upload_bom.html:55 +#: part/models.py:2660 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:2614 +#: part/models.py:2661 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:2617 +#: part/models.py:2664 msgid "BOM item reference" msgstr "" -#: part/models.py:2620 +#: part/models.py:2667 msgid "BOM item notes" msgstr "" -#: part/models.py:2622 +#: part/models.py:2669 msgid "Checksum" msgstr "" -#: part/models.py:2622 +#: part/models.py:2669 msgid "BOM line checksum" msgstr "" -#: part/models.py:2626 part/templates/part/upload_bom.html:57 -#: templates/js/translated/bom.js:1016 +#: part/models.py:2673 part/templates/part/upload_bom.html:57 +#: templates/js/translated/bom.js:1014 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:96 msgid "Inherited" msgstr "" -#: part/models.py:2627 +#: part/models.py:2674 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:2632 part/templates/part/upload_bom.html:56 -#: templates/js/translated/bom.js:1008 +#: part/models.py:2679 part/templates/part/upload_bom.html:56 +#: templates/js/translated/bom.js:1006 msgid "Allow Variants" msgstr "" -#: part/models.py:2633 +#: part/models.py:2680 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:2711 stock/models.py:468 +#: part/models.py:2758 stock/models.py:468 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:2720 part/models.py:2722 +#: part/models.py:2767 part/models.py:2769 msgid "Sub part must be specified" msgstr "" -#: part/models.py:2827 +#: part/models.py:2874 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:2848 +#: part/models.py:2895 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:2861 +#: part/models.py:2908 msgid "Parent BOM item" msgstr "" -#: part/models.py:2869 +#: part/models.py:2916 msgid "Substitute part" msgstr "" -#: part/models.py:2884 +#: part/models.py:2931 msgid "Part 1" msgstr "" -#: part/models.py:2888 +#: part/models.py:2935 msgid "Part 2" msgstr "" -#: part/models.py:2888 +#: part/models.py:2935 msgid "Select Related Part" msgstr "" -#: part/models.py:2906 +#: part/models.py:2953 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:2910 +#: part/models.py:2957 msgid "Duplicate relationship already exists" msgstr "" @@ -4876,7 +4876,7 @@ msgstr "" msgid "The BOM for %(part)s has not been validated." msgstr "" -#: part/templates/part/bom.html:30 part/templates/part/detail.html:264 +#: part/templates/part/bom.html:30 part/templates/part/detail.html:269 msgid "BOM actions" msgstr "" @@ -4945,8 +4945,8 @@ msgstr "" msgid "New Part" msgstr "" -#: part/templates/part/category.html:174 part/templates/part/detail.html:363 -#: part/templates/part/detail.html:394 +#: part/templates/part/category.html:174 part/templates/part/detail.html:368 +#: part/templates/part/detail.html:399 msgid "Options" msgstr "" @@ -5014,138 +5014,146 @@ msgstr "" msgid "Part Stock" msgstr "" -#: part/templates/part/detail.html:54 -msgid "Part Test Templates" +#: part/templates/part/detail.html:44 +msgid "Refresh scheduling data" +msgstr "" + +#: part/templates/part/detail.html:45 templates/js/translated/tables.js:558 +msgid "Refresh" msgstr "" #: part/templates/part/detail.html:59 +msgid "Part Test Templates" +msgstr "" + +#: part/templates/part/detail.html:64 msgid "Add Test Template" msgstr "" -#: part/templates/part/detail.html:116 stock/templates/stock/item.html:53 +#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53 msgid "Sales Order Allocations" msgstr "" -#: part/templates/part/detail.html:138 +#: part/templates/part/detail.html:143 msgid "Part Notes" msgstr "" -#: part/templates/part/detail.html:153 +#: part/templates/part/detail.html:158 msgid "Part Variants" msgstr "" -#: part/templates/part/detail.html:157 +#: part/templates/part/detail.html:162 msgid "Create new variant" msgstr "" -#: part/templates/part/detail.html:158 +#: part/templates/part/detail.html:163 msgid "New Variant" msgstr "" -#: part/templates/part/detail.html:185 +#: part/templates/part/detail.html:190 msgid "Add new parameter" msgstr "" -#: part/templates/part/detail.html:222 part/templates/part/part_sidebar.html:54 +#: part/templates/part/detail.html:227 part/templates/part/part_sidebar.html:54 msgid "Related Parts" msgstr "" -#: part/templates/part/detail.html:226 part/templates/part/detail.html:227 +#: part/templates/part/detail.html:231 part/templates/part/detail.html:232 msgid "Add Related" msgstr "" -#: part/templates/part/detail.html:247 part/templates/part/part_sidebar.html:17 +#: part/templates/part/detail.html:252 part/templates/part/part_sidebar.html:17 msgid "Bill of Materials" msgstr "" -#: part/templates/part/detail.html:252 +#: part/templates/part/detail.html:257 msgid "Export actions" msgstr "" -#: part/templates/part/detail.html:256 templates/js/translated/bom.js:284 +#: part/templates/part/detail.html:261 templates/js/translated/bom.js:284 msgid "Export BOM" msgstr "" -#: part/templates/part/detail.html:258 +#: part/templates/part/detail.html:263 msgid "Print BOM Report" msgstr "" -#: part/templates/part/detail.html:268 +#: part/templates/part/detail.html:273 msgid "Upload BOM" msgstr "" -#: part/templates/part/detail.html:269 templates/js/translated/part.js:274 +#: part/templates/part/detail.html:274 templates/js/translated/part.js:274 msgid "Copy BOM" msgstr "" -#: part/templates/part/detail.html:270 +#: part/templates/part/detail.html:275 msgid "Validate BOM" msgstr "" -#: part/templates/part/detail.html:275 +#: part/templates/part/detail.html:280 msgid "New BOM Item" msgstr "" -#: part/templates/part/detail.html:276 +#: part/templates/part/detail.html:281 msgid "Add BOM Item" msgstr "" -#: part/templates/part/detail.html:289 +#: part/templates/part/detail.html:294 msgid "Assemblies" msgstr "" -#: part/templates/part/detail.html:307 +#: part/templates/part/detail.html:312 msgid "Part Builds" msgstr "" -#: part/templates/part/detail.html:334 stock/templates/stock/item.html:38 +#: part/templates/part/detail.html:339 stock/templates/stock/item.html:38 msgid "Build Order Allocations" msgstr "" -#: part/templates/part/detail.html:350 +#: part/templates/part/detail.html:355 msgid "Part Suppliers" msgstr "" -#: part/templates/part/detail.html:380 +#: part/templates/part/detail.html:385 msgid "Part Manufacturers" msgstr "" -#: part/templates/part/detail.html:396 +#: part/templates/part/detail.html:401 msgid "Delete manufacturer parts" msgstr "" -#: part/templates/part/detail.html:612 +#: part/templates/part/detail.html:626 msgid "Create BOM Item" msgstr "" -#: part/templates/part/detail.html:656 +#: part/templates/part/detail.html:670 msgid "Related Part" msgstr "" -#: part/templates/part/detail.html:664 +#: part/templates/part/detail.html:678 msgid "Add Related Part" msgstr "" -#: part/templates/part/detail.html:756 +#: part/templates/part/detail.html:770 msgid "Add Test Result Template" msgstr "" -#: part/templates/part/detail.html:900 +#: part/templates/part/detail.html:914 #, python-format msgid "Purchase Unit Price - %(currency)s" msgstr "" -#: part/templates/part/detail.html:912 +#: part/templates/part/detail.html:926 #, python-format msgid "Unit Price-Cost Difference - %(currency)s" msgstr "" -#: part/templates/part/detail.html:924 +#: part/templates/part/detail.html:938 #, python-format msgid "Supplier Unit Cost - %(currency)s" msgstr "" -#: part/templates/part/detail.html:1013 +#: part/templates/part/detail.html:1027 #, python-format msgid "Unit Price - %(currency)s" msgstr "" @@ -5321,13 +5329,13 @@ msgstr "" msgid "Allocated to Sales Orders" msgstr "" -#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1037 +#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1035 msgid "Can Build" msgstr "" #: part/templates/part/part_base.html:238 templates/js/translated/part.js:593 #: templates/js/translated/part.js:613 templates/js/translated/part.js:1306 -#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1494 +#: templates/js/translated/part.js:1490 msgid "Building" msgstr "" @@ -5379,7 +5387,7 @@ msgid "Total Cost" msgstr "" #: part/templates/part/part_pricing.html:40 part/templates/part/prices.html:43 -#: templates/js/translated/bom.js:991 +#: templates/js/translated/bom.js:989 msgid "No supplier pricing available" msgstr "" @@ -5414,6 +5422,18 @@ msgstr "" msgid "No pricing information is available for this part." msgstr "" +#: part/templates/part/part_scheduling.html:13 +#: report/templates/report/inventree_test_report_base.html:97 +#: templates/InvenTree/settings/plugin.html:53 +#: templates/InvenTree/settings/plugin_settings.html:38 +#: templates/js/translated/order.js:1772 templates/js/translated/stock.js:2468 +msgid "Date" +msgstr "" + +#: part/templates/part/part_scheduling.html:14 +msgid "Scheduled Quantity" +msgstr "" + #: part/templates/part/part_sidebar.html:11 msgid "Variants" msgstr "" @@ -5462,7 +5482,7 @@ msgstr "" msgid "Calculation parameters" msgstr "" -#: part/templates/part/prices.html:160 templates/js/translated/bom.js:985 +#: part/templates/part/prices.html:160 templates/js/translated/bom.js:983 msgid "Supplier Cost" msgstr "" @@ -5501,7 +5521,7 @@ msgid "No sale pice history available for this part." msgstr "" #: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616 -#: templates/js/translated/part.js:1294 templates/js/translated/part.js:1498 +#: templates/js/translated/part.js:1294 msgid "No Stock" msgstr "" @@ -5893,11 +5913,11 @@ msgstr "" #: report/templates/report/inventree_test_report_base.html:79 #: stock/models.py:648 stock/templates/stock/item_base.html:322 -#: templates/js/translated/build.js:424 templates/js/translated/build.js:576 -#: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673 +#: templates/js/translated/build.js:456 templates/js/translated/build.js:608 +#: templates/js/translated/build.js:1208 templates/js/translated/build.js:1705 #: templates/js/translated/model_renderers.js:118 -#: templates/js/translated/order.js:118 templates/js/translated/order.js:3297 -#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490 +#: templates/js/translated/order.js:119 templates/js/translated/order.js:3336 +#: templates/js/translated/order.js:3423 templates/js/translated/stock.js:490 msgid "Serial Number" msgstr "" @@ -5915,13 +5935,6 @@ msgstr "" msgid "Result" msgstr "" -#: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:53 -#: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468 -msgid "Date" -msgstr "" - #: report/templates/report/inventree_test_report_base.html:108 msgid "Pass" msgstr "" @@ -6519,7 +6532,7 @@ msgid "Available Quantity" msgstr "" #: stock/templates/stock/item_base.html:394 -#: templates/js/translated/build.js:1695 +#: templates/js/translated/build.js:1727 msgid "No location set" msgstr "" @@ -7702,7 +7715,7 @@ msgid "The following parts are low on required stock" msgstr "" #: templates/email/build_order_required_stock.html:18 -#: templates/js/translated/bom.js:1483 +#: templates/js/translated/bom.js:1481 msgid "Required Quantity" msgstr "" @@ -7716,6 +7729,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:19 +#: templates/js/translated/part.js:2498 msgid "Minimum Quantity" msgstr "" @@ -7917,10 +7931,10 @@ msgstr "" msgid "Row Data" msgstr "" -#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:622 +#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:620 #: templates/js/translated/modals.js:56 templates/js/translated/modals.js:601 #: templates/js/translated/modals.js:695 templates/js/translated/modals.js:1003 -#: templates/js/translated/order.js:979 templates/modals.html:15 +#: templates/js/translated/order.js:1018 templates/modals.html:15 #: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50 msgid "Close" msgstr "" @@ -7930,12 +7944,12 @@ msgid "Download BOM Template" msgstr "" #: templates/js/translated/bom.js:253 templates/js/translated/bom.js:287 -#: templates/js/translated/order.js:760 templates/js/translated/tables.js:145 +#: templates/js/translated/order.js:799 templates/js/translated/tables.js:145 msgid "Format" msgstr "" #: templates/js/translated/bom.js:254 templates/js/translated/bom.js:288 -#: templates/js/translated/order.js:761 +#: templates/js/translated/order.js:800 msgid "Select file format" msgstr "" @@ -7991,390 +8005,390 @@ msgstr "" msgid "Remove substitute part" msgstr "" -#: templates/js/translated/bom.js:567 +#: templates/js/translated/bom.js:565 msgid "Select and add a new substitute part using the input below" msgstr "" -#: templates/js/translated/bom.js:578 +#: templates/js/translated/bom.js:576 msgid "Are you sure you wish to remove this substitute part link?" msgstr "" -#: templates/js/translated/bom.js:584 +#: templates/js/translated/bom.js:582 msgid "Remove Substitute Part" msgstr "" -#: templates/js/translated/bom.js:623 +#: templates/js/translated/bom.js:621 msgid "Add Substitute" msgstr "" -#: templates/js/translated/bom.js:624 +#: templates/js/translated/bom.js:622 msgid "Edit BOM Item Substitutes" msgstr "" -#: templates/js/translated/bom.js:686 +#: templates/js/translated/bom.js:684 msgid "All selected BOM items will be deleted" msgstr "" -#: templates/js/translated/bom.js:702 +#: templates/js/translated/bom.js:700 msgid "Delete selected BOM items?" msgstr "" -#: templates/js/translated/bom.js:821 +#: templates/js/translated/bom.js:819 msgid "Load BOM for subassembly" msgstr "" -#: templates/js/translated/bom.js:831 +#: templates/js/translated/bom.js:829 msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:835 templates/js/translated/build.js:1771 +#: templates/js/translated/bom.js:833 templates/js/translated/build.js:1803 msgid "Variant stock allowed" msgstr "" -#: templates/js/translated/bom.js:929 templates/js/translated/build.js:1816 -#: templates/js/translated/order.js:3632 +#: templates/js/translated/bom.js:927 templates/js/translated/build.js:1849 +#: templates/js/translated/order.js:3671 msgid "No Stock Available" msgstr "" -#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1820 +#: templates/js/translated/bom.js:932 templates/js/translated/build.js:1853 msgid "Includes variant and substitute stock" msgstr "" -#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822 +#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1855 #: templates/js/translated/part.js:763 msgid "Includes variant stock" msgstr "" -#: templates/js/translated/bom.js:938 templates/js/translated/build.js:1824 +#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1857 msgid "Includes substitute stock" msgstr "" -#: templates/js/translated/bom.js:956 +#: templates/js/translated/bom.js:954 msgid "Substitutes" msgstr "" -#: templates/js/translated/bom.js:971 +#: templates/js/translated/bom.js:969 msgid "Purchase Price Range" msgstr "" -#: templates/js/translated/bom.js:978 +#: templates/js/translated/bom.js:976 msgid "Purchase Price Average" msgstr "" -#: templates/js/translated/bom.js:1027 templates/js/translated/bom.js:1147 +#: templates/js/translated/bom.js:1025 templates/js/translated/bom.js:1145 msgid "View BOM" msgstr "" -#: templates/js/translated/bom.js:1054 +#: templates/js/translated/bom.js:1052 msgid "Including On Order" msgstr "" -#: templates/js/translated/bom.js:1118 +#: templates/js/translated/bom.js:1116 msgid "Validate BOM Item" msgstr "" -#: templates/js/translated/bom.js:1120 +#: templates/js/translated/bom.js:1118 msgid "This line has been validated" msgstr "" -#: templates/js/translated/bom.js:1122 +#: templates/js/translated/bom.js:1120 msgid "Edit substitute parts" msgstr "" -#: templates/js/translated/bom.js:1124 templates/js/translated/bom.js:1286 +#: templates/js/translated/bom.js:1122 templates/js/translated/bom.js:1284 msgid "Edit BOM Item" msgstr "" -#: templates/js/translated/bom.js:1126 +#: templates/js/translated/bom.js:1124 msgid "Delete BOM Item" msgstr "" -#: templates/js/translated/bom.js:1222 templates/js/translated/build.js:1617 +#: templates/js/translated/bom.js:1220 templates/js/translated/build.js:1649 msgid "No BOM items found" msgstr "" -#: templates/js/translated/bom.js:1466 templates/js/translated/build.js:1755 +#: templates/js/translated/bom.js:1464 templates/js/translated/build.js:1787 msgid "Required Part" msgstr "" -#: templates/js/translated/bom.js:1488 +#: templates/js/translated/bom.js:1486 msgid "Inherited from parent BOM" msgstr "" -#: templates/js/translated/build.js:86 +#: templates/js/translated/build.js:89 msgid "Edit Build Order" msgstr "" -#: templates/js/translated/build.js:120 +#: templates/js/translated/build.js:132 msgid "Create Build Order" msgstr "" -#: templates/js/translated/build.js:133 +#: templates/js/translated/build.js:165 msgid "Cancel Build Order" msgstr "" -#: templates/js/translated/build.js:142 +#: templates/js/translated/build.js:174 msgid "Are you sure you wish to cancel this build?" msgstr "" -#: templates/js/translated/build.js:148 +#: templates/js/translated/build.js:180 msgid "Stock items have been allocated to this build order" msgstr "" -#: templates/js/translated/build.js:155 +#: templates/js/translated/build.js:187 msgid "There are incomplete outputs remaining for this build order" msgstr "" -#: templates/js/translated/build.js:185 +#: templates/js/translated/build.js:217 msgid "Build order is ready to be completed" msgstr "" -#: templates/js/translated/build.js:190 +#: templates/js/translated/build.js:222 msgid "Build Order is incomplete" msgstr "" -#: templates/js/translated/build.js:222 +#: templates/js/translated/build.js:254 msgid "Complete Build Order" msgstr "" -#: templates/js/translated/build.js:263 templates/js/translated/stock.js:92 +#: templates/js/translated/build.js:295 templates/js/translated/stock.js:92 #: templates/js/translated/stock.js:214 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:265 templates/js/translated/stock.js:94 +#: templates/js/translated/build.js:297 templates/js/translated/stock.js:94 #: templates/js/translated/stock.js:216 msgid "Latest serial number" msgstr "Số seri mới nhất" -#: templates/js/translated/build.js:274 +#: templates/js/translated/build.js:306 msgid "The Bill of Materials contains trackable parts" msgstr "" -#: templates/js/translated/build.js:275 +#: templates/js/translated/build.js:307 msgid "Build outputs must be generated individually" msgstr "" -#: templates/js/translated/build.js:283 +#: templates/js/translated/build.js:315 msgid "Trackable parts can have serial numbers specified" msgstr "" -#: templates/js/translated/build.js:284 +#: templates/js/translated/build.js:316 msgid "Enter serial numbers to generate multiple single build outputs" msgstr "" -#: templates/js/translated/build.js:291 +#: templates/js/translated/build.js:323 msgid "Create Build Output" msgstr "" -#: templates/js/translated/build.js:322 +#: templates/js/translated/build.js:354 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:333 +#: templates/js/translated/build.js:365 msgid "Unallocate stock from build output" msgstr "" -#: templates/js/translated/build.js:342 +#: templates/js/translated/build.js:374 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:350 +#: templates/js/translated/build.js:382 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:373 +#: templates/js/translated/build.js:405 msgid "Are you sure you wish to unallocate stock items from this build?" msgstr "" -#: templates/js/translated/build.js:391 +#: templates/js/translated/build.js:423 msgid "Unallocate Stock Items" msgstr "" -#: templates/js/translated/build.js:411 templates/js/translated/build.js:563 +#: templates/js/translated/build.js:443 templates/js/translated/build.js:595 msgid "Select Build Outputs" msgstr "" -#: templates/js/translated/build.js:412 templates/js/translated/build.js:564 +#: templates/js/translated/build.js:444 templates/js/translated/build.js:596 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:466 templates/js/translated/build.js:618 +#: templates/js/translated/build.js:498 templates/js/translated/build.js:650 msgid "Output" msgstr "" -#: templates/js/translated/build.js:484 +#: templates/js/translated/build.js:516 msgid "Complete Build Outputs" msgstr "" -#: templates/js/translated/build.js:631 +#: templates/js/translated/build.js:663 msgid "Delete Build Outputs" msgstr "" -#: templates/js/translated/build.js:720 +#: templates/js/translated/build.js:752 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:757 +#: templates/js/translated/build.js:789 msgid "Location not specified" msgstr "" -#: templates/js/translated/build.js:1136 +#: templates/js/translated/build.js:1168 msgid "No active build outputs found" msgstr "" -#: templates/js/translated/build.js:1205 +#: templates/js/translated/build.js:1237 msgid "Allocated Stock" msgstr "" -#: templates/js/translated/build.js:1212 +#: templates/js/translated/build.js:1244 msgid "No tracked BOM items for this build" msgstr "" -#: templates/js/translated/build.js:1234 +#: templates/js/translated/build.js:1266 msgid "Completed Tests" msgstr "" -#: templates/js/translated/build.js:1239 +#: templates/js/translated/build.js:1271 msgid "No required tests for this build" msgstr "" -#: templates/js/translated/build.js:1712 templates/js/translated/build.js:2656 -#: templates/js/translated/order.js:3332 +#: templates/js/translated/build.js:1744 templates/js/translated/build.js:2689 +#: templates/js/translated/order.js:3371 msgid "Edit stock allocation" msgstr "" -#: templates/js/translated/build.js:1714 templates/js/translated/build.js:2657 -#: templates/js/translated/order.js:3333 +#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2690 +#: templates/js/translated/order.js:3372 msgid "Delete stock allocation" msgstr "" -#: templates/js/translated/build.js:1732 +#: templates/js/translated/build.js:1764 msgid "Edit Allocation" msgstr "" -#: templates/js/translated/build.js:1742 +#: templates/js/translated/build.js:1774 msgid "Remove Allocation" msgstr "" -#: templates/js/translated/build.js:1767 +#: templates/js/translated/build.js:1799 msgid "Substitute parts available" msgstr "" -#: templates/js/translated/build.js:1784 +#: templates/js/translated/build.js:1816 msgid "Quantity Per" msgstr "" -#: templates/js/translated/build.js:1810 templates/js/translated/order.js:3639 +#: templates/js/translated/build.js:1843 templates/js/translated/order.js:3678 msgid "Insufficient stock available" msgstr "" -#: templates/js/translated/build.js:1812 templates/js/translated/order.js:3637 +#: templates/js/translated/build.js:1845 templates/js/translated/order.js:3676 msgid "Sufficient stock available" msgstr "" -#: templates/js/translated/build.js:1841 templates/js/translated/build.js:2086 -#: templates/js/translated/build.js:2652 templates/js/translated/order.js:3651 +#: templates/js/translated/build.js:1874 templates/js/translated/build.js:2119 +#: templates/js/translated/build.js:2685 templates/js/translated/order.js:3690 msgid "Allocated" msgstr "" -#: templates/js/translated/build.js:1889 templates/js/translated/order.js:3731 +#: templates/js/translated/build.js:1922 templates/js/translated/order.js:3770 msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:1893 templates/stock_table.html:50 +#: templates/js/translated/build.js:1926 templates/stock_table.html:50 msgid "Order stock" msgstr "" -#: templates/js/translated/build.js:1896 templates/js/translated/order.js:3724 +#: templates/js/translated/build.js:1929 templates/js/translated/order.js:3763 msgid "Allocate stock" msgstr "" -#: templates/js/translated/build.js:1935 templates/js/translated/label.js:172 -#: templates/js/translated/order.js:807 templates/js/translated/order.js:2859 +#: templates/js/translated/build.js:1968 templates/js/translated/label.js:172 +#: templates/js/translated/order.js:846 templates/js/translated/order.js:2898 #: templates/js/translated/report.js:225 msgid "Select Parts" msgstr "" -#: templates/js/translated/build.js:1936 templates/js/translated/order.js:2860 +#: templates/js/translated/build.js:1969 templates/js/translated/order.js:2899 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1985 templates/js/translated/order.js:2808 +#: templates/js/translated/build.js:2018 templates/js/translated/order.js:2847 msgid "Specify stock allocation quantity" msgstr "" -#: templates/js/translated/build.js:2059 +#: templates/js/translated/build.js:2092 msgid "All Parts Allocated" msgstr "" -#: templates/js/translated/build.js:2060 +#: templates/js/translated/build.js:2093 msgid "All selected parts have been fully allocated" msgstr "" -#: templates/js/translated/build.js:2074 templates/js/translated/order.js:2874 +#: templates/js/translated/build.js:2107 templates/js/translated/order.js:2913 msgid "Select source location (leave blank to take from all locations)" msgstr "" -#: templates/js/translated/build.js:2102 +#: templates/js/translated/build.js:2135 msgid "Allocate Stock Items to Build Order" msgstr "" -#: templates/js/translated/build.js:2113 templates/js/translated/order.js:2971 +#: templates/js/translated/build.js:2146 templates/js/translated/order.js:3010 msgid "No matching stock locations" msgstr "" -#: templates/js/translated/build.js:2185 templates/js/translated/order.js:3048 +#: templates/js/translated/build.js:2218 templates/js/translated/order.js:3087 msgid "No matching stock items" msgstr "" -#: templates/js/translated/build.js:2282 +#: templates/js/translated/build.js:2315 msgid "Automatic Stock Allocation" msgstr "" -#: templates/js/translated/build.js:2283 +#: templates/js/translated/build.js:2316 msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines" msgstr "" -#: templates/js/translated/build.js:2285 +#: templates/js/translated/build.js:2318 msgid "If a location is specifed, stock will only be allocated from that location" msgstr "" -#: templates/js/translated/build.js:2286 +#: templates/js/translated/build.js:2319 msgid "If stock is considered interchangeable, it will be allocated from the first location it is found" msgstr "" -#: templates/js/translated/build.js:2287 +#: templates/js/translated/build.js:2320 msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found" msgstr "" -#: templates/js/translated/build.js:2308 +#: templates/js/translated/build.js:2341 msgid "Allocate Stock Items" msgstr "" -#: templates/js/translated/build.js:2414 +#: templates/js/translated/build.js:2447 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387 -#: templates/js/translated/part.js:1899 templates/js/translated/stock.js:1686 +#: templates/js/translated/build.js:2482 templates/js/translated/part.js:1387 +#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1686 #: templates/js/translated/stock.js:2386 msgid "Select" msgstr "" -#: templates/js/translated/build.js:2463 +#: templates/js/translated/build.js:2496 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:2491 +#: templates/js/translated/build.js:2524 msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647 +#: templates/js/translated/build.js:2560 templates/js/translated/stock.js:2647 msgid "No user information" msgstr "" -#: templates/js/translated/build.js:2633 +#: templates/js/translated/build.js:2666 msgid "No parts allocated for" msgstr "" @@ -8390,11 +8404,11 @@ msgstr "" msgid "Edit Manufacturer Part" msgstr "" -#: templates/js/translated/company.js:167 templates/js/translated/order.js:509 +#: templates/js/translated/company.js:167 templates/js/translated/order.js:510 msgid "Add Supplier" msgstr "" -#: templates/js/translated/company.js:195 templates/js/translated/order.js:628 +#: templates/js/translated/company.js:195 templates/js/translated/order.js:667 msgid "Add Supplier Part" msgstr "" @@ -8765,381 +8779,385 @@ msgstr "" msgid "Notifications will load here" msgstr "" -#: templates/js/translated/order.js:94 +#: templates/js/translated/order.js:95 msgid "No stock items have been allocated to this shipment" msgstr "" -#: templates/js/translated/order.js:99 +#: templates/js/translated/order.js:100 msgid "The following stock items will be shipped" msgstr "" -#: templates/js/translated/order.js:139 +#: templates/js/translated/order.js:140 msgid "Complete Shipment" msgstr "" -#: templates/js/translated/order.js:159 +#: templates/js/translated/order.js:160 msgid "Confirm Shipment" msgstr "" -#: templates/js/translated/order.js:215 +#: templates/js/translated/order.js:216 msgid "No pending shipments found" msgstr "" -#: templates/js/translated/order.js:219 +#: templates/js/translated/order.js:220 msgid "No stock items have been allocated to pending shipments" msgstr "" -#: templates/js/translated/order.js:251 +#: templates/js/translated/order.js:252 msgid "Skip" msgstr "" -#: templates/js/translated/order.js:281 +#: templates/js/translated/order.js:282 msgid "Complete Purchase Order" msgstr "" -#: templates/js/translated/order.js:287 +#: templates/js/translated/order.js:288 msgid "Mark this order as complete?" msgstr "" -#: templates/js/translated/order.js:293 +#: templates/js/translated/order.js:294 msgid "All line items have been received" msgstr "" -#: templates/js/translated/order.js:298 +#: templates/js/translated/order.js:299 msgid "This order has line items which have not been marked as received." msgstr "" -#: templates/js/translated/order.js:299 +#: templates/js/translated/order.js:300 msgid "Completing this order means that the order and line items will no longer be editable." msgstr "" -#: templates/js/translated/order.js:322 +#: templates/js/translated/order.js:323 msgid "Cancel Purchase Order" msgstr "" -#: templates/js/translated/order.js:327 +#: templates/js/translated/order.js:328 msgid "Are you sure you wish to cancel this purchase order?" msgstr "" -#: templates/js/translated/order.js:333 +#: templates/js/translated/order.js:334 msgid "This purchase order can not be cancelled" msgstr "" -#: templates/js/translated/order.js:356 +#: templates/js/translated/order.js:357 msgid "Issue Purchase Order" msgstr "" -#: templates/js/translated/order.js:361 +#: templates/js/translated/order.js:362 msgid "After placing this purchase order, line items will no longer be editable." msgstr "" -#: templates/js/translated/order.js:383 +#: templates/js/translated/order.js:384 msgid "Cancel Sales Order" msgstr "" -#: templates/js/translated/order.js:388 +#: templates/js/translated/order.js:389 msgid "Cancelling this order means that the order will no longer be editable." msgstr "" -#: templates/js/translated/order.js:442 +#: templates/js/translated/order.js:443 msgid "Create New Shipment" msgstr "" -#: templates/js/translated/order.js:467 +#: templates/js/translated/order.js:468 msgid "Add Customer" msgstr "" -#: templates/js/translated/order.js:492 +#: templates/js/translated/order.js:493 msgid "Create Sales Order" msgstr "" -#: templates/js/translated/order.js:757 +#: templates/js/translated/order.js:554 +msgid "Edit Purchase Order" +msgstr "" + +#: templates/js/translated/order.js:796 msgid "Export Order" msgstr "" -#: templates/js/translated/order.js:808 +#: templates/js/translated/order.js:847 msgid "At least one purchaseable part must be selected" msgstr "" -#: templates/js/translated/order.js:833 +#: templates/js/translated/order.js:872 msgid "Quantity to order" msgstr "" -#: templates/js/translated/order.js:842 +#: templates/js/translated/order.js:881 msgid "New supplier part" msgstr "" -#: templates/js/translated/order.js:860 +#: templates/js/translated/order.js:899 msgid "New purchase order" msgstr "" -#: templates/js/translated/order.js:893 +#: templates/js/translated/order.js:932 msgid "Add to purchase order" msgstr "" -#: templates/js/translated/order.js:1002 +#: templates/js/translated/order.js:1041 msgid "No matching supplier parts" msgstr "" -#: templates/js/translated/order.js:1017 +#: templates/js/translated/order.js:1056 msgid "No matching purchase orders" msgstr "" -#: templates/js/translated/order.js:1194 +#: templates/js/translated/order.js:1233 msgid "Select Line Items" msgstr "" -#: templates/js/translated/order.js:1195 +#: templates/js/translated/order.js:1234 msgid "At least one line item must be selected" msgstr "" -#: templates/js/translated/order.js:1215 templates/js/translated/order.js:1314 +#: templates/js/translated/order.js:1254 templates/js/translated/order.js:1353 msgid "Add batch code" msgstr "" -#: templates/js/translated/order.js:1221 templates/js/translated/order.js:1325 +#: templates/js/translated/order.js:1260 templates/js/translated/order.js:1364 msgid "Add serial numbers" msgstr "" -#: templates/js/translated/order.js:1233 +#: templates/js/translated/order.js:1272 msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144 +#: templates/js/translated/order.js:1336 templates/js/translated/stock.js:2144 msgid "Stock Status" msgstr "" -#: templates/js/translated/order.js:1388 +#: templates/js/translated/order.js:1427 msgid "Order Code" msgstr "" -#: templates/js/translated/order.js:1389 +#: templates/js/translated/order.js:1428 msgid "Ordered" msgstr "" -#: templates/js/translated/order.js:1391 +#: templates/js/translated/order.js:1430 msgid "Quantity to Receive" msgstr "" -#: templates/js/translated/order.js:1410 +#: templates/js/translated/order.js:1449 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/order.js:1411 +#: templates/js/translated/order.js:1450 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943 +#: templates/js/translated/order.js:1711 templates/js/translated/part.js:943 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/order.js:1699 templates/js/translated/order.js:2503 +#: templates/js/translated/order.js:1738 templates/js/translated/order.js:2542 msgid "Order is overdue" msgstr "" -#: templates/js/translated/order.js:1749 templates/js/translated/order.js:2568 -#: templates/js/translated/order.js:2709 +#: templates/js/translated/order.js:1788 templates/js/translated/order.js:2607 +#: templates/js/translated/order.js:2748 msgid "Items" msgstr "" -#: templates/js/translated/order.js:1847 templates/js/translated/order.js:3783 +#: templates/js/translated/order.js:1886 templates/js/translated/order.js:3822 msgid "Duplicate Line Item" msgstr "" -#: templates/js/translated/order.js:1864 templates/js/translated/order.js:3805 +#: templates/js/translated/order.js:1903 templates/js/translated/order.js:3844 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/order.js:1877 templates/js/translated/order.js:3816 +#: templates/js/translated/order.js:1916 templates/js/translated/order.js:3855 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/order.js:1920 +#: templates/js/translated/order.js:1959 msgid "No line items found" msgstr "" -#: templates/js/translated/order.js:1947 templates/js/translated/order.js:3517 +#: templates/js/translated/order.js:1986 templates/js/translated/order.js:3556 msgid "Total" msgstr "" -#: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203 -#: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050 -#: templates/js/translated/part.js:2135 templates/js/translated/part.js:2488 +#: templates/js/translated/order.js:2040 templates/js/translated/order.js:2242 +#: templates/js/translated/order.js:3581 templates/js/translated/order.js:4089 +#: templates/js/translated/part.js:2131 templates/js/translated/part.js:2703 msgid "Unit Price" msgstr "" -#: templates/js/translated/order.js:2016 templates/js/translated/order.js:2219 -#: templates/js/translated/order.js:3558 templates/js/translated/order.js:4066 +#: templates/js/translated/order.js:2055 templates/js/translated/order.js:2258 +#: templates/js/translated/order.js:3597 templates/js/translated/order.js:4105 msgid "Total Price" msgstr "" -#: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600 +#: templates/js/translated/order.js:2096 templates/js/translated/order.js:3639 #: templates/js/translated/part.js:1050 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096 +#: templates/js/translated/order.js:2155 templates/js/translated/part.js:1096 msgid "Receive line item" msgstr "" -#: templates/js/translated/order.js:2120 templates/js/translated/order.js:3737 +#: templates/js/translated/order.js:2159 templates/js/translated/order.js:3776 msgid "Duplicate line item" msgstr "" -#: templates/js/translated/order.js:2121 templates/js/translated/order.js:3738 +#: templates/js/translated/order.js:2160 templates/js/translated/order.js:3777 msgid "Edit line item" msgstr "" -#: templates/js/translated/order.js:2122 templates/js/translated/order.js:3742 +#: templates/js/translated/order.js:2161 templates/js/translated/order.js:3781 msgid "Delete line item" msgstr "" -#: templates/js/translated/order.js:2268 templates/js/translated/order.js:4115 +#: templates/js/translated/order.js:2307 templates/js/translated/order.js:4154 msgid "Duplicate line" msgstr "" -#: templates/js/translated/order.js:2269 templates/js/translated/order.js:4116 +#: templates/js/translated/order.js:2308 templates/js/translated/order.js:4155 msgid "Edit line" msgstr "" -#: templates/js/translated/order.js:2270 templates/js/translated/order.js:4117 +#: templates/js/translated/order.js:2309 templates/js/translated/order.js:4156 msgid "Delete line" msgstr "" -#: templates/js/translated/order.js:2300 templates/js/translated/order.js:4147 +#: templates/js/translated/order.js:2339 templates/js/translated/order.js:4186 msgid "Duplicate Line" msgstr "" -#: templates/js/translated/order.js:2321 templates/js/translated/order.js:4168 +#: templates/js/translated/order.js:2360 templates/js/translated/order.js:4207 msgid "Edit Line" msgstr "" -#: templates/js/translated/order.js:2332 templates/js/translated/order.js:4179 +#: templates/js/translated/order.js:2371 templates/js/translated/order.js:4218 msgid "Delete Line" msgstr "" -#: templates/js/translated/order.js:2343 +#: templates/js/translated/order.js:2382 msgid "No matching line" msgstr "" -#: templates/js/translated/order.js:2454 +#: templates/js/translated/order.js:2493 msgid "No sales orders found" msgstr "" -#: templates/js/translated/order.js:2517 +#: templates/js/translated/order.js:2556 msgid "Invalid Customer" msgstr "" -#: templates/js/translated/order.js:2615 +#: templates/js/translated/order.js:2654 msgid "Edit shipment" msgstr "" -#: templates/js/translated/order.js:2618 +#: templates/js/translated/order.js:2657 msgid "Complete shipment" msgstr "" -#: templates/js/translated/order.js:2623 +#: templates/js/translated/order.js:2662 msgid "Delete shipment" msgstr "" -#: templates/js/translated/order.js:2643 +#: templates/js/translated/order.js:2682 msgid "Edit Shipment" msgstr "" -#: templates/js/translated/order.js:2660 +#: templates/js/translated/order.js:2699 msgid "Delete Shipment" msgstr "" -#: templates/js/translated/order.js:2694 +#: templates/js/translated/order.js:2733 msgid "No matching shipments found" msgstr "" -#: templates/js/translated/order.js:2704 +#: templates/js/translated/order.js:2743 msgid "Shipment Reference" msgstr "" -#: templates/js/translated/order.js:2728 +#: templates/js/translated/order.js:2767 msgid "Not shipped" msgstr "" -#: templates/js/translated/order.js:2734 +#: templates/js/translated/order.js:2773 msgid "Tracking" msgstr "" -#: templates/js/translated/order.js:2738 +#: templates/js/translated/order.js:2777 msgid "Invoice" msgstr "" -#: templates/js/translated/order.js:2907 +#: templates/js/translated/order.js:2946 msgid "Add Shipment" msgstr "" -#: templates/js/translated/order.js:2958 +#: templates/js/translated/order.js:2997 msgid "Confirm stock allocation" msgstr "" -#: templates/js/translated/order.js:2959 +#: templates/js/translated/order.js:2998 msgid "Allocate Stock Items to Sales Order" msgstr "" -#: templates/js/translated/order.js:3167 +#: templates/js/translated/order.js:3206 msgid "No sales order allocations found" msgstr "" -#: templates/js/translated/order.js:3246 +#: templates/js/translated/order.js:3285 msgid "Edit Stock Allocation" msgstr "" -#: templates/js/translated/order.js:3263 +#: templates/js/translated/order.js:3302 msgid "Confirm Delete Operation" msgstr "" -#: templates/js/translated/order.js:3264 +#: templates/js/translated/order.js:3303 msgid "Delete Stock Allocation" msgstr "" -#: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398 +#: templates/js/translated/order.js:3348 templates/js/translated/order.js:3437 #: templates/js/translated/stock.js:1602 msgid "Shipped to customer" msgstr "" -#: templates/js/translated/order.js:3317 templates/js/translated/order.js:3407 +#: templates/js/translated/order.js:3356 templates/js/translated/order.js:3446 msgid "Stock location not specified" msgstr "" -#: templates/js/translated/order.js:3721 +#: templates/js/translated/order.js:3760 msgid "Allocate serial numbers" msgstr "" -#: templates/js/translated/order.js:3727 +#: templates/js/translated/order.js:3766 msgid "Purchase stock" msgstr "" -#: templates/js/translated/order.js:3734 templates/js/translated/order.js:3932 +#: templates/js/translated/order.js:3773 templates/js/translated/order.js:3971 msgid "Calculate price" msgstr "" -#: templates/js/translated/order.js:3746 +#: templates/js/translated/order.js:3785 msgid "Cannot be deleted as items have been shipped" msgstr "" -#: templates/js/translated/order.js:3749 +#: templates/js/translated/order.js:3788 msgid "Cannot be deleted as items have been allocated" msgstr "" -#: templates/js/translated/order.js:3831 +#: templates/js/translated/order.js:3870 msgid "Allocate Serial Numbers" msgstr "" -#: templates/js/translated/order.js:3940 +#: templates/js/translated/order.js:3979 msgid "Update Unit Price" msgstr "" -#: templates/js/translated/order.js:3954 +#: templates/js/translated/order.js:3993 msgid "No matching line items" msgstr "" -#: templates/js/translated/order.js:4190 +#: templates/js/translated/order.js:4229 msgid "No matching lines" msgstr "" @@ -9319,12 +9337,12 @@ msgstr "" msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:586 templates/js/translated/part.js:1470 +#: templates/js/translated/part.js:586 templates/js/translated/part.js:1478 #: templates/js/translated/table_filters.js:468 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:596 templates/js/translated/part.js:1482 +#: templates/js/translated/part.js:596 msgid "No stock available" msgstr "" @@ -9356,7 +9374,7 @@ msgstr "" msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1553 +#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1549 msgid "No parts found" msgstr "" @@ -9368,100 +9386,124 @@ msgstr "" msgid "No category" msgstr "" -#: templates/js/translated/part.js:1577 templates/js/translated/part.js:1820 +#: templates/js/translated/part.js:1476 +msgid "No stock" +msgstr "" + +#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816 #: templates/js/translated/stock.js:2347 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:1593 +#: templates/js/translated/part.js:1589 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:1659 +#: templates/js/translated/part.js:1655 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:1664 +#: templates/js/translated/part.js:1660 msgid "Set Part Category" msgstr "" -#: templates/js/translated/part.js:1669 +#: templates/js/translated/part.js:1665 msgid "Select Part Category" msgstr "" -#: templates/js/translated/part.js:1682 +#: templates/js/translated/part.js:1678 msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1839 templates/js/translated/stock.js:2366 +#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2366 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:1918 +#: templates/js/translated/part.js:1914 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:1934 +#: templates/js/translated/part.js:1930 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:1992 +#: templates/js/translated/part.js:1988 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2043 templates/js/translated/stock.js:1299 +#: templates/js/translated/part.js:2039 templates/js/translated/stock.js:1299 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:2044 templates/js/translated/stock.js:1300 +#: templates/js/translated/part.js:2040 templates/js/translated/stock.js:1300 #: templates/js/translated/stock.js:1560 msgid "Delete test result" msgstr "" -#: templates/js/translated/part.js:2050 +#: templates/js/translated/part.js:2046 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2072 +#: templates/js/translated/part.js:2068 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2086 +#: templates/js/translated/part.js:2082 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2111 +#: templates/js/translated/part.js:2107 #, python-brace-format msgid "No ${human_name} information found" msgstr "" -#: templates/js/translated/part.js:2168 +#: templates/js/translated/part.js:2164 #, python-brace-format msgid "Edit ${human_name}" msgstr "" -#: templates/js/translated/part.js:2169 +#: templates/js/translated/part.js:2165 #, python-brace-format msgid "Delete ${human_name}" msgstr "" -#: templates/js/translated/part.js:2283 -msgid "Current Stock" +#: templates/js/translated/part.js:2330 templates/js/translated/part.js:2331 +msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:2316 +#: templates/js/translated/part.js:2333 +msgid "Specified date is in the past" +msgstr "" + +#: templates/js/translated/part.js:2339 +msgid "Speculative" +msgstr "" + +#: templates/js/translated/part.js:2389 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2342 +#: templates/js/translated/part.js:2395 +msgid "Error fetching scheduling information for this part" +msgstr "" + +#: templates/js/translated/part.js:2491 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2412 +#: templates/js/translated/part.js:2507 +msgid "Maximum Quantity" +msgstr "" + +#: templates/js/translated/part.js:2533 +msgid "Minimum Stock Level" +msgstr "" + +#: templates/js/translated/part.js:2627 msgid "Single Price" msgstr "" -#: templates/js/translated/part.js:2431 +#: templates/js/translated/part.js:2646 msgid "Single Price Difference" msgstr "" @@ -10222,10 +10264,6 @@ msgstr "" msgid "Hide/Show pagination" msgstr "" -#: templates/js/translated/tables.js:558 -msgid "Refresh" -msgstr "" - #: templates/js/translated/tables.js:561 msgid "Toggle" msgstr "" diff --git a/InvenTree/locale/zh/LC_MESSAGES/django.po b/InvenTree/locale/zh/LC_MESSAGES/django.po index faa8a7dab7..94546314a7 100644 --- a/InvenTree/locale/zh/LC_MESSAGES/django.po +++ b/InvenTree/locale/zh/LC_MESSAGES/django.po @@ -2,8 +2,8 @@ msgid "" msgstr "" "Project-Id-Version: inventree\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2022-08-16 11:53+0000\n" -"PO-Revision-Date: 2022-08-16 21:35\n" +"POT-Creation-Date: 2022-08-18 05:14+0000\n" +"PO-Revision-Date: 2022-08-18 21:39\n" "Last-Translator: \n" "Language-Team: Chinese Simplified\n" "Language: zh_CN\n" @@ -40,10 +40,10 @@ msgstr "输入日期" #: stock/serializers.py:458 stock/serializers.py:539 stock/serializers.py:825 #: stock/serializers.py:924 stock/serializers.py:1056 #: stock/templates/stock/stock_sidebar.html:25 -#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1101 -#: templates/js/translated/company.js:964 templates/js/translated/order.js:2104 -#: templates/js/translated/order.js:2255 templates/js/translated/order.js:2753 -#: templates/js/translated/order.js:3704 templates/js/translated/order.js:4102 +#: templates/js/translated/barcode.js:100 templates/js/translated/bom.js:1099 +#: templates/js/translated/company.js:964 templates/js/translated/order.js:2143 +#: templates/js/translated/order.js:2294 templates/js/translated/order.js:2792 +#: templates/js/translated/order.js:3743 templates/js/translated/order.js:4141 #: templates/js/translated/stock.js:1374 templates/js/translated/stock.js:1980 msgid "Notes" msgstr "备注" @@ -211,11 +211,11 @@ msgstr "选择附件" #: InvenTree/models.py:402 company/models.py:124 company/models.py:276 #: company/models.py:510 order/models.py:84 order/models.py:1245 -#: part/models.py:802 +#: part/models.py:802 part/templates/part/part_scheduling.html:11 #: report/templates/report/inventree_build_order_base.html:164 #: templates/js/translated/company.js:656 -#: templates/js/translated/company.js:948 templates/js/translated/order.js:2742 -#: templates/js/translated/part.js:1514 +#: templates/js/translated/company.js:948 templates/js/translated/order.js:2781 +#: templates/js/translated/part.js:1510 msgid "Link" msgstr "链接" @@ -235,8 +235,8 @@ msgstr "文件注释" #: InvenTree/models.py:412 InvenTree/models.py:413 common/models.py:1665 #: common/models.py:1666 common/models.py:1889 common/models.py:1890 -#: common/models.py:2152 common/models.py:2153 part/models.py:2200 -#: part/models.py:2220 plugin/models.py:256 plugin/models.py:257 +#: common/models.py:2152 common/models.py:2153 part/models.py:2247 +#: part/models.py:2267 plugin/models.py:256 plugin/models.py:257 #: report/templates/report/inventree_test_report_base.html:96 #: templates/js/translated/stock.js:2641 msgid "User" @@ -277,7 +277,7 @@ msgstr "选择无效" #: InvenTree/models.py:537 InvenTree/models.py:538 common/models.py:1875 #: company/models.py:358 label/models.py:101 part/models.py:746 -#: part/models.py:2378 plugin/models.py:94 report/models.py:152 +#: part/models.py:2425 plugin/models.py:94 report/models.py:152 #: templates/InvenTree/settings/mixins/urls.html:13 #: templates/InvenTree/settings/plugin.html:51 #: templates/InvenTree/settings/plugin.html:134 @@ -287,7 +287,7 @@ msgstr "选择无效" #: templates/js/translated/company.js:758 #: templates/js/translated/notification.js:71 #: templates/js/translated/part.js:688 templates/js/translated/part.js:840 -#: templates/js/translated/part.js:1906 templates/js/translated/stock.js:2392 +#: templates/js/translated/part.js:1902 templates/js/translated/stock.js:2392 msgid "Name" msgstr "名称" @@ -297,19 +297,20 @@ msgstr "名称" #: company/templates/company/manufacturer_part.html:75 #: company/templates/company/supplier_part.html:87 label/models.py:108 #: order/models.py:82 part/models.py:769 part/templates/part/category.html:80 -#: part/templates/part/part_base.html:167 report/models.py:165 +#: part/templates/part/part_base.html:167 +#: part/templates/part/part_scheduling.html:12 report/models.py:165 #: report/models.py:507 report/models.py:551 #: report/templates/report/inventree_build_order_base.html:117 #: stock/templates/stock/location.html:108 #: templates/InvenTree/settings/plugin_settings.html:33 -#: templates/js/translated/bom.js:554 templates/js/translated/bom.js:848 -#: templates/js/translated/build.js:2471 templates/js/translated/company.js:409 +#: templates/js/translated/bom.js:553 templates/js/translated/bom.js:846 +#: templates/js/translated/build.js:2504 templates/js/translated/company.js:409 #: templates/js/translated/company.js:667 -#: templates/js/translated/company.js:959 templates/js/translated/order.js:1720 -#: templates/js/translated/order.js:1952 templates/js/translated/order.js:2531 +#: templates/js/translated/company.js:959 templates/js/translated/order.js:1759 +#: templates/js/translated/order.js:1991 templates/js/translated/order.js:2570 #: templates/js/translated/part.js:747 templates/js/translated/part.js:1153 -#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1942 -#: templates/js/translated/part.js:2011 templates/js/translated/stock.js:1743 +#: templates/js/translated/part.js:1428 templates/js/translated/part.js:1938 +#: templates/js/translated/part.js:2007 templates/js/translated/stock.js:1743 #: templates/js/translated/stock.js:2424 templates/js/translated/stock.js:2478 msgid "Description" msgstr "描述信息" @@ -323,7 +324,7 @@ msgid "parent" msgstr "上级项" #: InvenTree/models.py:560 InvenTree/models.py:561 -#: templates/js/translated/part.js:1948 templates/js/translated/stock.js:2430 +#: templates/js/translated/part.js:1944 templates/js/translated/stock.js:2430 msgid "Path" msgstr "" @@ -335,7 +336,7 @@ msgstr "服务器错误" msgid "An error has been logged by the server." msgstr "服务器记录了一个错误。" -#: InvenTree/serializers.py:55 part/models.py:2699 +#: InvenTree/serializers.py:55 part/models.py:2746 msgid "Must be a valid number" msgstr "必须是有效数字" @@ -541,7 +542,7 @@ msgid "Returned" msgstr "已退回" #: InvenTree/status_codes.py:141 order/models.py:1128 -#: templates/js/translated/order.js:3330 templates/js/translated/order.js:3679 +#: templates/js/translated/order.js:3369 templates/js/translated/order.js:3718 msgid "Shipped" msgstr "已发货" @@ -728,7 +729,7 @@ msgstr "上级生产选项无效" #: report/templates/report/inventree_build_order_base.html:105 #: templates/email/build_order_completed.html:16 #: templates/email/overdue_build_order.html:15 -#: templates/js/translated/build.js:731 +#: templates/js/translated/build.js:763 msgid "Build Order" msgstr "生产订单" @@ -747,14 +748,14 @@ msgid "Build Order Reference" msgstr "相关生产订单" #: build/models.py:166 order/models.py:240 order/models.py:623 -#: order/models.py:904 part/models.py:2617 +#: order/models.py:904 part/models.py:2664 #: part/templates/part/upload_bom.html:54 #: report/templates/report/inventree_po_report.html:91 #: report/templates/report/inventree_so_report.html:92 -#: templates/js/translated/bom.js:692 templates/js/translated/bom.js:855 -#: templates/js/translated/build.js:1779 templates/js/translated/order.js:1983 -#: templates/js/translated/order.js:2184 templates/js/translated/order.js:3523 -#: templates/js/translated/order.js:4031 +#: templates/js/translated/bom.js:690 templates/js/translated/bom.js:853 +#: templates/js/translated/build.js:1811 templates/js/translated/order.js:2022 +#: templates/js/translated/order.js:2223 templates/js/translated/order.js:3562 +#: templates/js/translated/order.js:4070 msgid "Reference" msgstr "引用" @@ -762,7 +763,7 @@ msgstr "引用" msgid "Brief description of the build" msgstr "生产的简短描述." -#: build/models.py:185 build/templates/build/build_base.html:169 +#: build/models.py:185 build/templates/build/build_base.html:172 #: build/templates/build/detail.html:87 msgid "Parent Build" msgstr "上级生产" @@ -771,13 +772,13 @@ msgstr "上级生产" msgid "BuildOrder to which this build is allocated" msgstr "此次生产匹配的订单" -#: build/models.py:191 build/templates/build/build_base.html:77 +#: build/models.py:191 build/templates/build/build_base.html:80 #: build/templates/build/detail.html:29 company/models.py:670 #: order/models.py:1001 order/models.py:1112 order/models.py:1113 -#: part/models.py:343 part/models.py:2146 part/models.py:2161 -#: part/models.py:2180 part/models.py:2198 part/models.py:2297 -#: part/models.py:2417 part/models.py:2507 part/models.py:2592 -#: part/models.py:2868 part/serializers.py:813 +#: part/models.py:343 part/models.py:2193 part/models.py:2208 +#: part/models.py:2227 part/models.py:2245 part/models.py:2344 +#: part/models.py:2464 part/models.py:2554 part/models.py:2639 +#: part/models.py:2915 part/serializers.py:813 #: part/templates/part/part_app_base.html:8 #: part/templates/part/part_pricing.html:12 #: part/templates/part/upload_bom.html:52 @@ -789,17 +790,17 @@ msgstr "此次生产匹配的订单" #: templates/email/build_order_required_stock.html:17 #: templates/email/low_stock_notification.html:16 #: templates/email/overdue_build_order.html:16 -#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:553 -#: templates/js/translated/bom.js:691 templates/js/translated/bom.js:802 -#: templates/js/translated/build.js:1156 templates/js/translated/build.js:1649 -#: templates/js/translated/build.js:2085 templates/js/translated/build.js:2476 +#: templates/js/translated/barcode.js:435 templates/js/translated/bom.js:552 +#: templates/js/translated/bom.js:689 templates/js/translated/bom.js:800 +#: templates/js/translated/build.js:1188 templates/js/translated/build.js:1681 +#: templates/js/translated/build.js:2118 templates/js/translated/build.js:2509 #: templates/js/translated/company.js:266 #: templates/js/translated/company.js:496 #: templates/js/translated/company.js:608 -#: templates/js/translated/company.js:868 templates/js/translated/order.js:103 -#: templates/js/translated/order.js:934 templates/js/translated/order.js:1387 -#: templates/js/translated/order.js:1937 templates/js/translated/order.js:2885 -#: templates/js/translated/order.js:3281 templates/js/translated/order.js:3507 +#: templates/js/translated/company.js:868 templates/js/translated/order.js:104 +#: templates/js/translated/order.js:973 templates/js/translated/order.js:1426 +#: templates/js/translated/order.js:1976 templates/js/translated/order.js:2924 +#: templates/js/translated/order.js:3320 templates/js/translated/order.js:3546 #: templates/js/translated/part.js:1138 templates/js/translated/part.js:1210 #: templates/js/translated/part.js:1406 templates/js/translated/stock.js:586 #: templates/js/translated/stock.js:751 templates/js/translated/stock.js:958 @@ -821,7 +822,7 @@ msgid "SalesOrder to which this build is allocated" msgstr "此次生产匹配的销售订单" #: build/models.py:213 build/serializers.py:800 -#: templates/js/translated/build.js:2073 templates/js/translated/order.js:2873 +#: templates/js/translated/build.js:2106 templates/js/translated/order.js:2912 msgid "Source Location" msgstr "来源地点" @@ -862,7 +863,7 @@ msgid "Build status code" msgstr "生产状态代码" #: build/models.py:251 build/serializers.py:225 order/serializers.py:447 -#: stock/models.py:662 templates/js/translated/order.js:1247 +#: stock/models.py:662 templates/js/translated/order.js:1286 msgid "Batch Code" msgstr "批量代码" @@ -871,7 +872,7 @@ msgid "Batch code for this build output" msgstr "此生产产出的批量代码" #: build/models.py:258 order/models.py:86 part/models.py:938 -#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2544 +#: part/templates/part/part_base.html:305 templates/js/translated/order.js:2583 msgid "Creation Date" msgstr "创建日期" @@ -884,7 +885,7 @@ msgid "Target date for build completion. Build will be overdue after this date." msgstr "生产完成的目标日期。生产将在此日期之后逾期。" #: build/models.py:266 order/models.py:286 -#: templates/js/translated/build.js:2553 +#: templates/js/translated/build.js:2586 msgid "Completion Date" msgstr "完成日期:" @@ -892,7 +893,7 @@ msgstr "完成日期:" msgid "completed by" msgstr "完成人" -#: build/models.py:280 templates/js/translated/build.js:2521 +#: build/models.py:280 templates/js/translated/build.js:2554 msgid "Issued by" msgstr "发布者" @@ -900,12 +901,12 @@ msgstr "发布者" msgid "User who issued this build order" msgstr "发布此生产订单的用户" -#: build/models.py:289 build/templates/build/build_base.html:190 +#: build/models.py:289 build/templates/build/build_base.html:193 #: build/templates/build/detail.html:115 order/models.py:100 #: order/templates/order/order_base.html:176 #: order/templates/order/sales_order_base.html:183 part/models.py:942 #: report/templates/report/inventree_build_order_base.html:158 -#: templates/js/translated/build.js:2533 templates/js/translated/order.js:1754 +#: templates/js/translated/build.js:2566 templates/js/translated/order.js:1793 msgid "Responsible" msgstr "责任人" @@ -972,7 +973,7 @@ msgid "Selected stock item not found in BOM" msgstr "在BOM中找不到选定的库存项" #: build/models.py:1328 stock/templates/stock/item_base.html:177 -#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2455 +#: templates/InvenTree/search.html:137 templates/js/translated/build.js:2488 #: templates/navbar.html:38 msgid "Build" msgstr "生产" @@ -986,11 +987,11 @@ msgstr "生产以分配部件" #: stock/serializers.py:882 stock/templates/stock/item_base.html:10 #: stock/templates/stock/item_base.html:23 #: stock/templates/stock/item_base.html:199 -#: templates/js/translated/build.js:741 templates/js/translated/build.js:746 -#: templates/js/translated/build.js:2087 templates/js/translated/build.js:2638 -#: templates/js/translated/order.js:104 templates/js/translated/order.js:2886 -#: templates/js/translated/order.js:3188 templates/js/translated/order.js:3193 -#: templates/js/translated/order.js:3288 templates/js/translated/order.js:3380 +#: templates/js/translated/build.js:773 templates/js/translated/build.js:778 +#: templates/js/translated/build.js:2120 templates/js/translated/build.js:2671 +#: templates/js/translated/order.js:105 templates/js/translated/order.js:2925 +#: templates/js/translated/order.js:3227 templates/js/translated/order.js:3232 +#: templates/js/translated/order.js:3327 templates/js/translated/order.js:3419 #: templates/js/translated/stock.js:587 templates/js/translated/stock.js:752 #: templates/js/translated/stock.js:2577 msgid "Stock Item" @@ -1001,13 +1002,13 @@ msgid "Source stock item" msgstr "源库存项" #: build/models.py:1358 build/serializers.py:193 -#: build/templates/build/build_base.html:82 +#: build/templates/build/build_base.html:85 #: build/templates/build/detail.html:34 common/models.py:1697 #: company/templates/company/supplier_part.html:279 order/models.py:897 #: order/models.py:1423 order/serializers.py:1155 #: order/templates/order/order_wizard/match_parts.html:30 part/forms.py:40 -#: part/models.py:2608 part/templates/part/detail.html:937 -#: part/templates/part/detail.html:1023 +#: part/models.py:2655 part/templates/part/detail.html:951 +#: part/templates/part/detail.html:1037 #: part/templates/part/part_pricing.html:16 #: part/templates/part/upload_bom.html:53 #: report/templates/report/inventree_build_order_base.html:113 @@ -1018,20 +1019,20 @@ msgstr "源库存项" #: stock/serializers.py:293 stock/templates/stock/item_base.html:292 #: stock/templates/stock/item_base.html:300 #: templates/email/build_order_completed.html:18 -#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:693 -#: templates/js/translated/bom.js:863 templates/js/translated/build.js:426 -#: templates/js/translated/build.js:578 templates/js/translated/build.js:768 -#: templates/js/translated/build.js:1178 templates/js/translated/build.js:1675 -#: templates/js/translated/build.js:2088 +#: templates/js/translated/barcode.js:437 templates/js/translated/bom.js:691 +#: templates/js/translated/bom.js:861 templates/js/translated/build.js:458 +#: templates/js/translated/build.js:610 templates/js/translated/build.js:800 +#: templates/js/translated/build.js:1210 templates/js/translated/build.js:1707 +#: templates/js/translated/build.js:2121 #: templates/js/translated/model_renderers.js:120 -#: templates/js/translated/order.js:120 templates/js/translated/order.js:937 -#: templates/js/translated/order.js:1989 templates/js/translated/order.js:2190 -#: templates/js/translated/order.js:2887 templates/js/translated/order.js:3207 -#: templates/js/translated/order.js:3294 templates/js/translated/order.js:3386 -#: templates/js/translated/order.js:3529 templates/js/translated/order.js:4037 -#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2156 -#: templates/js/translated/part.js:2387 templates/js/translated/part.js:2421 -#: templates/js/translated/part.js:2499 templates/js/translated/stock.js:458 +#: templates/js/translated/order.js:121 templates/js/translated/order.js:976 +#: templates/js/translated/order.js:2028 templates/js/translated/order.js:2229 +#: templates/js/translated/order.js:2926 templates/js/translated/order.js:3246 +#: templates/js/translated/order.js:3333 templates/js/translated/order.js:3425 +#: templates/js/translated/order.js:3568 templates/js/translated/order.js:4076 +#: templates/js/translated/part.js:1038 templates/js/translated/part.js:2152 +#: templates/js/translated/part.js:2602 templates/js/translated/part.js:2636 +#: templates/js/translated/part.js:2714 templates/js/translated/stock.js:458 #: templates/js/translated/stock.js:612 templates/js/translated/stock.js:782 #: templates/js/translated/stock.js:2626 templates/js/translated/stock.js:2711 msgid "Quantity" @@ -1050,7 +1051,7 @@ msgid "Destination stock item" msgstr "目标库存项" #: build/serializers.py:138 build/serializers.py:674 -#: templates/js/translated/build.js:1166 +#: templates/js/translated/build.js:1198 msgid "Build Output" msgstr "生产产出" @@ -1090,7 +1091,7 @@ msgid "Integer quantity required, as the bill of materials contains trackable pa msgstr "需要整数型数值,因为BOM包含可追踪的部件" #: build/serializers.py:232 order/serializers.py:455 order/serializers.py:1159 -#: stock/serializers.py:311 templates/js/translated/order.js:1258 +#: stock/serializers.py:311 templates/js/translated/order.js:1297 #: templates/js/translated/stock.js:271 templates/js/translated/stock.js:459 msgid "Serial Numbers" msgstr "序列号" @@ -1120,10 +1121,10 @@ msgstr "必须提供生产产出列表" #: stock/serializers.py:917 stock/serializers.py:1150 #: stock/templates/stock/item_base.html:390 #: templates/js/translated/barcode.js:436 -#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:753 -#: templates/js/translated/build.js:1687 templates/js/translated/order.js:1285 -#: templates/js/translated/order.js:3200 templates/js/translated/order.js:3305 -#: templates/js/translated/order.js:3313 templates/js/translated/order.js:3394 +#: templates/js/translated/barcode.js:618 templates/js/translated/build.js:785 +#: templates/js/translated/build.js:1719 templates/js/translated/order.js:1324 +#: templates/js/translated/order.js:3239 templates/js/translated/order.js:3344 +#: templates/js/translated/order.js:3352 templates/js/translated/order.js:3433 #: templates/js/translated/part.js:181 templates/js/translated/stock.js:588 #: templates/js/translated/stock.js:753 templates/js/translated/stock.js:960 #: templates/js/translated/stock.js:1854 templates/js/translated/stock.js:2518 @@ -1134,12 +1135,12 @@ msgstr "地点" msgid "Location for completed build outputs" msgstr "已完成生产产出的仓储地点" -#: build/serializers.py:373 build/templates/build/build_base.html:142 +#: build/serializers.py:373 build/templates/build/build_base.html:145 #: build/templates/build/detail.html:62 order/models.py:642 #: order/serializers.py:465 stock/templates/stock/item_base.html:423 -#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2505 -#: templates/js/translated/order.js:1392 templates/js/translated/order.js:1724 -#: templates/js/translated/order.js:2536 templates/js/translated/stock.js:1829 +#: templates/js/translated/barcode.js:182 templates/js/translated/build.js:2538 +#: templates/js/translated/order.js:1431 templates/js/translated/order.js:1763 +#: templates/js/translated/order.js:2575 templates/js/translated/stock.js:1829 #: templates/js/translated/stock.js:2595 templates/js/translated/stock.js:2727 msgid "Status" msgstr "状态" @@ -1196,7 +1197,7 @@ msgstr "接受未分配的" msgid "Accept that stock items have not been fully allocated to this build order" msgstr "接受库存项未被完成分配至此生产订单" -#: build/serializers.py:522 templates/js/translated/build.js:195 +#: build/serializers.py:522 templates/js/translated/build.js:227 msgid "Required stock has not been fully allocated" msgstr "所需库存尚未完全分配" @@ -1208,7 +1209,7 @@ msgstr "接受未完成" msgid "Accept that the required number of build outputs have not been completed" msgstr "接受所需的生产产出未完成" -#: build/serializers.py:538 templates/js/translated/build.js:199 +#: build/serializers.py:538 templates/js/translated/build.js:231 msgid "Required build quantity has not been completed" msgstr "所需生产数量尚未完成" @@ -1216,8 +1217,8 @@ msgstr "所需生产数量尚未完成" msgid "Build order has incomplete outputs" msgstr "生产订单有未完成的产出" -#: build/serializers.py:577 build/serializers.py:622 part/models.py:2726 -#: part/models.py:2860 +#: build/serializers.py:577 build/serializers.py:622 part/models.py:2773 +#: part/models.py:2907 msgid "BOM Item" msgstr "BOM项" @@ -1322,66 +1323,70 @@ msgid "Cancel Build" msgstr "取消生产" #: build/templates/build/build_base.html:59 +msgid "Duplicate Build" +msgstr "" + +#: build/templates/build/build_base.html:62 msgid "Delete Build" msgstr "删除生产" -#: build/templates/build/build_base.html:64 -#: build/templates/build/build_base.html:65 +#: build/templates/build/build_base.html:67 +#: build/templates/build/build_base.html:68 msgid "Complete Build" msgstr "生产完成" -#: build/templates/build/build_base.html:87 +#: build/templates/build/build_base.html:90 msgid "Build Description" msgstr "" -#: build/templates/build/build_base.html:95 +#: build/templates/build/build_base.html:98 msgid "No build outputs have been created for this build order" msgstr "针对此生产订单,尚未创建生产产出" -#: build/templates/build/build_base.html:101 +#: build/templates/build/build_base.html:104 #, python-format msgid "This Build Order is allocated to Sales Order %(link)s" msgstr "" -#: build/templates/build/build_base.html:108 +#: build/templates/build/build_base.html:111 #, python-format msgid "This Build Order is a child of Build Order %(link)s" msgstr "" -#: build/templates/build/build_base.html:115 +#: build/templates/build/build_base.html:118 msgid "Build Order is ready to mark as completed" msgstr "" -#: build/templates/build/build_base.html:120 +#: build/templates/build/build_base.html:123 msgid "Build Order cannot be completed as outstanding outputs remain" msgstr "" -#: build/templates/build/build_base.html:125 +#: build/templates/build/build_base.html:128 msgid "Required build quantity has not yet been completed" msgstr "所需生产数量尚未完成" -#: build/templates/build/build_base.html:130 +#: build/templates/build/build_base.html:133 msgid "Stock has not been fully allocated to this Build Order" msgstr "" -#: build/templates/build/build_base.html:151 +#: build/templates/build/build_base.html:154 #: build/templates/build/detail.html:131 order/models.py:910 #: order/templates/order/order_base.html:162 #: order/templates/order/sales_order_base.html:164 #: report/templates/report/inventree_build_order_base.html:125 -#: templates/js/translated/build.js:2545 templates/js/translated/order.js:1741 -#: templates/js/translated/order.js:2051 templates/js/translated/order.js:2552 -#: templates/js/translated/order.js:3592 templates/js/translated/part.js:1042 +#: templates/js/translated/build.js:2578 templates/js/translated/order.js:1780 +#: templates/js/translated/order.js:2090 templates/js/translated/order.js:2591 +#: templates/js/translated/order.js:3631 templates/js/translated/part.js:1042 msgid "Target Date" msgstr "预计日期" -#: build/templates/build/build_base.html:156 +#: build/templates/build/build_base.html:159 #, python-format msgid "This build was due on %(target)s" msgstr "此次生产的截止日期为 %(target)s" -#: build/templates/build/build_base.html:156 -#: build/templates/build/build_base.html:201 +#: build/templates/build/build_base.html:159 +#: build/templates/build/build_base.html:204 #: order/templates/order/order_base.html:98 #: order/templates/order/sales_order_base.html:94 #: templates/js/translated/table_filters.js:320 @@ -1390,14 +1395,14 @@ msgstr "此次生产的截止日期为 %(target)s" msgid "Overdue" msgstr "逾期" -#: build/templates/build/build_base.html:163 +#: build/templates/build/build_base.html:166 #: build/templates/build/detail.html:67 build/templates/build/detail.html:142 #: order/templates/order/sales_order_base.html:171 #: templates/js/translated/table_filters.js:400 msgid "Completed" msgstr "已完成" -#: build/templates/build/build_base.html:176 +#: build/templates/build/build_base.html:179 #: build/templates/build/detail.html:94 order/models.py:1105 #: order/models.py:1199 order/models.py:1330 #: order/templates/order/sales_order_base.html:9 @@ -1406,17 +1411,17 @@ msgstr "已完成" #: report/templates/report/inventree_so_report.html:77 #: stock/templates/stock/item_base.html:370 #: templates/email/overdue_sales_order.html:15 -#: templates/js/translated/order.js:2498 +#: templates/js/translated/order.js:2537 msgid "Sales Order" msgstr "销售订单" -#: build/templates/build/build_base.html:183 +#: build/templates/build/build_base.html:186 #: build/templates/build/detail.html:108 #: report/templates/report/inventree_build_order_base.html:152 msgid "Issued By" msgstr "发布者" -#: build/templates/build/build_base.html:245 +#: build/templates/build/build_base.html:256 msgid "Delete Build Order" msgstr "删除生产订单" @@ -1433,7 +1438,7 @@ msgid "Stock can be taken from any available location." msgstr "" #: build/templates/build/detail.html:49 order/models.py:1023 -#: templates/js/translated/order.js:1393 templates/js/translated/order.js:2093 +#: templates/js/translated/order.js:1432 templates/js/translated/order.js:2132 msgid "Destination" msgstr "" @@ -1447,7 +1452,7 @@ msgstr "" #: build/templates/build/detail.html:80 #: stock/templates/stock/item_base.html:170 -#: templates/js/translated/build.js:1182 +#: templates/js/translated/build.js:1214 #: templates/js/translated/model_renderers.js:124 #: templates/js/translated/stock.js:1026 templates/js/translated/stock.js:1843 #: templates/js/translated/stock.js:2734 @@ -1459,7 +1464,7 @@ msgstr "" #: build/templates/build/detail.html:126 #: order/templates/order/order_base.html:149 #: order/templates/order/sales_order_base.html:158 -#: templates/js/translated/build.js:2513 +#: templates/js/translated/build.js:2546 msgid "Created" msgstr "已创建" @@ -1479,7 +1484,7 @@ msgstr "子生产订单" msgid "Allocate Stock to Build" msgstr "为生产分配库存" -#: build/templates/build/detail.html:176 templates/js/translated/build.js:1901 +#: build/templates/build/detail.html:176 templates/js/translated/build.js:1934 msgid "Unallocate stock" msgstr "未分配库存" @@ -1510,7 +1515,7 @@ msgstr "订单所需部件" #: build/templates/build/detail.html:187 #: company/templates/company/detail.html:37 #: company/templates/company/detail.html:85 -#: part/templates/part/category.html:183 templates/js/translated/order.js:977 +#: part/templates/part/category.html:183 templates/js/translated/order.js:1016 msgid "Order Parts" msgstr "订购商品" @@ -1582,7 +1587,7 @@ msgstr "" #: order/templates/order/po_sidebar.html:9 #: order/templates/order/purchase_order_detail.html:82 #: order/templates/order/sales_order_detail.html:135 -#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:207 +#: order/templates/order/so_sidebar.html:15 part/templates/part/detail.html:212 #: part/templates/part/part_sidebar.html:57 stock/templates/stock/item.html:117 #: stock/templates/stock/stock_sidebar.html:23 msgid "Attachments" @@ -1600,7 +1605,7 @@ msgstr "" msgid "All untracked stock items have been allocated" msgstr "" -#: build/templates/build/index.html:18 part/templates/part/detail.html:313 +#: build/templates/build/index.html:18 part/templates/part/detail.html:318 msgid "New Build Order" msgstr "新建生产订单" @@ -1845,7 +1850,7 @@ msgstr "" msgid "Copy category parameter templates when creating a part" msgstr "" -#: common/models.py:951 part/models.py:2419 report/models.py:158 +#: common/models.py:951 part/models.py:2466 report/models.py:158 #: templates/js/translated/table_filters.js:38 #: templates/js/translated/table_filters.js:484 msgid "Template" @@ -1855,7 +1860,7 @@ msgstr "模板" msgid "Parts are templates by default" msgstr "" -#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1448 +#: common/models.py:958 part/models.py:894 templates/js/translated/bom.js:1446 #: templates/js/translated/table_filters.js:176 #: templates/js/translated/table_filters.js:447 msgid "Assembly" @@ -2591,7 +2596,7 @@ msgstr "" #: common/models.py:1705 company/serializers.py:366 #: company/templates/company/supplier_part.html:284 order/models.py:938 -#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2161 +#: templates/js/translated/part.js:1069 templates/js/translated/part.js:2157 msgid "Price" msgstr "价格" @@ -2830,7 +2835,7 @@ msgstr "该公司使用的默认货币" #: company/models.py:248 company/models.py:481 stock/models.py:598 #: stock/serializers.py:87 stock/templates/stock/item_base.html:148 -#: templates/js/translated/bom.js:543 +#: templates/js/translated/bom.js:542 msgid "Base Part" msgstr "" @@ -2859,7 +2864,7 @@ msgstr "选择制造商" #: templates/js/translated/company.js:269 #: templates/js/translated/company.js:497 #: templates/js/translated/company.js:649 -#: templates/js/translated/company.js:937 templates/js/translated/order.js:1971 +#: templates/js/translated/company.js:937 templates/js/translated/order.js:2010 #: templates/js/translated/part.js:247 templates/js/translated/part.js:1027 msgid "MPN" msgstr "" @@ -2899,7 +2904,7 @@ msgstr "数值" msgid "Parameter value" msgstr "参数值" -#: company/models.py:372 part/models.py:888 part/models.py:2386 +#: company/models.py:372 part/models.py:888 part/models.py:2433 #: part/templates/part/part_base.html:280 #: templates/InvenTree/settings/settings.html:352 #: templates/js/translated/company.js:770 templates/js/translated/part.js:855 @@ -2921,7 +2926,7 @@ msgstr "" #: templates/email/overdue_purchase_order.html:16 #: templates/js/translated/company.js:268 #: templates/js/translated/company.js:401 -#: templates/js/translated/company.js:893 templates/js/translated/order.js:1707 +#: templates/js/translated/company.js:893 templates/js/translated/order.js:1746 #: templates/js/translated/part.js:217 templates/js/translated/part.js:995 #: templates/js/translated/table_filters.js:423 msgid "Supplier" @@ -2933,7 +2938,7 @@ msgstr "选择供应商" #: company/models.py:497 company/templates/company/supplier_part.html:118 #: part/bom.py:238 part/bom.py:266 templates/js/translated/company.js:267 -#: templates/js/translated/order.js:1958 templates/js/translated/part.js:228 +#: templates/js/translated/order.js:1997 templates/js/translated/part.js:228 #: templates/js/translated/part.js:1013 msgid "SKU" msgstr "" @@ -2955,17 +2960,17 @@ msgid "Supplier part description" msgstr "供应商商品描述" #: company/models.py:522 company/templates/company/supplier_part.html:146 -#: part/models.py:2620 part/templates/part/upload_bom.html:59 +#: part/models.py:2667 part/templates/part/upload_bom.html:59 #: report/templates/report/inventree_po_report.html:92 #: report/templates/report/inventree_so_report.html:93 stock/serializers.py:401 msgid "Note" msgstr "备注" -#: company/models.py:526 part/models.py:1742 +#: company/models.py:526 part/models.py:1789 msgid "base cost" msgstr "" -#: company/models.py:526 part/models.py:1742 +#: company/models.py:526 part/models.py:1789 msgid "Minimum charge (e.g. stocking fee)" msgstr "最低收费(例如库存费)" @@ -2979,7 +2984,7 @@ msgstr "打包" msgid "Part packaging" msgstr "商品打包" -#: company/models.py:530 part/models.py:1744 +#: company/models.py:530 part/models.py:1791 msgid "multiple" msgstr "" @@ -2990,8 +2995,8 @@ msgstr "" #: company/models.py:538 company/templates/company/supplier_part.html:94 #: templates/email/build_order_required_stock.html:19 #: templates/email/low_stock_notification.html:18 -#: templates/js/translated/bom.js:913 templates/js/translated/build.js:1789 -#: templates/js/translated/build.js:2645 templates/js/translated/company.js:979 +#: templates/js/translated/bom.js:911 templates/js/translated/build.js:1821 +#: templates/js/translated/build.js:2678 templates/js/translated/company.js:979 #: templates/js/translated/part.js:600 templates/js/translated/part.js:603 #: templates/js/translated/table_filters.js:186 msgid "Available" @@ -3028,7 +3033,7 @@ msgid "Company" msgstr "公司" #: company/templates/company/company_base.html:22 -#: templates/js/translated/order.js:540 +#: templates/js/translated/order.js:579 msgid "Create Purchase Order" msgstr "创建采购订单" @@ -3069,7 +3074,7 @@ msgstr "从 URL 下载图片" #: stock/models.py:644 stock/serializers.py:811 #: stock/templates/stock/item_base.html:401 #: templates/email/overdue_sales_order.html:16 -#: templates/js/translated/company.js:393 templates/js/translated/order.js:2513 +#: templates/js/translated/company.js:393 templates/js/translated/order.js:2552 #: templates/js/translated/stock.js:2559 #: templates/js/translated/table_filters.js:427 msgid "Customer" @@ -3105,7 +3110,7 @@ msgstr "创建新的供应商商品" #: company/templates/company/detail.html:19 #: company/templates/company/manufacturer_part.html:123 -#: part/templates/part/detail.html:354 +#: part/templates/part/detail.html:359 msgid "New Supplier Part" msgstr "新建供应商商品" @@ -3134,7 +3139,7 @@ msgstr "制造商商品" msgid "Create new manufacturer part" msgstr "新建制造商商品" -#: company/templates/company/detail.html:66 part/templates/part/detail.html:384 +#: company/templates/company/detail.html:66 part/templates/part/detail.html:389 msgid "New Manufacturer Part" msgstr "新建制造商商品" @@ -3148,7 +3153,7 @@ msgstr "供货商库存" #: order/templates/order/order_base.html:13 #: order/templates/order/purchase_orders.html:8 #: order/templates/order/purchase_orders.html:12 -#: part/templates/part/detail.html:79 part/templates/part/part_sidebar.html:37 +#: part/templates/part/detail.html:84 part/templates/part/part_sidebar.html:37 #: templates/InvenTree/index.html:252 templates/InvenTree/search.html:198 #: templates/InvenTree/settings/sidebar.html:49 #: templates/js/translated/search.js:275 templates/navbar.html:50 @@ -3171,7 +3176,7 @@ msgstr "新建采购订单" #: order/templates/order/sales_order_base.html:13 #: order/templates/order/sales_orders.html:8 #: order/templates/order/sales_orders.html:15 -#: part/templates/part/detail.html:102 part/templates/part/part_sidebar.html:41 +#: part/templates/part/detail.html:107 part/templates/part/part_sidebar.html:41 #: templates/InvenTree/index.html:283 templates/InvenTree/search.html:218 #: templates/InvenTree/settings/sidebar.html:51 #: templates/js/translated/search.js:299 templates/navbar.html:61 @@ -3190,7 +3195,7 @@ msgid "New Sales Order" msgstr "新建销售订单" #: company/templates/company/detail.html:168 -#: templates/js/translated/build.js:1660 +#: templates/js/translated/build.js:1692 msgid "Assigned Stock" msgstr "" @@ -3206,7 +3211,7 @@ msgstr "制造商" #: company/templates/company/manufacturer_part.html:35 #: company/templates/company/supplier_part.html:186 -#: part/templates/part/detail.html:82 part/templates/part/part_base.html:80 +#: part/templates/part/detail.html:87 part/templates/part/part_base.html:80 msgid "Order part" msgstr "订购商品" @@ -3237,13 +3242,13 @@ msgid "Suppliers" msgstr "供应商" #: company/templates/company/manufacturer_part.html:136 -#: part/templates/part/detail.html:365 +#: part/templates/part/detail.html:370 msgid "Delete supplier parts" msgstr "删除供应商商品" #: company/templates/company/manufacturer_part.html:136 #: company/templates/company/manufacturer_part.html:183 -#: part/templates/part/detail.html:366 part/templates/part/detail.html:396 +#: part/templates/part/detail.html:371 part/templates/part/detail.html:401 #: templates/js/translated/forms.js:453 templates/js/translated/helpers.js:33 #: users/models.py:220 msgid "Delete" @@ -3252,12 +3257,12 @@ msgstr "删除" #: company/templates/company/manufacturer_part.html:166 #: company/templates/company/manufacturer_part_sidebar.html:5 #: part/templates/part/category_sidebar.html:19 -#: part/templates/part/detail.html:181 part/templates/part/part_sidebar.html:8 +#: part/templates/part/detail.html:186 part/templates/part/part_sidebar.html:8 msgid "Parameters" msgstr "参数" #: company/templates/company/manufacturer_part.html:170 -#: part/templates/part/detail.html:186 +#: part/templates/part/detail.html:191 #: templates/InvenTree/settings/category.html:12 #: templates/InvenTree/settings/part.html:68 msgid "New Parameter" @@ -3268,7 +3273,7 @@ msgid "Delete parameters" msgstr "删除参数" #: company/templates/company/manufacturer_part.html:245 -#: part/templates/part/detail.html:826 +#: part/templates/part/detail.html:840 msgid "Add Parameter" msgstr "添加参数" @@ -3291,7 +3296,7 @@ msgstr "" #: company/templates/company/supplier_part.html:7 #: company/templates/company/supplier_part.html:24 stock/models.py:607 #: stock/templates/stock/item_base.html:238 -#: templates/js/translated/company.js:909 templates/js/translated/order.js:935 +#: templates/js/translated/company.js:909 templates/js/translated/order.js:974 #: templates/js/translated/stock.js:1933 msgid "Supplier Part" msgstr "供应商商品" @@ -3303,7 +3308,7 @@ msgstr "" #: company/templates/company/supplier_part.html:40 #: company/templates/company/supplier_part.html:41 #: company/templates/company/supplier_part.html:187 -#: part/templates/part/detail.html:83 +#: part/templates/part/detail.html:88 msgid "Order Part" msgstr "订购商品" @@ -3358,7 +3363,7 @@ msgstr "价格信息" #: company/templates/company/supplier_part.html:212 #: company/templates/company/supplier_part.html:326 -#: part/templates/part/prices.html:276 templates/js/translated/part.js:2233 +#: part/templates/part/prices.html:276 templates/js/translated/part.js:2229 msgid "Add Price Break" msgstr "" @@ -3367,12 +3372,12 @@ msgid "No price break information found" msgstr "" #: company/templates/company/supplier_part.html:252 -#: templates/js/translated/part.js:2243 +#: templates/js/translated/part.js:2239 msgid "Delete Price Break" msgstr "" #: company/templates/company/supplier_part.html:266 -#: templates/js/translated/part.js:2257 +#: templates/js/translated/part.js:2253 msgid "Edit Price Break" msgstr "" @@ -3398,10 +3403,9 @@ msgstr "" #: stock/templates/stock/stock_app_base.html:10 #: templates/InvenTree/search.html:151 #: templates/InvenTree/settings/sidebar.html:45 -#: templates/js/translated/bom.js:555 templates/js/translated/part.js:751 -#: templates/js/translated/part.js:1299 templates/js/translated/part.js:1460 -#: templates/js/translated/stock.js:959 templates/js/translated/stock.js:1754 -#: templates/navbar.html:31 +#: templates/js/translated/part.js:751 templates/js/translated/part.js:1299 +#: templates/js/translated/part.js:1460 templates/js/translated/stock.js:959 +#: templates/js/translated/stock.js:1754 templates/navbar.html:31 msgid "Stock" msgstr "库存" @@ -3554,7 +3558,7 @@ msgid "Company from which the items are being ordered" msgstr "订购该商品的公司" #: order/models.py:262 order/templates/order/order_base.html:124 -#: templates/js/translated/order.js:1716 +#: templates/js/translated/order.js:1755 msgid "Supplier Reference" msgstr "" @@ -3611,7 +3615,7 @@ msgid "Target date for order completion. Order will be overdue after this date." msgstr "" #: order/models.py:652 order/models.py:1204 -#: templates/js/translated/order.js:2560 templates/js/translated/order.js:2722 +#: templates/js/translated/order.js:2599 templates/js/translated/order.js:2761 msgid "Shipment Date" msgstr "" @@ -3673,7 +3677,7 @@ msgstr "" #: order/models.py:983 order/models.py:1063 order/models.py:1104 #: order/models.py:1198 order/models.py:1330 -#: templates/js/translated/order.js:3178 +#: templates/js/translated/order.js:3217 msgid "Order" msgstr "" @@ -3683,7 +3687,7 @@ msgstr "" #: report/templates/report/inventree_po_report.html:76 #: stock/templates/stock/item_base.html:184 #: templates/email/overdue_purchase_order.html:15 -#: templates/js/translated/order.js:936 templates/js/translated/order.js:1691 +#: templates/js/translated/order.js:975 templates/js/translated/order.js:1730 #: templates/js/translated/part.js:972 templates/js/translated/stock.js:1913 #: templates/js/translated/stock.js:2540 msgid "Purchase Order" @@ -3694,7 +3698,7 @@ msgid "Supplier part" msgstr "供应商商品" #: order/models.py:1009 order/templates/order/order_base.html:169 -#: templates/js/translated/order.js:1390 templates/js/translated/order.js:2073 +#: templates/js/translated/order.js:1429 templates/js/translated/order.js:2112 #: templates/js/translated/part.js:1064 templates/js/translated/part.js:1091 #: templates/js/translated/table_filters.js:338 msgid "Received" @@ -3880,11 +3884,11 @@ msgstr "" msgid "Select destination location for received items" msgstr "" -#: order/serializers.py:448 templates/js/translated/order.js:1248 +#: order/serializers.py:448 templates/js/translated/order.js:1287 msgid "Enter batch code for incoming stock items" msgstr "" -#: order/serializers.py:456 templates/js/translated/order.js:1259 +#: order/serializers.py:456 templates/js/translated/order.js:1298 msgid "Enter serial numbers for incoming stock items" msgstr "" @@ -4061,10 +4065,6 @@ msgstr "" msgid "Total cost could not be calculated" msgstr "" -#: order/templates/order/order_base.html:243 -msgid "Edit Purchase Order" -msgstr "" - #: order/templates/order/order_wizard/match_parts.html:12 #: part/templates/part/import_wizard/ajax_match_references.html:12 #: part/templates/part/import_wizard/match_references.html:12 @@ -4091,10 +4091,10 @@ msgstr "选择供应商商品" #: part/templates/part/import_wizard/ajax_match_fields.html:64 #: part/templates/part/import_wizard/ajax_match_references.html:42 #: part/templates/part/import_wizard/match_references.html:49 -#: templates/js/translated/bom.js:77 templates/js/translated/build.js:431 -#: templates/js/translated/build.js:583 templates/js/translated/build.js:1974 -#: templates/js/translated/order.js:884 templates/js/translated/order.js:1337 -#: templates/js/translated/order.js:2797 templates/js/translated/stock.js:625 +#: templates/js/translated/bom.js:77 templates/js/translated/build.js:463 +#: templates/js/translated/build.js:615 templates/js/translated/build.js:2007 +#: templates/js/translated/order.js:923 templates/js/translated/order.js:1376 +#: templates/js/translated/order.js:2836 templates/js/translated/stock.js:625 #: templates/js/translated/stock.js:793 #: templates/patterns/wizard/match_fields.html:70 msgid "Remove row" @@ -4130,7 +4130,7 @@ msgstr "" #: order/templates/order/purchase_order_detail.html:26 #: order/templates/order/sales_order_detail.html:22 #: order/templates/order/sales_order_detail.html:255 -#: templates/js/translated/order.js:557 +#: templates/js/translated/order.js:596 msgid "Add Line Item" msgstr "" @@ -4176,7 +4176,7 @@ msgid "Print packing list" msgstr "" #: order/templates/order/sales_order_base.html:60 -#: templates/js/translated/order.js:229 +#: templates/js/translated/order.js:230 msgid "Complete Shipments" msgstr "" @@ -4190,7 +4190,7 @@ msgid "This Sales Order has not been fully allocated" msgstr "" #: order/templates/order/sales_order_base.html:123 -#: templates/js/translated/order.js:2526 +#: templates/js/translated/order.js:2565 msgid "Customer Reference" msgstr "" @@ -4214,8 +4214,8 @@ msgid "Pending Shipments" msgstr "" #: order/templates/order/sales_order_detail.html:72 -#: templates/attachment_table.html:6 templates/js/translated/bom.js:1110 -#: templates/js/translated/build.js:1882 +#: templates/attachment_table.html:6 templates/js/translated/bom.js:1108 +#: templates/js/translated/build.js:1915 msgid "Actions" msgstr "" @@ -4257,35 +4257,35 @@ msgstr "" msgid "Stock produced by Build Order" msgstr "" -#: part/api.py:584 +#: part/api.py:621 msgid "Stock required for Build Order" msgstr "" -#: part/api.py:704 +#: part/api.py:758 msgid "Valid" msgstr "" -#: part/api.py:705 +#: part/api.py:759 msgid "Validate entire Bill of Materials" msgstr "" -#: part/api.py:711 +#: part/api.py:765 msgid "This option must be selected" msgstr "" -#: part/api.py:1134 +#: part/api.py:1188 msgid "Must be greater than zero" msgstr "必须大于0" -#: part/api.py:1138 +#: part/api.py:1192 msgid "Must be a valid quantity" msgstr "必须是有效的数量" -#: part/api.py:1153 +#: part/api.py:1207 msgid "Specify location for initial part stock" msgstr "指定初始初始商品仓储地点" -#: part/api.py:1184 part/api.py:1188 part/api.py:1203 part/api.py:1207 +#: part/api.py:1238 part/api.py:1242 part/api.py:1257 part/api.py:1261 msgid "This field is required" msgstr "此字段为必填" @@ -4299,14 +4299,14 @@ msgid "Total Stock" msgstr "" #: part/bom.py:129 part/templates/part/part_base.html:189 -#: templates/js/translated/order.js:3618 +#: templates/js/translated/order.js:3657 msgid "Available Stock" msgstr "可用库存" #: part/bom.py:130 part/templates/part/part_base.html:207 -#: templates/js/translated/bom.js:947 templates/js/translated/part.js:590 +#: templates/js/translated/bom.js:945 templates/js/translated/part.js:590 #: templates/js/translated/part.js:610 templates/js/translated/part.js:1302 -#: templates/js/translated/part.js:1474 templates/js/translated/part.js:1490 +#: templates/js/translated/part.js:1483 #: templates/js/translated/table_filters.js:68 msgid "On Order" msgstr "" @@ -4335,7 +4335,7 @@ msgstr "" msgid "Icon (optional)" msgstr "" -#: part/models.py:122 part/models.py:2462 part/templates/part/category.html:16 +#: part/models.py:122 part/models.py:2509 part/templates/part/category.html:16 #: part/templates/part/part_app_base.html:10 msgid "Part Category" msgstr "商品类别" @@ -4352,7 +4352,7 @@ msgstr "商品类别" #: part/templates/part/category_sidebar.html:9 #: templates/InvenTree/index.html:85 templates/InvenTree/search.html:82 #: templates/InvenTree/settings/sidebar.html:41 -#: templates/js/translated/part.js:1955 templates/js/translated/search.js:144 +#: templates/js/translated/part.js:1951 templates/js/translated/search.js:144 #: templates/navbar.html:24 users/models.py:38 msgid "Parts" msgstr "商品" @@ -4382,7 +4382,7 @@ msgstr "" msgid "Duplicate IPN not allowed in part settings" msgstr "在商品设置中不允许重复的IPN" -#: part/models.py:745 part/models.py:2516 +#: part/models.py:745 part/models.py:2563 msgid "Part name" msgstr "商品名称" @@ -4415,11 +4415,11 @@ msgstr "关键词" msgid "Part keywords to improve visibility in search results" msgstr "提高搜索结果可见性的关键字" -#: part/models.py:783 part/models.py:2218 part/models.py:2461 +#: part/models.py:783 part/models.py:2265 part/models.py:2508 #: part/templates/part/part_base.html:257 #: templates/InvenTree/settings/settings.html:232 #: templates/js/translated/notification.js:50 -#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1668 +#: templates/js/translated/part.js:1442 templates/js/translated/part.js:1664 msgid "Category" msgstr "类别" @@ -4530,245 +4530,245 @@ msgstr "" msgid "Creation User" msgstr "新建用户" -#: part/models.py:1744 +#: part/models.py:1791 msgid "Sell multiple" msgstr "" -#: part/models.py:2265 +#: part/models.py:2312 msgid "Test templates can only be created for trackable parts" msgstr "" -#: part/models.py:2282 +#: part/models.py:2329 msgid "Test with this name already exists for this part" msgstr "" -#: part/models.py:2302 templates/js/translated/part.js:2006 +#: part/models.py:2349 templates/js/translated/part.js:2002 #: templates/js/translated/stock.js:1340 msgid "Test Name" msgstr "" -#: part/models.py:2303 +#: part/models.py:2350 msgid "Enter a name for the test" msgstr "" -#: part/models.py:2308 +#: part/models.py:2355 msgid "Test Description" msgstr "" -#: part/models.py:2309 +#: part/models.py:2356 msgid "Enter description for this test" msgstr "" -#: part/models.py:2314 templates/js/translated/part.js:2015 +#: part/models.py:2361 templates/js/translated/part.js:2011 #: templates/js/translated/table_filters.js:302 msgid "Required" msgstr "" -#: part/models.py:2315 +#: part/models.py:2362 msgid "Is this test required to pass?" msgstr "" -#: part/models.py:2320 templates/js/translated/part.js:2023 +#: part/models.py:2367 templates/js/translated/part.js:2019 msgid "Requires Value" msgstr "" -#: part/models.py:2321 +#: part/models.py:2368 msgid "Does this test require a value when adding a test result?" msgstr "" -#: part/models.py:2326 templates/js/translated/part.js:2030 +#: part/models.py:2373 templates/js/translated/part.js:2026 msgid "Requires Attachment" msgstr "" -#: part/models.py:2327 +#: part/models.py:2374 msgid "Does this test require a file attachment when adding a test result?" msgstr "" -#: part/models.py:2335 +#: part/models.py:2382 #, python-brace-format msgid "Illegal character in template name ({c})" msgstr "" -#: part/models.py:2371 +#: part/models.py:2418 msgid "Parameter template name must be unique" msgstr "" -#: part/models.py:2379 +#: part/models.py:2426 msgid "Parameter Name" msgstr "" -#: part/models.py:2386 +#: part/models.py:2433 msgid "Parameter Units" msgstr "" -#: part/models.py:2417 +#: part/models.py:2464 msgid "Parent Part" msgstr "" -#: part/models.py:2419 part/models.py:2467 part/models.py:2468 +#: part/models.py:2466 part/models.py:2514 part/models.py:2515 #: templates/InvenTree/settings/settings.html:227 msgid "Parameter Template" msgstr "参数模板" -#: part/models.py:2421 +#: part/models.py:2468 msgid "Data" msgstr "" -#: part/models.py:2421 +#: part/models.py:2468 msgid "Parameter Value" msgstr "" -#: part/models.py:2472 templates/InvenTree/settings/settings.html:236 +#: part/models.py:2519 templates/InvenTree/settings/settings.html:236 msgid "Default Value" msgstr "默认值" -#: part/models.py:2473 +#: part/models.py:2520 msgid "Default Parameter Value" msgstr "" -#: part/models.py:2508 +#: part/models.py:2555 msgid "Part ID or part name" msgstr "" -#: part/models.py:2511 templates/js/translated/model_renderers.js:212 +#: part/models.py:2558 templates/js/translated/model_renderers.js:212 msgid "Part ID" msgstr "商品ID" -#: part/models.py:2512 +#: part/models.py:2559 msgid "Unique part ID value" msgstr "" -#: part/models.py:2515 +#: part/models.py:2562 msgid "Part Name" msgstr "" -#: part/models.py:2519 +#: part/models.py:2566 msgid "Part IPN" msgstr "" -#: part/models.py:2520 +#: part/models.py:2567 msgid "Part IPN value" msgstr "" -#: part/models.py:2523 +#: part/models.py:2570 msgid "Level" msgstr "" -#: part/models.py:2524 +#: part/models.py:2571 msgid "BOM level" msgstr "" -#: part/models.py:2593 +#: part/models.py:2640 msgid "Select parent part" msgstr "" -#: part/models.py:2601 +#: part/models.py:2648 msgid "Sub part" msgstr "" -#: part/models.py:2602 +#: part/models.py:2649 msgid "Select part to be used in BOM" msgstr "" -#: part/models.py:2608 +#: part/models.py:2655 msgid "BOM quantity for this BOM item" msgstr "" -#: part/models.py:2610 part/templates/part/upload_bom.html:58 -#: templates/js/translated/bom.js:874 templates/js/translated/bom.js:999 +#: part/models.py:2657 part/templates/part/upload_bom.html:58 +#: templates/js/translated/bom.js:872 templates/js/translated/bom.js:997 #: templates/js/translated/table_filters.js:100 msgid "Optional" msgstr "可选项" -#: part/models.py:2610 +#: part/models.py:2657 msgid "This BOM item is optional" msgstr "" -#: part/models.py:2613 part/templates/part/upload_bom.html:55 +#: part/models.py:2660 part/templates/part/upload_bom.html:55 msgid "Overage" msgstr "" -#: part/models.py:2614 +#: part/models.py:2661 msgid "Estimated build wastage quantity (absolute or percentage)" msgstr "" -#: part/models.py:2617 +#: part/models.py:2664 msgid "BOM item reference" msgstr "" -#: part/models.py:2620 +#: part/models.py:2667 msgid "BOM item notes" msgstr "" -#: part/models.py:2622 +#: part/models.py:2669 msgid "Checksum" msgstr "" -#: part/models.py:2622 +#: part/models.py:2669 msgid "BOM line checksum" msgstr "" -#: part/models.py:2626 part/templates/part/upload_bom.html:57 -#: templates/js/translated/bom.js:1016 +#: part/models.py:2673 part/templates/part/upload_bom.html:57 +#: templates/js/translated/bom.js:1014 #: templates/js/translated/table_filters.js:76 #: templates/js/translated/table_filters.js:96 msgid "Inherited" msgstr "继承项" -#: part/models.py:2627 +#: part/models.py:2674 msgid "This BOM item is inherited by BOMs for variant parts" msgstr "" -#: part/models.py:2632 part/templates/part/upload_bom.html:56 -#: templates/js/translated/bom.js:1008 +#: part/models.py:2679 part/templates/part/upload_bom.html:56 +#: templates/js/translated/bom.js:1006 msgid "Allow Variants" msgstr "" -#: part/models.py:2633 +#: part/models.py:2680 msgid "Stock items for variant parts can be used for this BOM item" msgstr "" -#: part/models.py:2711 stock/models.py:468 +#: part/models.py:2758 stock/models.py:468 msgid "Quantity must be integer value for trackable parts" msgstr "" -#: part/models.py:2720 part/models.py:2722 +#: part/models.py:2767 part/models.py:2769 msgid "Sub part must be specified" msgstr "" -#: part/models.py:2827 +#: part/models.py:2874 msgid "BOM Item Substitute" msgstr "" -#: part/models.py:2848 +#: part/models.py:2895 msgid "Substitute part cannot be the same as the master part" msgstr "" -#: part/models.py:2861 +#: part/models.py:2908 msgid "Parent BOM item" msgstr "" -#: part/models.py:2869 +#: part/models.py:2916 msgid "Substitute part" msgstr "" -#: part/models.py:2884 +#: part/models.py:2931 msgid "Part 1" msgstr "" -#: part/models.py:2888 +#: part/models.py:2935 msgid "Part 2" msgstr "" -#: part/models.py:2888 +#: part/models.py:2935 msgid "Select Related Part" msgstr "" -#: part/models.py:2906 +#: part/models.py:2953 msgid "Part relationship cannot be created between a part and itself" msgstr "" -#: part/models.py:2910 +#: part/models.py:2957 msgid "Duplicate relationship already exists" msgstr "" @@ -4876,7 +4876,7 @@ msgstr "" msgid "The BOM for %(part)s has not been validated." msgstr "" -#: part/templates/part/bom.html:30 part/templates/part/detail.html:264 +#: part/templates/part/bom.html:30 part/templates/part/detail.html:269 msgid "BOM actions" msgstr "" @@ -4945,8 +4945,8 @@ msgstr "新建商品" msgid "New Part" msgstr "新商品" -#: part/templates/part/category.html:174 part/templates/part/detail.html:363 -#: part/templates/part/detail.html:394 +#: part/templates/part/category.html:174 part/templates/part/detail.html:368 +#: part/templates/part/detail.html:399 msgid "Options" msgstr "选项" @@ -5014,138 +5014,146 @@ msgstr "" msgid "Part Stock" msgstr "商品库存" -#: part/templates/part/detail.html:54 -msgid "Part Test Templates" +#: part/templates/part/detail.html:44 +msgid "Refresh scheduling data" +msgstr "" + +#: part/templates/part/detail.html:45 templates/js/translated/tables.js:558 +msgid "Refresh" msgstr "" #: part/templates/part/detail.html:59 +msgid "Part Test Templates" +msgstr "" + +#: part/templates/part/detail.html:64 msgid "Add Test Template" msgstr "" -#: part/templates/part/detail.html:116 stock/templates/stock/item.html:53 +#: part/templates/part/detail.html:121 stock/templates/stock/item.html:53 msgid "Sales Order Allocations" msgstr "" -#: part/templates/part/detail.html:138 +#: part/templates/part/detail.html:143 msgid "Part Notes" msgstr "" -#: part/templates/part/detail.html:153 +#: part/templates/part/detail.html:158 msgid "Part Variants" msgstr "" -#: part/templates/part/detail.html:157 +#: part/templates/part/detail.html:162 msgid "Create new variant" msgstr "" -#: part/templates/part/detail.html:158 +#: part/templates/part/detail.html:163 msgid "New Variant" msgstr "" -#: part/templates/part/detail.html:185 +#: part/templates/part/detail.html:190 msgid "Add new parameter" msgstr "" -#: part/templates/part/detail.html:222 part/templates/part/part_sidebar.html:54 +#: part/templates/part/detail.html:227 part/templates/part/part_sidebar.html:54 msgid "Related Parts" msgstr "" -#: part/templates/part/detail.html:226 part/templates/part/detail.html:227 +#: part/templates/part/detail.html:231 part/templates/part/detail.html:232 msgid "Add Related" msgstr "" -#: part/templates/part/detail.html:247 part/templates/part/part_sidebar.html:17 +#: part/templates/part/detail.html:252 part/templates/part/part_sidebar.html:17 msgid "Bill of Materials" msgstr "" -#: part/templates/part/detail.html:252 +#: part/templates/part/detail.html:257 msgid "Export actions" msgstr "" -#: part/templates/part/detail.html:256 templates/js/translated/bom.js:284 +#: part/templates/part/detail.html:261 templates/js/translated/bom.js:284 msgid "Export BOM" msgstr "" -#: part/templates/part/detail.html:258 +#: part/templates/part/detail.html:263 msgid "Print BOM Report" msgstr "" -#: part/templates/part/detail.html:268 +#: part/templates/part/detail.html:273 msgid "Upload BOM" msgstr "" -#: part/templates/part/detail.html:269 templates/js/translated/part.js:274 +#: part/templates/part/detail.html:274 templates/js/translated/part.js:274 msgid "Copy BOM" msgstr "" -#: part/templates/part/detail.html:270 +#: part/templates/part/detail.html:275 msgid "Validate BOM" msgstr "" -#: part/templates/part/detail.html:275 +#: part/templates/part/detail.html:280 msgid "New BOM Item" msgstr "" -#: part/templates/part/detail.html:276 +#: part/templates/part/detail.html:281 msgid "Add BOM Item" msgstr "" -#: part/templates/part/detail.html:289 +#: part/templates/part/detail.html:294 msgid "Assemblies" msgstr "" -#: part/templates/part/detail.html:307 +#: part/templates/part/detail.html:312 msgid "Part Builds" msgstr "" -#: part/templates/part/detail.html:334 stock/templates/stock/item.html:38 +#: part/templates/part/detail.html:339 stock/templates/stock/item.html:38 msgid "Build Order Allocations" msgstr "" -#: part/templates/part/detail.html:350 +#: part/templates/part/detail.html:355 msgid "Part Suppliers" msgstr "商品供应商" -#: part/templates/part/detail.html:380 +#: part/templates/part/detail.html:385 msgid "Part Manufacturers" msgstr "商品制造商" -#: part/templates/part/detail.html:396 +#: part/templates/part/detail.html:401 msgid "Delete manufacturer parts" msgstr "删除制造商商品" -#: part/templates/part/detail.html:612 +#: part/templates/part/detail.html:626 msgid "Create BOM Item" msgstr "" -#: part/templates/part/detail.html:656 +#: part/templates/part/detail.html:670 msgid "Related Part" msgstr "" -#: part/templates/part/detail.html:664 +#: part/templates/part/detail.html:678 msgid "Add Related Part" msgstr "" -#: part/templates/part/detail.html:756 +#: part/templates/part/detail.html:770 msgid "Add Test Result Template" msgstr "" -#: part/templates/part/detail.html:900 +#: part/templates/part/detail.html:914 #, python-format msgid "Purchase Unit Price - %(currency)s" msgstr "" -#: part/templates/part/detail.html:912 +#: part/templates/part/detail.html:926 #, python-format msgid "Unit Price-Cost Difference - %(currency)s" msgstr "" -#: part/templates/part/detail.html:924 +#: part/templates/part/detail.html:938 #, python-format msgid "Supplier Unit Cost - %(currency)s" msgstr "" -#: part/templates/part/detail.html:1013 +#: part/templates/part/detail.html:1027 #, python-format msgid "Unit Price - %(currency)s" msgstr "" @@ -5321,13 +5329,13 @@ msgstr "" msgid "Allocated to Sales Orders" msgstr "" -#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1037 +#: part/templates/part/part_base.html:232 templates/js/translated/bom.js:1035 msgid "Can Build" msgstr "" #: part/templates/part/part_base.html:238 templates/js/translated/part.js:593 #: templates/js/translated/part.js:613 templates/js/translated/part.js:1306 -#: templates/js/translated/part.js:1478 templates/js/translated/part.js:1494 +#: templates/js/translated/part.js:1490 msgid "Building" msgstr "" @@ -5379,7 +5387,7 @@ msgid "Total Cost" msgstr "" #: part/templates/part/part_pricing.html:40 part/templates/part/prices.html:43 -#: templates/js/translated/bom.js:991 +#: templates/js/translated/bom.js:989 msgid "No supplier pricing available" msgstr "" @@ -5414,6 +5422,18 @@ msgstr "" msgid "No pricing information is available for this part." msgstr "此商品无价格信息可用。" +#: part/templates/part/part_scheduling.html:13 +#: report/templates/report/inventree_test_report_base.html:97 +#: templates/InvenTree/settings/plugin.html:53 +#: templates/InvenTree/settings/plugin_settings.html:38 +#: templates/js/translated/order.js:1772 templates/js/translated/stock.js:2468 +msgid "Date" +msgstr "" + +#: part/templates/part/part_scheduling.html:14 +msgid "Scheduled Quantity" +msgstr "" + #: part/templates/part/part_sidebar.html:11 msgid "Variants" msgstr "" @@ -5462,7 +5482,7 @@ msgstr "" msgid "Calculation parameters" msgstr "" -#: part/templates/part/prices.html:160 templates/js/translated/bom.js:985 +#: part/templates/part/prices.html:160 templates/js/translated/bom.js:983 msgid "Supplier Cost" msgstr "" @@ -5501,7 +5521,7 @@ msgid "No sale pice history available for this part." msgstr "" #: part/templates/part/stock_count.html:7 templates/js/translated/part.js:616 -#: templates/js/translated/part.js:1294 templates/js/translated/part.js:1498 +#: templates/js/translated/part.js:1294 msgid "No Stock" msgstr "" @@ -5893,11 +5913,11 @@ msgstr "" #: report/templates/report/inventree_test_report_base.html:79 #: stock/models.py:648 stock/templates/stock/item_base.html:322 -#: templates/js/translated/build.js:424 templates/js/translated/build.js:576 -#: templates/js/translated/build.js:1176 templates/js/translated/build.js:1673 +#: templates/js/translated/build.js:456 templates/js/translated/build.js:608 +#: templates/js/translated/build.js:1208 templates/js/translated/build.js:1705 #: templates/js/translated/model_renderers.js:118 -#: templates/js/translated/order.js:118 templates/js/translated/order.js:3297 -#: templates/js/translated/order.js:3384 templates/js/translated/stock.js:490 +#: templates/js/translated/order.js:119 templates/js/translated/order.js:3336 +#: templates/js/translated/order.js:3423 templates/js/translated/stock.js:490 msgid "Serial Number" msgstr "序列号" @@ -5915,13 +5935,6 @@ msgstr "" msgid "Result" msgstr "" -#: report/templates/report/inventree_test_report_base.html:97 -#: templates/InvenTree/settings/plugin.html:53 -#: templates/InvenTree/settings/plugin_settings.html:38 -#: templates/js/translated/order.js:1733 templates/js/translated/stock.js:2468 -msgid "Date" -msgstr "" - #: report/templates/report/inventree_test_report_base.html:108 msgid "Pass" msgstr "" @@ -6519,7 +6532,7 @@ msgid "Available Quantity" msgstr "" #: stock/templates/stock/item_base.html:394 -#: templates/js/translated/build.js:1695 +#: templates/js/translated/build.js:1727 msgid "No location set" msgstr "未设置仓储地点" @@ -7702,7 +7715,7 @@ msgid "The following parts are low on required stock" msgstr "" #: templates/email/build_order_required_stock.html:18 -#: templates/js/translated/bom.js:1483 +#: templates/js/translated/bom.js:1481 msgid "Required Quantity" msgstr "" @@ -7716,6 +7729,7 @@ msgid "Click on the following link to view this part" msgstr "" #: templates/email/low_stock_notification.html:19 +#: templates/js/translated/part.js:2498 msgid "Minimum Quantity" msgstr "" @@ -7917,10 +7931,10 @@ msgstr "" msgid "Row Data" msgstr "" -#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:622 +#: templates/js/translated/bom.js:133 templates/js/translated/bom.js:620 #: templates/js/translated/modals.js:56 templates/js/translated/modals.js:601 #: templates/js/translated/modals.js:695 templates/js/translated/modals.js:1003 -#: templates/js/translated/order.js:979 templates/modals.html:15 +#: templates/js/translated/order.js:1018 templates/modals.html:15 #: templates/modals.html:27 templates/modals.html:39 templates/modals.html:50 msgid "Close" msgstr "" @@ -7930,12 +7944,12 @@ msgid "Download BOM Template" msgstr "" #: templates/js/translated/bom.js:253 templates/js/translated/bom.js:287 -#: templates/js/translated/order.js:760 templates/js/translated/tables.js:145 +#: templates/js/translated/order.js:799 templates/js/translated/tables.js:145 msgid "Format" msgstr "" #: templates/js/translated/bom.js:254 templates/js/translated/bom.js:288 -#: templates/js/translated/order.js:761 +#: templates/js/translated/order.js:800 msgid "Select file format" msgstr "" @@ -7991,390 +8005,390 @@ msgstr "在导出 BOM 中包含供应商数据" msgid "Remove substitute part" msgstr "" -#: templates/js/translated/bom.js:567 +#: templates/js/translated/bom.js:565 msgid "Select and add a new substitute part using the input below" msgstr "" -#: templates/js/translated/bom.js:578 +#: templates/js/translated/bom.js:576 msgid "Are you sure you wish to remove this substitute part link?" msgstr "" -#: templates/js/translated/bom.js:584 +#: templates/js/translated/bom.js:582 msgid "Remove Substitute Part" msgstr "" -#: templates/js/translated/bom.js:623 +#: templates/js/translated/bom.js:621 msgid "Add Substitute" msgstr "" -#: templates/js/translated/bom.js:624 +#: templates/js/translated/bom.js:622 msgid "Edit BOM Item Substitutes" msgstr "" -#: templates/js/translated/bom.js:686 +#: templates/js/translated/bom.js:684 msgid "All selected BOM items will be deleted" msgstr "" -#: templates/js/translated/bom.js:702 +#: templates/js/translated/bom.js:700 msgid "Delete selected BOM items?" msgstr "" -#: templates/js/translated/bom.js:821 +#: templates/js/translated/bom.js:819 msgid "Load BOM for subassembly" msgstr "" -#: templates/js/translated/bom.js:831 +#: templates/js/translated/bom.js:829 msgid "Substitutes Available" msgstr "" -#: templates/js/translated/bom.js:835 templates/js/translated/build.js:1771 +#: templates/js/translated/bom.js:833 templates/js/translated/build.js:1803 msgid "Variant stock allowed" msgstr "" -#: templates/js/translated/bom.js:929 templates/js/translated/build.js:1816 -#: templates/js/translated/order.js:3632 +#: templates/js/translated/bom.js:927 templates/js/translated/build.js:1849 +#: templates/js/translated/order.js:3671 msgid "No Stock Available" msgstr "" -#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1820 +#: templates/js/translated/bom.js:932 templates/js/translated/build.js:1853 msgid "Includes variant and substitute stock" msgstr "" -#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1822 +#: templates/js/translated/bom.js:934 templates/js/translated/build.js:1855 #: templates/js/translated/part.js:763 msgid "Includes variant stock" msgstr "" -#: templates/js/translated/bom.js:938 templates/js/translated/build.js:1824 +#: templates/js/translated/bom.js:936 templates/js/translated/build.js:1857 msgid "Includes substitute stock" msgstr "" -#: templates/js/translated/bom.js:956 +#: templates/js/translated/bom.js:954 msgid "Substitutes" msgstr "" -#: templates/js/translated/bom.js:971 +#: templates/js/translated/bom.js:969 msgid "Purchase Price Range" msgstr "" -#: templates/js/translated/bom.js:978 +#: templates/js/translated/bom.js:976 msgid "Purchase Price Average" msgstr "" -#: templates/js/translated/bom.js:1027 templates/js/translated/bom.js:1147 +#: templates/js/translated/bom.js:1025 templates/js/translated/bom.js:1145 msgid "View BOM" msgstr "" -#: templates/js/translated/bom.js:1054 +#: templates/js/translated/bom.js:1052 msgid "Including On Order" msgstr "" -#: templates/js/translated/bom.js:1118 +#: templates/js/translated/bom.js:1116 msgid "Validate BOM Item" msgstr "" -#: templates/js/translated/bom.js:1120 +#: templates/js/translated/bom.js:1118 msgid "This line has been validated" msgstr "" -#: templates/js/translated/bom.js:1122 +#: templates/js/translated/bom.js:1120 msgid "Edit substitute parts" msgstr "" -#: templates/js/translated/bom.js:1124 templates/js/translated/bom.js:1286 +#: templates/js/translated/bom.js:1122 templates/js/translated/bom.js:1284 msgid "Edit BOM Item" msgstr "" -#: templates/js/translated/bom.js:1126 +#: templates/js/translated/bom.js:1124 msgid "Delete BOM Item" msgstr "" -#: templates/js/translated/bom.js:1222 templates/js/translated/build.js:1617 +#: templates/js/translated/bom.js:1220 templates/js/translated/build.js:1649 msgid "No BOM items found" msgstr "" -#: templates/js/translated/bom.js:1466 templates/js/translated/build.js:1755 +#: templates/js/translated/bom.js:1464 templates/js/translated/build.js:1787 msgid "Required Part" msgstr "" -#: templates/js/translated/bom.js:1488 +#: templates/js/translated/bom.js:1486 msgid "Inherited from parent BOM" msgstr "" -#: templates/js/translated/build.js:86 +#: templates/js/translated/build.js:89 msgid "Edit Build Order" msgstr "" -#: templates/js/translated/build.js:120 +#: templates/js/translated/build.js:132 msgid "Create Build Order" msgstr "" -#: templates/js/translated/build.js:133 +#: templates/js/translated/build.js:165 msgid "Cancel Build Order" msgstr "" -#: templates/js/translated/build.js:142 +#: templates/js/translated/build.js:174 msgid "Are you sure you wish to cancel this build?" msgstr "是否确定取消生产?" -#: templates/js/translated/build.js:148 +#: templates/js/translated/build.js:180 msgid "Stock items have been allocated to this build order" msgstr "" -#: templates/js/translated/build.js:155 +#: templates/js/translated/build.js:187 msgid "There are incomplete outputs remaining for this build order" msgstr "" -#: templates/js/translated/build.js:185 +#: templates/js/translated/build.js:217 msgid "Build order is ready to be completed" msgstr "" -#: templates/js/translated/build.js:190 +#: templates/js/translated/build.js:222 msgid "Build Order is incomplete" msgstr "生产订单未完成" -#: templates/js/translated/build.js:222 +#: templates/js/translated/build.js:254 msgid "Complete Build Order" msgstr "生产订单完成" -#: templates/js/translated/build.js:263 templates/js/translated/stock.js:92 +#: templates/js/translated/build.js:295 templates/js/translated/stock.js:92 #: templates/js/translated/stock.js:214 msgid "Next available serial number" msgstr "" -#: templates/js/translated/build.js:265 templates/js/translated/stock.js:94 +#: templates/js/translated/build.js:297 templates/js/translated/stock.js:94 #: templates/js/translated/stock.js:216 msgid "Latest serial number" msgstr "" -#: templates/js/translated/build.js:274 +#: templates/js/translated/build.js:306 msgid "The Bill of Materials contains trackable parts" msgstr "" -#: templates/js/translated/build.js:275 +#: templates/js/translated/build.js:307 msgid "Build outputs must be generated individually" msgstr "" -#: templates/js/translated/build.js:283 +#: templates/js/translated/build.js:315 msgid "Trackable parts can have serial numbers specified" msgstr "可追踪商品可以指定序列号" -#: templates/js/translated/build.js:284 +#: templates/js/translated/build.js:316 msgid "Enter serial numbers to generate multiple single build outputs" msgstr "" -#: templates/js/translated/build.js:291 +#: templates/js/translated/build.js:323 msgid "Create Build Output" msgstr "创建创建生产产出" -#: templates/js/translated/build.js:322 +#: templates/js/translated/build.js:354 msgid "Allocate stock items to this build output" msgstr "" -#: templates/js/translated/build.js:333 +#: templates/js/translated/build.js:365 msgid "Unallocate stock from build output" msgstr "" -#: templates/js/translated/build.js:342 +#: templates/js/translated/build.js:374 msgid "Complete build output" msgstr "" -#: templates/js/translated/build.js:350 +#: templates/js/translated/build.js:382 msgid "Delete build output" msgstr "" -#: templates/js/translated/build.js:373 +#: templates/js/translated/build.js:405 msgid "Are you sure you wish to unallocate stock items from this build?" msgstr "" -#: templates/js/translated/build.js:391 +#: templates/js/translated/build.js:423 msgid "Unallocate Stock Items" msgstr "" -#: templates/js/translated/build.js:411 templates/js/translated/build.js:563 +#: templates/js/translated/build.js:443 templates/js/translated/build.js:595 msgid "Select Build Outputs" msgstr "" -#: templates/js/translated/build.js:412 templates/js/translated/build.js:564 +#: templates/js/translated/build.js:444 templates/js/translated/build.js:596 msgid "At least one build output must be selected" msgstr "" -#: templates/js/translated/build.js:466 templates/js/translated/build.js:618 +#: templates/js/translated/build.js:498 templates/js/translated/build.js:650 msgid "Output" msgstr "" -#: templates/js/translated/build.js:484 +#: templates/js/translated/build.js:516 msgid "Complete Build Outputs" msgstr "" -#: templates/js/translated/build.js:631 +#: templates/js/translated/build.js:663 msgid "Delete Build Outputs" msgstr "" -#: templates/js/translated/build.js:720 +#: templates/js/translated/build.js:752 msgid "No build order allocations found" msgstr "" -#: templates/js/translated/build.js:757 +#: templates/js/translated/build.js:789 msgid "Location not specified" msgstr "未指定仓储地点" -#: templates/js/translated/build.js:1136 +#: templates/js/translated/build.js:1168 msgid "No active build outputs found" msgstr "" -#: templates/js/translated/build.js:1205 +#: templates/js/translated/build.js:1237 msgid "Allocated Stock" msgstr "" -#: templates/js/translated/build.js:1212 +#: templates/js/translated/build.js:1244 msgid "No tracked BOM items for this build" msgstr "" -#: templates/js/translated/build.js:1234 +#: templates/js/translated/build.js:1266 msgid "Completed Tests" msgstr "" -#: templates/js/translated/build.js:1239 +#: templates/js/translated/build.js:1271 msgid "No required tests for this build" msgstr "" -#: templates/js/translated/build.js:1712 templates/js/translated/build.js:2656 -#: templates/js/translated/order.js:3332 +#: templates/js/translated/build.js:1744 templates/js/translated/build.js:2689 +#: templates/js/translated/order.js:3371 msgid "Edit stock allocation" msgstr "" -#: templates/js/translated/build.js:1714 templates/js/translated/build.js:2657 -#: templates/js/translated/order.js:3333 +#: templates/js/translated/build.js:1746 templates/js/translated/build.js:2690 +#: templates/js/translated/order.js:3372 msgid "Delete stock allocation" msgstr "" -#: templates/js/translated/build.js:1732 +#: templates/js/translated/build.js:1764 msgid "Edit Allocation" msgstr "" -#: templates/js/translated/build.js:1742 +#: templates/js/translated/build.js:1774 msgid "Remove Allocation" msgstr "" -#: templates/js/translated/build.js:1767 +#: templates/js/translated/build.js:1799 msgid "Substitute parts available" msgstr "" -#: templates/js/translated/build.js:1784 +#: templates/js/translated/build.js:1816 msgid "Quantity Per" msgstr "" -#: templates/js/translated/build.js:1810 templates/js/translated/order.js:3639 +#: templates/js/translated/build.js:1843 templates/js/translated/order.js:3678 msgid "Insufficient stock available" msgstr "" -#: templates/js/translated/build.js:1812 templates/js/translated/order.js:3637 +#: templates/js/translated/build.js:1845 templates/js/translated/order.js:3676 msgid "Sufficient stock available" msgstr "" -#: templates/js/translated/build.js:1841 templates/js/translated/build.js:2086 -#: templates/js/translated/build.js:2652 templates/js/translated/order.js:3651 +#: templates/js/translated/build.js:1874 templates/js/translated/build.js:2119 +#: templates/js/translated/build.js:2685 templates/js/translated/order.js:3690 msgid "Allocated" msgstr "" -#: templates/js/translated/build.js:1889 templates/js/translated/order.js:3731 +#: templates/js/translated/build.js:1922 templates/js/translated/order.js:3770 msgid "Build stock" msgstr "" -#: templates/js/translated/build.js:1893 templates/stock_table.html:50 +#: templates/js/translated/build.js:1926 templates/stock_table.html:50 msgid "Order stock" msgstr "" -#: templates/js/translated/build.js:1896 templates/js/translated/order.js:3724 +#: templates/js/translated/build.js:1929 templates/js/translated/order.js:3763 msgid "Allocate stock" msgstr "" -#: templates/js/translated/build.js:1935 templates/js/translated/label.js:172 -#: templates/js/translated/order.js:807 templates/js/translated/order.js:2859 +#: templates/js/translated/build.js:1968 templates/js/translated/label.js:172 +#: templates/js/translated/order.js:846 templates/js/translated/order.js:2898 #: templates/js/translated/report.js:225 msgid "Select Parts" msgstr "选择商品" -#: templates/js/translated/build.js:1936 templates/js/translated/order.js:2860 +#: templates/js/translated/build.js:1969 templates/js/translated/order.js:2899 msgid "You must select at least one part to allocate" msgstr "" -#: templates/js/translated/build.js:1985 templates/js/translated/order.js:2808 +#: templates/js/translated/build.js:2018 templates/js/translated/order.js:2847 msgid "Specify stock allocation quantity" msgstr "" -#: templates/js/translated/build.js:2059 +#: templates/js/translated/build.js:2092 msgid "All Parts Allocated" msgstr "" -#: templates/js/translated/build.js:2060 +#: templates/js/translated/build.js:2093 msgid "All selected parts have been fully allocated" msgstr "" -#: templates/js/translated/build.js:2074 templates/js/translated/order.js:2874 +#: templates/js/translated/build.js:2107 templates/js/translated/order.js:2913 msgid "Select source location (leave blank to take from all locations)" msgstr "" -#: templates/js/translated/build.js:2102 +#: templates/js/translated/build.js:2135 msgid "Allocate Stock Items to Build Order" msgstr "" -#: templates/js/translated/build.js:2113 templates/js/translated/order.js:2971 +#: templates/js/translated/build.js:2146 templates/js/translated/order.js:3010 msgid "No matching stock locations" msgstr "" -#: templates/js/translated/build.js:2185 templates/js/translated/order.js:3048 +#: templates/js/translated/build.js:2218 templates/js/translated/order.js:3087 msgid "No matching stock items" msgstr "" -#: templates/js/translated/build.js:2282 +#: templates/js/translated/build.js:2315 msgid "Automatic Stock Allocation" msgstr "" -#: templates/js/translated/build.js:2283 +#: templates/js/translated/build.js:2316 msgid "Stock items will be automatically allocated to this build order, according to the provided guidelines" msgstr "" -#: templates/js/translated/build.js:2285 +#: templates/js/translated/build.js:2318 msgid "If a location is specifed, stock will only be allocated from that location" msgstr "" -#: templates/js/translated/build.js:2286 +#: templates/js/translated/build.js:2319 msgid "If stock is considered interchangeable, it will be allocated from the first location it is found" msgstr "" -#: templates/js/translated/build.js:2287 +#: templates/js/translated/build.js:2320 msgid "If substitute stock is allowed, it will be used where stock of the primary part cannot be found" msgstr "" -#: templates/js/translated/build.js:2308 +#: templates/js/translated/build.js:2341 msgid "Allocate Stock Items" msgstr "" -#: templates/js/translated/build.js:2414 +#: templates/js/translated/build.js:2447 msgid "No builds matching query" msgstr "" -#: templates/js/translated/build.js:2449 templates/js/translated/part.js:1387 -#: templates/js/translated/part.js:1899 templates/js/translated/stock.js:1686 +#: templates/js/translated/build.js:2482 templates/js/translated/part.js:1387 +#: templates/js/translated/part.js:1895 templates/js/translated/stock.js:1686 #: templates/js/translated/stock.js:2386 msgid "Select" msgstr "" -#: templates/js/translated/build.js:2463 +#: templates/js/translated/build.js:2496 msgid "Build order is overdue" msgstr "" -#: templates/js/translated/build.js:2491 +#: templates/js/translated/build.js:2524 msgid "Progress" msgstr "" -#: templates/js/translated/build.js:2527 templates/js/translated/stock.js:2647 +#: templates/js/translated/build.js:2560 templates/js/translated/stock.js:2647 msgid "No user information" msgstr "没有用户信息" -#: templates/js/translated/build.js:2633 +#: templates/js/translated/build.js:2666 msgid "No parts allocated for" msgstr "" @@ -8390,11 +8404,11 @@ msgstr "添加制造商商品" msgid "Edit Manufacturer Part" msgstr "编辑制造商商品" -#: templates/js/translated/company.js:167 templates/js/translated/order.js:509 +#: templates/js/translated/company.js:167 templates/js/translated/order.js:510 msgid "Add Supplier" msgstr "添加供应商" -#: templates/js/translated/company.js:195 templates/js/translated/order.js:628 +#: templates/js/translated/company.js:195 templates/js/translated/order.js:667 msgid "Add Supplier Part" msgstr "添加供应商商品" @@ -8765,381 +8779,385 @@ msgstr "" msgid "Notifications will load here" msgstr "" -#: templates/js/translated/order.js:94 +#: templates/js/translated/order.js:95 msgid "No stock items have been allocated to this shipment" msgstr "" -#: templates/js/translated/order.js:99 +#: templates/js/translated/order.js:100 msgid "The following stock items will be shipped" msgstr "" -#: templates/js/translated/order.js:139 +#: templates/js/translated/order.js:140 msgid "Complete Shipment" msgstr "" -#: templates/js/translated/order.js:159 +#: templates/js/translated/order.js:160 msgid "Confirm Shipment" msgstr "" -#: templates/js/translated/order.js:215 +#: templates/js/translated/order.js:216 msgid "No pending shipments found" msgstr "" -#: templates/js/translated/order.js:219 +#: templates/js/translated/order.js:220 msgid "No stock items have been allocated to pending shipments" msgstr "" -#: templates/js/translated/order.js:251 +#: templates/js/translated/order.js:252 msgid "Skip" msgstr "" -#: templates/js/translated/order.js:281 +#: templates/js/translated/order.js:282 msgid "Complete Purchase Order" msgstr "" -#: templates/js/translated/order.js:287 +#: templates/js/translated/order.js:288 msgid "Mark this order as complete?" msgstr "" -#: templates/js/translated/order.js:293 +#: templates/js/translated/order.js:294 msgid "All line items have been received" msgstr "" -#: templates/js/translated/order.js:298 +#: templates/js/translated/order.js:299 msgid "This order has line items which have not been marked as received." msgstr "" -#: templates/js/translated/order.js:299 +#: templates/js/translated/order.js:300 msgid "Completing this order means that the order and line items will no longer be editable." msgstr "" -#: templates/js/translated/order.js:322 +#: templates/js/translated/order.js:323 msgid "Cancel Purchase Order" msgstr "" -#: templates/js/translated/order.js:327 +#: templates/js/translated/order.js:328 msgid "Are you sure you wish to cancel this purchase order?" msgstr "" -#: templates/js/translated/order.js:333 +#: templates/js/translated/order.js:334 msgid "This purchase order can not be cancelled" msgstr "" -#: templates/js/translated/order.js:356 +#: templates/js/translated/order.js:357 msgid "Issue Purchase Order" msgstr "" -#: templates/js/translated/order.js:361 +#: templates/js/translated/order.js:362 msgid "After placing this purchase order, line items will no longer be editable." msgstr "" -#: templates/js/translated/order.js:383 +#: templates/js/translated/order.js:384 msgid "Cancel Sales Order" msgstr "" -#: templates/js/translated/order.js:388 +#: templates/js/translated/order.js:389 msgid "Cancelling this order means that the order will no longer be editable." msgstr "" -#: templates/js/translated/order.js:442 +#: templates/js/translated/order.js:443 msgid "Create New Shipment" msgstr "" -#: templates/js/translated/order.js:467 +#: templates/js/translated/order.js:468 msgid "Add Customer" msgstr "" -#: templates/js/translated/order.js:492 +#: templates/js/translated/order.js:493 msgid "Create Sales Order" msgstr "" -#: templates/js/translated/order.js:757 +#: templates/js/translated/order.js:554 +msgid "Edit Purchase Order" +msgstr "" + +#: templates/js/translated/order.js:796 msgid "Export Order" msgstr "" -#: templates/js/translated/order.js:808 +#: templates/js/translated/order.js:847 msgid "At least one purchaseable part must be selected" msgstr "" -#: templates/js/translated/order.js:833 +#: templates/js/translated/order.js:872 msgid "Quantity to order" msgstr "" -#: templates/js/translated/order.js:842 +#: templates/js/translated/order.js:881 msgid "New supplier part" msgstr "" -#: templates/js/translated/order.js:860 +#: templates/js/translated/order.js:899 msgid "New purchase order" msgstr "" -#: templates/js/translated/order.js:893 +#: templates/js/translated/order.js:932 msgid "Add to purchase order" msgstr "" -#: templates/js/translated/order.js:1002 +#: templates/js/translated/order.js:1041 msgid "No matching supplier parts" msgstr "" -#: templates/js/translated/order.js:1017 +#: templates/js/translated/order.js:1056 msgid "No matching purchase orders" msgstr "" -#: templates/js/translated/order.js:1194 +#: templates/js/translated/order.js:1233 msgid "Select Line Items" msgstr "" -#: templates/js/translated/order.js:1195 +#: templates/js/translated/order.js:1234 msgid "At least one line item must be selected" msgstr "" -#: templates/js/translated/order.js:1215 templates/js/translated/order.js:1314 +#: templates/js/translated/order.js:1254 templates/js/translated/order.js:1353 msgid "Add batch code" msgstr "" -#: templates/js/translated/order.js:1221 templates/js/translated/order.js:1325 +#: templates/js/translated/order.js:1260 templates/js/translated/order.js:1364 msgid "Add serial numbers" msgstr "" -#: templates/js/translated/order.js:1233 +#: templates/js/translated/order.js:1272 msgid "Quantity to receive" msgstr "" -#: templates/js/translated/order.js:1297 templates/js/translated/stock.js:2144 +#: templates/js/translated/order.js:1336 templates/js/translated/stock.js:2144 msgid "Stock Status" msgstr "" -#: templates/js/translated/order.js:1388 +#: templates/js/translated/order.js:1427 msgid "Order Code" msgstr "订单编码" -#: templates/js/translated/order.js:1389 +#: templates/js/translated/order.js:1428 msgid "Ordered" msgstr "" -#: templates/js/translated/order.js:1391 +#: templates/js/translated/order.js:1430 msgid "Quantity to Receive" msgstr "" -#: templates/js/translated/order.js:1410 +#: templates/js/translated/order.js:1449 msgid "Confirm receipt of items" msgstr "" -#: templates/js/translated/order.js:1411 +#: templates/js/translated/order.js:1450 msgid "Receive Purchase Order Items" msgstr "" -#: templates/js/translated/order.js:1672 templates/js/translated/part.js:943 +#: templates/js/translated/order.js:1711 templates/js/translated/part.js:943 msgid "No purchase orders found" msgstr "" -#: templates/js/translated/order.js:1699 templates/js/translated/order.js:2503 +#: templates/js/translated/order.js:1738 templates/js/translated/order.js:2542 msgid "Order is overdue" msgstr "" -#: templates/js/translated/order.js:1749 templates/js/translated/order.js:2568 -#: templates/js/translated/order.js:2709 +#: templates/js/translated/order.js:1788 templates/js/translated/order.js:2607 +#: templates/js/translated/order.js:2748 msgid "Items" msgstr "" -#: templates/js/translated/order.js:1847 templates/js/translated/order.js:3783 +#: templates/js/translated/order.js:1886 templates/js/translated/order.js:3822 msgid "Duplicate Line Item" msgstr "" -#: templates/js/translated/order.js:1864 templates/js/translated/order.js:3805 +#: templates/js/translated/order.js:1903 templates/js/translated/order.js:3844 msgid "Edit Line Item" msgstr "" -#: templates/js/translated/order.js:1877 templates/js/translated/order.js:3816 +#: templates/js/translated/order.js:1916 templates/js/translated/order.js:3855 msgid "Delete Line Item" msgstr "" -#: templates/js/translated/order.js:1920 +#: templates/js/translated/order.js:1959 msgid "No line items found" msgstr "" -#: templates/js/translated/order.js:1947 templates/js/translated/order.js:3517 +#: templates/js/translated/order.js:1986 templates/js/translated/order.js:3556 msgid "Total" msgstr "" -#: templates/js/translated/order.js:2001 templates/js/translated/order.js:2203 -#: templates/js/translated/order.js:3542 templates/js/translated/order.js:4050 -#: templates/js/translated/part.js:2135 templates/js/translated/part.js:2488 +#: templates/js/translated/order.js:2040 templates/js/translated/order.js:2242 +#: templates/js/translated/order.js:3581 templates/js/translated/order.js:4089 +#: templates/js/translated/part.js:2131 templates/js/translated/part.js:2703 msgid "Unit Price" msgstr "单价" -#: templates/js/translated/order.js:2016 templates/js/translated/order.js:2219 -#: templates/js/translated/order.js:3558 templates/js/translated/order.js:4066 +#: templates/js/translated/order.js:2055 templates/js/translated/order.js:2258 +#: templates/js/translated/order.js:3597 templates/js/translated/order.js:4105 msgid "Total Price" msgstr "" -#: templates/js/translated/order.js:2057 templates/js/translated/order.js:3600 +#: templates/js/translated/order.js:2096 templates/js/translated/order.js:3639 #: templates/js/translated/part.js:1050 msgid "This line item is overdue" msgstr "" -#: templates/js/translated/order.js:2116 templates/js/translated/part.js:1096 +#: templates/js/translated/order.js:2155 templates/js/translated/part.js:1096 msgid "Receive line item" msgstr "" -#: templates/js/translated/order.js:2120 templates/js/translated/order.js:3737 +#: templates/js/translated/order.js:2159 templates/js/translated/order.js:3776 msgid "Duplicate line item" msgstr "" -#: templates/js/translated/order.js:2121 templates/js/translated/order.js:3738 +#: templates/js/translated/order.js:2160 templates/js/translated/order.js:3777 msgid "Edit line item" msgstr "" -#: templates/js/translated/order.js:2122 templates/js/translated/order.js:3742 +#: templates/js/translated/order.js:2161 templates/js/translated/order.js:3781 msgid "Delete line item" msgstr "" -#: templates/js/translated/order.js:2268 templates/js/translated/order.js:4115 +#: templates/js/translated/order.js:2307 templates/js/translated/order.js:4154 msgid "Duplicate line" msgstr "" -#: templates/js/translated/order.js:2269 templates/js/translated/order.js:4116 +#: templates/js/translated/order.js:2308 templates/js/translated/order.js:4155 msgid "Edit line" msgstr "" -#: templates/js/translated/order.js:2270 templates/js/translated/order.js:4117 +#: templates/js/translated/order.js:2309 templates/js/translated/order.js:4156 msgid "Delete line" msgstr "" -#: templates/js/translated/order.js:2300 templates/js/translated/order.js:4147 +#: templates/js/translated/order.js:2339 templates/js/translated/order.js:4186 msgid "Duplicate Line" msgstr "" -#: templates/js/translated/order.js:2321 templates/js/translated/order.js:4168 +#: templates/js/translated/order.js:2360 templates/js/translated/order.js:4207 msgid "Edit Line" msgstr "" -#: templates/js/translated/order.js:2332 templates/js/translated/order.js:4179 +#: templates/js/translated/order.js:2371 templates/js/translated/order.js:4218 msgid "Delete Line" msgstr "" -#: templates/js/translated/order.js:2343 +#: templates/js/translated/order.js:2382 msgid "No matching line" msgstr "" -#: templates/js/translated/order.js:2454 +#: templates/js/translated/order.js:2493 msgid "No sales orders found" msgstr "" -#: templates/js/translated/order.js:2517 +#: templates/js/translated/order.js:2556 msgid "Invalid Customer" msgstr "" -#: templates/js/translated/order.js:2615 +#: templates/js/translated/order.js:2654 msgid "Edit shipment" msgstr "" -#: templates/js/translated/order.js:2618 +#: templates/js/translated/order.js:2657 msgid "Complete shipment" msgstr "" -#: templates/js/translated/order.js:2623 +#: templates/js/translated/order.js:2662 msgid "Delete shipment" msgstr "" -#: templates/js/translated/order.js:2643 +#: templates/js/translated/order.js:2682 msgid "Edit Shipment" msgstr "" -#: templates/js/translated/order.js:2660 +#: templates/js/translated/order.js:2699 msgid "Delete Shipment" msgstr "" -#: templates/js/translated/order.js:2694 +#: templates/js/translated/order.js:2733 msgid "No matching shipments found" msgstr "" -#: templates/js/translated/order.js:2704 +#: templates/js/translated/order.js:2743 msgid "Shipment Reference" msgstr "" -#: templates/js/translated/order.js:2728 +#: templates/js/translated/order.js:2767 msgid "Not shipped" msgstr "" -#: templates/js/translated/order.js:2734 +#: templates/js/translated/order.js:2773 msgid "Tracking" msgstr "" -#: templates/js/translated/order.js:2738 +#: templates/js/translated/order.js:2777 msgid "Invoice" msgstr "" -#: templates/js/translated/order.js:2907 +#: templates/js/translated/order.js:2946 msgid "Add Shipment" msgstr "" -#: templates/js/translated/order.js:2958 +#: templates/js/translated/order.js:2997 msgid "Confirm stock allocation" msgstr "确认库存分配" -#: templates/js/translated/order.js:2959 +#: templates/js/translated/order.js:2998 msgid "Allocate Stock Items to Sales Order" msgstr "" -#: templates/js/translated/order.js:3167 +#: templates/js/translated/order.js:3206 msgid "No sales order allocations found" msgstr "" -#: templates/js/translated/order.js:3246 +#: templates/js/translated/order.js:3285 msgid "Edit Stock Allocation" msgstr "" -#: templates/js/translated/order.js:3263 +#: templates/js/translated/order.js:3302 msgid "Confirm Delete Operation" msgstr "确认删除操作" -#: templates/js/translated/order.js:3264 +#: templates/js/translated/order.js:3303 msgid "Delete Stock Allocation" msgstr "" -#: templates/js/translated/order.js:3309 templates/js/translated/order.js:3398 +#: templates/js/translated/order.js:3348 templates/js/translated/order.js:3437 #: templates/js/translated/stock.js:1602 msgid "Shipped to customer" msgstr "" -#: templates/js/translated/order.js:3317 templates/js/translated/order.js:3407 +#: templates/js/translated/order.js:3356 templates/js/translated/order.js:3446 msgid "Stock location not specified" msgstr "" -#: templates/js/translated/order.js:3721 +#: templates/js/translated/order.js:3760 msgid "Allocate serial numbers" msgstr "" -#: templates/js/translated/order.js:3727 +#: templates/js/translated/order.js:3766 msgid "Purchase stock" msgstr "" -#: templates/js/translated/order.js:3734 templates/js/translated/order.js:3932 +#: templates/js/translated/order.js:3773 templates/js/translated/order.js:3971 msgid "Calculate price" msgstr "" -#: templates/js/translated/order.js:3746 +#: templates/js/translated/order.js:3785 msgid "Cannot be deleted as items have been shipped" msgstr "" -#: templates/js/translated/order.js:3749 +#: templates/js/translated/order.js:3788 msgid "Cannot be deleted as items have been allocated" msgstr "" -#: templates/js/translated/order.js:3831 +#: templates/js/translated/order.js:3870 msgid "Allocate Serial Numbers" msgstr "" -#: templates/js/translated/order.js:3940 +#: templates/js/translated/order.js:3979 msgid "Update Unit Price" msgstr "" -#: templates/js/translated/order.js:3954 +#: templates/js/translated/order.js:3993 msgid "No matching line items" msgstr "" -#: templates/js/translated/order.js:4190 +#: templates/js/translated/order.js:4229 msgid "No matching lines" msgstr "" @@ -9319,12 +9337,12 @@ msgstr "" msgid "Copy Bill of Materials" msgstr "" -#: templates/js/translated/part.js:586 templates/js/translated/part.js:1470 +#: templates/js/translated/part.js:586 templates/js/translated/part.js:1478 #: templates/js/translated/table_filters.js:468 msgid "Low stock" msgstr "" -#: templates/js/translated/part.js:596 templates/js/translated/part.js:1482 +#: templates/js/translated/part.js:596 msgid "No stock available" msgstr "" @@ -9356,7 +9374,7 @@ msgstr "" msgid "Delete Part Relationship" msgstr "" -#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1553 +#: templates/js/translated/part.js:1257 templates/js/translated/part.js:1549 msgid "No parts found" msgstr "" @@ -9368,100 +9386,124 @@ msgstr "" msgid "No category" msgstr "没有分类" -#: templates/js/translated/part.js:1577 templates/js/translated/part.js:1820 +#: templates/js/translated/part.js:1476 +msgid "No stock" +msgstr "" + +#: templates/js/translated/part.js:1573 templates/js/translated/part.js:1816 #: templates/js/translated/stock.js:2347 msgid "Display as list" msgstr "" -#: templates/js/translated/part.js:1593 +#: templates/js/translated/part.js:1589 msgid "Display as grid" msgstr "" -#: templates/js/translated/part.js:1659 +#: templates/js/translated/part.js:1655 msgid "Set the part category for the selected parts" msgstr "" -#: templates/js/translated/part.js:1664 +#: templates/js/translated/part.js:1660 msgid "Set Part Category" msgstr "设置商品类别" -#: templates/js/translated/part.js:1669 +#: templates/js/translated/part.js:1665 msgid "Select Part Category" msgstr "" -#: templates/js/translated/part.js:1682 +#: templates/js/translated/part.js:1678 msgid "Category is required" msgstr "" -#: templates/js/translated/part.js:1839 templates/js/translated/stock.js:2366 +#: templates/js/translated/part.js:1835 templates/js/translated/stock.js:2366 msgid "Display as tree" msgstr "" -#: templates/js/translated/part.js:1918 +#: templates/js/translated/part.js:1914 msgid "Load Subcategories" msgstr "" -#: templates/js/translated/part.js:1934 +#: templates/js/translated/part.js:1930 msgid "Subscribed category" msgstr "" -#: templates/js/translated/part.js:1992 +#: templates/js/translated/part.js:1988 msgid "No test templates matching query" msgstr "" -#: templates/js/translated/part.js:2043 templates/js/translated/stock.js:1299 +#: templates/js/translated/part.js:2039 templates/js/translated/stock.js:1299 msgid "Edit test result" msgstr "" -#: templates/js/translated/part.js:2044 templates/js/translated/stock.js:1300 +#: templates/js/translated/part.js:2040 templates/js/translated/stock.js:1300 #: templates/js/translated/stock.js:1560 msgid "Delete test result" msgstr "" -#: templates/js/translated/part.js:2050 +#: templates/js/translated/part.js:2046 msgid "This test is defined for a parent part" msgstr "" -#: templates/js/translated/part.js:2072 +#: templates/js/translated/part.js:2068 msgid "Edit Test Result Template" msgstr "" -#: templates/js/translated/part.js:2086 +#: templates/js/translated/part.js:2082 msgid "Delete Test Result Template" msgstr "" -#: templates/js/translated/part.js:2111 +#: templates/js/translated/part.js:2107 #, python-brace-format msgid "No ${human_name} information found" msgstr "" -#: templates/js/translated/part.js:2168 +#: templates/js/translated/part.js:2164 #, python-brace-format msgid "Edit ${human_name}" msgstr "" -#: templates/js/translated/part.js:2169 +#: templates/js/translated/part.js:2165 #, python-brace-format msgid "Delete ${human_name}" msgstr "" -#: templates/js/translated/part.js:2283 -msgid "Current Stock" +#: templates/js/translated/part.js:2330 templates/js/translated/part.js:2331 +msgid "No date specified" msgstr "" -#: templates/js/translated/part.js:2316 +#: templates/js/translated/part.js:2333 +msgid "Specified date is in the past" +msgstr "" + +#: templates/js/translated/part.js:2339 +msgid "Speculative" +msgstr "" + +#: templates/js/translated/part.js:2389 msgid "No scheduling information available for this part" msgstr "" -#: templates/js/translated/part.js:2342 +#: templates/js/translated/part.js:2395 +msgid "Error fetching scheduling information for this part" +msgstr "" + +#: templates/js/translated/part.js:2491 msgid "Scheduled Stock Quantities" msgstr "" -#: templates/js/translated/part.js:2412 +#: templates/js/translated/part.js:2507 +msgid "Maximum Quantity" +msgstr "" + +#: templates/js/translated/part.js:2533 +msgid "Minimum Stock Level" +msgstr "" + +#: templates/js/translated/part.js:2627 msgid "Single Price" msgstr "" -#: templates/js/translated/part.js:2431 +#: templates/js/translated/part.js:2646 msgid "Single Price Difference" msgstr "" @@ -10222,10 +10264,6 @@ msgstr "" msgid "Hide/Show pagination" msgstr "" -#: templates/js/translated/tables.js:558 -msgid "Refresh" -msgstr "" - #: templates/js/translated/tables.js:561 msgid "Toggle" msgstr "" From c8de2efd9ddc30889e83be44f91f116c3b2ac6d6 Mon Sep 17 00:00:00 2001 From: Oliver Date: Fri, 19 Aug 2022 11:57:33 +1000 Subject: [PATCH 33/60] Fix dimensions for label templates (#3578) - Disable localization in certain areas - Different localization settings could mess with label generation --- InvenTree/label/templates/label/label_base.html | 3 +++ InvenTree/label/templates/label/part/part_label.html | 5 +++++ InvenTree/label/templates/label/part/part_label_code128.html | 5 +++++ InvenTree/label/templates/label/stockitem/qr.html | 3 +++ InvenTree/label/templates/label/stocklocation/qr.html | 3 +++ .../label/templates/label/stocklocation/qr_and_text.html | 5 +++++ 6 files changed, 24 insertions(+) diff --git a/InvenTree/label/templates/label/label_base.html b/InvenTree/label/templates/label/label_base.html index 4fe5644559..79913c946f 100644 --- a/InvenTree/label/templates/label/label_base.html +++ b/InvenTree/label/templates/label/label_base.html @@ -1,10 +1,13 @@ +{% load l10n %} {% load report %} {% load barcode %}